Docs 菜单
Docs 主页
/
MongoDB Ops Manager
/ / / /

为一个集群创建一个恢复作业

在此页面上

  • Resource
  • 请求路径参数
  • 请求查询参数
  • 请求正文参数
  • 响应
  • 响应文档
  • results 嵌入式文档
  • 请求示例
  • 示例响应
  • 响应标头
  • 响应体

基本 URL: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0

POST /groups/{PROJECT-ID}/clusters/{CLUSTER-ID}/restoreJobs
名称
类型
说明
PROJECT-ID
字符串
拥有作业的项目的唯一标识符。
CLUSTER-ID
字符串
作业所代表的集群的唯一标识符。

以下查询参数为可选参数:

名称
类型
必要性
说明
默认
pretty
布尔
Optional
指示响应正文是否应采用 Prettyprint 的标志 格式。
false
envelope
布尔
Optional

指示是否将响应包装在信封中的标志。

某些 API 客户端无法访问 HTTP 响应标头或状态代码。要解决这个问题,可在查询中设置 envelope=true

对于返回一个结果的端点,响应体包括:

名称
说明
status
HTTP 响应代码
content
预期响应正文
false
名称
类型
必要性
说明
delivery
对象
必需
恢复的快照数据的传输方法和详细信息。
delivery
.expires
字符串
可选的

ISO8601 格式的时间戳 UTC 格式的日期和时间,在此之后 URL 将不再可用。

如果设置delivery.expires ,则无法设置delivery.expirationHours

delivery
.expirationHours
数字
可选的

恢复作业完成后,下载URL有效的小时数。

如果设置delivery.expirationHours ,则无法设置delivery.expires

delivery
.maxDownloads
数字
必需
下载URL的可使用次数。 该值必须为1或更大。
delivery
.methodName
字符串
必需
Ops Manager 传输数据的方式。设置为HTTP
snapshotId
字符串
必需
要恢复的快照的唯一标识符。

注意

条件

如果设立"delivery.methodName" : AUTOMATED_RESTORE" ,则必须设立delivery.targetGroupIddelivery.targetClusterId

从快照创建自动恢复。

名称
类型
必要性
说明
delivery
对象
必需
恢复的快照数据的传输方法和详细信息。
delivery
.methodName
字符串
必需

Ops Manager 传输数据的方式。设置为AUTOMATED_RESTORE

响应显示"delivery.methodName" : "HTTP" 。 自动恢复使用HTTP方法将恢复作业传送到目标托管。

重要提示:使用SCP的恢复交付已在MongoDB Ops Manager 4.0 中删除。

delivery
.targetClusterId
字符串
必需

目标集群的唯一标识符。 使用获取所有Atlas 备份快照获取快照端点的响应正文中返回的clusterId

如果目标集群上未启用备份,则“获取所有快照”端点将返回一个没有clusterId元素的空results数组,并且“获取快照”端点也不会返回clusterId元素。

delivery
.targetGroupId
字符串
必需
包含恢复作业的目标集群的项目的唯一标识符。
snapshotId
字符串
必需
要恢复的快照的唯一标识符。

从oplog时间戳创建自动恢复。

oplog恢复可与使用任何MongoDB版本的副本集或使用 4.2 或更高版本的FCV的分片集群一起使用。

名称
类型
必要性
说明
delivery
对象
必需
恢复的快照数据的传输方法和详细信息。
delivery
.methodName
字符串
必需

Ops Manager 传输数据的方式。设置为AUTOMATED_RESTORE

响应显示"delivery.methodName" : "HTTP" 。 自动恢复使用HTTP方法将恢复作业传送到目标托管。

重要提示:使用SCP的恢复交付已在MongoDB Ops Manager 4.0 中删除。

delivery
.targetClusterId
字符串
必需

目标集群的唯一标识符。 使用“获取所有快照”“获取快照”端点的响应正文中返回的clusterId

如果目标集群上未启用备份,则“获取所有快照”端点将返回一个没有clusterId元素的空results数组,并且“获取快照”端点也不会返回clusterId元素。

delivery
.targetGroupId
字符串
必需
包含恢复作业的目标集群的项目的唯一标识符。
oplogTs
字符串
必需

oplog时间戳 ,以时间戳形式给出,表示自 UNIX 纪元 以来经过的秒数 。与oplogInc配对时,它们表示数据将恢复到的时间点。

副本集上运行针对local.oplog.rs的查询,以查找所需的时间戳。

