第 16 章 为 Data Grid Server 集群执行滚动升级
执行数据网格集群的滚动升级,在不停机或数据丢失的版本之间更改,并通过 Hot Rod 协议迁移数据。
16.1. 设置目标 Data Grid 集群
创建一个使用您计划升级到的 Data Grid 版本的集群,然后使用远程缓存存储将源集群连接到目标集群。
先决条件
- 使用目标集群所需的版本安装 Data Grid Server 节点。
确保目标集群的网络属性不会与源集群的网络属性重叠。您应该在 JGroups 传输配置中为目标和源集群指定唯一名称。根据您的环境,您还可以使用不同的网络接口和端口偏移来分隔目标和源集群。
流程
以 JSON 格式创建远程缓存存储配置,允许目标集群连接到源集群。
远程缓存存储在目标集群上,使用 Hot Rod 协议从源集群检索数据。
{ "remote-store": { "cache": "myCache", "shared": true, "raw-values": true, "security": { "authentication": { "digest": { "username": "username", "password": "changeme", "realm": "default" } } }, "remote-server": [ { "host": "127.0.0.1", "port": 12222 } ] } }
使用 Data Grid 命令行界面(CLI)或 REST API 将远程缓存存储配置添加到目标集群,以便它可以连接到源集群。
CLI:在目标集群中使用
migrate cluster connect
命令。[//containers/default]> migrate cluster connect -c myCache --file=remote-store.json
REST API:使用一个 POST 请求,该请求在有效负载中包含远程存储配置,并带有
rolling-upgrade/source-connection
方法。POST /rest/v2/caches/myCache/rolling-upgrade/source-connection
- 对您要迁移的每个缓存重复前面的步骤。
将客户端切换到目标集群,以便它开始处理所有请求。
- 使用目标集群的位置更新客户端配置。
- 重新启动客户端。
如果您需要迁移索引缓存,您必须首先迁移内部 ___protobuf_metadata
缓存,以便源集群中定义的 .proto 模式也会存在于目标集群上。
其他资源