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

AtlasDeployment 自定义资源

在此页面上

  • 示例
  • 状态示例
  • 配置示例
  • 其他选项示例
  • 无服务器实例示例
  • 多区域集群示例
  • 多个云服务提供商示例
  • 参数

AtlasDeployment自定义资源在 Atlas 中配置 MongoDB cluster 或无服务器实例。当您创建AtlasDeployment自定义资源时,Atlas Kubernetes Operator 会尝试在 Atlas 中创建或更新集群或无服务器实例。

重要

Atlas Kubernetes Operator 2.0 破坏性变更 (breaking change)所需的操作

  • 在 Atlas Kubernetes Operator 2.0 中,deploymentSpec 取代了advancedDeploymentSpec AtlasDeployment自定义资源中的 。您必须按如下方式更新AtlasDeployment自定义资源:

    • 如果使用advancedDeploymentSpec ,请将其重命名为deploymentSpec 。 您无需更改任何格式。

    • 如果您在Atlas Kubernetes Operator 之前使用deploymentSpec2.0 ,请重写AtlasDeployment 自定义资源以匹配 示例中使用的格式。

  • Atlas Kubernetes Operator 使用资源文件来托管 Atlas 配置。从 Atlas Kubernetes Operator 2.0 开始,您在 Kubernetes 中删除的自定义资源将不再在 Atlas 中删除。相反,Atlas Kubernetes Operator 会停止管理这些资源。例如,如果您在 Kubernetes 中删除AtlasProject自定义资源,Atlas Kubernetes Operator 将不再自动从 Atlas 中删除相应的项目,从而防止意外删除。 要了解更多信息,包括如何将此行为恢复为 Atlas Kubernetes Operator 2.0 之前使用的默认行为,请参阅新默认值:Atlas Kubernetes Operator 2.0 中的删除保护。

Atlas Kubernetes Operator 根据您在AtlasDeployment自定义资源中指定的值执行以下操作之一:

  • 如果您指定spec.deploymentSpec下的字段值, Atlas Kubernetes Operator将使用Atlas Clusters API资源来创建新集群或更新现有集群。

  • 如果您指定spec.serverlessSpec下的字段值,Atlas Kubernetes Operator 将使用 Atlas Serverless Instance API 资源来创建新的无服务器实例或更新现有的无服务器实例。

创建或更新集群或无服务器实例最多可能需要 10 分钟。 Atlas Kubernetes Operator 监控更新过程。

您可以运行以下命令来检查状态:

kubectl get atlasdeployment -o yaml

以下示例显示了正在配置的集群的状态部分:

status:
conditions:
- lastTransitionTime: "2021-03-18T16:32:43Z"
status: "False"
type: ClusterReady
reason: ClusterCreating
message: Cluster is provisioning

当集群或无服务器实例准备就绪时, ClusterReady状态将更改为True

以下示例显示了ClusterReady状态为TrueAtlasDeployment资源:

apiVersion: atlas.mongodb.com/v1
kind: AtlasDeployment
metadata:
name: my-atlas-cluster
namespace: mongodb-atlas-system
spec:
projectRef:
name: my-project
deploymentSpec:
name: test-cluster
tags:
- key: "environment"
value: "production"
replicationSpecs:
- zoneName: US-Zone
numShards: 3
regionConfigs:
- regionName: CENTRAL_US
providerName: GCP
backingProviderName: GCP
priority: 7
electableSpecs:
instanceSize: M10
nodeCount: 3
status:
conditions:
- lastTransitionTime: "2021-03-18T16:32:43Z"
status: "True"
type: Ready
- lastTransitionTime: "2021-03-18T16:32:43Z"
status: "True"
type: ClusterReady
connectionStrings:
standard: mongodb://test-cluster-shard-00-00.kpc8f.mongodb.net:27017,test-cluster-shard-00-01.kpc8f.mongodb.net:27017,test-cluster-shard-00-02.kpc8f.mongodb.net:27017/?ssl=true&authSource=admin&replicaSet=atlas-1gm1pv-shard-0
standardSrv: mongodb+srv://test-cluster.kpc8f.mongodb.net
mongoDBVersion: 6.0
mongoURIUpdated: "2021-03-12T12:21:41Z"
observedGeneration: 1
stateName: IDLE

