rladmin migrate
将 Redis Enterprise Software 分片或终端节点移动到同一集群中的新节点。
Redis 企业软件 |
---|
将 Redis Enterprise 分片或终端节点移动到同一集群中的新节点。
有关分片迁移使用案例和注意事项的更多信息,请参阅迁移数据库分片。
migrate all_master_shards
将指定数据库或节点的所有主分片移动到同一集群中的新节点。
rladmin migrate { db { db:<id> | <name> } | node <origin node ID> }
all_master_shards
target_node <id>
[ override_policy ]
Parameters
Parameter
Type/Value
Description
db
db:<id>
name
Limits migration to a specific database
node
integer
Limits migration to a specific origin node
target_node
integer
Migration target node
override_policy
Overrides the rack aware policy and allows primary and replica shards on the same node
Returns
Returns Done
if the migration completed successfully. Otherwise, returns an error.
Use rladmin status shards
to verify the migration completed.
Example
$ rladmin status shards db db:6 sort ROLE
SHARDS:
DB:ID NAME ID NODE ROLE SLOTS USED_MEMORY STATUS
db:6 tr02 redis:14 node:3 master 0-4095 3.01MB OK
db:6 tr02 redis:16 node:3 master 4096-8191 3.2MB OK
db:6 tr02 redis:18 node:3 master 8192-12287 3.2MB OK
db:6 tr02 redis:20 node:3 master 12288-16383 3.01MB OK
$ rladmin migrate db db:6 all_master_shards target_node 1
Monitoring 8b0f28e2-4342-427a-a8e3-a68cba653ffe
queued - migrate_shards
running - migrate_shards
Executing migrate_redis with shards_uids ['18', '14', '20', '16']
Ocompleted - migrate_shards
Done
$ rladmin status shards node 1
SHARDS:
DB:ID NAME ID NODE ROLE SLOTS USED_MEMORY STATUS
db:6 tr02 redis:14 node:1 master 0-4095 3.22MB OK
db:6 tr02 redis:16 node:1 master 4096-8191 3.22MB OK
db:6 tr02 redis:18 node:1 master 8192-12287 3.22MB OK
db:6 tr02 redis:20 node:1 master 12288-16383 2.99MB OK
migrate all_shards
Moves all shards on a specified node to a new node in the same cluster.
rladmin migrate node <origin node ID>
[ max_concurrent_bdb_migrations <value> ]
all_shards
target_node <id>
[ override_policy ]
Parameters
Parameter
Type/Value
Description
node
integer
Limits migration to a specific origin node
max_concurrent_bdb_migrations
integer
Sets the maximum number of concurrent endpoint migrations
override_policy
Overrides the rack aware policy and allows primary and replica shards on the same node
Returns
Returns Done
if the migration completed successfully. Otherwise, returns an error.
Use rladmin status shards
to verify the migration completed.
Example
$ rladmin status shards node 1
SHARDS:
DB:ID NAME ID NODE ROLE SLOTS USED_MEMORY STATUS
db:5 tr01 redis:12 node:1 master 0-16383 3.04MB OK
db:6 tr02 redis:15 node:1 slave 0-4095 2.93MB OK
db:6 tr02 redis:17 node:1 slave 4096-8191 2.93MB OK
db:6 tr02 redis:19 node:1 slave 8192-12287 3.08MB OK
db:6 tr02 redis:21 node:1 slave 12288-16383 3.08MB OK
$ rladmin migrate node 1 all_shards target_node 2
Monitoring 71a4f371-9264-4398-a454-ce3ff4858c09
queued - migrate_shards
.running - migrate_shards
Executing migrate_redis with shards_uids ['21', '15', '17', '19']
OExecuting migrate_redis with shards_uids ['12']
Ocompleted - migrate_shards
Done
$ rladmin status shards node 2
SHARDS:
DB:ID NAME ID NODE ROLE SLOTS USED_MEMORY STATUS
db:5 tr01 redis:12 node:2 master 0-16383 3.14MB OK
db:6 tr02 redis:15 node:2 slave 0-4095 2.96MB OK
db:6 tr02 redis:17 node:2 slave 4096-8191 2.96MB OK
db:6 tr02 redis:19 node:2 slave 8192-12287 2.96MB OK
db:6 tr02 redis:21 node:2 slave 12288-16383 2.96MB OK
migrate all_slave_shards
Moves all replica shards of a specified database or node to a new node in the same cluster.
rladmin migrate { db { db:<id> | <name> } | node <origin node ID> }
all_slave_shards
target_node <id>
[ override_policy ]
Parameters
Parameter
Type/Value
Description
db
db:<id>
name
Limits migration to a specific database
node
integer
Limits migration to a specific origin node
target_node
integer
Migration target node
override_policy
Overrides the rack aware policy and allows primary and replica shards on the same node
Returns
Returns Done
if the migration completed successfully. Otherwise, returns an error.
Use rladmin status shards
to verify the migration completed.
Example
$ rladmin status shards db db:6 node 2
SHARDS:
DB:ID NAME ID NODE ROLE SLOTS USED_MEMORY STATUS
db:6 tr02 redis:15 node:2 slave 0-4095 3.06MB OK
db:6 tr02 redis:17 node:2 slave 4096-8191 3.06MB OK
db:6 tr02 redis:19 node:2 slave 8192-12287 3.06MB OK
db:6 tr02 redis:21 node:2 slave 12288-16383 3.06MB OK
$ rladmin migrate db db:6 all_slave_shards target_node 3
Monitoring 5d36a98c-3dc8-435f-8ed9-35809ba017a4
queued - migrate_shards
.running - migrate_shards
Executing migrate_redis with shards_uids ['15', '17', '21', '19']
Ocompleted - migrate_shards
Done
$ rladmin status shards db db:6 node 3
SHARDS:
DB:ID NAME ID NODE ROLE SLOTS USED_MEMORY STATUS
db:6 tr02 redis:15 node:3 slave 0-4095 3.04MB OK
db:6 tr02 redis:17 node:3 slave 4096-8191 3.04MB OK
db:6 tr02 redis:19 node:3 slave 8192-12287 3.04MB OK
db:6 tr02 redis:21 node:3 slave 12288-16383 3.04MB OK
migrate endpoint_to_shards
Moves database endpoints to the node where the majority of primary shards are located.
rladmin migrate [ db { db:<id> | <name> } ]
endpoint_to_shards
[ restrict_target_node <id> ]
[ commit ]
[ max_concurrent_bdb_migrations <value> ]
Parameters
Parameter
Type/Value
Description
db
db:<id>
name
Limits migration to a specific database
restrict_target_node
integer
Moves the endpoint only if the target node matches the specified node
commit
Performs endpoint movement
max_concurrent_bdb_migrations
integer
Sets the maximum number of concurrent endpoint migrations
Returns
Returns a list of steps to perform the migration. If the commit
flag is set, the steps will run and return Finished successfully
if they were completed. Otherwise, returns an error.
Use rladmin status endpoints
to verify that the endpoints were moved.
Example
$ rladmin status endpoints db db:6
ENDPOINTS:
DB:ID NAME ID NODE ROLE SSL
db:6 tr02 endpoint:6:1 node:3 all-master-shards No
$ rladmin migrate db db:6 endpoint_to_shards
* Going to bind endpoint:6:1 to node 1
Dry-run completed, add 'commit' argument to execute
$ rladmin migrate db db:6 endpoint_to_shards commit
* Going to bind endpoint:6:1 to node 1
Executing bind endpoint:6:1: OOO.
Finished successfully
$ rladmin status endpoints db db:6
ENDPOINTS:
DB:ID NAME ID NODE ROLE SSL
db:6 tr02 endpoint:6:1 node:1 all-master-shards No
migrate shard
Moves one or more shards to a new node in the same cluster.
rladmin migrate shard <id1.. idN>
[ preserve_roles ]
target_node <id>
[ override_policy ]
Parameters
Parameter
Type/Value
Description
shard
list of shard IDs
Shards to migrate
preserve_roles
Performs an additional failover to guarantee the primary shards' roles are preserved
target_node
integer
Migration target node
override_policy
Overrides the rack aware policy and allows primary and replica shards on the same node
Returns
Returns Done
if the migration completed successfully. Otherwise, returns an error.
Use rladmin status shards
to verify the migration completed.
Example
$ rladmin status shards db db:5
SHARDS:
DB:ID NAME ID NODE ROLE SLOTS USED_MEMORY STATUS
db:5 tr01 redis:12 node:2 master 0-16383 3.01MB OK
db:5 tr01 redis:13 node:3 slave 0-16383 3.1MB OK
$ rladmin migrate shard 13 target_node 1
Monitoring d2637eea-9504-4e94-a70c-76df087efcb2
queued - migrate_shards
.running - migrate_shards
Executing migrate_redis with shards_uids ['13']
Ocompleted - migrate_shards
Done
$ rladmin status shards db db:5
SHARDS:
DB:ID NAME ID NODE ROLE SLOTS USED_MEMORY STATUS
db:5 tr01 redis:12 node:2 master 0-16383 3.01MB OK
db:5 tr01 redis:13 node:1 slave 0-16383 3.04MB OK
On this page