1 日 5 分で Kubernetes をプレイ | Kubernetes ネットワーク モデル

書籍出典:Cloudman「1日5分で遊ぶKubernetes」

勉強中に先生の授業内容やテストノートを整理してみんなで共有してください、違反しているものは削除されますのでよろしくお願いします!

概要投稿を添付してください: Play Kubernetes in 5 minutes in a day | Summary_COCOgsta's Blog-CSDN Blog


Kubernetes はフラット アドレス空間に基づくネットワーク モデルを採用しており、クラスター内の各 Pod は独自の IP アドレスを持ち、NAT を構成せずに直接通信できます。さらに、同じポッド内のコンテナはポッドの IP を共有し、ローカルホスト経由で通信できます。

このネットワーク モデルはアプリケーション開発者や管理者にとって非常に使いやすく、アプリケーションを従来のネットワークから Kubernetes に簡単に移行できます。各 Pod は独立したシステムとみなすことができ、Pod 内のコンテナは同じシステム内の異なるプロセスとみなすことができます。

このネットワーク モデルの下でクラスター内のさまざまなエンティティがどのように通信するかについては、以下で説明します。知識ポイントは以前に取り上げたので、復習と要約として使用できます。

  1. ポッド内のコンテナ間の通信

Pod がノードにスケジュールされると、Pod 内のすべてのコンテナーがこのノード上で実行され、これらのコンテナーは同じローカル ファイル システム、IPC、およびネットワーク名前空間を共有します。

各 Pod には独自の IP アドレスがあるため、異なる Pod 間でのポートの競合の問題は発生しません。コンテナが localhost を使用する場合、コンテナが属する Pod のアドレス空間が使用されることを意味します。

たとえば、ポッド A にはコンテナ A1 とコンテナ A2 という 2 つのコンテナがあり、コンテナ A1 はポート 1234 でリッスンします。コンテナ A2 が localhost:1234 に接続すると、実際にはコンテナ A1 にアクセスします。ポッド B のコンテナ B1 もポート 1234 でリッスンしている場合でも、これは同じノード上のポッド B と競合しません。

  1. ポッド間の通信

ポッドの IP はクラスターから認識されます。つまり、クラスター内の他のポッドおよびノー​​ドは、IP を介してポッドと直接通信できます。この通信には、ネットワーク アドレス変換、トンネリング、またはプロキシ テクノロジーは必要ありません。ポッドの内部と外部で同じ IP が使用されます。これは、標準のネーミング サービスや DNS などの検出メカニズムを直接使用できることも意味します。

  1. ポッドとサービス間の通信

ポッドは IP アドレスを介して直接通信できますが、前提条件として、ポッドは互いの IP を認識している必要があります。Kubernetes クラスターでは、ポッドの破棄と作成が頻繁に行われる可能性があります。これは、ポッドの IP が固定されていないことを意味します。この問題を解決するために、Service は Pod にアクセスするための抽象化レイヤーを提供します。バックエンド Pod がどのように変化しても、Service は安定したフロントエンドとして外部サービスを提供します。同時に、Service は高可用性と負荷分散機能も提供し、Service はリクエストを正しい Pod に転送する責任を負います。

  1. 外部アクセス

ポッドの IP であってもサービスのクラスター IP であっても、それらは Kubernetes クラスター内でのみ表示され、これらの IP はクラスターの外の世界に対してプライベートになります。

Kubernetes は、外部が Pod と通信するための 2 つの方法を提供します。

  • ノードポート。サービスは、クラスター ノードの静的ポートを介して外部サービスを提供します。外部は、<NodeIP>:<NodePort> を通じてサービスにアクセスできます。
  • ロードバランサー。本サービスは、クラウドプロバイダーが提供するロードバランサーを使用して外部サービスを提供し、クラウドプロバイダーはロードバランサーのトラフィックを本サービスに誘導する責任を負います。現在サポートされているクラウド プロバイダーには、GCP、AWS、Azure などが含まれます。

おすすめ

転載: blog.csdn.net/guolianggsta/article/details/125267972