你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
快速入门:使用 Azure CLI 创建流量管理器配置文件以实现 Web 应用程序的高可用性
本快速入门介绍如何创建流量管理器配置文件,以便实现 Web 应用程序的高度可用性。
在本快速入门中,我们将创建 Web 应用程序的两个实例。 每个实例在不同的 Azure 区域运行。 需根据终结点优先级创建流量管理器配置文件。 此配置文件将用户流量定向到运行 Web 应用程序的主站点。 流量管理器持续监视 Web 应用程序。 如果主站点不可用,它会提供目标为备份站点的自动故障转移。
如果没有 Azure 订阅,请在开始之前创建一个 Azure 免费帐户。
先决条件
在 Azure Cloud Shell 中使用 Bash 环境。 有关详细信息,请参阅 Azure Cloud Shell 中的 Bash 快速入门。
如需在本地运行 CLI 参考命令,请安装 Azure CLI。 如果在 Windows 或 macOS 上运行,请考虑在 Docker 容器中运行 Azure CLI。 有关详细信息,请参阅如何在 Docker 容器中运行 Azure CLI。
如果使用的是本地安装,请使用 az login 命令登录到 Azure CLI。 若要完成身份验证过程,请遵循终端中显示的步骤。 有关其他登录选项,请参阅使用 Azure CLI 登录。
出现提示时,请在首次使用时安装 Azure CLI 扩展。 有关扩展详细信息,请参阅使用 Azure CLI 的扩展。
运行 az version 以查找安装的版本和依赖库。 若要升级到最新版本,请运行 az upgrade。
- 本文需要 Azure CLI 2.0.28 或更高版本。 如果使用 Azure Cloud Shell,则最新版本已安装。
创建资源组
使用 az group create 创建资源组。 Azure 资源组是在其中部署和管理 Azure 资源的逻辑容器。
以下示例在 eastus 位置创建名为 myResourceGroup 的资源组:
az group create \
--name myResourceGroup \
--location eastus
创建流量管理器配置文件
使用 az network traffic-manager profile create 创建流量管理器配置文件,以根据终结点优先级定向用户流量。
mytrafficmanagerprofile='mytrafficmanagerprofile'$RANDOM
az network traffic-manager profile create \
--name $mytrafficmanagerprofile \
--resource-group myResourceGroup \
--routing-method Priority \
--path '/' \
--protocol "HTTP" \
--unique-dns-name $mytrafficmanagerprofile \
--ttl 30 \
--port 80
创建 Web 应用
本快速入门需要两个部署在两个不同的 Azure 区域(美国东部和西欧)的 Web 应用程序实例。 每个都可以充当流量管理器的主终结点和故障转移终结点。
创建 Web 应用服务计划
使用 az appservice plan create 为要部署在两个不同 Azure 区域中的两个 Web 应用程序实例创建 Web 应用服务计划。
az appservice plan create \
--name myAppServicePlanEastUS \
--resource-group myResourceGroup \
--location eastus \
--sku S1
az appservice plan create \
--name myAppServicePlanWestEurope \
--resource-group myResourceGroup \
--location westeurope \
--sku S1
在应用服务计划中创建 Web 应用
在应用服务计划中使用 az webapp create 在“美国东部”和“西欧”Azure 区域中创建 Web 应用程序的两个实例。
mywebappeastus='myWebAppEastUS'$RANDOM
myWebAppWestEurope='myWebAppWestEurope'$RANDOM
az webapp create \
--name $mywebappeastus \
--plan myAppServicePlanEastUS \
--resource-group myResourceGroup
az webapp create \
--name $myWebAppWestEurope \
--plan myAppServicePlanWestEurope \
--resource-group myResourceGroup
添加流量管理器终结点
使用 az network traffic-manager endpoint create 将两个 Web 应用作为流量管理器终结点添加到流量管理器配置文件,如下所示:
- 确定 Web 应用 ID,并将“美国东部”Azure 区域中的 Web 应用添加为主要终结点,以路由所有用户流量。
- 确定 Web 应用 ID,并将“西欧”Azure 区域中的 Web 应用添加为故障转移终结点。
当主终结点不可用时,流量自动路由到故障转移终结点。
美国东部终结点
App1ResourceId=$(az webapp show --name $mywebappeastus --resource-group myResourceGroup --query id --output tsv)
az network traffic-manager endpoint create \
--name $mywebappeastus \
--resource-group myResourceGroup \
--profile-name $mytrafficmanagerprofile \
--type azureEndpoints \
--target-resource-id $App1ResourceId \
--priority 1 \
--endpoint-status Enabled
西欧终结点
App2ResourceId=$(az webapp show --name $myWebAppWestEurope --resource-group myResourceGroup --query id --output tsv)
az network traffic-manager endpoint create \
--name $myWebAppWestEurope \
--resource-group myResourceGroup \
--profile-name $mytrafficmanagerprofile \
--type azureEndpoints \
--target-resource-id $App2ResourceId \
--priority 2 \
--endpoint-status Enabled
测试流量管理器配置文件
在此部分,需检查流量管理器配置文件的域名。 此外还需将主终结点配置为不可用。 最后可以看到该 Web 应用仍然可用。 这是因为流量管理器将流量发送到故障转移终结点。
在下面的示例中,将
确定 DNS 名称
使用 az network traffic-manager profile show 确定流量管理器配置文件的 DNS 名称。
az network traffic-manager profile show \
--name $mytrafficmanagerprofile \
--resource-group myResourceGroup \
--query dnsConfig.fqdn
复制 RelativeDnsName 值。 流量管理器配置文件的 DNS 名称为 http://<relativednsname>.trafficmanager.net。
查看正在运行的流量管理器
在 Web 浏览器中输入流量管理器配置文件的 DNS 名称 (http://<relativednsname>.trafficmanager.net),以查看 Web 应用的默认网站。
注意
在本快速入门方案中,所有请求都路由到主终结点。 它设置为“优先级 1”。
若要查看流量管理器故障转移如何进行,请使用 az network traffic-manager endpoint update 禁用主要站点。
az network traffic-manager endpoint update \ --name $mywebappeastus \ --resource-group myResourceGroup \ --profile-name $mytrafficmanagerprofile \ --type azureEndpoints \ --endpoint-status Disabled
复制流量管理器配置文件的 DNS 名称 (http://<relativednsname>.trafficmanager.net),以在新的 Web 浏览器会话中查看该网站。
验证 Web 应用是否仍然可用。
清理资源
完成后,请使用 az group delete 删除资源组、Web 应用程序和所有相关资源。
az group delete \
--resource-group myResourceGroup
后续步骤
在本快速入门中,我们创建了一个可为 Web 应用程序提供高可用性的流量管理器配置文件。 若要详细了解如何路由流量,请继续学习流量管理器教程。