关于此任务
集合体管理员可通过使用
replicate 和 addReplica 命令来允许 Liberty 服务器充当集合体控制器,并在不再需要该控制器后使用 removeReplica
命令从集合体中除去该控制器。
除去副本后,副本集中的余下副本不需要对其配置的任何更新。但是,您可能想要更新它们,以便它们在 server.xml 文件中的配置更准确地反映已更新的副本集。
注: 不必在集合中的余下副本的
server.xml 文件中更改 replicaSet 值。不需要更改余下副本的配置。如果确实想要在集合内余下副本的配置中更新 replicaSet 值,以便配置值在集合中的所有副本之间一致,那么必须在余下副本的配置中将 isInitialReplicaSet 值设为 false。这是因为在更改
replicaSet 值之后,它不再描述初始副本集;它现在描述已更改副本集。
- 可选: 备份副本集。
- 确保集合体控制器正在运行。 对于名为 myController 的控制器,请运行 status 命令:
wlp/bin/server status myController
如果集合体控制器未在运行,请使用 start 或 run 命令将其启动:wlp/bin/server start myController
- 从副本集中除去集合体控制器或副本。
运行 removeReplica 命令,此命令使用集合体控制器的管理安全域配置,并以 replicaHost:replicaPort
格式指定您要除去的副本的端点。查看集合体控制器的 server.xml
文件,以查找 --host、--port、--user 和 --password 参数的值。要获取有关这些必需参数和可选参数的信息,请在命令行运行
collective help removeReplica。
wlp/bin/collective removeReplica replicaHost:replicaPort --host=host_of_running_controller --port=https_port_of_running_controller --user=user_for_running_controller --password=user_password
要减少所需的选项数目,请使用 --controller 选项,而不是
--user、--password、--host 和 --port。
wlp/bin/collective removeReplica replicaHost:replicaPort --controller=user_for_running_controller:user_password@host_of_running_controller:https_port_of_running_controller
例如,要从配置 Liberty 集合体副本集中的示例副本集中除去 myController2,请运行以下命令:
wlp/bin/collective removeReplica localhost:10011 --host=host_of_myController --port=https_port_of_myController --user=user_for_myController --password=user_password
要减少所需的选项数目,请使用 --controller 选项,而不是
--user、--password、--host 和 --port。
wlp/bin/collective removeReplica localhost:10011 --controller=user_for_myController:user_password@host_of_myController:https_port_of_myController