以下示例显示了为自动伸缩多区域集群配置的AtlasDeployment自定义资源规范:

apiVersion: atlas.mongodb.com/v1
kind: AtlasDeployment
metadata:
name: test-cluster-name
namespace: mongodb-atlas-system
spec:
projectRef:
name: development
deploymentSpec:
clusterType: REPLICASET
name: service-name
tags:
- key: "environment"
value: "production"
backupEnabled: true
replicationSpecs:
- numShards: 1
regionConfigs:
- regionName: EASTERN_US
providerName: GCP
autoScaling:
diskGB:
enabled: true
compute:
enabled: true
scaleDownEnabled: true
minInstanceSize: M30
maxInstanceSize: M40
analyticsSpecs:
instanceSize: M30
nodeCount: 1
electableSpecs:
instanceSize: M30
nodeCount: 3
priority: 7
readOnlySpecs:
instanceSize: M30
nodeCount: 1

以下示例显示了配置有一些附加选项AtlasDeployment自定义资源规范。

apiVersion: atlas.mongodb.com/v1
kind: AtlasDeployment
metadata:
name: my-atlas-cluster
spec:
projectRef:
name: my-project
deploymentSpec:
name: test-cluster
tags:
- key: "environment"
value: "production"
replicationSpecs:
- zoneName: Zone 1
regionConfigs:
- electableSpecs:
instanceSize: M10
nodeCount: 3
providerName: AWS
regionName: US_EAST_1
priority: 7
processArgs:
javascriptEnabled: false

以下示例显示了为无服务器实例配置的AtlasDeployment自定义资源规范:

apiVersion: atlas.mongodb.com/v1
kind: AtlasDeployment
metadata:
name: test-cluster-name
namespace: mongodb-atlas-system
spec:
projectRef:
name: development
serverlessSpec:
name: serverless-instance
tags:
- key: "environment"
value: "production"
providerSettings:
providerName: AWS
regionName: US_EAST_1

集群可以跨区域和云服务提供商。 要了解更多信息,请参阅注意事项。

注意

Atlas集群 API 资源使用v1.5 Atlas API版本发送请求,而 Atlas Kubernetes Operator apiVersion字段使用v1 。 在本例中, v1指的是 Kubernetes API的版本。

以下示例显示了为多区域集群配置的AtlasDeployment自定义资源规范:

apiVersion: atlas.mongodb.com/v1
kind: AtlasDeployment
metadata:
name: my-atlas-cluster
spec:
projectRef:
name: my-project
deploymentSpec:
clusterType: REPLICASET
name: tenantCluster
tags:
- key: "environment"
value: "production"
replicationSpecs:
- zoneName: Zone 1
regionConfigs:
priority: 7
- electableSpecs:
instanceSize: M10
nodeCount: 3
providerName: AWS
regionName: US_EAST_1

以下示例显示了配置为跨多个云服务提供商的AtlasDeployment自定义资源规范:

apiVersion: atlas.mongodb.com/v1
kind: AtlasDeployment
metadata:
name: my-atlas-cluster
spec:
projectRef:
name: my-project
deploymentSpec:
clusterType: REPLICASET
name: tenantCluster
tags:
- key: "environment"
value: "production"
replicationSpecs:
- regionConfigs:
- electableSpecs:
instanceSize: M10
nodeCount: 3
providerName: AWS
regionName: US_EAST_1
priority: 7
- electableSpecs:
instanceSize: M10
nodeCount: 2
providerName: AZURE
regionName: US_EAST_2
priority: 6
- electableSpecs:
instanceSize: M10
nodeCount: 2
providerName: GCP
regionName: CENTRAL_US
priority: 5

本部分介绍一些可用的关键AtlasDeployment自定义资源参数。

要自定义规范,请参阅这些描述、可用示例和API文档。

spec.backupRef

类型:对象

Optional

包含要应用的AtlasBackupSchedule自定义资源详细信息的列表。 您可以为每个集群指定一个备份安排。

spec.backupRef.name

类型:字符串

Optional

metadata.name 要应用的备份安排的AtlasBackupSchedule自定义资源中的值。您只能为每个集群指定一个备份安排,但可以为多个集群使用相同的备份安排。

