Atlas Administration APIに接続するために、Atlas Kubernetes Operator は Atlas Kubernetes Operator シークレット から組織IDと認証情報を読み取ります。 APIキーまたはサービスアカウントを使用して認証できます。次の機能を設定することもできます。
Atlas アカウントの作成の詳細については、Atlas への登録とログイン を参照してください。
Atlas Kubernetes Operator Secrets
構成に応じて、Atlas Kubernetes Operator は、次の Atlas Kubernetes Operator シークレット のいずれかから読み取りを行います。
スコープ | ロケーション | 説明 |
|---|---|---|
グローバル | Atlas Kubernetes | Atlas Kubernetes Operator は、
Atlas Kubernetes Operator 配置のデフォルト名は |
プロジェクト | カスタム リソース内のspec. connectionSecretRef.nameで参照される Atlas Kubernetes デフォルトでは 、Atlas Kubernetes Operator は カスタム | Atlas Kubernetes Operator はこのシークレットデータを使用して、プロジェクトを参照する任意の spec.connectionSecretRef.name を指定しない場合、Atlas Kubernetes Operator は プロジェクトごとの Atlas Kubernetes Operator シークレット により、より細かいアクセスが可能になります。単一の Atlasプロジェクトにアクセスするには、1 つの認証情報セットが必要な場合があります。 |
パラメーター
global と project のいずれのシークレットにも次の情報が必要です。
Parameter | 説明 |
|---|---|
| 組織 を識別するために使用される一意の 24桁の 16 進数 。stringAtlas |
| |
|
Parameter | 説明 |
|---|---|
| 組織 を識別するために使用される一意の 24桁の 16 進数 。stringAtlas |
| サービス アカウントのクライアントID 。 |
| サービス アカウントのクライアントシークレット。作成後、この値を取得することはできません。 |
サービス アカウントの詳細については、「 サービス アカウントを使用した Atlas へのアクセスの設定 」を参照してください。
前提条件
次のいずれかの認証方法を選択します。
Atlas Kubernetes Operator から Atlas へのアクセスを構成するには、次の公開 API キー、プライベート API キー、および組織 ID 情報が必要です。
Atlas Kubernetes Operator で新しい Atlasプロジェクトを作成する場合は、 組織へのプログラムによるアクセスの付与 。組織で Atlas Administration APIのIP アクセス リストが必要な場合は、 APIアクセス リストも設定する必要があります。
重要
API キーには、 Organization Project Creator組織ロール以上を割り当てる必要があります。
既存の Atlasプロジェクトを操作する場合は、 プロジェクトからプロジェクト アクセスを追加 します。組織で Atlas Administration APIのIP アクセス リストが必要な場合は、 APIアクセス リストも設定する必要があります。
重要
Project Ownerプロジェクト ロールに API キーを割り当てる必要があります。
Atlas Kubernetes Operator による Atlas へのアクセスを構成するには、適切なロールと組織IDを持つサービス アカウントが必要です。
Atlas Kubernetes Operator で新しい Atlasプロジェクトを作成 する場合は、組織プロジェクト作成者ロール以上の サービス アカウント を作成します。
既存の Atlasプロジェクトを操作する場合は、プロジェクト オーナーのロールを持つ サービス アカウント を作成します。
サービス アカウントの作成方法については、「 サービス アカウントの概要 」を参照してください。
手順
Atlas Kubernetes Operator から Atlas へのアクセスを構成するには、認証情報を使用してシークレットを作成します。希望する認証方法に一致するタブを選択します。
globalAtlas Kubernetes Operator シークレット については、次のコマンドを実行します。注意
globalAtlas Kubernetes Operator シークレットの名前は、事前定義された形式に準拠している必要があります。Atlas Kubernetes Operator 配置のデフォルト名はmongodb-atlas-operatorです。したがって、シークレット の名前はmongodb-atlas-operator-api-keyにする必要があります。kubectl create secret generic mongodb-atlas-operator-api-key \ --from-literal="orgId=<the_atlas_organization_id>" \ --from-literal="publicApiKey=<the_atlas_api_public_key>" \ --from-literal="privateApiKey=<the_atlas_api_private_key>" \ -n <operator_namespace> kubectl label secret mongodb-atlas-operator-api-key atlas.mongodb.com/type=credentials -n mongodb-atlas-system projectAtlas Kubernetes Operator シークレット については、次のコマンドを実行します。kubectl create secret generic my-project-connection \ --from-literal="orgId=<the_atlas_organization_id>" \ --from-literal="publicApiKey=<the_atlas_api_public_key>" \ --from-literal="privateApiKey=<the_atlas_api_private_key>" \ -n <atlas_project_namespace> kubectl label secret my-project-connection atlas.mongodb.com/type=credentials -n <atlas_project_namespace>
globalAtlas Kubernetes Operator シークレット については、次のコマンドを実行します。注意
globalAtlas Kubernetes Operator シークレットの名前は、事前定義された形式に準拠している必要があります。Atlas Kubernetes Operator 配置のデフォルト名はmongodb-atlas-operatorです。したがって、シークレット の名前はmongodb-atlas-operator-service-accountにする必要があります。kubectl create secret generic mongodb-atlas-operator-service-account \ --from-literal="orgId=<the_atlas_organization_id>" \ --from-literal="clientId=<the_service_account_client_id>" \ --from-literal="clientSecret=<the_service_account_client_secret>" \ -n <operator_namespace> kubectl label secret mongodb-atlas-operator-service-account atlas.mongodb.com/type=credentials -n mongodb-atlas-system projectAtlas Kubernetes Operator シークレット については、次のコマンドを実行します。kubectl create secret generic my-project-connection \ --from-literal="orgId=<the_atlas_organization_id>" \ --from-literal="clientId=<the_service_account_client_id>" \ --from-literal="clientSecret=<the_service_account_client_secret>" \ -n <atlas_project_namespace> kubectl label secret my-project-connection atlas.mongodb.com/type=credentials -n <atlas_project_namespace>
Atlas Kubernetes Operator を使用してサービス アカウントを設定する方法の詳細については、「 サービス アカウントを使用して Atlas へのアクセスを設定する 」を参照してください。