如果您提供此设置,则此端点会将截至且包括此 Oplog 时间戳在内的所有数据恢复到您在delivery对象中指定的数据库。

oplogInc
字符串
必需

32 位递增序数,表示给定秒内的操作。 与oplogTs配对时,它们表示数据将恢复到的时间点。

如果您提供此设置,则此端点会将截至且包括此 Oplog 时间戳在内的所有数据恢复到您在delivery对象中指定的数据库。

创建从特定时间点开始的自动恢复。

PIT 恢复可与使用任何MongoDB版本的副本集或使用4.2或更高版本的FCV的分片集群一起使用。

名称
类型
必要性
说明
delivery
对象
必需
恢复的快照数据的传输方法和详细信息。
delivery
.methodName
字符串
必需

Ops Manager 传输数据的方式。设置为AUTOMATED_RESTORE

响应显示"delivery.methodName" : "HTTP" 。 自动恢复使用HTTP方法将恢复作业传送到目标托管。

重要提示:使用SCP的恢复交付已在MongoDB Ops Manager 4.0 中删除。

delivery
.targetClusterId
字符串
必需

目标集群的唯一标识符。 使用“获取所有快照”“获取快照”端点的响应正文中返回的clusterId

如果目标集群上未启用备份,则“获取所有快照”端点将返回一个没有clusterId元素的空results数组,并且“获取快照”端点也不会返回clusterId元素。

delivery
.targetGroupId
字符串
必需
包含恢复作业的目标集群的项目的唯一标识符。
pointInTimeUTCMillis
long
必需

UNIX 纪元 以来经过的毫秒数时间戳 表示数据恢复的时间点。此时间戳必须在当前时间的最后24小时内。

如果提供此设置,此端点会将截至此时间点的所有数据恢复到您在delivery对象中指定的数据库。

响应JSON文档包括一个 result对象数组、一个link对象数组以及检索到的result对象总数。

名称
类型
说明
results
阵列
数组为results嵌入式文档部分中详细介绍的每一项包含一个对象。
links
阵列
数组包含一个或多个指向子资源和/或相关资源的链接。 URL 之间的关系在 Web 链接规范中进行了解释。
totalCount
数字
结果集中项目总数的整数计数。 如果对整个结果集进行分页,则它可能大于results数组中的对象数。

每个结果都是一个集群恢复作业。 此数组仅包含一个恢复作业。

名称
类型
说明
batchId
字符串
此恢复作业所属批处理的唯一标识符。 如果快照来自分片集群,则返回。
clusterId
字符串
恢复作业所代表的集群的唯一标识符。 如果快照来自副本集或分片集群,则返回。
created
字符串
ISO8601 格式的时间戳 请求恢复作业时的日期和时间格式( UTC 格式)。
delivery
对象
恢复的快照数据的传输方法和详细信息。
delivery
.authBearer
字符串
urlV2发出请求的授权持有者。 值必须是Bearer
delivery
.authHeader
字符串
urlV2发出请求的授权标头。 值必须是Authorization
delivery
.authValue
字符串
针对urlV2请求的持有者值。 持有者的authValue必须是令牌值。
delivery
.expirationHours
数字
恢复作业完成后,下载URL有效的小时数。
delivery
.expires
字符串
ISO8601 格式的时间戳 UTC 格式的日期和时间,在此之后 URL 将不再可用。
delivery
.maxDownloads
数字
下载URL的可使用次数。 该值必须为1或更大。
delivery
.methodName
字符串
数据传输方式。 返回HTTP
delivery
.statusName
字符串

可下载文件的当前状态。 接受的值为:

  • NOT_STARTED

  • IN_PROGRESS

  • READY

  • FAILED

  • INTERRUPTED

  • EXPIRED

  • MAX_DOWNLOADS_EXCEEDED

delivery
.url
字符串
可以下载恢复的 快照 数据的 URL 。
delivery
.urlV2
字符串

可以安全地下载恢复的 快照 数据的 URL 。对此URL的请求必须在HTTP请求标头中包含authHeaderauthBearerauthValue 。 从urlv2安全下载的请求标头必须采用以下格式:

"<authHeader>:<authBearer> <authValue>" <urlV2>

例如:

