3.2. 使用 REST API 执行跨站点操作


Data Grid 服务器提供 REST API,允许您执行跨站点操作。

3.2.1. 获取所有备份位置的状态

使用 GET 请求检索所有备份位置的状态。

GET /v2/caches/{cacheName}/x-site/backups/
Copy to Clipboard Toggle word wrap

Data Grid 以 JSON 格式为每个备份位置的状态响应,如下例所示:

{
  "NYC": "online",
  "LON": "offline"
}
Copy to Clipboard Toggle word wrap
Expand
表 3.1. 返回的状态
描述

online

本地集群中的所有节点都有一个带有备份位置的跨站点视图。

离线

本地集群中没有带有备份位置的跨站点视图。

mixed

本地集群中的某些节点具有带有备份位置的跨站点视图,本地集群中的其他节点没有跨站点视图。响应表示每个节点的状态。

3.2.2. 获取特定备份位置的状态

使用 GET 请求检索备份位置的状态。

GET /v2/caches/{cacheName}/x-site/backups/{siteName}
Copy to Clipboard Toggle word wrap

Data Grid 以 JSON 格式通过站点中的每个节点状态进行响应,如下例所示:

{
  "NodeA":"offline",
  "NodeB":"online"
}
Copy to Clipboard Toggle word wrap
Expand
表 3.2. 返回的状态
描述

online

节点在线。

离线

节点离线。

失败

无法检索状态。远程缓存可以在请求期间关闭或发生网络错误。

3.2.3. 执行备份位置离线

通过 POST 请求和 ?action=take-offline 参数使备份位置离线。

POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=take-offline
Copy to Clipboard Toggle word wrap

3.2.4. 使备份位置在线

使用 ?action=bring-online 参数在线启动备份位置。

POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=bring-online
Copy to Clipboard Toggle word wrap

3.2.5. 将状态推送到备份位置

使用 ?action=start-push-state 参数将缓存状态推送到备份位置。

POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=start-push-state
Copy to Clipboard Toggle word wrap

3.2.6. 取消状态传输

使用 ?action=cancel-push-state 参数取消状态传输操作。

POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=cancel-push-state
Copy to Clipboard Toggle word wrap

3.2.7. 获取状态传输状态

使用 ?action=push-state-status 参数检索状态传输操作的状态。

GET /v2/caches/{cacheName}/x-site/backups?action=push-state-status
Copy to Clipboard Toggle word wrap

Data Grid 以 JSON 格式为每个备份位置的状态进行响应,如下例所示:

{
   "NYC":"CANCELED",
   "LON":"OK"
}
Copy to Clipboard Toggle word wrap
Expand
表 3.3. 返回的状态
描述

发送

状态传输到备份位置正在进行。

确定

状态传输成功完成。

ERROR

出现错误,状态为 transfer。检查日志文件。

取消

状态转移取消正在进行。

3.2.8. 清除状态传输状态

使用 ?action=clear-push-state-status 参数发送站点的清除状态传输状态。

POST /v2/caches/{cacheName}/x-site/local?action=clear-push-state-status
Copy to Clipboard Toggle word wrap

3.2.9. 修改获取离线条件

如果满足某些条件,站点将处于离线状态。修改离线参数,以控制备份位置自动离线的时间。

流程

  1. 检查配置了 GET 请求和 take-offline-config 参数的离线参数。

    GET /v2/caches/{cacheName}/x-site/backups/{siteName}/take-offline-config
    Copy to Clipboard Toggle word wrap

    Data Grid 响应包括 after_failuresmin_wait 字段,如下所示:

    {
      "after_failures": 2,
      "min_wait": 1000
    }
    Copy to Clipboard Toggle word wrap
  2. 修改 取 PUT 请求正文中的离线参数。

    PUT /v2/caches/{cacheName}/x-site/backups/{siteName}/take-offline-config
    Copy to Clipboard Toggle word wrap

3.2.10. 从接收站点取消状态传输

如果两个备份位置之间的连接中断,您可以在接收推送的站点上取消状态传输。

从远程站点取消状态传输,并使用 ?action=cancel-receive-state 参数保留本地缓存的当前状态。

POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=cancel-receive-state
Copy to Clipboard Toggle word wrap

3.2.11. 获取备份位置状态

使用 GET 请求,从缓存管理器检索所有备份位置的状态。

GET /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/
Copy to Clipboard Toggle word wrap

Data Grid 以 JSON 格式的状态响应,如下例所示:

{
   "SFO-3":{
      "status":"online"
   },
   "NYC-2":{
      "status":"mixed",
      "online":[
         "CACHE_1"
      ],
      "offline":[
         "CACHE_2"
      ]
   }
}
Copy to Clipboard Toggle word wrap
Expand
表 3.4. 返回的状态
描述

online

本地集群中的所有节点都有一个带有备份位置的跨站点视图。

离线

本地集群中没有带有备份位置的跨站点视图。

mixed

本地集群中的某些节点具有带有备份位置的跨站点视图,本地集群中的其他节点没有跨站点视图。响应表示每个节点的状态。

3.2.12. 执行备份位置离线

使用 ?action=take-offline 参数使备份位置离线。

POST /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=take-offline
Copy to Clipboard Toggle word wrap

3.2.13. 使备份位置在线

使用 ?action=bring-online 参数在线启动备份位置。

POST /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=bring-online
Copy to Clipboard Toggle word wrap

3.2.14. 启动状态传输

使用 ?action=start-push-state 参数将所有缓存的状态推送到远程站点。

POST /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=start-push-state
Copy to Clipboard Toggle word wrap

3.2.15. 取消状态传输

使用 ?action=cancel-push-state 参数取消持续状态传输操作。

POST /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=cancel-push-state
Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat