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 シークレット により、より細かいアクセスが可能になります。1 つの 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 プロジェクトを操作する場合は、Project Owner ロールを持つサービス アカウントを作成します。
サービス アカウントの作成方法については、「サービス アカウントの概要」を参照してください。
手順
Atlas への Atlas Kubernetes Operator アクセスを構成するには、認証情報を含む シークレット を作成します。お好みの認証方法に合わせてタブを選択します。
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 でサービス アカウントを構成する方法の詳細については、「Service Accounts を使用した Atlas へのアクセスの構成」を参照してください。