如果省略此参数,Atlas 不会将备份配置应用于此集群。

spec.backupRef.namespace

类型:字符串

Optional

字符串,表示包含要应用的备份安排的AtlasBackupSchedule自定义资源的命名空间。

spec.deploymentSpec

类型:数组

可选的

包含来自API的集群参数的列表。 有关可用参数的完整列表,请参阅 Atlas集群 API。

重要

您必须在配置中指定spec.deploymentSpecspec.serverlessSpec

spec.deploymentSpec.clusterType

类型:字符串

可选的

人类可读标签,用于标识要创建的集群类型。

什么时候应该使用这个参数?

条件
必要性
您设立spec.deploymentSpec.replicationSpecs
必需
您正在部署全球集群。
必需
您正在部署非全局副本集和分片集群。
Optional

Atlas 接受:

集群类型
副本集(Replica Set)
复制集
分片
分片集群
GeoHARDED
spec.deploymentSpec.customZoneMapping

类型:数组

必需

包含将区域映射到地理区域的全局集群参数的列表。 有关可用参数的完整列表,请参阅Atlas Global Clusters API。

spec.deploymentSpec.customZoneMapping.location

类型:字符串

必需

表示映射到全球集群中区域的位置的代码。

spec.deploymentSpec.customZoneMapping.zone

类型:字符串

必需

人类可读标签,用于标识全局集群中的区域。

spec.deploymentSpec.diskSizeGB

类型:数字

Optional

表示主机根卷的容量,以 GB 为单位。 增加此数字可增加容量,最大可能值为4096 (4 TB)。 您必须为此值指定一个正数。

您无法为具有本地NVMe SSD的集群设置此值。

注意

如果您在任何地区为diskGB启用了自动伸缩,则无法编辑此选项。 要了解更多信息,请参阅spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.diskGB.enabled

对于 AWS 和 Google Cloud,专用集群的最小磁盘大小为 10 GB。如果您用较小的磁盘大小指定此设置,则 Atlas 默认使用最小磁盘大小值。

如果您的数据库部署包含Azure节点,此值必须与现有Azure磁盘类型(8、16、32、64、128、256、512、1024、2048 或 4096)相对应。

根据您选择的是默认值还是自定义值, Atlas 计算存储费的方式会有所不同。

Atlas 对单个副本集有磁盘容量限制,对于更高的集群层可扩展到4 TB。 要将集群总存储空间扩展到默认限制之外,您可以在项目设置中启用扩展存储。 为了适应未来的进一步扩展,我们建议您为长期扩展启用分片

如果数据库部署跨越云服务提供商, 该值默认为相关提供商的最小默认值。

要了解更多信息,请参阅存储容量。

spec.deploymentSpec.encryptionAtRestProvider

类型:字符串

Optional

托管此集群的客户密钥的云服务提供商。您必须设置此值才能为此集群启用使用客户托管密钥的静态加密,从而提供额外的加密层。要了解更多信息,请参阅使用KMS加密数据。

Atlas 接受以下值:

云服务提供商
AWS
Amazon Amazon Web Services
GCP
Google Cloud
AZURE
Microsoft Azure
无提供商;集群不使用客户托管的密钥加密数据。
spec.deploymentSpec.managedNamespaces

类型:数组

必需

列表,其中包含在要创建的指定全局集群中创建托管命名空间的信息。 有关可用参数的完整列表,请参阅 Atlas Global Clusters API。

spec.deploymentSpec.managedNamespaces.collection

类型:字符串

必需

要在此“全局集群”中管理的集合的人类可读标签。

spec.deploymentSpec.managedNamespaces.db

类型:字符串

必需

要在此全局集群中管理的数据库的人类可读标签。

spec.deploymentSpec.managedNamespaces.isCustomShardKeyHashed

类型:布尔值

Optional

Flag that indicates whether to hash the custom shard key for the specified collection. 此参数默认为false

  • 设置为true可为collection启用自定义分片键。

  • 设置为false可禁用集合的自定义分片键。 如果禁用,MongoDB 将使用范围分片。

要了解更多信息,请参阅哈希分片键。

spec.deploymentSpec.managedNamespaces.isCustomShardKeyUnique

类型:布尔值

Optional

