このページでは、Anthos プライベート モードの概念実証デプロイのアーキテクチャを概説します。この概念実証のクラスタ テクノロジーは、ベアメタル版 Anthos をベースとしています。
Anthos プライベート モードの用語
- 管理ワークステーション: 管理クラスタの作成と、その他の低レベルの管理タスクの実行に使用される Linux マシン。
- 管理クラスタ: ユーザー クラスタの管理に使用される Anthos クラスタ。管理クラスタでは管理ワークロードのみが実行されます。管理クラスタはアプリのデプロイには使用されません。通常、管理クラスタはユーザー クラスタよりも小さくなります。管理クラスタは、ローカル コントロール プレーンとウェブ インターフェースがインストールされる場所です。
- ユーザー クラスタ: アプリをデプロイする Anthos クラスタ。1 つの管理クラスタで複数のユーザー クラスタを管理できます。
- コントロール プレーン ノード: このノードは、特定のクラスタのコア コンポーネント(Kubernetes API サーバーや
etcd
など)を実行します。各クラスタには、1 つのコントロール プレーン ノード(非高可用性の設定)か、3 つのコントロール プレーン ノード(高可用性の設定)があります。 - ワーカーノード: 特定のクラスタにワークロードをデプロイするノード。ワーカーノードは、1 つのクラスタ内に複数作成できます。
- ロードバランサ ノード: Anthos 用のロードバランサが実行されるノード。ベアメタル版 Anthos(および Anthos プライベート モード)の場合、このロードバランサは MetalLB です。この概念実証では、コントロール プレーン ノードにロードバランサをデプロイします。これらのノードは、コントロール プレーン ノードとロードバランサ ノードです。本番環境のシナリオでは、ロードバランサをワーカーノードに移動することで、コントロール プレーン ノードで実行されている Kubernetes API サーバーを干渉から保護できます。また、ワーカーノードを負荷分散専用にすることもできます。10 を超えるロードバランサ ノードの実行はおすすめしません。
アーキテクチャ
利用可能なハードウェアと、テストする Anthos プライベート モードの機能に応じて、次のいずれかの構成にすることをおすすめします。
最小限のインストール | 高可用性インストール | マルチクラスタ インストール |
|
|
|
メリット:
|
メリット:
|
メリット:
|
すべてのオプション:
- ロードバランサは、各クラスタのコントロール プレーン ノードで実行されます。
- こちらの要件を満たしている必要があります。
これらのオプションは組み合わせることができます。たとえば、小規模な 2 ノードの管理クラスタ(1 つのコントロール プレーン ノードと 1 つのワーカーノード)と大規模な 6 つのノードのユーザー クラスタを組み合わせることができます。2 つの Anthos プライベート モード環境(開発とステージングなど)を別々に作成することもできます。たとえば、1 つを最小インストールで実行し、もう 1 つを高可用性インストールで実行します。2 つのノードがそれぞれリーダーであると考える、スプリット ブレイン シナリオを回避するために、クラスターには常に奇数(通常は 1 または 3)のコントロール プレーン ノードが必要です。
デフォルトでは、ノードはローカル ハードドライブまたは SSD を使用して PersistentVolumes をプロビジョニングします。ローカル ドライブは高可用性ではなく、ノード間で移動できません。クラスタを作成したら、以下を行うことをおすすめします。
- ストレージ プロバイダと互換性のある Container Storage Interface(CSI)ドライバをインストールします(Anthos Ready ストレージ パートナーのリストをご覧ください)。
- この CSI ドライバに基づく StorageClass を作成します。
- この StorageClass をデフォルトにします。
図
以下の図は、各オプションのアーキテクチャの概要を示しています。図に示すルーターとスイッチはあくまで例です。要件を満たしている限り、選択したネットワーク アーキテクチャを使用できます。
最小限のインストール
高可用性インストール
高可用性インストールを行うには、ネットワークも高可用性である必要があります。このインストールの実装は、既存のネットワーク環境に依存します。