项目的自动化配置决定其MongoDB进程和代理的目标状态。 MongoDB Agent根据指定的目标构建部署。
自动化配置可能包含敏感信息,例如密码和键值。此资源允许您更新项目的自动化配置,而无需更新任何包含敏感信息的字段。
PUT /groups/{PROJECT-ID}/automationConfig/noSecrets向 端点发出的请求会忽略请求正文中自动化配置中包含敏感信息的任何字段,保持其当前值不变并更新所有其他字段。要更新完整的自动化配置(包括任何敏感信息),请使用 /groups/{PROJECT- ID}/automationConfig 端点。
要更新配置,请执行以下操作:
检索当前配置。
您可以使用 /groups/{PROJECT- ID}/automationConfig 端点获取完整配置,或使用 /groups/{PROJECT- ID}/automationConfig/noSecrets 端点获取包含敏感信息的编辑配置,例如密码或键值。
对当前配置的副本进行更改,仅更改要修改的项目。
PUT使用 将整个配置替换为请求正文中的更新配置。您必须使用PUT。请勿使用PATCH。当您提交更新时,Cloud Manager 会对数据进行内部修改,然后保存您的新配置版本。
注意
要查看有关如何更新自动化配置的教程,请参阅更新自动化配置资源教程。
MongoDB 代理不断轮询 Cloud Manager 以了解配置更改,并在发生配置更新时获取更新。然后,代理会调整其实时进程的状态以进行匹配。
警告
使用 PUT请求更改自动化配置可能会导致集群停机。在将更改应用生产环境之前,请在较低环境中进行测试。
警告
在Cloud Manager Administration API中没有提供防止并发修改的保护措施。如果两个管理员都从基于当前版本的配置开始,进行各自的修改,然后提交各自的修改,则以后来修改者为准。
警告
在启用身份验证之前更新代理用户名
自动化配置提供了使用 API在集群上启用身份验证的唯一方法。 要启用身份验证,请先使用"用户名": "自动化"调用以下端点:
所需角色
此资源需要Project Automation Admin角色。
Resource
基本 URL: https://cloud.mongodb.com/api/public/v1.0
PUT /groups/{PROJECT-ID}/automationConfig/noSecrets
请求
路径参数
名称 | 类型 | 必要性 | 说明 |
|---|---|---|---|
PROJECT-ID | 字符串 | 必需 | 拥有自动化配置的群组的唯一标识符。 |
查询参数
以下查询参数为可选参数:
正文参数
要查看这些参数,请参阅自动化配置参数。
响应
要查看这些参数,请参阅自动化配置参数。
请求示例
以下内容将自动化配置替换为/Users/admin/updated-conf.json中保存的更新配置。 有关更新的配置文档的示例,请参阅自动化配置示例。
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --include \ --request PUT "https://cloud.mongodb.com/api/public/v1.0/groups/{PROJECT-ID}/automationConfig/noSecrets?pretty=true" \ --data-binary "@/Users/admin/updated-conf.json"
响应示例
响应标头
401 Unauthorized Content-Type: application/json;charset=ISO-8859-1 Date: {dateInUnixFormat} WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=false Content-Length: {requestLengthInBytes} Connection: keep-alive
200 OK Vary: Accept-Encoding Content-Type: application/json Strict-Transport-Security: max-age=300 Date: {dateInUnixFormat} Connection: keep-alive Content-Length: {requestLengthInBytes} X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
响应体
要查看此配置的示例,请参阅自动化配置示例。