3.2 Kubernetesアーキテクチャについて
Kubernetesホストは、コントロール・プレーン・ノードとワーカー・ノードで構成されます。
コントロール・プレーン: コントロール・プレーンは、Kubernetesコンポーネントの管理とアプリケーションのデプロイを担当します。エンタープライズ・デプロイメントでは、コントロール・プレーン・ホストの障害によってKubernetesクラスタが停止しないように、Kubernetesコントロール・プレーンの可用性が高いことを確認する必要があります。
ワーカー・ノード: コンテナがデプロイされる場所であるワーカー・ノード。
ノート:
個々のホストは、コントロール・プレーン・ホストとワーカー・ホストの両方にすることができます。図3-1 Kubernetesクラスタの図

コンポーネントの説明:
-
コントロール・プレーン: コントロール・プレーンは次で構成されます:
- kube-apiサーバー: APIサーバーは、Kubernetes APIを公開するコントロール・プレーンのコンポーネントです。
- etcd: Kubernetesのバックエンド・データストアおよびすべてのクラスタ・データを格納するために使用されます。
- スケジューラ: スケジューラは、ワーカー・ノードへのコンテナの配置を担当します。この場合、リソース要件、ハードウェアおよびソフトウェア・ポリシーの制約、アフィニティ仕様およびデータ・アフィニティが考慮されます。
- コントロール・マネージャ: コントローラ・プロセスの実行を担当します。コントローラ・プロセスは次で構成されます:
- ノード・コントローラ
- ルート・コントローラ
- サービス・コントローラ
コントロール・プレーンは、Kubernetes APIサーバーがデプロイされ、LBRによってフロント・エンド処理される3つのノードで構成されます。
-
ワーカー・ノード・コンポーネント: ワーカー・ノードには次のコンポーネントが含まれます:
- Kubelet: クラスタ内の各ワーカー・ノードで実行されるエージェント。これは、コンテナがポッド内で実行されていることを保証します。
- Kubeプロキシ: Kubeプロキシは、クラスタの各ノードで実行されるネットワーク・プロキシです。これは、ポッド間通信およびクラスタ外通信を可能にするネットワーク・ルールを維持します。
- アドオン: アドオンはクラスタをさらに拡張し、次のようなサービスを提供します:
- DNS
- Web UIダッシュボード
- コンテナ・リソース・モニタリング
- ロギング