Config Sync の概要
Config Sync は Anthos の一部として提供される GitOps サービスです。Config Sync はオープンソース コア上に構築されており、クラスタ オペレータとプラットフォーム管理者が信頼できる情報源から構成をデプロイできます。このサービスには、クラスタまたは Namespace ごとに 1 つまたは複数のクラスタと任意の数のリポジトリをサポートする柔軟性があります。クラスタはハイブリッド環境またはマルチクラウド環境に配置できます。
Config Sync のメリット
Kubernetes 構成を大規模に管理する組織にとって、GitOps は普遍的なベスト プラクティスであると考えられます。すべての GitOps ツールに、安定性の向上、可読性の向上、整合性、監査やセキュリティの強化というメリットがあります。Config Sync は Anthos の一部であり、次のような利点があります。
- Anthos との統合: プラットフォーム管理者は、Google Cloud コンソールで数回クリックするか、Terraform を使用するか、Anthos フリートに接続されている任意のクラスタで Google Cloud CLI を使用して、Config Sync をインストールできます。サービスは、Policy Controller、Workload Identity、Cloud Monitoring など、他の Anthos や Google Cloud のサービスと連携するように構成されています。
- 組み込みのオブザーバビリティ: Config Sync には、Google Cloud コンソールに組み込まれたオブザーバビリティ ダッシュボードがあります。追加の設定は必要ありません。プラットフォーム管理者は、Google Cloud コンソールにアクセスするか、Google Cloud CLI を使用して、同期と調整の状態を確認できます。
- マルチクラウドとハイブリッドのサポート: Config Sync は、すべての一般提供リリースの前に複数のクラウド プロバイダとハイブリッド環境でテストされています。サポート マトリックスを確認するには、Anthos のバージョンとアップグレードのサポートをご覧ください。
Config Sync について
次の図は、管理者がクラスタを単一のルート リポジトリ(管理者が管理)と複数の Namespace リポジトリ(アプリケーション オペレータが管理)にどのように同期するかの概要を示しています。
中央管理者が組織の一元化されたインフラストラクチャを管理し、クラスタと組織内のすべての Namespace にポリシーを適用します。実際のデプロイメントを管理するアプリケーション オペレータは、取り組んでいる Namespace 内のアプリケーションに構成を適用します。
クラスタの構成
Config Sync では、信頼できる単一の情報源から構成の共通セットとポリシー(Policy Controller の制約など)を作成し、登録済みで接続しているクラスタに一貫した方法で適用できます。
kubectl apply
コマンドの手動実行ではなく、GitOps スタイルのツールを使用して一連のクラスタに対する構成変更をオーケストレートできます。詳細については、Anthos Config Management を使用した安全なロールアウトをご覧ください。このチュートリアルと他のチュートリアルでは、信頼できる情報源として Git リポジトリを使用しますが、OCI イメージまたは Helm チャートを使用することもできます。
Namespace の構成
Config Sync で名前空間を構成すると、次のことが可能になります。
- 登録済みで接続しているクラスタ全体で、名前空間スコープのポリシー(RBAC ロールなど)を使用して、Kubernetes 名前空間のプロビジョニングを一貫した方法で行うことができます。名前空間スコープのポリシーを使用すると、クラスタ内でマルチテナンシーの実装と管理をより簡単に行うことができます。
- 構成ファイルを複製することなく、複数の関連する Namespace にポリシーを適用します。特定の Namespace または Namespace セットの構成をオーバーライドまたは拡張できるため、テナント間で一貫したポリシーを簡単に適用できます。