更新一个集群的高级配置选项
已弃用
更新指定项目中一个集群的高级配置详细信息。集群包含一组维护相同数据集的群组。高级配置详细信息包括读/写关注(write concern)、索引和oplog限制以及其他数据库设置。要使用此资源,请求的服务帐户或API密钥必须具有“项目集群经理”角色。此功能不适用于 M0
免费集群、M2
和 M5
共享层级集群、Flex 集群或无服务器集群。
路径参数
-
用于标识项目的唯一 24-十六进制数字字符串。 使用 /groups 端点检索身份验证的用户有权访问权限的所有项目。
注意:群组和项目是同义词。您的群组 ID 与项目 ID 相同。对于现有群组,群组/项目 ID 保持不变。资源和相应的端点使用“群组”一词。
格式应符合以下模式:
^([a-f0-9]{24})$
。 -
用于标识集群的人类可读标签。
格式应符合以下模式:
^[a-zA-Z0-9][a-zA-Z0-9-]*$
。
查询参数
-
指示应用程序是否将响应包装在
envelope
JSON 对象中的标志。某些 API 客户端无法访问 HTTP 响应标头或状态代码。要修复此问题,请在查询中设置 Envelope=true。返回结果列表的端点将结果对象用作 envelope。应用程序将状态参数添加到响应正文中。默认值为
false
。 -
指示响应正文是否应采用 prettyprint 格式的标记。
默认值为
false
。Prettyprint
body
必需
要为指定项目中的一个集群添加的高级配置详细信息。
-
图像前和图像后的最小保留时间(以秒为单位)。
默认值为
-1
。该选项对应于 ``changeStreamOptionspreAndPostImagesexpireAfterSeconds``集群参数。此设置控制变更流前像和后像的保留策略。前像和后像分别是文档修改之前和之后的文档版本 ``expireAfterSeconds` ` 控制MongoDB保留前映像和后映像的时间当设立为 -1(关闭)时, MongoDB使用默认保留策略:保留前映像和后映像,直到从oplog中删除相应的变更流事件为止设立前后图像的最短保留时间,请指定一个大于零的整数值将其设置过低可能会增加Realm同步或触发器处理中断的风险默认值为 -1(关闭) -
源分片和接收分片上用于数据段迁移的线程数。线程数不应超过分片集群中 CPU 内核总数的一半。
该选项对应于 `chunkMigrationConcurrency`mongod` 配置文件选项 -
TLS 1.2 的自定义 OpenSSL 密码套件列表。 此字段仅在
tlsCipherConfigMode
设立为CUSTOM
时有效。值为
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
或TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
。 -
单个读取操作必须在默认时间限制内完成(以毫秒为单位)。
该选项对应于 defaultMaxTimeMS集群参数 -
为该集群的读操作设置从 MongoDB 请求的默认确认级别。
MongoDB 4.4 集群默认为
available
。MongoDB 5.0 及更高版本集群默认为local
。值为
local
或available
。默认值为available
。该选项对应于全局默认的读关注(read concern) -
当没有写入操作被驱动程序指定时,请求 MongoDB 确认的默认级别。
该选项对应隐式默认写关注(write concern) -
该标志指示是否可以插入或更新所有索引条目不超过 1024 字节的文档。如果将其设立为 false,mongod 会写入超过此限制的文档,但不会对其索引。从MongoDB 4.4 开始,此参数已删除。
默认值为
true
。该选项对应于“mongod”配置文件的“failIndexKeyTooLong”选项 -
指示集群是否允许执行服务器端执行 JavaScript 的操作的标志。 使用 8.0 + 时,我们建议禁用服务器端 JavaScript 并使用聚合管道的操作符作为性能更高的替代方案。
该选项对应于修改集群中每个“ mongod”和“mongos ”的“securityjavascriptEnabled”配置文件选项 -
集群接受的用于传入连接的最低传输层安全性 (TLS) 版本。使用 TLS 1.0 或 1.1 的集群应考虑将 TLS 1.2 设置为最低 TLS 协议版本。
值为
TLS1_0
、TLS1_1
或TLS1_2
。该选项对应于“netssldisabledProtocols”“mongod”配置文件选项 -
该标志指示集群是否禁用执行需要集合扫描才能返回结果的查询。
该选项对应于“notablescan”“mongod”配置文件选项 -
集群 oplog 的最小保留窗口以小时为单位。null 值表示集群使用 MongoDB Cloud 计算的默认最小 oplog 窗口。
该选项对应于“storageoplogMinRetentionHours”“mongod”配置文件选项 -
集群 oplog 的存储限制(以兆字节为单位)。null 值表示集群使用 MongoDB Cloud 计算的默认 oplog 大小。
该选项对应于“replicationoplogSizeMB”“mongod”配置文件选项 -
可设置为 1(禁用)或 3(启用)。当设置为 3 时,Atlas 将在 MongoDB 日志中包含经过编辑和匿名的 $queryStats 输出。$queryStats 输出不包含文字或字段值。启用此设置可能会影响集群的性能。
此选项对应于 logComponentVerbosity服务器参数的 queryStats 组件 -
mongsqld 进程重新进行数据采样以创建其关系模式的时间间隔(以秒为单位)。
最小值为
0
。默认值为0
。该选项对应于“sampleRefreshIntervalSecs”“mongsqld”选项 -
收集架构信息时要采样的每个数据库的文档数。
最小值为
0
。该选项对应于“sampleSize”“mongsqld”选项 -
TLS 密码套件配置模式。 默认模式使用默认密码套件。 自定义模式允许您为 TLS 1.2 和 TLS 1.3 指定自定义密码套件。
值为
CUSTOM
或DEFAULT
。 -
多文档事务的生命周期(以秒为单位)。Atlas 认为超过此限制的事务已过期,因此会通过定期清理过程予以中止。
最小值为
1
。该选项对应于“transactionLifetimeLimitSeconds”“mongod”配置文件选项
atlas api clusters updateGroupClusterProcessArgs --help
import (
"os"
"context"
"log"
sdk "go.mongodb.org/atlas-sdk/v20230201001/admin"
)
func main() {
ctx := context.Background()
clientID := os.Getenv("MONGODB_ATLAS_CLIENT_ID")
clientSecret := os.Getenv("MONGODB_ATLAS_CLIENT_SECRET")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterProcessArgsApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
UpdateGroupClusterProcessArgsWithParams(ctx, params).
Execute()
}
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2023-02-01+json" \
--header "Content-Type: application/json" \
-X PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/processArgs" \
-d '{ <Payload> }'
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2023-02-01+json" \
--header "Content-Type: application/json" \
-X PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/processArgs" \
-d '{ <Payload> }'
{
"changeStreamOptionsPreAndPostImagesExpireAfterSeconds": -1,
"chunkMigrationConcurrency": 42,
"customOpensslCipherConfigTls12": [
"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
],
"defaultMaxTimeMS": 42,
"defaultReadConcern": "available",
"defaultWriteConcern": "string",
"failIndexKeyTooLong": true,
"javascriptEnabled": true,
"minimumEnabledTlsProtocol": "TLS1_0",
"noTableScan": true,
"oplogMinRetentionHours": 42.0,
"oplogSizeMB": 42,
"queryStatsLogVerbosity": 42,
"sampleRefreshIntervalBIConnector": 0,
"sampleSizeBIConnector": 42,
"tlsCipherConfigMode": "CUSTOM",
"transactionLifetimeLimitSeconds": 42
}
{
"changeStreamOptionsPreAndPostImagesExpireAfterSeconds": -1,
"chunkMigrationConcurrency": 42,
"customOpensslCipherConfigTls12": [
"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
],
"defaultMaxTimeMS": 42,
"defaultReadConcern": "available",
"defaultWriteConcern": "string",
"failIndexKeyTooLong": true,
"javascriptEnabled": true,
"minimumEnabledTlsProtocol": "TLS1_0",
"noTableScan": true,
"oplogMinRetentionHours": 42.0,
"oplogSizeMB": 42,
"queryStatsLogVerbosity": 42,
"sampleRefreshIntervalBIConnector": 0,
"sampleSizeBIConnector": 42,
"tlsCipherConfigMode": "CUSTOM",
"transactionLifetimeLimitSeconds": 42
}
{
"error": 400,
"detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
"reason": "Bad Request",
"errorCode": "VALIDATION_ERROR"
}
{
"error": 401,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Unauthorized",
"errorCode": "NOT_ORG_GROUP_CREATOR"
}
{
"error": 403,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Forbidden",
"errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
{
"error": 404,
"detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
"reason": "Not Found",
"errorCode": "RESOURCE_NOT_FOUND"
}
{
"error": 500,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Internal Server Error",
"errorCode": "UNEXPECTED_ERROR"
}