为了帮助确保高可用性 (HA),每个 AlloyDB 主实例都具有位于两个不同可用区中的主动节点和备用节点。如果活跃节点因任何原因而不可用,AlloyDB 会自动将备用节点提升为新的活跃节点。
您可以使用故障注入来突然强制将主实例的活动节点下线,以测试此自动 HA 功能。然后,AlloyDB 会启用紧急 HA 流程,该流程会检查主实例的运行状况,然后将备用节点重新分配为主节点角色。
故障注入还会启动一项长时间运行的操作,以便在短暂间隔后将之前的活动节点恢复为在线状态。该节点会成为主实例的新备用节点。
如需了解更快的方法来交换主实例节点的主用和备用角色,请参阅手动故障转移主实例。
准备工作
- 您使用的 Google Cloud 项目必须已启用对 AlloyDB 的访问权限。
- 您必须在所使用的 Google Cloud 项目中拥有以下 IAM 角色之一:
roles/alloydb.admin
(AlloyDB 管理员预定义 IAM 角色)roles/owner
(Owner 基本 IAM 角色)roles/editor
(Editor 基本 IAM 角色)
如果您不具备上述任何角色,请与您的 Organization Administrator 联系以请求访问权限。
使用故障注入模拟中断
如需通过突然关闭主实例的活动节点来测试其高可用性弹性,请使用 gcloud alloydb instances
inject-fault
命令。长时间运行的操作完成后,AlloyDB 会恢复该节点。
gcloud alloydb instances inject-fault INSTANCE_ID \
--fault-type=stop-vm \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID
INSTANCE_ID
:实例的 ID。REGION_ID
:实例所在的区域。CLUSTER_ID
:实例所在的集群的 ID。PROJECT_ID
:集群所在项目的 ID。