重要
旧版子资源自相应的 CRD发布以来已被弃用。如果您的配置当前依赖于此资源定义的子资源形式,请迁移到 CRD。
AtlasPrivateEndpoint自定义资源为Atlas项目配置 私有端点。这样,您就可以将云提供商连接到Atlas,而无需通过公共网络发送信息。 私有端点是从虚拟网络到Atlas的单向连接。
重要
自定义资源不再默认删除对象
Atlas Kubernetes Operator使用自定义资源配置文件来管理Atlas配置,但从Atlas Kubernetes Operator2.0 开始,您在Kubernetes中删除的自定义资源不再(默认)在Atlas中删除。相反, Atlas Kubernetes Operator只是停止管理Atlas中的这些资源。
AtlasProject示例,如果您在Kubernetes中删除 自定义资源,默认默认, Atlas Kubernetes Operator不再自动从Atlas中删除相应的项目。这种行为更改旨在帮助防止意外删除。 要学习;了解详情,包括如何将此行为恢复为在Atlas Kubernetes Operator.2 0之前使用的默认,请参阅新默认值: Atlas Kubernetes2 Operator.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资源:执行以下操作之一:
创建新的私有端点服务。
更新现有的私有端点服务。
要学习;了解有关在Atlas Kubernetes Operator中实施私有端点的更多信息,请参阅管理私有端点。
示例
基本示例
以下示例显示了一个 自定义资源,该资源在 项目中定义了 AtlasPrivateEndpointAmazon Web Services私有端点。my-project
apiVersion: atlas.mongodb.com/v1 kind: AtlasPrivateEndpoint metadata: name: my-atlas-pe1 spec: projectRef: name: my-project namespace: my-operator-namespace provider: AWS region: US_EAST_1 awsConfiguration: - id: vpcpe-xyz
独立 CRD 示例
以下示例显示了一个独立于AtlasPrivateEndpoint 的 CRD,它定义了基本示例中定义的相同私有端点。通过此自定义资源定义,您可以在某个项目中创建此私有端点,而该项目并非在您定义此资源的Atlas Kubernetes Operator实例中管理。 要启用独立操作,必须使用 externalProjectRef 而不是 projectRef,并且必须直接提供 connectionSecret,因为此资源无法从其父项目继承API凭证。
apiVersion: atlas.mongodb.com/v1 kind: AtlasPrivateEndpoint metadata: name: my-atlas-pe1 spec: externalProjectRef: projectID: 66e2f2b621571b7e69a89b66 connectionSecret: name: atlas-connection-secret provider: AWS region: US_EAST_1 awsConfiguration: - id: vpcpe-xyz
参数
Atlas 私有终结点
The AtlasPrivateEndpoint custom resource definition (CRD) defines a desired Private Endpoint configuration for an Atlas project. It allows a private connection between your cloud provider and Atlas that doesn't send information through a public network.
您可以使用私有终结点,创建从虚拟网络到 Atlas 集群的单向连接。
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 | atlas.mongodb.com/v1 | true |
| 字符串 |
| true |
| 对象 | Refer to the Kubernetes | true |
| 对象 |
| false |
| 对象 |
| false |
AtlasPrivateEndpoint.spec
AtlasPrivateEndpointSpec is the specification of the desired configuration of a project private endpoint
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 枚举 | Name of the cloud service | true |
| 字符串 | Region of the chosen cloud provider in which you want to create the private endpoint service. | true |
| []object | AWSConfiguration is the specific | false |
| []object |
| false |
| 对象 | Name of the secret containing Atlas | false |
| 对象 |
| false |
| []object | GCPConfiguration is the specific Google Cloud settings for the private endpoint. | false |
| 对象 |
| false |
AtlasPrivateEndpoint.spec.awsConfiguration
AWSPrivateEndpointConfiguration holds the AWS configuration done on customer network.
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 |
| true |
AtlasPrivateEndpoint.spec.azureConfiguration
AzurePrivateEndpointConfiguration holds the Azure configuration done on customer network.
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 |
| true |
| 字符串 |
| true |
AtlasPrivateEndpoint.spec.connectionSecret
Name of the secret containing Atlas API private and public keys.
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 | Name of the resource being referred to More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | true |
AtlasPrivateEndpoint.spec.externalProjectRef
externalProjectRef holds the parent Atlas project ID. Mutually exclusive with the "projectRef" field.
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 |
| true |
AtlasPrivateEndpoint.spec.gcpConfiguration
GCPPrivateEndpointConfiguration holds the GCP configuration done on customer network.
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| []object | Endpoints is the list of individual private | true |
| 字符串 |
| true |
| 字符串 |
| true |
AtlasPrivateEndpoint.spec.gcpConfiguration.endpoints
GCPPrivateEndpoint holds the GCP forwarding rules configured on customer network.
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 |
| true |
| 字符串 | Name that identifies the Google Cloud consumer forwarding rule that you created. | true |
AtlasPrivateEndpoint.spec.projectRef
projectRef is a reference to the parent AtlasProject resource. Mutually exclusive with the "externalProjectRef" field.
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 | Name of the Kubernetes Resource | true |
| 字符串 | Namespace of the Kubernetes Resource | false |
AtlasPrivateEndpoint.status
AtlasPrivateEndpointStatus is the most recent observed status of the AtlasPrivateEndpoint cluster. Read-only.
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| []object | Conditions is the list of statuses showing the current state of the Atlas Custom Resource | true |
| []object | Endpoints are the status of the | false |
| 字符串 | Error is the description of the failure occurred when configuring the private endpoint | false |
| 整型 |
| false |
| 字符串 |
| false |
| []string |
| false |
| 字符串 |
| false |
| 字符串 |
| false |
| 字符串 |
| false |
AtlasPrivateEndpoint.status.conditions
Condition describes the state of an Atlas Custom Resource at a certain point.
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 | Status of the condition; one of True, False, Unknown. | true |
| 字符串 | Type of Atlas Custom Resource condition. | true |
| 字符串 | Last time the condition transitioned from one status to another. Represented in | false |
| 字符串 | A | false |
| 字符串 | The | false |
AtlasPrivateEndpoint.status.endpoints
EndpointInterfaceStatus is the most recent observed status the interfaces attached to the configured service. Read-only.
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 |
| false |
| 字符串 |
| false |
| 字符串 |
| false |
| 字符串 | Error is the description of the failure occurred when configuring the private endpoint | false |
| []object | GCPForwardingRules is the status of the customer | false |
AtlasPrivateEndpoint.status.endpoints.gcpForwardingRules
GCPForwardingRule is the most recent observed status the GCP forwarding rules configured for an interface. Read-only.
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 | 人类可读标签,用于标识您创建的 Google Cloud 消费者转发规则。 | false |
| 字符串 | State of the | false |