Docs Menu
Docs Home
/ /
MongoDB Atlas Kubernetes 演算子

カスタム リソース

Atlas Kubernetes Operator は次のカスタム リソースをサポートしています。

Resource
説明

AtlasBackupPolicy カスタム リソース

Atlas クラスターをバックアップするためのバックアップ ポリシーの構成。

クラスター Atlas をバックアップするためのバックアップ スケジュールの構成。

Atlas の一部のプロジェクト内のクラスターの構成。

Atlas の一部のプロジェクト内のデータベースユーザーの構成。

Atlas でのプロジェクトの構成。

Atlas でのプロジェクト チームの構成。

Atlas 内のフェデレーティッドデータベースインスタンスとそのプライベートエンドポイントの構成。

Atlas でのフェデレーティッド認証の構成。

重要

カスタム リソースの定義が優先されます

Atlas Kubernetes Operator は、Atlas 構成を管理するためにカスタム リソース構成ファイルを使用します。 各カスタム リソース定義は、Atlas UI などの他の方法で指定された設定を上書きします。 カスタム リソースを削除すると、注釈を使用して削除をスキップしない限り、Atlas Kubernetes Operator によって Atlas からオブジェクトが削除されます。 詳細については、「プロセスの作成と更新 」および「削除 プロセス」を参照してください。

Atlas Kubernetes Operator を使用すると、新しい Atlas プロジェクトを作成したり、既存の Atlas プロジェクトを操作したりできます。

Atlas Kubernetes Operator から Atlas へのアクセスを構成するには、次の公開 API キー、プライベート API キー、および組織 ID 情報が必要です。

詳細については、「 Atlas へのアクセスの設定 」を参照してください。

サポートされているカスタム リソースのいずれかでspecフィールドを変更するたびに、Atlas Kubernetes Operator で次のワークフローが開始されます。

  1. Atlas Kubernetes Operator は、変更されたカスタム リソースに関するイベントを受け取ります。

  2. Atlas Kubernetes Operator は、リソースが準備できていないことを反映するようにstatus.conditionsフィールドを更新します。

    conditions:
    - lastTransitionTime: "2021-03-13T16:26:17Z"
    status: "False"
    type: Ready
  3. Atlas Administration API に接続するために、Atlas Kubernetes Operator は次のいずれかのロケーションから組織 ID と APIキーを読み取ります。

  4. Atlas でリソースを作成または更新するために、Atlas Kubernetes Operator は接続情報を使用して Atlas へのAPI呼び出しを行います。

    注意

    場合によっては、Atlas Kubernetes Operator が カスタム リソースの調整中に Atlas で複数のAPI呼び出しを実行する場合があります。 たとえば、 には、一致するAtlasProject API を呼び出すための IP アクセス リスト 構成があります。

  5. 調整中にエラーが発生した場合、 status.conditionsはエラーを反映するようにアップデートします。

    - lastTransitionTime: "2021-03-15T14:26:44Z"
    message: 'POST https://cloud.mongodb.com/api/atlas/v1.0/groups/604a47de73cd8cag77239021/accessList:
    400 (request "INVALID_IP_ADDRESS_OR_CIDR_NOTATION") The address 192.0.2.1dfdfd5
    must be in valid IP address or CIDR notation.'
    reason: ProjectIPAccessListNotCreatedInAtlas
    status: "False"
    type: IPAccessListReady
  6. 更新が成功すると、 status.conditionsはリソースが準備できていることを反映します。

    conditions:
    - lastTransitionTime: "2021-03-13T16:26:17Z"
    status: "True"
    type: Ready

Kubernetes からカスタム リソースを削除すると、Atlas Kubernetes Operator によって Atlas の状態のクリーンアップが試行され、次のワークフローが開始されます。

  1. Atlas Kubernetes Operator は、削除されたカスタム リソースに関するイベントを受け取ります。

  2. Atlas Administration API に接続するために、Atlas Kubernetes Operator は次のいずれかのロケーションから組織 ID とAPIキーを読み取ります。

  3. Atlas からリソースを削除するために、Atlas Kubernetes Operator は接続情報を使用して Atlas へのAPI呼び出しを行います。

    注意

    Atlas Kubernetes Operator は、 Kubernetesで作成された関連オブジェクトを削除します。例、AtlasDatabaseUser を削除すると、Atlas Kubernetes Operator は関連する接続シークレットを削除します。

Atlas Kubernetes Operator のデフォルトの動作を変更するには、注釈を使用します。

カスタム リソースのmetadatamongodb.com/atlas-resource-policy: "keep"アノテーションを追加すると、Atlas Kubernetes Operator リソースを削除しても、Atlas Kubernetes Operator はリソースを削除しません。

apiVersion: atlas.mongodb.com/v1
kind: AtlasProject
metadata:
name: my-project
annotations:
mongodb.com/atlas-resource-policy: "keep"

カスタム リソースのmetadatamongodb.com/atlas-reconciliation-policy: "skip"アノテーションを追加すると、Atlas Kubernetes Operator はリソースの調整を開始しません。 この注釈により、注釈を削除するまで仕様との同期を一時停止できます。 この注釈を使用すると、カスタム リソースに手動で変更を加え、Atlas Kubernetes Operator が同期中にそれらを元に戻すのを回避できます。 この注釈を削除すると、Atlas Kubernetes Operator はリソースを調整し、それを 仕様と同期する必要があります。

カスタム リソースのmetadatamongodb.com/atlas-resource-version-policy: "allow"アノテーションを追加すると、Atlas Kubernetes Operator は、使用している Atlas Kubernetes Operator のバージョンと一致しない場合でも、リソースを使用できます。 リソース バージョンが Atlas Kubernetes Operator バージョンより小さいメジャー バージョンである場合、最新機能が動作しない可能性があります。 マイナーなバージョンの不一致は後方互換性があります。

戻る

サードパーティー サービス

項目一覧