指示指定collection的自定义分片键是否唯一的标志。此参数默认为false

  • 设置为true可为collection启用唯一的自定义分片键。

  • 设置为false可禁用collection的唯一自定义分片键。

spec.deploymentSpec.managedNamespaces.numInitialChunks

类型:整型

Optional

使用哈希分片键对空集合进行分片时最初创建的最小数据段数。

要学习;了解更多信息,请参阅对全局集合进行分片。

spec.deploymentSpec.managedNamespaces.presplitHashedZones

类型:布尔值

Optional

该标志指示 MongoDB Cloud 是否应为空或不存在的 collection 创建和分发初始数据块。此参数默认为false

  • 设置为true可让 MongoDB Cloud 为空或不存在的collection创建和分发初始数据块。

  • 设置为false可让 MongoDB Cloud 不为空或不存在的collection创建和分发初始数据块。

spec.deploymentSpec.mongoDBMajorVersion

类型:字符串

Optional

要部署的集群的版本。 Atlas 支持M10+集群的以下 MongoDB 版本:

  • 5.0

  • 6.0

  • 7.0

以下条件会产生以下结果:

条件
结果
您可以省略此参数,也可以省略spec.deploymentSpec.versionReleaseSystem参数。
Atlas 部署一个运行 MongoDB 7.0 的集群。
您可以省略此参数,并将spec.deploymentSpec.versionReleaseSystem参数设置为LTS
Atlas 部署一个运行 MongoDB 7.0 的集群。
您必须部署 MongoDB 7.0。
您可以指定此参数。
Atlas 始终使用发布了最新稳定补丁的指定版本部署该集群。
您将spec.deploymentSpec.versionReleaseSystem参数设置为CONTINUOUS
您必须省略此参数。
spec.deploymentSpec.pitEnabled

类型:布尔值

可选的

启用连续云备份的配置。 要启用连续云备份,必须为此设置指定true

spec.deploymentSpec.replicationSpecs

类型:对象数组

可选的

包含集群区域配置的列表。 将此参数用于多区域集群。 您必须设置spec.deploymentSpec.replicationSpecs.regionConfigs.regionNamespec.deploymentSpec.replicationSpecs

什么时候应该使用这个参数?

条件
必要性
Values
您正在部署全球集群。
必需
数组中的每个对象都代表 Atlas 部署 集群节点的区域。
您正在部署非全局副本集和分片集群。
Optional
该数组中有一个对象代表 Atlas 部署集群节点的位置。

如果指定此参数,则还必须指定spec.deploymentSpec.clusterTypespec.deploymentSpec.replicationSpecs.numShards

spec.deploymentSpec.replicationSpecs.numShards

类型:整型

可选的

正整数,指定要为分片集群部署的分片数量。

如果使用spec.deploymentSpec.replicationSpecs参数,则必须设置此参数。

Atlas 接受150 (含)。 默认值为1

  • 如果您指定值1设立spec.deploymentSpec.clusterType设置为SHARDED ,则Atlas将部署单分片的分片分片集群。

  • 如果您指定1设立spec.deploymentSpec.clusterType设置为REPLICASET ,则Atlas会部署副本集。

    不要为生产环境创建单分片的分片集群。单分片的分片集群无法提供与多分片配置相同的优势。

    提示

    另请参阅:

注意

为确保数据分布一致,在将集群从副本集升级到分片集群时,您不能增加同一更新请求中的分片数量。 当集群升级并且确保所有客户端都已重新连接到 MongoDB 路由器后,您可以添加其他分片。

spec.deploymentSpec.replicationSpecs.regionConfigs

类型:数组

必需

为地区设置的节点的硬件规格。每个regionConfigs对象都描述了该地区在选举中的优先级以及 Atlas 部署到该地区的 MongoDB 节点的数量和类型。

每个regionConfigs对象必须具有analyticsSpecs对象、 electableSpecs对象或readOnlySpecs对象。

  • M0M2M5集群仅需要electableSpecs

  • 专用集群可以指定任何这些规范,但必须在replicationSpec中至少有一个electableSpecs对象。

  • 每个硬件规格必须使用相同的instanceSize

spec.deploymentSpec.replicationSpecs.regionConfigs.analyticsSpecs

类型:对象

Optional

