1. 简介
上次更新日期:2022 年 9 月 22 日
什么是 DNS 路由政策
借助 Cloud DNS 路由政策,用户可以根据特定条件(例如权重、地理位置或健康检查)配置基于 DNS 的流量引导。
Cloud DNS 支持以下路由政策:
- 加权轮循路由政策
- 地理定位路由政策
- 地理围栏路由政策
- 故障切换路由政策
在本实验中,您将配置并测试故障切换路由政策。
故障切换路由政策
Cloud DNS 支持对启用全球访问权限的内部 TCP/UDP 负载平衡器进行健康检查。借助故障切换路由政策,您可以为资源记录配置主 IP 和备份 IP。在正常操作中,Cloud DNS 将使用主集中预配的 IP 地址来响应查询。当主集中的所有 IP 地址都失败(健康状况更改为健康状况不佳)时,Cloud DNS 会开始提供备份集中的 IP 地址。
健康检查
DNS 路由政策将取决于原生内部负载平衡器统一健康检查(UHC)。如果 20%(或更多)的后端健康状况良好,则内部负载平衡器会被视为健康状况良好。内部 TCP/UDP 负载平衡器和内部 HTTP(S) 负载平衡器的健康检查提供的信息各不相同。对于内部 HTTP(S) 负载平衡器,UHC 会提供所有 Envoy 代理的健康状况;但对于内部 TCP/UDP 负载平衡器,Cloud DNS 会从各个后端实例获取直接健康状况信号。如需详细了解健康检查,请点击此处。
构建内容
在此 Codelab 中,您将构建一个在 2 个区域中运行的网站,并为其关联故障切换 DNS 路由政策。设置将包含:
有效资源 -
- REGION_1 中的 L4 内部负载平衡器
- 在 REGION_1 中运行 Apache Web 服务器的虚拟机
备份资源 -
- REGION_2 中的 L4 内部负载平衡器
- 在 REGION_2 中运行 Apache Web 服务器的虚拟机
设置如下所示 -

学习内容
- 如何创建故障切换路由政策
- 触发 DNS 故障切换
- 如何将微流量转移到备份集
所需条件
- DNS 基础知识
- Google Compute Engine 基础知识
- L4 内部负载平衡器的基础知识
2. 设置和要求
- 登录 Google Cloud 控制台,然后创建一个新项目或重复使用现有项目。如果您还没有 Gmail 或 Google Workspace 账号,则必须创建一个。



- 项目名称是此项目参与者的显示名称。它是 Google API 尚未使用的字符串。您可以随时更新。
- 项目 ID 在所有 Google Cloud 项目中必须是唯一的,并且不可变(一经设置便无法更改)。Cloud 控制台会自动生成一个唯一字符串;通常情况下,您无需关注该字符串。在大多数 Codelab 中,您都需要引用项目 ID(通常用
PROJECT_ID标识)。如果您不喜欢生成的 ID,可以再随机生成一个 ID。或者,您也可以尝试自己的项目 ID,看看是否可用。完成此步骤后便无法更改该 ID,并且此 ID 在项目期间会一直保留。 - 此外,还有第三个值,即部分 API 使用的项目编号,供您参考。如需详细了解所有这三个值,请参阅文档。
- 接下来,您需要在 Cloud 控制台中启用结算功能,以便使用 Cloud 资源/API。运行此 Codelab 应该不会产生太多的费用(如果有费用的话)。若要关闭资源以避免产生超出本教程范围的结算费用,您可以删除自己创建的资源或删除整个项目。Google Cloud 的新用户符合参与 $300 USD 免费试用计划的条件。
启动 Cloud Shell
虽然可以通过笔记本电脑对 Google Cloud 进行远程操作,但在此 Codelab 中,您将使用 Google Cloud Shell,这是一个在云端运行的命令行环境。
在 Google Cloud 控制台 中,点击右上角工具栏中的 Cloud Shell 图标:

预配和连接到环境应该只需要片刻时间。完成后,您应该会看到如下内容:

