AtlasDeployment自定义资源在 Atlas 中配置 MongoDB cluster 或无服务器实例。当您创建AtlasDeployment自定义资源时,Atlas Kubernetes Operator 会尝试在 Atlas 中创建或更新集群或无服务器实例。
重要
Atlas Kubernetes Operator 2.0 破坏性变更 (breaking change)所需的操作
在 Atlas Kubernetes Operator 2.0 中,
deploymentSpec取代了advancedDeploymentSpecAtlasDeployment自定义资源中的 。您必须按如下方式更新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 资源来创建新的无服务器实例或更新现有的无服务器实例。
创建免费套餐Atlas 集群需要不到 15 秒。
创建或更新 Flex集群或专用集群最多可能需要 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状态为True的AtlasDeployment资源:
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自定义资源参数。
有关集群可用参数的完整列表,请参阅 Atlas 集群 API。
有关无服务器实例的可用参数的完整列表,请参阅 Atlas无服务器实例 API。
要自定义规范,请参阅这些描述、可用示例和API文档。
spec.backupRef类型:对象
Optional
包含要应用的
AtlasBackupSchedule自定义资源详细信息的列表。 您可以为每个集群指定一个备份安排。
spec.backupRef.name类型:字符串
Optional
metadata.name要应用的备份安排的AtlasBackupSchedule自定义资源中的值。您只能为每个集群指定一个备份安排,但可以为多个集群使用相同的备份安排。如果省略此参数,Atlas 不会将备份配置应用于此集群。
spec.backupRef.namespace类型:字符串
Optional
字符串,表示包含要应用的备份安排的
AtlasBackupSchedule自定义资源的命名空间。
spec.deploymentSpec类型:数组
可选的
包含来自API的集群参数的列表。 有关可用参数的完整列表,请参阅 Atlas集群 API。
重要
您必须在配置中指定
spec.deploymentSpec或spec.serverlessSpec。
spec.deploymentSpec.clusterType类型:字符串
可选的
人类可读标签,用于标识要创建的集群类型。
什么时候应该使用这个参数?
条件必要性必需
您正在部署全球集群。
必需
您正在部署非全局副本集和分片集群。
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.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.replicationSpecs类型:对象数组
可选的
包含集群区域配置的列表。 将此参数用于多区域集群。 您必须设置
spec.deploymentSpec.replicationSpecs.regionConfigs.regionName或spec.deploymentSpec.replicationSpecs。什么时候应该使用这个参数?
条件必要性Values您正在部署全球集群。
必需
数组中的每个对象都代表 Atlas 部署 集群节点的区域。
您正在部署非全局副本集和分片集群。
Optional
该数组中有一个对象代表 Atlas 部署集群节点的位置。
如果指定此参数,则还必须指定
spec.deploymentSpec.clusterType和spec.deploymentSpec.replicationSpecs.numShards。
spec.deploymentSpec.replicationSpecs.numShards类型:整型
可选的
正整数,指定要为分片集群部署的分片数量。
如果使用
spec.deploymentSpec.replicationSpecs参数,则必须设置此参数。Atlas 接受
1至50(含)。 默认值为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对象。M0、M2或M5集群仅需要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。设置为
true可启用实例大小自动扩展。 如果启用,则必须为spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSize指定一个值。设置为
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 Services 、 GCP和Azure自定义存储大小。
如果部署分片集群或全局集群,则必须选择
M30或更大的实例大小。如果您在部署集群后更改实例大小名称,Atlas 会将数据库部署更改为您指定的实例大小,除非它超出您在启用自动伸缩的情况下在
spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.minInstanceSize和spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSize中指定的范围。 要了解详情,请参阅spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.minInstanceSize和spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.maxInstanceSize。注意
如果您为计算字段启用了自动扩展,则无法编辑此选项。 要了解详情,请参阅
spec.deploymentSpec.replicationSpecs.regionConfigs.autoScaling.compute.enabled。注意
您可以更改此设置,将
M0、M2或M5集群升级到M10+集群。 但是,您无法将M0、M2或M5集群升级到其他免费或共享集群。 例如,您无法将M0集群升级到M5集群。
spec.deploymentSpec.replicationSpecs.regionConfigs.electableSpecs.nodeCount类型:整型
可选的
Atlas 部署到该地区的可选举节点数量。可选举节点可以成为主节点,并且可以启用本地读取。
所有
replicationSpecs.regionConfigs对象的electableSpecs.nodeCount总和必须为3、5或7。如果
spec.deploymentSpec.replicationSpecs.regionConfigs.priority为0,则无法创建可选举节点。
spec.deploymentSpec.replicationSpecs.regionConfigs.priority类型:整型
必需
选举主节点时,优先考虑该地区。
如果您的
regionConfigs只有readOnlySpecs和/或analyticsSpecs,请将此值设置为0。如果您有多个
regionConfigs对象(您的集群是多地区或多云),则它们的优先级必须按降序排列。最高优先级为7。例子
将最高优先级区域设置为
7,将第二高优先级区域设置为6,将第三优先级区域设置为5。 如果没有可选举节点,请将此值设置为0。如果您的地区已将
electableSpecs.nodeCount设置为1或更高,则其优先级必须比replicationSpecs.regionConfigs数组中的另一地区低一级,除非是主节点。优先级最高的区域的优先级必须为7。 可能的最低优先级是1。优先级
7地区标识集群的首选地区。Atlas 将主节点置于“首选地区”中。优先级1到7具有排他性:您不能为每个集群的多个地区分配给定优先级。例子
如果有三个区域,则它们的优先级将分别为
7、6和5。 如果您再添加两个区域来支持可选举节点,则这些区域的优先级将分别为4和3。
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.regionName或spec.deploymentSpec.replicationSpecs。
spec.deploymentSpec.replicationSpecs.regionConfigs.readOnlySpecs类型:对象
Optional
地区中只读节点的硬件规格。只读节点永远不能成为主节点,但可以启用本地读取。
如果不指定此参数,Atlas 不会向该区域部署只读节点。
spec.deploymentSpec.replicationSpecs.zoneName类型:字符串
Optional
人类可读标签,用于标识Global Cluster中的区域。 仅当您将
spec.deploymentSpec.clusterType设置为GEOSHARDED时才提供此值。
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字节的文档时是否使操作失败并返回错误。 如果将其设置为
false,mongod会写入超过此限制的文档,但不会对其进行索引。此选项对应于
param.failIndexKeyTooLongmongod参数。
spec.processArgs.javascriptEnabled类型:布尔值
Optional
指示集群是否允许执行服务器端执行 JavaScript 的操作的标志。
此选项对应于修改集群中每个
security.javascriptEnabledmongod和mongos的 配置文件选项。
spec.processArgs.minimumEnabledTlsProtocol类型:整型
Optional
字符串,表示集群接受的传入连接的最低 TLS 版本。使用 TLS 1.0 或 1.1 的集群应考虑将 TLS 1.2 设置为最低 TLS 协议版本。
要了解更多信息,请参阅Atlas 支持哪些 TLS 版本?
此选项对应于
net.ssl.disabledProtocolsmongod配置文件选项。
spec.processArgs.noTableScan类型:布尔值
Optional
该标志指示集群是否禁用执行需要集合扫描才能返回结果的查询。
此选项对应于
notablescanmongod参数。
spec.processArgs.oplogSizeMB类型:整型
Optional
指示集群 oplog 存储限制的数字,以兆字节为单位。 值为
null表示集群使用 Atlas 计算的默认 oplog 大小。此选项对应于
replication.oplogSizeMBmongod配置文件选项。
spec.processArgs.sampleRefreshIntervalBIConnector类型:整型
Optional
收集模式信息时要采样的表明每个数据库的文档数。
该参数对应于sampleSize mongsqld选项。
spec.processArgs.sampleSizeBIConnector类型:整型
Optional
数字,表示mongsqld 进程重新采样数据以创建其关系模式的时间间隔(以秒为单位)。
此参数对应于sampleRefreshIntervalSecs mongsqld选项。
spec.projectRef.name类型:字符串
必需
集群所属项目的名称。 您必须指定现有的
AtlasProject自定义资源。
spec.serverlessSpec类型:数组
可选的
包含来自API的无服务器实例参数的列表。 有关可用参数的完整列表,请参阅Atlas无服务器实例API。
重要
您必须在配置中指定
spec.deploymentSpec或spec.serverlessSpec。
spec.serverlessSpec.privateEndpoints类型:数组
Optional
包含无服务器实例的私有端点配置的列表。
spec.serverlessSpec.providerSettings类型:对象
可选的
为运行MongoDB的预配主机指定设置的配置。 可用选项特定于云服务提供商。 要学习;了解更多信息,请参阅Amazon Web Services 、 GCP和Azure无服务器实例配置选项。
如果要创建或更新无服务器实例,必须指定此设置。
重要
以下设置已弃用,并将在未来版本中删除:
spec.serverlessSpec.providerSettings.DiskIOPSspec.serverlessSpec.providerSettings.DiskTypeNamespec.serverlessSpec.providerSettings.EncryptEBSVolumespec.serverlessSpec.providerSettings.InstanceSizeNamespec.serverlessSpec.providerSettings.VolumeTypespec.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 无服务器实例的物理位置。 您选择的区域会影响客户端访问数据库的网络延迟。
有关区域名称值的完整列表,请参阅云提供商参考页面:
status.connectionStrings类型:数组
必需
列表,其中包含用于访问集群的连接 URL。 该参数会在创建或更新集群后出现。
注意
您不能直接使用连接URL 。Atlas集群需要身份验证。您必须创建至少一个
AtlasDatabaseUser自定义资源,Kubernetes集群中的应用程序才能连接到Atlas 集群。Atlas Kubernetes Operator为项目中的每个集群和数据库用户组合创建一个特殊密钥。Kubernetes集群中的应用程序可以使用此密钥连接到Atlas 集群。AtlasDatabaseUser自定义资源中的spec.scopes参数限制创建数据库用户的集群。
有关API中适用于集群的配置参数,请参阅 Atlas集群 API。
注意
以下参数在 Atlas API 中已弃用,Atlas Kubernetes Operator 不支持这些参数:
replicationSpecreplicationFactor