curl -H "Authorization: Bearer {AUTH-TOKEN}" \
https://{OPSMANAGER-HOST}:{PORT}/backup/restore/v3/pull/{restoreJobId}/{filename}"
groupId
字符串
拥有恢复作业的群组的唯一标识符。
hashes
对象数组
如果已下载相应的delivery.url ,则此数组将返回表示.tar.gz文件的哈希值的单个对象。
hashes
.fileName
字符串
已哈希的快照文件的名称。
hashes
.hash
字符串
快照文件的哈希值。
hashes
.typeName
字符串
用于计算哈希值的哈希算法。 如果返回,则值设置为SHA1
hostId
字符串
此恢复作业所属的配置服务器的唯一标识符。 如果配置服务器SCCC ,则返回。
id
字符串
恢复作业的唯一标识符。
links
对象数组

指向子资源和/或相关资源的一个或多个链接。 响应中的所有links数组至少包含一个名为self的链接。 URL 之间的关系在 Web 链接规范中进行了解释。

pointInTime
布尔
指示快照是否来自某个时间点的标志。
snapshotId
字符串
要恢复的快照的唯一标识符。
statusName
字符串

作业的当前状态。 接受的值为:

  • FINISHED

  • IN_PROGRESS

  • BROKEN

  • KILLED

timestamp
对象
创建快照时 Oplog 条目的时间戳。
timestamp
.date
字符串
ISO8601 格式的时间戳 恢复的快照中最新 oplog 条目的日期和时间格式( UTC 格式)。
timestamp
.increment
字符串
在恢复的快照中最新 oplog 条目完成的所有操作的顺序。
名称
类型
说明
batchId
字符串
此恢复作业所属批处理的唯一标识符。 如果快照来自分片集群,则返回。
clusterId
字符串
恢复作业所代表的集群的唯一标识符。 如果快照来自副本集或分片集群,则返回。
created
字符串
ISO8601 格式的时间戳 请求恢复作业时的日期和时间格式( UTC 格式)。
delivery
对象
恢复的快照数据的传输方法和详细信息。
delivery
.methodName
字符串
数据传输方式。 返回HTTP
delivery
.targetClusterId
字符串
执行恢复作业的目标集群的唯一标识符。
delivery
.targetGroupId
字符串
包含恢复作业的目标集群的项目的唯一标识符。
groupId
字符串
拥有恢复作业的群组的唯一标识符。
hostId
字符串
此恢复作业所属的配置服务器的唯一标识符。 如果配置服务器SCCC ,则返回。
id
字符串
恢复作业的唯一标识符。
links
对象数组

指向子资源和/或相关资源的一个或多个链接。 响应中的所有links数组至少包含一个名为self的链接。 URL 之间的关系在 Web 链接规范中进行了解释。

pointInTime
布尔
指示快照是否来自某个时间点的标志。
snapshotId
字符串
要恢复的快照的唯一标识符。
statusName
字符串

作业的当前状态。 接受的值为:

  • FINISHED

  • IN_PROGRESS

  • BROKEN

  • KILLED

timestamp
对象
创建快照时 Oplog 条目的时间戳。
timestamp
.date
字符串
ISO8601 格式的时间戳 恢复的快照中最新 oplog 条目的日期和时间格式( UTC 格式)。
timestamp
.increment
字符串
在恢复的快照中最新 oplog 条目完成的所有操作的顺序。
名称
类型
说明
batchId
字符串
此恢复作业所属批处理的唯一标识符。 如果快照来自分片集群,则返回。
clusterId
字符串
恢复作业所代表的集群的唯一标识符。 如果快照来自副本集或分片集群,则返回。
created
字符串
ISO8601 格式的时间戳 请求恢复作业时的日期和时间格式( UTC 格式)。
delivery
对象
恢复的快照数据的传输方法和详细信息。
delivery
.methodName
字符串
数据传输方式。 返回HTTP
delivery
.targetClusterId
字符串
执行恢复作业的目标集群的唯一标识符。
delivery
.targetGroupId
字符串
包含恢复作业的目标集群的项目的唯一标识符。
groupId
字符串
拥有恢复作业的群组的唯一标识符。
hostId
字符串
此恢复作业所属的配置服务器的唯一标识符。 如果配置服务器SCCC ,则返回。
id
字符串
恢复作业的唯一标识符。
links
对象数组

指向子资源和/或相关资源的一个或多个链接。 响应中的所有links数组至少包含一个名为self的链接。 URL 之间的关系在 Web 链接规范中进行了解释。

pointInTime
布尔
指示快照是否来自某个时间点的标志。
snapshotId
字符串
要恢复的快照的唯一标识符。
statusName
字符串

作业的当前状态。 接受的值为:

  • FINISHED

  • IN_PROGRESS

  • BROKEN

  • KILLED