该区域所需分析节点的硬件规格。 分析节点处理分析数据,例如 Atlas 的 BI Connector 的报告查询。 分析节点为只读节点,永远不能成为主节点。

如果不指定此参数,Atlas 不会在此区域部署分析节点。

spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.diskGB.enabled

类型:布尔值

Optional

指示此数据库部署是否启用磁盘自动伸缩的标志。 此参数默认为true

  • 设置为true以启用磁盘自动扩展。

  • 设置为false以禁用磁盘自动扩展。

所选集群层的最大 RAM 容量和 oplog 大小会限制存储的自动扩展。 要了解更多信息,请参阅自定义存储。

spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.enabled

类型:布尔值

Optional

指示是否启用实例大小自动扩展的标志。 此参数默认为false

spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSize

类型:字符串

可选的

string ,表示数据库部署可自动扩展的最大实例大小(如 M40)。 如果将spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.enabled设置为true ,则必须指定此参数。

注意

如果您设置的最大实例大小小于数据库部署的 当前实例大小(已启用自动扩展), Atlas 会自动将当前实例大小扩展至 您指定的最大值。

例如,如果数据库部署的当前实例大小为M40 ,而您将最大实例大小设置为M30 ,则 Atlas 会自动将当前实例大小扩展到M30

如果Atlas更改了当前实例大小,而您没有更改Atlas Kubernetes Operator中的spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.instanceSize以匹配新的实例大小,Atlas Kubernetes Operator会在日志中显示警告,但不会阻止自动扩展。

spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.minInstanceSize

类型:字符串

可选的

string ,表示数据库部署可自动扩展的最小实例大小(如 M10)。 如果将spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.enabled设置为true ,则必须指定此参数。

注意

如果您设置的最小实例大小大于数据库部署的 当前实例大小(已启用自动扩展), Atlas 会自动将当前实例大小 扩展至您指定的最小值。

例如,如果数据库部署的当前实例大小为M10 ,而您将最小实例大小设置为M30 ,则 Atlas 会自动将当前实例大小扩展到M30

如果Atlas更改了当前实例大小,而您没有更改Atlas Kubernetes Operator中的spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.instanceSize以匹配新的实例大小,Atlas Kubernetes Operator会在日志中显示警告,但不会阻止自动扩展。

spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs

类型:对象

Optional

该地区可选举节点的硬件规格。 可选举节点可以成为主节点,并且可以启用本地读取。

如果不指定该选项,Atlas 不会在该区域部署可选举节点。

spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.instanceSize

类型:字符串

可选的

此区域中实例大小的硬件规格。 每个实例大小都有默认的存储和内存容量。 您选择的实例大小会应用于实例大小内的所有数据承载主机。 要了解更多信息,请参阅Amazon Web ServicesGCPAzure自定义存储大小。

如果部署分片集群或全局集群,则必须选择M30或更大的实例大小。

如果您在部署集群后更改实例大小名称,Atlas 会将数据库部署更改为您指定的实例大小,除非它超出您在启用自动伸缩的情况下在spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.minInstanceSizespec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSize中指定的范围。 要了解详情,请参阅spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.minInstanceSizespec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSize

注意

如果您为计算字段启用了自动扩展,则无法编辑此选项。 要了解详情,请参阅spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.enabled

注意

您可以更改此设置,将M0M2M5集群升级到M10+集群。 但是,您无法将M0M2M5集群升级到其他免费或共享集群。 例如,您无法将M0集群升级到M5集群。

spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.nodeCount

类型:整型

可选的

Atlas 部署到该地区的可选举节点数量。可选举节点可以成为主节点,并且可以启用本地读取。

所有replicationSpecs.regionConfigs对象的electableSpecs.nodeCount总和必须为357

如果spec.deploymentSpec.replicationSpecs.regionConfigs.priority0 ,则无法创建可选举节点。

spec.deploymentSpec.replicationSpecs.regionConfigs.priority

类型:整型

必需

选举主节点时,优先考虑该地区。

如果您的regionConfigs只有readOnlySpecs和/或analyticsSpecs ,请将此值设置为0

如果您有多个regionConfigs对象(您的集群是多地区或多云),则它们的优先级必须按降序排列。最高优先级为7

