インストール タイプの選択


このページでは、Config Connector のインストール時に使用できるさまざまなインストール オプションの概要を示します。

インストール方法

Config Connector は、次の 3 つのうちのいずれかの方法でインストールできます。

インストール方法を選択する際には、多くの要素を考慮する必要があります。次の表に、考慮事項をまとめます。

インストール方法 利点 欠点
Config Controller • インストールは不要です。
• バージョンの自動アップグレード。
• ビルド済みの GitOps コンポーネント(Config Sync)が含まれます。
• Google Cloud で管理、サポートされています。
• カスタム ワークロードの制限。
• 管理とクラスタの料金
手動インストール • 自由にカスタマイズ可能。
• 柔軟なバージョン更新スケジュール。
• 同じクラスタ内の任意のカスタム ワークロードで実行できる。
• 運用費用
GKE Config Connector アドオン • 設置しやすさ。 • Rapid 以外のチャネルで最新バージョンの Config Connector に大幅な遅延が発生しています。

認証のオプション

Config Connector を GKE クラスタにインストールする場合は、Workload Identity を使用する方法をおすすめします。Workload Identity は、Kubernetes サービス アカウントを Google サービス アカウントにバインドします。次に、Config Connector はクラスタ内の Kubernetes サービス アカウント(KSA)を使用して新しいリソースを作成します。Config Connector は、Google サービス アカウントに付与したロールを持つリソースのみを作成できます。

他の Kubernetes ディストリビューションに Config Connector をインストールする場合は、Workload Identity ではなく Cloud Identity を使用する必要があります。このオプションでは、Google サービス アカウントキーを作成し、そのキーの認証情報を Secret としてクラスタにインポートする必要があります。必要に応じてキーの認証情報をローテーションする責任は、お客様にあります。

サービス アカウントによるリソースの管理

リソースは単一のサービス アカウントで管理することも、複数のサービス アカウントで管理することもできます。

単一のサービス アカウント

Config Connector を GKE アドオンまたは手動インストールとともにインストールする場合は、ConfigConnector CustomResource でクラスタモードを設定できます。クラスタモードでは、Config Connector を使用して複数のプロジェクトを管理している場合でも、単一の Google サービス アカウントを使用してリソースを作成、管理できます。

次の図に、このモードの仕組みを示します。

同じサービス アカウントを使用して複数のプロジェクトを管理する Config Connector を示す図

複数のサービス アカウント

複数のサービス アカウントを使用するには、ConfigConnector CustomResource に名前空間モードを設定します。名前空間モードを使用すると、Google サービス アカウントの異なる懸念事項に基づいて権限を分割し、異なる Kubernetes Namespace 間で権限を分離できます。これにより、名前空間ごとに異なる Google サービス アカウントを関連付けることができます。

たとえば、Google Cloud プロジェクトごとに 1 つの Google サービス アカウントを作成し、同じ Kubernetes Namespace 内の Google Cloud プロジェクトのリソースを整理して、対応する Google サービス アカウントを Kubernetes Namespace にバインドすることで、IAM 権限を区別し、関連性を持たせることはできません。

次の図は、Namespace が指定されたモードの仕組みの概要を示しています。

2 つの異なるサービス アカウントを使用して複数のプロジェクトを管理する Config Connector を示す図

Namespace が指定されたモードでは、各 Google サービス アカウントはデフォルトで Namespace にバインドされます。その Namespace 内にリソースを作成すると、Config Connector はこのサービス アカウントを使用して Google Cloud リソースを作成します。 また、Namespace に関連付けられた専用の Google サービス アカウントの権限を借用する Namespace ごとに、専用の Config Connector cnrm-controller-manager Pod もあります。

次の場合は、Namespace が指定されたモードを選択してください。

  • Kubernetes Namespace レベルで Google Cloud IAM 権限を分離する。
  • 単一のクラスタ上の複数の Google Cloud プロジェクトから、多数の Google Cloud リソースを管理することが想定されます。

Namespace が指定されたモードを構成する方法については、Namespace が指定されたモードを使用した Config Connector のインストールをご覧ください。

次のステップ