timestamp
对象
创建快照时 Oplog 条目的时间戳。
timestamp
.date
字符串
ISO8601 格式的时间戳 恢复的快照中最新 oplog 条目的日期和时间格式( UTC 格式)。
timestamp
.increment
字符串
在恢复的快照中最新 oplog 条目完成的所有操作的顺序。
名称
类型
说明
batchId
字符串
此恢复作业所属批处理的唯一标识符。 如果快照来自分片集群,则返回。
clusterId
字符串
恢复作业所代表的集群的唯一标识符。 如果快照来自副本集或分片集群,则返回。
created
字符串
ISO8601 格式的时间戳 请求恢复作业时的日期和时间格式( UTC 格式)。
delivery
对象
恢复的快照数据的传输方法和详细信息。
delivery
.methodName
字符串
数据传输方式。 返回HTTP
delivery
.targetClusterId
字符串
执行恢复作业的目标集群的唯一标识符。
delivery
.targetGroupId
字符串
包含恢复作业的目标集群的项目的唯一标识符。
groupId
字符串
拥有恢复作业的群组的唯一标识符。
hostId
字符串
此恢复作业所属的配置服务器的唯一标识符。 如果配置服务器SCCC ,则返回。
id
字符串
恢复作业的唯一标识符。
links
对象数组

指向子资源和/或相关资源的一个或多个链接。 响应中的所有links数组至少包含一个名为self的链接。 URL 之间的关系在 Web 链接规范中进行了解释。

pointInTime
布尔
指示快照是否来自某个时间点的标志。
snapshotId
字符串
要恢复的快照的唯一标识符。
statusName
字符串

作业的当前状态。 接受的值为:

  • FINISHED

  • IN_PROGRESS

  • BROKEN

  • KILLED

timestamp
对象
创建快照时 Oplog 条目的时间戳。
timestamp
.date
字符串
ISO8601 格式的时间戳 恢复的快照中最新 oplog 条目的日期和时间格式( UTC 格式)。
timestamp
.increment
字符串
在恢复的快照中最新 oplog 条目完成的所有操作的顺序。

创建使用HTTP传输压缩快照的恢复作业。

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--include \
--request POST "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-ID}/restoreJobs?pretty=true" \
--data '
{
"delivery" : {
"expirationHours" : "1",
"maxDownloads" : "1",
"methodName" : "HTTP"
},
"snapshotId" : "{SNAPSHOT-ID}"
}'

从快照创建自动恢复。

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--request POST "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-ID}/restoreJobs?pretty=true" \
--data '
{
"delivery" : {
"methodName" : "AUTOMATED_RESTORE",
"targetGroupId" : "{TARGET-PROJECT-ID}",
"targetClusterId" : "{TARGET-CLUSTER-ID}"
},
"snapshotId": "{SNAPSHOT-ID}"
}'

从oplog时间戳创建自动恢复。

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--include \
--request POST "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-ID}/restoreJobs?pretty=true" \
--data '
{
"delivery" : {
"methodName" : "AUTOMATED_RESTORE",
"targetGroupId" : "{TARGET-PROJECT-ID}",
"targetClusterId" : "{TARGET-CLUSTER-ID}"
},
"oplogTs" : "1536610288",
"oplogInc" : "1"
}'