例子

将最高优先级区域设置为7 ,将第二高优先级区域设置为6 ,将第三优先级区域设置为5 。 如果没有可选举节点,请将此值设置为0

如果您的地区已将electableSpecs.nodeCount设置为1或更高,则其优先级必须比replicationSpecs.regionConfigs数组中的另一地区低一级,除非是主节点。优先级最高的区域的优先级必须7 。 可能的最低优先级是1

优先级7地区标识集群的首选地区。Atlas 将主节点置于“首选地区”中。优先级17具有排他性:您不能为每个集群的多个地区分配给定优先级。

例子

如果有三个区域,则它们的优先级将分别为765 。 如果您再添加两个区域来支持可选举节点,则这些区域的优先级将分别为43

spec.deploymentSpec.replicationSpecs.regionConfigs.providerName

类型:字符串

可选的

Atlas 在其上预配主机的云服务提供商。

AWS
Amazon Amazon Web Services
GCP
Google Cloud Platform
AZURE
Microsoft Azure
spec.deploymentSpec.replicationSpecs.regionConfigs.regionName

类型:字符串

可选的

MongoDB 集群的物理位置。 您选择的区域会影响客户端访问数据库的网络延迟。

有关区域名称值的完整列表,请参阅云提供商参考页面:

对于多区域集群,请参阅spec.deploymentSpec.replicationSpecs 。 您必须设置spec.deploymentSpec.replicationSpecs.regionConfigs.regionNamespec.deploymentSpec.replicationSpecs

spec.deploymentSpec.replicationSpecs.regionConfigs.readOnlySpecs

类型:对象

Optional

地区中只读节点的硬件规格。只读节点永远不能成为主节点,但可以启用本地读取。

如果不指定此参数,Atlas 不会向该区域部署只读节点。

spec.deploymentSpec.replicationSpecs.zoneName

类型:字符串

Optional

人类可读标签,用于标识Global Cluster中的区域。 仅当您将spec.deploymentSpec.clusterType设置为GEOSHARDED时才提供此值。

spec.deploymentSpec.tags

类型:数组

Optional

包含标签(键值对)的列表,以便更好地了解、组织和识别数据库部署。 要了解更多信息,请参阅集群上的标签。

spec.deploymentSpec.versionReleaseSystem

类型:字符串

可选的

Atlas 用于该集群的发布节奏。 Atlas 接受:

  • CONTINUOUS:Atlas 使用最新的 MongoDB 版本创建集群。 Atlas 会自动将您的集群更新到最新的主要 MongoDB 快速版本。

  • LTS:Atlas 会使用您在spec.deploymentSpec.mongoDBMajorVersion参数中指定的 MongoDB 版本的最新补丁版本创建集群。 Atlas 会自动将集群更新到此 MongoDB 版本的后续补丁版本。 即使有较新的快速版本或主要 MongoDB 版本可用,Atlas 也不会将集群更新到这些版本。

    如果省略,则默认值为 LTS

    如果将此参数设置为CONTINUOUS ,则必须省略spec.deploymentSpec.mongoDBMajorVersion参数。

spec.processArgs

类型:对象

Optional

包含集群其他配置选项的对象。

spec.processArgs.defaultReadConcern

类型:字符串

Optional

string ,表示为此集群设立的读操作从MongoDB请求的默认确认级别

MongoDB 5.0集群默认为本地。

spec.processArgs.defaultWriteConcern

类型:字符串

Optional

string ,表示MongoDB为此集群设置的写入操作请求的默认确认级别

MongoDB 5.0及更高版本的集群默认为“多数”。

spec.processArgs.failIndexKeyTooLong

类型:布尔值

Optional

标志,用于指示在插入或更新所有索引条目都超过1024字节的文档时是否使操作失败并返回错误。 如果将其设置为falsemongod会写入超过此限制的文档,但不会对其进行索引。

此选项对应于param.failIndexKeyTooLong mongod参数。

spec.processArgs.javascriptEnabled

类型:布尔值

Optional

指示集群是否允许执行服务器端执行 JavaScript 的操作的标志。

spec.processArgs.minimumEnabledTlsProtocol

类型:整型

Optional