这个虚拟机已加载了您需要的所有开发工具。它提供了一个持久的 5 GB 主目录,并且在 Google Cloud 中运行,大大增强了网络性能和身份验证功能。您在此 Codelab 中的所有工作都可以在浏览器中完成。您无需安装任何程序。
3. Google Cloud SDK 版本
在撰写本文时,401.0.0 是最新的 Google Cloud SDK 版本。本实验中的所有命令均已使用最新版本的 Google Cloud SDK 进行测试。在继续操作之前,请确保 Cloud Shell 使用的是最新版本的 SDK。
检查 SDK 版本
使用 gcloud version 命令检查 SDK 版本。在 Cloud Shell 中运行以下命令
命令
gcloud version | grep "Google Cloud SDK"
输出示例
Google Cloud SDK 401.0.0
后续步骤
- 如果 SDK 版本为
401.0.0或更高版本,请跳到下一部分。 - 如果 SDK 版本低于
401.0.0,请运行下列命令来更新 SDK。
可选命令
sudo apt-get update && sudo apt-get install google-cloud-sdk
4. 准备工作
在开始部署上述架构之前,请确保 Cloud Shell 已正确配置,并且已启用所有必需的 API。
设置项目 ID
在 Cloud Shell 中,确保项目 ID 已设置。如果您的 Cloud Shell 提示符与下面的输出类似,并且您不打算更改项目 ID,则可以跳到下一步(设置环境变量)。
USER@cloudshell:~ (PROJECT_ID)$
如果您仍想更改项目 ID,请使用下列命令,Cloud Shell 提示符将从 (PROJECT_ID) 更改为 (YOUR-PROJECT-ID)
可选命令
gcloud config set project [YOUR-PROJECT-ID]
输出示例
Updated property [core/project]. USER@cloudshell:~ (YOUR-PROJECT-ID)$
设置环境变量
设置环境变量
我们将使用 export 命令设置环境变量。在 Cloud Shell 中运行以下命令
命令
export REGION_1=us-west1
export REGION_1_ZONE=us-west1-a
export REGION_2=us-east4
export REGION_2_ZONE=us-east4-a
验证
现在,环境变量已设置完毕,接下来我们使用 echo 命令进行验证。每个命令的输出都应该是我们上面使用 export 命令配置的值。在 Cloud Shell 中运行以下命令
命令
echo $REGION_1
echo $REGION_1_ZONE
echo $REGION_2
echo $REGION_2_ZONE
启用所有必要的服务
使用 gcloud services enable 命令启用 Compute 和 DNS API。在 Cloud Shell 中运行以下命令
启用 Compute API
命令
gcloud services enable compute.googleapis.com
启用 DNS API
命令
gcloud services enable dns.googleapis.com
验证
现在,服务已启用,让我们使用 gcloud services list 命令列出所有已启用的 API,以进行验证。
命令
gcloud services list | grep -E 'compute|dns'
输出示例
NAME: compute.googleapis.com NAME: dns.googleapis.com
5. 创建 VPC 网络、子网和防火墙规则
在本部分中,我们将创建 VPC 网络、两个子网(每个区域一个)以及所需的防火墙规则。
创建 VPC 网络
使用 gcloud compute networks create 命令创建 VPC 网络。我们将子网模式设置为自定义,因为我们将在下一步中创建自己的子网。在 Cloud Shell 中运行以下命令。
命令
gcloud compute networks create my-vpc --subnet-mode custom
创建子网
使用 gcloud compute networks subnets create 命令创建两个子网,一个位于 REGION_1 中,另一个位于 REGION_2 中。在 Cloud Shell 中运行以下命令
REGION_1 子网
命令
gcloud compute networks subnets create ${REGION_1}-subnet \
--network my-vpc \
--range 10.1.0.0/24 \
--region $REGION_1
REGION_2 子网
命令
gcloud compute networks subnets create ${REGION_2}-subnet \
--network my-vpc \
--range 10.2.0.0/24 \
--region $REGION_2
创建防火墙规则
您需要允许来自 VPC 子网和负载平衡器健康检查 IP 地址范围的端口 80 上的流量。
此外,您还需要创建防火墙规则,以允许客户端虚拟机上的 SSH 流量。
使用 gcloud compute firewall-rules create 命令创建防火墙规则。在 Cloud Shell 中运行以下命令
允许端口 80 上的流量
命令
gcloud compute firewall-rules create allow-http-lb-hc \ --allow tcp:80 --network my-vpc \ --source-ranges 10.1.0.0/24,10.2.0.0/24,35.191.0.0/16,130.211.0.0/22 \ --target-tags=allow-http
允许客户端虚拟机上的 SSH 流量
命令
gcloud compute firewall-rules create allow-ssh \ --allow tcp:22 --network my-vpc \ --source-ranges 0.0.0.0/0 \ --target-tags=allow-ssh
6. 创建 Cloud NAT
您需要在两个区域中都设置 Cloud NAT 网关,以便专用虚拟机能够从互联网下载和安装软件包。
- 我们的 Web 服务器虚拟机需要下载并安装 Apache Web 服务器。
- 客户端虚拟机需要下载并安装 dnsutils 软件包,我们将使用该软件包进行测试。
每个 Cloud NAT 网关都与一个 VPC 网络、区域和 Cloud Router 相关联。因此,在创建 NAT 网关之前,我们需要在每个区域中创建 Cloud Router 路由器。
创建 Cloud Router 路由器
使用 gcloud compute routers create 命令在 us-west1 和 us-east4 区域中创建 Cloud Router 路由器。在 Cloud Shell 中运行以下命令。
Region_1 Cloud Router
命令
gcloud compute routers create "${REGION_1}-cloudrouter" \
--region $REGION_1 --network=my-vpc --asn=65501
Region_2 Cloud Router
命令
gcloud compute routers create "${REGION_2}-cloudrouter" \
--region $REGION_2 --network=my-vpc --asn=65501
创建 NAT 网关
使用 gcloud compute routers nat create 命令在 us-west1 和 us-east4 区域中创建 NAT 网关。在 Cloud Shell 中运行以下命令。
Region_1 NAT 网关
命令
gcloud compute routers nats create "${REGION_1}-nat-gw" \
--router="${REGION_1}-cloudrouter" \
--router-region=$REGION_1 \
--nat-all-subnet-ip-ranges --auto-allocate-nat-external-ips
Region_2 NAT 网关
命令
gcloud compute routers nats create "${REGION_2}-nat-gw" \
--router="${REGION_2}-cloudrouter" \
--router-region=$REGION_2 \
--nat-all-subnet-ip-ranges --auto-allocate-nat-external-ips
7. 创建 Compute Engine 虚拟机
在本部分中,您将创建 Web 服务器、Web 服务器的非托管式实例组和客户端虚拟机。
创建 Web 服务器虚拟机
使用 gcloud compute instances create 命令创建 Web 服务器。我们需要创建两个 Web 服务器,一个位于 REGION_1,另一个位于 REGION_2。我们使用启动脚本在 Web 服务器上安装和配置 Apache。
REGION_1 Web Server
在 Cloud Shell 中运行以下命令
命令
gcloud compute instances create "${REGION_1}-instance" \
--image-family=debian-11 --image-project=debian-cloud \
--zone=$REGION_1_ZONE \
--network-interface=network=my-vpc,subnet=${REGION_1}-subnet,no-address \
--tags=allow-http \
--metadata=startup-script='#! /bin/bash
apt-get update
apt-get install apache2 -y
a2ensite default-ssl
a2enmod ssl
vm_hostname="$(curl -H "Metadata-Flavor:Google" \
http://169.254.169.254/computeMetadata/v1/instance/name)"
echo "Page served from: $vm_hostname" | \
tee /var/www/html/index.html
systemctl restart apache2'
REGION_2 Web 服务器
在 Cloud Shell 中运行以下命令
命令
gcloud compute instances create "${REGION_2}-instance" \
--image-family=debian-11 --image-project=debian-cloud \
--zone=$REGION_2_ZONE \
--network-interface=network=my-vpc,subnet=${REGION_2}-subnet,no-address \
--tags=allow-http \
--metadata=startup-script='#! /bin/bash
apt-get update
apt-get install apache2 -y
a2ensite default-ssl
a2enmod ssl
vm_hostname="$(curl -H "Metadata-Flavor:Google" \
http://169.254.169.254/computeMetadata/v1/instance/name)"
echo "Page served from: $vm_hostname" | \
tee /var/www/html/index.html
systemctl restart apache2'
创建非托管式实例组
在本部分中,我们将创建两个非代管式实例组。我们将在下一部分中使用这些实例组来配置 ILB 后端服务。创建实例组后,我们将向这些实例组添加 Web 服务器虚拟机。
创建非托管式实例组
使用 gcloud compute instance-groups unmanaged create 命令创建两个非托管式实例组,一个用于 us-west1 Web 服务器,另一个用于 us-east4 Web 服务器。
Region_1 实例组
命令
gcloud compute instance-groups unmanaged create \
"${REGION_1}-instance-group" --zone=$REGION_1_ZONE
区域 2 实例组
命令
gcloud compute instance-groups unmanaged create \
"${REGION_2}-instance-group" --zone=$REGION_2_ZONE
将虚拟机添加到实例组
使用 gcloud compute instance-groups unmanaged add-instances 命令将实例添加到我们刚刚创建的实例组。将 REGION_1 网络服务器添加到 REGION_1 实例组,并将 REGION_2 网络服务器添加到 REGION_2 实例组
Region_1 实例组
命令
gcloud compute instance-groups unmanaged add-instances \
"${REGION_1}-instance-group" --instances $REGION_1-instance \
--zone=$REGION_1_ZONE
区域 2 实例组
命令
gcloud compute instance-groups unmanaged add-instances \
"${REGION_2}-instance-group" --instances $REGION_2-instance \
--zone=$REGION_2_ZONE
创建客户端虚拟机
我们将使用此虚拟机运行测试并验证 DNS 配置。我们使用启动脚本来安装 dnsutils 软件包。在 Cloud Shell 中运行以下命令。
命令
gcloud compute instances create client-instance --image-family=debian-11 \
--image-project=debian-cloud \
--zone=$REGION_1_ZONE \
--network-interface=network=my-vpc,subnet=${REGION_1}-subnet,no-address \
--tags=allow-ssh \
--metadata=startup-script='#! /bin/bash
apt-get update
apt-get install dnsutils -y'
8. 创建 L4 内部负载平衡器
如需创建 L4 ILB,我们需要创建健康检查、后端服务和转发规则。
创建健康检查
使用 gcloud compute health-checks create 命令创建健康检查。我们正在创建基本的 HTTP 健康检查,目标端口为端口 80。在 Cloud Shell 中运行以下命令
命令
gcloud compute health-checks create http http-hc --port 80
配置后端服务
使用 gcloud compute backend-services create 命令创建后端服务。创建后端服务后,我们将使用 gcloud compute backend-services add-backend 命令将非托管实例组添加到后端服务。在 Cloud Shell 中运行以下命令。
创建后端服务
命令
gcloud compute backend-services create $REGION_1-backend-service \ --load-balancing-scheme=INTERNAL --protocol=TCP \ --health-checks=http-hc --region=$REGION_1
gcloud compute backend-services create $REGION_2-backend-service \ --load-balancing-scheme=INTERNAL --protocol=TCP \ --health-checks=http-hc --region=$REGION_2
添加后端
命令
gcloud compute backend-services add-backend $REGION_1-backend-service \ --instance-group=$REGION_1-instance-group \ --region=$REGION_1 \ --instance-group-zone=$REGION_1_ZONE
gcloud compute backend-services add-backend $REGION_2-backend-service \ --instance-group=$REGION_2-instance-group \ --region=$REGION_2 \ --instance-group-zone=$REGION_2_ZONE
创建转发规则
使用 gcloud compute forwarding-rules create 命令在这两个区域中创建转发规则。在 Cloud Shell 中运行以下命令
REGION_1 转发规则
命令
gcloud compute forwarding-rules create $REGION_1-ilb \
--region=$REGION_1 \
--load-balancing-scheme=internal \
--network=my-vpc \
--subnet=$REGION_1-subnet \
--ip-protocol=TCP \
--ports=80 \
--backend-service=$REGION_1-backend-service \
--backend-service-region=$REGION_1 \
--allow-global-access
REGION_2 转发规则
gcloud compute forwarding-rules create $REGION_2-ilb \
--region=$REGION_2 \
--load-balancing-scheme=internal \
--network=my-vpc \
--subnet=$REGION_2-subnet \
--ip-protocol=TCP \
--ports=80 \
--backend-service=$REGION_2-backend-service \
--backend-service-region=$REGION_2 \
--allow-global-access
9. 配置 DNS
在本部分中,我们将创建专用区域和具有故障切换路由政策的 DNS 记录集。
创建专用 DNS 区域
使用 gcloud dns managed-zones create 命令为 example.com 创建一个专用区域。我们将使用此区域创建一个具有故障切换路由政策的资源记录集。在 Cloud Shell 中运行以下命令
命令
gcloud dns managed-zones create example-com \ --dns-name example.com. --description="My private zone" \ --visibility=private --networks my-vpc
创建采用故障切换路由政策的 DNS 记录
使用 gcloud dns record-sets create 命令创建具有故障切换路由政策的 DNS 记录。主要目标是 REGION_1 中的负载平衡器。Cloud DNS 仅支持基于地理位置的备份目标,备份集是一种地理定位政策,其中 REGION_2 负载平衡器是 REGION_1 和 REGION_2 的目标。在 Cloud Shell 中运行以下命令
命令
gcloud dns record-sets create failover.example.com --ttl 5 --type A \
--routing-policy-type=FAILOVER \
--routing-policy-primary-data=$REGION_1-ilb \
--routing-policy-backup-data="${REGION_1}=${REGION_2}-ilb;${REGION_2}=${REGION_2}-ilb" \
--routing-policy-backup-data-type=GEO \
--zone=example-com \
--enable-health-checking
输出示例
NAME: failover.example.com. TYPE: A TTL: 5 DATA: Primary: "10.1.0.4, 80, tcp, https://www.googleapis.com/compute/v1/projects/my-clouddns-codelab/global/networks/my-vpc, my-clouddns-codelab, us-west1, regionalL4ilb" Backup: us-west1: "10.2.0.3, 80, tcp, https://www.googleapis.com/compute/v1/projects/my-clouddns-codelab/global/networks/my-vpc, my-clouddns-codelab, us-east4, regionalL4ilb";us-east4: "10.2.0.3, 80, tcp, https://www.googleapis.com/compute/v1/projects/my-clouddns-codelab/global/networks/my-vpc, my-clouddns-codelab, us-east4, regionalL4ilb"
10. 测试 DNS 解析
在测试故障切换设置之前,我们先记下两个内部负载平衡器的 IP 地址。在 Cloud Shell 中运行以下命令。
命令
gcloud compute forwarding-rules list --filter="name:($REGION_1-ilb $REGION_2-ilb)"
输出示例
在此示例中,us-west1-ilb 的 IP 地址为 10.1.0.4,us-east4-ilb 的 IP 地址为 10.2.0.3
NAME: us-west1-ilb REGION: us-west1 IP_ADDRESS: 10.1.0.4 IP_PROTOCOL: TCP TARGET: us-west1/backendServices/us-west1-backend-service NAME: us-east4-ilb REGION: us-east4 IP_ADDRESS: 10.2.0.3 IP_PROTOCOL: TCP TARGET: us-east4/backendServices/us-east4-backend-service
现在,我们将登录客户端实例并测试 DNS 解析。在 Web 控制台中,前往“Compute Engine | 虚拟机实例”

