關於這項作業
群體管理者可以使用 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
比方說,如果要將 myController2 從配置 Liberty 群體抄本集中的範例抄本集移除,請執行下列指令:
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