第1章 ネットワークについて
OpenShift Container Platform で回復力があり、安全で、スケーラブルなアプリケーションを構築するには、ネットワークを理解することが不可欠です。基本的な Pod 間通信から複雑なトラフィックルーティングやセキュリティールールまで、アプリケーションのすべてのコンポーネントは、正しく機能するためにネットワークに依存しています。
1.1. コアネットワーク層とコンポーネント リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift Networking は、Pod ネットワーク
と サービスネットワーク
という 2 つの基本レイヤーに基づいて構築されます。Pod ネットワークは、アプリケーションが実行される場所です。サービスネットワークにより、アプリケーションに確実にアクセスできるようになります。
1.1.1. Pod ネットワーク リンクのコピーリンクがクリップボードにコピーされました!
Pod ネットワークは、クラスター内のすべての Pod が独自の IP アドレスを受け取るフラットなネットワークスペースです。このネットワークは、Container Network Interface (CNI) プラグインによって管理されます。CNI プラグインは、各 Pod をクラスターネットワークに接続する役割を担います。
この設計により、Pod はどのノードで実行されているかに関係なく、IP アドレスを使用して相互に直接通信できるようになります。ただし、これらの Pod IP は一時的なものです。つまり、Pod が破棄されると IP も破棄され、新しい Pod が作成されるときに新しい IP アドレスが割り当てられます。このため、長時間の通信では Pod の IP アドレスに直接依存しないでください。
1.1.2. サービスネットワーク リンクのコピーリンクがクリップボードにコピーされました!
サービスは、ClusterIP と呼ばれる単一の安定した仮想 IP アドレスと、Pod の論理グループの DNS 名を提供するネットワークオブジェクトです。
リクエストがサービスの ClusterIP に送信されると、OpenShift Container Platform は、そのサービスをサポートする正常な Pod の 1 つにトラフィックを自動的に負荷分散します。Kubernetes ラベルとセレクターを使用して、どの Pod がどのサービスに属しているかを追跡します。この抽象化により、個々の Pod にアクセスしようとするアプリケーションに影響を与えることなく、Pod を作成または破棄できるため、アプリケーションの耐障害性が高まります。