点击 SSH 按钮,从控制台登录到客户端实例。

现在,我们位于客户端虚拟机中,请使用 dig 命令解析 failover.example.com 域名。
该循环配置为运行 10 次命令,休眠计时器为 6 秒。
命令
for i in {1..10}; do echo $i; dig failover.example.com +short; sleep 6; done
由于 DNS 记录的 TTL 设置为 5 秒,因此添加了 6 秒的休眠计时器。休眠计时器将确保您为每个 DNS 请求获得未缓存的 DNS 响应。此命令大约需要一分钟才能执行完毕。
在输出中,您将看到资源记录的主集中包含的负载平衡器的 IP 地址。在我们的设置中,这将是 us-west1 区域中负载平衡器的 IP。
11. 测试故障切换
我们将通过从 REGION_1 虚拟机中移除网络标记来模拟故障切换。这将阻止对端口 80 的访问,从而导致健康检查开始失败。
移除广告联盟代码
使用 gcloud compute instances remove-tags 命令从虚拟机中移除网络标记。在 Cloud Shell 中运行以下命令
命令
gcloud compute instances remove-tags $REGION_1-instance \ --zone=$REGION_1_ZONE --tags=allow-http
健康检查将在 10 秒后失败。再次运行 DNS 解析测试。
DNS 解析
在客户端实例中运行以下命令
命令
for i in {1..10}; do echo $i; dig failover.example.com +short; sleep 6; done
在输出中,您将看到资源记录的备份集中的负载平衡器 IP 地址。在我们的设置中,这将是 us-east4 区域中负载平衡器的 IP。
12. 测试流量缓慢增加
默认情况下,故障切换政策会针对所有 DNS 请求返回主端点 IP,并且仅在主端点未通过健康检查时返回备用 IP。Cloud DNS 允许用户配置“细流比率”,以便 Cloud DNS 即使在主目标运行正常时,也能将一部分流量发送到备用目标。比率必须是介于 0 和 1 之间的值。默认值为 0
为了进行测试,我们来将网络标记重新添加到 REGION_1 网络服务器。
添加广告联盟代码
将标记添加回 Web 服务器虚拟机,以允许 HTTP 流量流向主区域虚拟机。在 Cloud Shell 中运行以下命令。
命令
gcloud compute instances add-tags $REGION_1-instance \ --zone $REGION_1_ZONE --tags allow-http
健康检查将在 10 秒后通过
验证 DNS 解析是否指向主负载平衡器。在我们的设置中,这将是 us-west1 区域中负载平衡器的 IP 地址。
在客户端实例中运行以下命令
命令
dig +short failover.example.com
更新 DNS 记录
现在,我们将修改 failover.example.com 的 DNS 记录,以便即使主实例健康状况良好,也能将 30% 的流量逐渐转移到备份集。在 Cloud Shell 中运行以下命令
命令
gcloud dns record-sets update failover.example.com --ttl 30 --type A \
--routing-policy-type=FAILOVER \
--routing-policy-primary-data=$REGION_1-ilb \
--routing-policy-backup-data="${REGION_1}=${REGION_2}-ilb;${REGION_2}=${REGION_2}-ilb" \
--routing-policy-backup-data-type=GEO \
--zone=example-com --enable-health-checking \
--backup-data-trickle-ratio=0.3
DNS 解析
从客户端虚拟机运行以下命令。您会发现,DNS 记录 failover.example.com 大约 70% 的时间会解析为主负载平衡器 IP,大约 30% 的时间会解析为备份负载平衡器 IP。
for i in {1..10}; do echo $i; dig failover.example.com +short; sleep 6; done
13. 清理步骤
如需清理本实验中使用的资源,请在 Cloud Shell 中运行以下命令
gcloud dns record-sets delete failover.example.com --type=A \ --zone=example-com --quiet gcloud dns managed-zones delete example-com --quiet gcloud compute forwarding-rules delete $REGION_1-ilb \ --region=$REGION_1 --quiet gcloud compute forwarding-rules delete $REGION_2-ilb \ --region=$REGION_2 --quiet gcloud compute backend-services delete $REGION_1-backend-service \ --region=$REGION_1 --quiet gcloud compute backend-services delete $REGION_2-backend-service \ --region=$REGION_2 --quiet gcloud compute health-checks delete http-hc --quiet gcloud compute instances delete client-instance --zone=$REGION_1_ZONE --quiet gcloud compute instance-groups unmanaged delete $REGION_1-instance-group \ --zone=$REGION_1_ZONE --quiet gcloud compute instance-groups unmanaged delete $REGION_2-instance-group \ --zone=$REGION_2_ZONE --quiet gcloud compute instances delete $REGION_1-instance \ --zone=$REGION_1_ZONE --quiet gcloud compute instances delete $REGION_2-instance \ --zone=$REGION_2_ZONE --quiet gcloud compute routers nats delete $REGION_1-nat-gw \ --router=$REGION_1-cloudrouter --region=$REGION_1 --quiet gcloud compute routers nats delete $REGION_2-nat-gw \ --router=$REGION_2-cloudrouter --region=$REGION_2 --quiet gcloud compute routers delete $REGION_1-cloudrouter \ --region=$REGION_1 --quiet gcloud compute routers delete $REGION_2-cloudrouter \ --region=$REGION_2 --quiet gcloud compute firewall-rules delete allow-ssh allow-http-lb-hc --quiet gcloud compute networks subnets delete $REGION_1-subnet \ --region=$REGION_1 --quiet gcloud compute networks subnets delete $REGION_2-subnet \ --region=$REGION_2 --quiet gcloud compute networks delete my-vpc --quiet
14. 恭喜
恭喜,您已成功部署并测试了 Cloud DNS 故障切换路由政策
所学内容
- 如何配置 Cloud DNS 故障切换路由政策
- 测试 DNS 故障转移
- 如何将流量逐步转移到备份集
后续操作
- 尝试为活跃和备份集设置多个 IP
- 尝试向非代管式实例组添加多个后端虚拟机
- 尝试在备用集内为地理定位政策设置不同区域中的多个负载平衡器。
了解详情
https://cloud.google.com/dns/docs/zones/manage-routing-policies