字符串,表示集群接受的传入连接的最低 TLS 版本。使用 TLS 1.0 或 1.1 的集群应考虑将 TLS 1.2 设置为最低 TLS 协议版本。

要了解更多信息,请参阅Atlas 支持哪些 TLS 版本?

此选项对应于net.ssl.disabledProtocols mongod配置文件选项。

spec.processArgs.noTableScan

类型:布尔值

Optional

该标志指示集群是否禁用执行需要集合扫描才能返回结果的查询。

此选项对应于notablescan mongod参数。

spec.processArgs.oplogSizeMB

类型:整型

Optional

指示集群 oplog 存储限制的数字,以兆字节为单位。 值为null表示集群使用 Atlas 计算的默认 oplog 大小。

此选项对应于replication.oplogSizeMB mongod配置文件选项。

spec.processArgs.sampleRefreshIntervalBIConnector

类型:整型

Optional

收集模式信息时要采样的表明每个数据库的文档数。

该参数对应于sampleSize mongsqld选项。

spec.processArgs.sampleSizeBIConnector

类型:整型

Optional

数字,表示mongsqld 进程重新采样数据以创建其关系模式的时间间隔(以秒为单位)。

此参数对应于sampleRefreshIntervalSecs mongsqld选项。

spec.projectRef.name

类型:字符串

必需

集群所属项目的名称。 您必须指定现有的AtlasProject自定义资源。

spec.serverlessSpec

类型:数组

可选的

包含来自API的无服务器实例参数的列表。 有关可用参数的完整列表,请参阅Atlas无服务器实例API。

重要

您必须在配置中指定spec.deploymentSpecspec.serverlessSpec

spec.serverlessSpec.privateEndpoints

类型:数组

Optional

包含无服务器实例的私有端点配置的列表。

spec.serverlessSpec.providerSettings

类型:对象

可选的

为运行MongoDB的预配主机指定设置的配置。 可用选项特定于云服务提供商。 要学习;了解更多信息,请参阅Amazon Web ServicesGCPAzure无服务器实例配置选项。

如果要创建或更新无服务器实例,必须指定此设置。

重要

以下设置已弃用,并将在未来版本中删除:

  • spec.serverlessSpec.providerSettings.DiskIOPS

  • spec.serverlessSpec.providerSettings.DiskTypeName

  • spec.serverlessSpec.providerSettings.EncryptEBSVolume

  • spec.serverlessSpec.providerSettings.InstanceSizeName

  • spec.serverlessSpec.providerSettings.VolumeType

  • spec.serverlessSpec.providerSettings.AutoScaling

为其中任何设置提供值都不起作用。

spec.serverlessSpec.providerSettings.providerName

类型:字符串

可选的

Atlas 配置无服务器实例主机的云服务提供商。

Atlas 接受以下值:

AWS
Amazon Amazon Web Services
GCP
Google Cloud Platform
AZURE
Microsoft Azure
spec.serverlessSpec.providerSettings.regionName

类型:字符串

可选的

MongoDB 无服务器实例的物理位置。 您选择的区域会影响客户端访问数据库的网络延迟。

有关区域名称值的完整列表,请参阅云提供商参考页面:

spec.serverlessSpec.tags

类型:数组

Optional

包含标签(键值对)的列表,以便更好地了解、组织和识别数据库部署。 要了解更多信息,请参阅集群上的标签。

status.connectionStrings

类型:数组

必需

列表,其中包含用于访问集群的连接 URL。 该参数会在创建或更新集群后出现。

注意

您不能直接使用连接 URL。 Atlas 集群需要身份验证。 您必须创建至少一个AtlasDatabaseUser自定义资源,Kubernetes 集群中的应用程序才能连接到 Atlas 集群。 Atlas Kubernetes Operator 创建特殊 密钥 项目中的每个集群和数据库用户组合。Kubernetes 集群中的应用程序可以使用此 密钥 连接到 Atlas 集群。AtlasDatabaseUser自定义资源中的spec.scopes参数限制创建数据库用户的集群。

有关API中适用于集群的配置参数,请参阅 Atlas集群 API。

注意

以下参数在 Atlas API 中已弃用,Atlas Kubernetes Operator 不支持这些参数:

  • replicationSpec

  • replicationFactor

← AtlasProject 自定义资源