このページの内容
導入モデル
概要 単一クラスターとマルチクラスターCN2について説明します。
Cloud-Native Contrail Networking(CN2)は、単一のKubernetesクラスター内の統合型ネットワーキングプラットフォームとして、または複数の分散Kubernetesクラスターの一元化されたネットワーキングプラットフォームとして利用できます。いずれの場合も、Contrail はインフラストラクチャの統合コンポーネントとして機能し、ワークロードがインスタンス化された場所を監視し、それらのワークロードを適切なオーバーレイ ネットワークに接続します。
単一クラスターの導入
Cloud-Native Contrail Networking(CN2)は、単一のKubernetesクラスター内の統合ネットワーキングプラットフォームとして利用でき、ワークロードがインスタンス化されている場所を監視し、それらのワークロードを適切なオーバーレイネットワークに接続します。
単一クラスターの導入(図1)では、ContrailコントローラはKubernetesコントロールプレーンに配置され、ホストクラスターのネットワーク設定とネットワークコントロールプレーンを提供します。Contrailデータプレーンコンポーネントはすべてのノードに配置され、ワークロードのパケット送受信機能を提供します。
マルチクラスター導入
マルチクラスター展開(図2)では、Contrailコントローラは独自のKubernetesクラスターに存在し、他のクラスターにネットワークを提供します。Contrailコントローラが存在するKubernetesクラスターは、中央クラスターと呼ばれます。ワークロードを格納するKubernetesクラスターは、分散ワークロードクラスターと呼ばれます。
このようにネットワーク機能を一元化することで、設定と管理が容易になるだけでなく、一貫したネットワークポリシーとセキュリティを簡単に適用できます。
図3に、この設定の詳細を示します。Contrailコントローラは、中央クラスターのKubernetesコントロールプレーンに配置され、サービスを提供する各ワークロードクラスターのkubemanagerが含まれています。通常、中央クラスターにはワーカーノードはありません。代わりに、ワークロードは分散ワークロード クラスター内のワーカー ノードに存在します。Contrail CNIプラグインとvRouterは、ワークロードクラスターのワーカーノードに配置されます。ワークロードクラスターのKubernetesコントロールプレーンには、Contrailコントローラコンポーネントは含まれていません。
マルチクラスター Contrail コントローラは、シングルクラスター Contrail コントローラとは異なり、主に 2 つの点が異なります。
- マルチクラスター Contrail コントローラには、分散ワークロード クラスターごとにインスタンス化された contrail-k8s-kubemanager ポッドがあります。分散ワークロード クラスターを中央クラスターに接続する手順の一環として、割り当てられたワークロード クラスターに影響を与えるリソースへの変更を監視する contrail-k8s-kubemanager デプロイメントを明示的に作成して割り当てます。
- マルチクラスター Contrail コントローラは、マルチクラスター ウォッチ テクノロジーを使用して、分散ワークロード クラスターの変化を検出します。
マルチクラスターのcontrail-k8s-kubemanagerポッドの機能は、シングルクラスターのポッドと同じです。割り当てられたクラスターに影響を与える通常のKubernetesリソースへの変更を監視し、それに応じて変更に対処します。
マルチクラスター展開の他のすべてのContrailコンポーネントは、単一クラスター展開の場合と同じように動作します。たとえば、ネットワークコントロールプレーンは、通常のKubernetes RESTチャネルの外部で、XMPPを使用してデータプレーンコンポーネントと通信します。このため、ネットワークコントロールプレーンは、通信するデータプレーンコンポーネントが同じクラスターにあるか異なるクラスターにあるかに関わらず無関心です。唯一の要件は、データプレーンコンポーネントに到達可能であることです。