Docs 菜单
Docs 主页
/ /
MongoDB Atlas Kubernetes Operator
/

AtlasPrivateEndpoint 自定义资源

在此页面上

  • 示例
  • 基本示例
  • 独立 CRD 示例
  • 参数

AtlasPrivateEndpoint自定义资源为Atlas项目配置 私有端点。这样,您就可以将云提供商连接到Atlas ,而无需通过公共网络发送信息。私有端点是从虚拟网络到Atlas的单向连接。

重要

自定义资源不再默认删除对象

  • Atlas Kubernetes Operator使用 自定义资源配置文件来管理Atlas配置,但从Atlas Kubernetes Operator2.0 开始,您在Kubernetes中删除的自定义资源不再(默认)在Atlas中删除。相反, Atlas Kubernetes Operator只是停止管理Atlas中的这些资源。示例,如果您在Kubernetes中删除AtlasProject 自定义资源,默认, Atlas Kubernetes Operator不再自动从Atlas中删除相应的项目。这种行为更改旨在帮助防止意外删除。要学习;了解详情,包括如何将此行为恢复为Atlas Kubernetes Operator2 之前使用的默认行为。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资源执行以下操作之一:

  • 创建新的私有端点服务。

  • 更新现有的私有端点服务。

要学习;了解有关在Atlas Kubernetes Operator中实施私有端点的更多信息,请参阅管理私有端点。

AtlasPrivateEndpoint以下示例显示了一个 my-project自定义资源,该资源在 项目中定义了一个 AWS 私有端点。

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

以下示例显示了一个独立于AtlasPrivateEndpoint 的 CRD,它定义了基本示例中定义的相同私有端点。通过此自定义资源定义,您可以在某个项目中创建此私有端点,而该项目并非在您定义此资源的Atlas Kubernetes Operator实例中进行管理。要启用独立操作,必须使用externalProjectRef 而不是projectRef ,并且必须直接提供connectionSecret ,因为此资源无法从其父项目继承API凭证。

apiVersion: atlas.mongodb.com/v1
kind: AtlasPrivateEndpoint
metadata:
name: my-atlas-pe1
spec:
atlasRef:
projectID: 66e2f2b621571b7e69a89b66
credentials:
name: atlas-connection-secret
provider: AWS
region: us-east-1
awsConfiguration:
- id: vpcpe-xyz

本部分介绍可用的AtlasPrivateEndpoint自定义资源参数。

metadata.name

类型:字符串

必需

AtlasProject自定义资源用于将此私有端点添加到项目中的名称。

metadata.namespace

类型:字符串

Optional

default要包含atlasPrivateEndpoint 自定义资源的 以外的命名空间。如果定义自定义命名空间,则必须将其添加到AtlasProject 字段中的spec.privateEndpoint.privateEndpointRef.namespace 自定义资源。

spec.awsConfiguration.id

类型:字符串

可选的

私有端点网络接口的ID 。此参数为强制参数,且仅限于 AWS私有端点。

spec.azureConfiguration.id

类型:字符串

可选的

私有端点网络接口的ID 。此参数为强制参数,且仅限于Azure私有端点。

spec.azureConfiguration.ipAddress

类型:字符串

可选的

Azure VNet 中私有端点的IP解决。此参数为强制参数,且仅限于Azure私有端点。

spec.connectionSecret.name

类型:字符串

可选的

不透明密钥 IDAPIAtlas Kubernetes OperatorAtlas的名称,其中包含Atlas Kubernetes Operator用于连接到Atlas的组织ID和API密钥。如果未指定, Atlas Kubernetes Operator会回退到以下任一项:

  • 父级 atlasProjectspec.connectionSecretRef.name 参数

  • 默认global 密钥(如果未为父 atlasProject 定义 spec.connectionSecretRef.name

对于独立的 CRD,此参数为必填项。

Atlas Kubernetes Operator 仅监视带有标签 的密钥,以避免监视不必要的atlas.mongodb.com/type=credentials 密钥

以下示例标记了密钥:

kubectl label secret the-user-password atlas.mongodb.com/type=credentials
spec.externalProjectRef.id

类型:字符串

可选的

私有端点所属项目的ID 。您必须指定现有Atlas项目的项目ID 。对于属于以下任一机构托管的项目的私有端点,必须使用此参数:

  • Atlas Kubernetes Operator的不同实例

  • Atlas Kubernetes Operator以外的工具

对于属于同一Atlas Kubernetes Operator实例托管的项目的部署,如果不使用 spec.externalProjectRef.id,请使用 spec.projectRef.name

一个私有端点只能属于一个项目。要为多个项目定义相同的私有端点,请为每个项目创建自定义资源定义。

spec.gcpConfiguration.endpoints

类型:数组

可选的

组成此端点群组的各个私有端点的列表。此参数为强制参数,且仅限于 Google Cloud私有端点。

spec.gcpConfiguration.endpoints.[n].ipAddress

类型:字符串

可选的

给定 Google Cloud 私有端点解析的IP解决。此参数为强制参数,且仅限于 Google Cloud私有端点。

spec.gcpConfiguration.endpoints.[n].name

类型:字符串

可选的

唯一标识给定 Google Cloud 私有端点的名称。此参数为强制参数,且仅限于 Google Cloud私有端点。

spec.gcpConfiguration.groupName

类型:字符串

可选的

唯一标识一设立Google Cloud私有端点的名称。此参数为强制参数,且仅限于 Google Cloud私有端点。

spec.gcpConfiguration.projectId

类型:字符串

可选的

您的私有端点所属的 Google Cloud项目的唯一标识符。

spec.projectRef.name

类型:字符串

可选的

私有端点所属项目的名称。您必须指定现有的 自定义资源。此参数仅适用于属于由同一实例Atlas KubernetesAtlasProject Operator托管的项目的私有端点。

对于属于以下任一机构托管的项目的部署:

  • Atlas Kubernetes Operator的不同实例

  • Atlas Kubernetes Operator以外的工具

使用 spec.externalProjectRef.id

一个私有端点只能属于一个项目。要为多个项目定义相同的私有端点,请为每个项目创建自定义资源定义。

spec.projectRef.namespace

类型:字符串

可选的

AtlasProject中指定的spec.projectRef.name 自定义资源所在的命名空间。

对于属于以下任一机构托管的项目的部署:

  • Atlas Kubernetes Operator的不同实例

  • Atlas Kubernetes Operator以外的工具

请勿设立此参数。

spec.provider

类型:字符串

必需

要为其创建私有端点服务的云服务提供商的名称。

spec.region

类型:字符串

必需

要在其中创建私有端点服务的云提供商地区。

后退

AtlasBackupCompliancePolicy