测试主实例是否具有高可用性

为了帮助确保高可用性 (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。