プロキシとロードバランサー
トラフィックを中継し、分散させる中間サービスについて学びます。
「プロキシとロードバランサー」はCoddyKit上の無料Cloud & IT Cert Prepレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCloud & IT Cert Prep学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cloud & IT Cert Prepコースには全4レッスンが含まれています。
中間サービス
一部のネットワークサービスは、クライアントとサーバーの間で通信の中継点となり、制御、セキュリティ、スケーラビリティを提供します。代表的なものがプロキシとロードバランサーです。
クライアントとサーバーを直接通信させるのではなく、これらの中間サービスが通信を受け取って管理することで、パフォーマンス、セキュリティ、信頼性を向上させます。
プロキシとは
プロキシサーバーは、クライアントの代わりにリクエストを送信する仲介役です。クライアントはWebサイトに直接接続するのではなく、プロキシに依頼します。プロキシがコンテンツを取得し、クライアントに返します。
この間接的な構成により、プロキシは通信のフィルタリング、ログ記録、キャッシュ、制御を行えます。その結果、組織はインターネットへの外向きアクセスを一元的に管理し、安全に保護できます。
フォワードプロキシ
フォワードプロキシは内部クライアントの前段に配置され、インターネットへの外向きリクエストを処理します。企業では、Webコンテンツのフィルタリング、許可されていないサイトのブロック、人気ページのキャッシュ、ユーザーの閲覧履歴のログ記録に利用します。
また、プロキシのアドレスの背後に内部クライアントを隠します。インターネット側から見ると、すべてのリクエストは個々のユーザーではなく、プロキシから送信されたように見えます。
リバースプロキシ
リバースプロキシはサーバーの前段に配置され、インターネットからの受信リクエストを処理して、適切なバックエンドサーバーへ転送します。クライアントが通信する相手はリバースプロキシだけで、サーバーに直接接続することはありません。
サーバーを直接公開せずに保護できるほか、暗号化の処理やコンテンツのキャッシュも行えます。また、多数のバックエンドシステムに対する単一の窓口となるため、セキュリティと管理性の両方が向上します。
プロキシのメリット
プロキシには、次のようなメリットがあります。
- 人気のあるコンテンツをキャッシュし、応答を高速化して帯域幅を削減します。
- コンテンツフィルタリングにより、安全でないサイトや許可されていないサイトをブロックします。
- ログ記録により、可視性を高めてポリシーを適用できます。
- 匿名性により、実際のクライアントやサーバーをプロキシの背後に隠します。
このように、プロキシはセキュリティとパフォーマンスの両方に役立つ、柔軟性の高いツールです。
ロードバランサーとは
ロードバランサーは、単一のサーバーに負荷が集中しないよう、受信トラフィックを複数のサーバーに分散します。クライアントには1つのアドレスを示し、リクエストをバックエンドサーバーのプール全体に振り分けます。
これは、負荷の高いサービスに不可欠です。処理能力を高め、高負荷時にも応答時間を短く保ち、成長に合わせてサーバーを追加できるようにします。
ロードバランシングの仕組み
ロードバランサーはアルゴリズムを使って、各リクエストを処理するサーバーを選びます。
- ラウンドロビン: サーバーを順番に切り替えます。
- 最小接続数: 最も負荷の低いサーバーに送信します。
- 重み付け: より高性能なサーバーを優先します。
また、ヘルスチェックを実行し、障害が発生したサーバーを振り分け対象から外します。これにより、ユーザーが停止中のサーバーへ送られることはありません。
高可用性のメリット
ロードバランサーは、パフォーマンスだけでなく可用性も高めます。1台のサーバーに障害が発生すると、ロードバランサーはそのサーバーへのトラフィック送信を停止し、正常なサーバーにすべて振り分けます。そのため、ユーザーは何も気付きません。
この冗長性により、サーバー障害やメンテナンス中でもサービスを稼働させ続けられます。ロードバランサーは、復旧性が高く常時稼働するネットワーク設計の基盤です。
セッション永続性
ショッピングカートのようなセッション状態をサーバーが保持しているため、ユーザーからのリクエストを同じバックエンドサーバーで処理し続ける必要があるアプリケーションもあります。セッション永続性(sticky sessionとも呼ばれます)により、特定のクライアントを常に同じサーバーへ送信できます。
これがないと、状態を共有していないサーバー間でユーザーのリクエストが行き来し、ログイン状態やカートの内容が失われる可能性があります。セッション永続性は、負荷分散と状態を維持した継続性の必要性とのバランスを取ります。
プロキシとロードバランサーの違い
この2つには共通する部分もありますが、目的は異なります。プロキシは通信の仲介、フィルタリング、保護を重視します。一方、ロードバランサーはスケールと稼働時間のために通信を分散することを重視します。
リバースプロキシがロードバランシングも行うことは多く、最新のアプライアンスでは両方の役割を組み合わせることも一般的です。それぞれが何をもたらすのか、つまり制御とセキュリティなのか、処理能力と復旧性なのかを理解することが重要です。
全体をまとめる
プロキシは通信を仲介します。フォワードプロキシはクライアントからの外向きリクエストを管理し(フィルタリング、キャッシュ、ログ記録)、リバースプロキシはセキュリティと制御のためにサーバーの前段に配置されます。ロードバランサーはアルゴリズムとヘルスチェックを使ってサーバープール全体に通信を分散し、パフォーマンスと可用性を高めます。両方の役割が組み合わされることもよくあります。
クイックチェック
中間サービスに関する知識を確認しましょう。
まとめ
プロキシはクライアントとサーバーの間に配置されます。フォワードプロキシはクライアントからの外向き通信を制御し(フィルタリング、キャッシュ、ログ記録)、リバースプロキシはサーバーの前段に配置され、サーバーを保護します。ロードバランサーはアルゴリズムとヘルスチェックを使ってサーバープール全体に通信を分散し、パフォーマンスと可用性を向上させます。1台のアプライアンスに両方の役割を組み込むこともよくあります。
よくある質問
「プロキシとロードバランサー」レッスンは無料ですか?
はい。「プロキシとロードバランサー」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cloud & IT Cert Prepコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cloud & IT Cert Prepコースには全4レッスンが含まれています。
「プロキシとロードバランサー」で何を学びますか?
トラフィックを中継し、分散させる中間サービスについて学びます。 ブラウザで直接実行するハンズオンコードでCloud & IT Cert Prepを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Cloud & IT Cert Prepを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのCloud & IT Cert Prepは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「プロキシとロードバランサー」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このCloud & IT Cert Prepレッスンでコードを書いて実行できますか?
はい。すべてのCloud & IT Cert Prepレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- NATが1つのパブリックIPを共有する仕組み
- ポートフォワーディングとPAT
- 時刻サービスと名前解決サービス
- プロキシとロードバランサー