创建从特定时间点开始的自动恢复。

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--include \
--request POST "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-ID}/restoreJobs?pretty=true" \
--data '
{
"delivery" : {
"methodName" : "AUTOMATED_RESTORE",
"targetGroupId" : "{TARGET-PROJECT-ID}",
"targetClusterId" : "{TARGET-CLUSTER-ID}"
},
"pointInTimeUTCMillis" : "1536610288000"
}'
HTTP/1.1 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
HTTP/1.1 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}
{
"links" : [ {
"href" : "https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-ID}/restoreJobs?pretty=true&pageNum=1&itemsPerPage=100",
"rel" : "self"
} ],
"results" : [ {
"batchId": "{BATCH-ID}",
"clusterId": "{CLUSTER-ID}",
"created": "2018-09-20T15:00:00Z",
"delivery": {
"authBearer": "Bearer",
"authHeader": "Authorization",
"expirationHours": 1,
"maxDownloads": 1,
"methodName": "HTTP",
"statusName": "READY"
},
"encryptionEnabled": false,
"groupId": "{PROJECT-ID}",
"id": "{RESTORE-JOB-ID}",
"links": [{
"href": "https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-NAME}/restoreJobs/{RESTORE-JOB-ID}",
"rel": "self"
}],
"pointInTime": false,
"snapshotId": "{SNAPSHOT-ID}",
"statusName": "FINISHED",
"timestamp": {
"date": "2018-09-15T15:53:00Z",
"increment": 1
}
} ],
"totalCount" : 1,
"url": "{DOWNLOAD-URL}",
"urlV2": "https://{OPSMANAGER-HOST}:{PORT}/backup/restore/v3/pull/{restoreJobId}/{filename}"
}
{
"links" : [ {
"href" : "https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-ID}/restoreJobs?pretty=true&pageNum=1&itemsPerPage=100",
"rel" : "self"
} ],
"results" : [ {
"batchId" : "{BATCH-ID}",
"clusterId" : "{CLUSTER-ID}",
"created" : "2020-04-21T03:49:57Z",
"delivery" : {
"expirationHours" : 1,
"expires" : "2020-04-21T04:49:57Z",
"maxDownloads" : 1,
"methodName" : "HTTP",
"statusName" : "READY",
"url" : "https://{OPSMANAGER-HOST}:{PORT}/backup/restore/v2/pull/{JOB-ID}/OTY0ZmFiNmEzZjEzNGUyMTlhZjJjNjM3NGMyNGM4ZTM=/electron_0-1492636465-{JOB-ID}.tar.gz"
},
"encryptionEnabled" : false,
"groupId" : "{PROJECT-ID}",
"id" : "{JOB-ID}",
"links" : [ {
"href" : "https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-ID}/restoreJobs/{JOB-ID}",
"rel" : "self"
} ],
"snapshotId" : "{SNAPSHOT-ID}",
"statusName" : "FINISHED",
"timestamp" : {
"date" : "2020-04-18T15:14:25Z",
"increment" : 1
}
} ],
"totalCount" : 1
}
{
"links" : [ {
"href" : "https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-ID}/restoreJobs?pretty=true&pageNum=1&itemsPerPage=100",
"rel" : "self"
} ],
"results" : [ {
"batchId": "{BATCH-ID}",
"clusterId": "{CLUSTER-ID}",
"created": "2018-09-20T15:01:00Z",
"delivery": {
"methodName": "HTTP",
"statusName": "READY"
},
"encryptionEnabled": false,
"groupId": "{PROJECT-ID}",
"id": "{RESTORE-JOB-ID}",
"links": [{
"href": "https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-NAME}/restoreJobs/{RESTORE-JOB-ID}",
"rel": "self"
}],
"pointInTime": false,
"snapshotId": "{SNAPSHOT-ID}",
"statusName": "FINISHED",
"timestamp": {
"date": "2018-09-15T15:53:00Z",
"increment": 1
}
} ],
"totalCount" : 1
}
{
"links" : [ {
"href" : "https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-ID}/restoreJobs?pretty=true&pageNum=1&itemsPerPage=100",
"rel" : "self"
} ],
"results" : [ {
"batchId": "{BATCH-ID}",
"clusterId": "{CLUSTER-ID}",
"created": "2018-09-20T15:02:00Z",
"delivery": {
"methodName": "HTTP",
"statusName": "READY"
},
"encryptionEnabled": false,
"groupId": "{PROJECT-ID}",
"id": "{RESTORE-JOB-ID}",
"links": [{
"href": "https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-NAME}/restoreJobs/{RESTORE-JOB-ID}",
"rel": "self"
}],
"snapshotId": "{SNAPSHOT-ID}",
"statusName": "FINISHED",
"timestamp": {
"date": "2018-09-15T15:53:00Z",
"increment": 1
}
} ],
"totalCount" : 1
}
{
"links" : [ {
"href" : "https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-ID}/restoreJobs?pretty=true&pageNum=1&itemsPerPage=100",
"rel" : "self"
} ],
"results" : [ {
"batchId": "{BATCH-ID}",
"clusterId": "{CLUSTER-ID}",
"created": "2018-09-20T15:03:00Z",
"delivery": {
"methodName": "HTTP",
"statusName": "READY"
},
"encryptionEnabled": false,
"groupId": "{PROJECT-ID}",
"id": "{RESTORE-JOB-ID}",
"links": [{
"href": "https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-NAME}/restoreJobs/{RESTORE-JOB-ID}",
"rel": "self"
}],
"snapshotId": "{SNAPSHOT-ID}",
"statusName": "FINISHED",
"timestamp": {
"date": "2018-09-15T15:53:00Z",
"increment": 1
}
} ],
"totalCount" : 1
}

后退

为一个集群获取一项恢复作业