重要
レガシー サブリソースは、対応する CRD のリリース時点で非推奨となります。構成が現在、このリソース定義のサブリソース形式に依存している場合は、CRD に移行します。
The AtlasNetworkContainer custom resource defines a network container for a Atlas project. You create VPC peering connections between network containers and the networks hosting your applications.
重要
カスタム リソースはデフォルトでオブジェクトを削除しなくなりました
Atlas Kubernetes Operator はカスタムリソース構成ファイルを使用して Atlas 構成を管理しますが、Atlas Kubernetes Operator2.0 以降、 Kubernetesで削除したカスタム リソースは Atlas で削除されなくなりました(デフォルトでは )。代わりに、Atlas Kubernetes Operator は Atlas 内のそれらのリソースの管理を停止します。 例、 Kubernetesで カスタム リソースを削除すると、デフォルトでは、Atlas Kubernetes Operator は Atlas
AtlasProjectから対応するプロジェクトを自動的に削除しなくなります。この動作の変更は、誤ってまたは予期せずに削除されるのを防ぐことを目的としています。 この動作を Atlas Kubernetes Operator. 以前に使用されていたデフォルトに戻す方法などの詳細については、「2 0新しいデフォルト: Atlas Kubernetes Operator. の削除保護2 0」を参照してください。同様に、Atlas Kubernetes Operator を使用してKubernetesの Atlasプロジェクトからチームを削除しても、Atlas Kubernetes Operator は Atlas からチームを削除しません。
デフォルトのAtlas 構成値が暗黙的に使用されるのを避けるために、必要な構成の詳細を明示的に定義します。 場合によっては、Atlas のデフォルトを継承すると調整ループが発生し、カスタムリソースが
READY状態に達しなくなります。 例、含まれている例に示すように、AtlasDeploymentカスタムリソースで必要なオートスケーリング動作を明示的に定義すると、カスタムリソース内の静的インスタンスサイズが、オートスケーリングが有効になっている Atlas 配置に繰り返し適用されないことが保証されます。autoScaling: diskGB: enabled: true compute: enabled: true scaleDownEnabled: true minInstanceSize: M30 maxInstanceSize: M40
Atlas Kubernetes Operator は、Atlas ネットワークピアリングAPIリソースを使用して次のいずれかのアクションを実行します。
新しいネットワークコンテナを作成します。
既存のネットワークコンテナをアップデートします。
例
次の例は、AtlasNetworkContainer CRD の構成を示しています。
基本的な例では、親の Atlasプロジェクトを管理するのと同じ Atlas Kubernetes Operatorインスタンスで管理するリソースを定義します。
この 独立性 CRD の例では、 基本的な例と同じネットワークコンテナを構成しますが、ネットワークコンテナの管理に使用する Atlas Kubernetes Operatorインスタンスの外部で管理する Atlasプロジェクト用に構成されています。
基本的な例
The following shows an AtlasNetworkContainer custom resource for a container named my-atlas-nc that allows you to create a VPC peering connection between Atlas and AWS within the my-project project. To manage this resource in the same Atlas Kubernetes Operator instance as its parent Atlas project, you must identify the project with projectRef instead of externalProjectRef.
apiVersion: atlas.mongodb.com/v1 kind: AtlasNetworkContainer metadata: name: my-atlas-nc spec: projectRef: name: my-project namespace: my-operator-namespace provider: AWS id: 66e2f2b7e69a89b66b621571 cidrBlock: 10.11.0.0/16 region: US_EAST_1
独立した CRD の例
The following example shows an AtlasNetworkContainer independent CRD that enables VPC peering under the same parameters enabled by the Basic Example. To enable independent operation, you must use an externalProjectRef instead of a projectRef, and you must supply a connectionSecret directly since this resource can't inherit API credentials from its parent project.
apiVersion: atlas.mongodb.com/v1 kind: AtlasNetworkContainer metadata: name: my-atlas-nc spec: externalProjectRef: projectId: 66e2f2b621571b7e69a89b66 connectionSecret: name: atlas-connection-secret provider: AWS id: 66e2f2b7e69a89b66b621571 cidrBlock: 10.11.0.0/16 region: US_EAST_1
パラメーター
AtlasNetworkContainer
AtlasNetworkContainer は、AtlasNetworkContainer APIのスキーマです
Name | タイプ | 説明 | 必須 |
|---|---|---|---|
| string | atlas.mongodb.com/v1 | true |
| string |
| true |
| オブジェクト |
| true |
| オブジェクト |
| false |
| オブジェクト |
| false |
AtlasNetworkContainer.spec
AtlasNetworkContainerSpec は、AtlasNetworkContainer のターゲット状態を定義します。
Name | タイプ | 説明 | 必須 |
|---|---|---|---|
| 列挙 | プロバイダーは、ネットワークコンテナをホストしているクラウド | true |
| string | Atlas | false |
| オブジェクト | Atlas | false |
| オブジェクト |
| false |
| string |
| false |
| オブジェクト |
| false |
| string |
| false |
AtlasNetworkContainer.spec. connectionSecret
Atlas API の秘密キーと公開キーを含むシークレットの名前。
Name | タイプ | 説明 | 必須 |
|---|---|---|---|
| string | 参照されているリソースの名前の詳細情報: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | true |
AtlasNetworkContainer.spec.externalProjectRef
externalProjectRef は親 AtlasプロジェクトIDを保持します。"projectRef"フィールドと排他関係にあります。
Name | タイプ | 説明 | 必須 |
|---|---|---|---|
| string |
| true |
AtlasNetworkContainer.spec.projectRef
projectRef は、親の Atlas Projectリソースへの参照です。"external ProjectRef"フィールドと排他関係にあります。
Name | タイプ | 説明 | 必須 |
|---|---|---|---|
| string | Kubernetesリソースの名前 | true |
| string | Kubernetesリソースの名前空間 | false |
AtlasNetworkContainer.status
AtlasNetworkContainerStatus は、 AtlasNetworkContainer カスタムリソースのステータスです。Atlas プロジェクト に含まれていないもの
Name | タイプ | 説明 | 必須 |
|---|---|---|---|
| []オブジェクト | 条件は、Atlas カスタム リソースの現在の状態を示すステータスのリストです | true |
| string |
| false |
| integer |
| false |
| ブール値 | プロビジョニングは、最後の調整前にクラスターがコンテナに配置されていた場合に true | false |
AtlasNetworkContainer.status.条件
条件 は、 特定の点における Atlas カスタム リソースの状態を表します。
Name | タイプ | 説明 | 必須 |
|---|---|---|---|
| string | 条件のステータス。 True、False、Unknown のいずれか 1 つ。 | true |
| string | Atlas カスタム リソース条件のタイプ。 | true |
| string | 条件があるステータスから別のステータスに最後に移行した時刻。 | false |
| string | 移行に関する詳細を提供する | false |
| string | 条件の最後の移行の | false |