你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn 。
在虚拟网络中访问 Azure Spring Apps 中的应用
本文内容
注意
Azure Spring Apps 是 Azure Spring Cloud 服务的新名称。 虽然该服务有新名称,但一些地方仍会使用旧名称,我们仍在更新屏幕截图、视频和图形等资产。
本文适用于:✔️ 基本版/标准版 ✔️ 企业版
本文介绍如何在专用网络中访问应用程序的终结点。
在虚拟网络中部署的 Azure Spring Apps 服务实例的应用程序上分配终结点时,该终结点使用专用的完全限定的域名 (FQDN)。 只能在专用网络中访问该域。 应用和服务使用应用程序终结点。 其中包括在 Azure Spring Apps 中设置过渡环境 中的查看应用和部署 部分内所述的“测试终结点” 。 “日志流式处理”(如实时流式传输 Azure Spring Apps 应用日志 中所述)也仅可在专用网络中进行。
先决条件
查找应用程序的 IP
使用以下步骤查找应用程序的 IP 地址。
转至 Azure Spring Apps 服务的“网络” 页。
选择“Vnet 注入” 选项卡。
在“常规信息” 部分找到“终结点” 并复制“IP 地址” 值。 以下屏幕截图中的示例使用 IP 地址 10.0.1.6
:
使用以下步骤初始化本地环境并查找应用程序的 IP 地址。
使用以下命令定义各种环境变量。 请务必用实际值替换占位符。
export SUBSCRIPTION='<subscription-ID>'
export RESOURCE_GROUP='<resource-group-name>'
export AZURE_SPRING_APPS_INSTANCE_NAME='<Azure-Spring-Apps-instance-name>'
export VIRTUAL_NETWORK_NAME='<Azure-Spring-Apps-virtual-network-name>'
export APP_NAME='<application-name>'
使用以下命令登录到 Azure CLI 并选择活动订阅:
az login
az account set --subscription ${SUBSCRIPTION}
使用以下命令查找应用程序的 IP 地址。
export SERVICE_RUNTIME_RG=$(az spring show \
--resource-group $RESOURCE_GROUP \
--name $AZURE_SPRING_APPS_INSTANCE_NAME \
--query "properties.networkProfile.serviceRuntimeNetworkResourceGroup" \
--output tsv)
export IP_ADDRESS=$(az network lb frontend-ip list \
--lb-name kubernetes-internal \
--resource-group $SERVICE_RUNTIME_RG \
--query "[0].privateIPAddress" \
--output tsv)
echo $IP_ADDRESS
为 IP 添加 DNS
如果你有自己的虚拟网络 DNS 解决方案(如 Active Directory 域控制器、Infoblox 或其他),则需要将域 *.private.azuremicroservices.io
指向 IP 地址 。 否则,请按照以下说明在订阅中创建 Azure 专用 DNS 区域,以将专用的完全限定的域名 (FQDN) 转换/解析为其 IP 地址 。
注意
如果使用的是由世纪互联运营的 Microsoft Azure,请确保将本文中的 private.azuremicroservices.io
替换为 private.microservices.azure.cn
。 有关详细信息,请参阅 Azure 中国开发人员指南 的 Azure 部分中的“检查终结点”。
创建专用 DNS 区域
使用以下步骤为专用网络中的应用程序创建专用 DNS 区域:
打开 Azure 门户。 使用搜索框搜索“专用 DNS 区域” 。 从搜索结果中选择“专用 DNS 区域” 。
在“专用 DNS 区域”页面上,选择“添加” 。
填写“创建专用 DNS 区域”页上的表单。 输入“private.azuremicroservices.io”作为区域的名称 。
选择“查看 + 创建” 。
选择“创建”。
使用以下命令创建专用 DNS 区域:
az network private-dns zone create \
--resource-group $RESOURCE_GROUP \
--name private.azuremicroservices.io
创建区域可能需要几分钟。
链接虚拟网络
若要将专用 DNS 区域链接到虚拟网络,需要创建虚拟网络链接。
使用以下步骤将你创建的专用 DNS 区域链接到带有 Azure Spring Apps 服务的虚拟网络:
选择创建的专用 DNS 区域资源,例如 private.azuremicroservices.io 。
选择“虚拟网络链接”,然后选择“添加” 。
对于“链接名称”,请输入“azure-spring-apps-dns-link” 。
对于“虚拟网络” ,请选择前面创建的虚拟网络。
选择“确定” 。
使用以下命令将你创建的专用 DNS 区域链接到带有 Azure Spring Apps 服务的虚拟网络:
az network private-dns link vnet create \
--resource-group $RESOURCE_GROUP \
--name azure-spring-apps-dns-link \
--zone-name private.azuremicroservices.io \
--virtual-network $VIRTUAL_NETWORK_NAME \
--registration-enabled false
创建 DNS 记录
必须在专用 DNS 区域中创建“A”类型记录。
执行以下步骤以使用专用 DNS 区域来转换/解析 DNS。
选择创建的专用 DNS 区域资源,例如 private.azuremicroservices.io 。
选择“记录集”。
在“添加记录集”中,输入或选择以下信息:
设置
值
名称
输入 * 。
类型
选择 A。
TTL
输入 1 。
TTL 单位
选择“小时” 。
IP 地址
输入 IP 地址。 以下屏幕截图使用 IP 地址 10.1.0.7 。
选择“确定” 。
使用以下命令在 DNS 区域中创建 A 记录:
az network private-dns record-set a add-record \
--resource-group $RESOURCE_GROUP \
--zone-name private.azuremicroservices.io \
--record-set-name '*' \
--ipv4-address $IP_ADDRESS
为应用程序分配专用 FQDN
在虚拟网络中部署 Azure Spring Apps 后,可以为应用程序分配专用 FQDN。 有关详细信息,请参阅在虚拟网络中部署 Azure Spring Apps 。
使用以下步骤分配专用 FQDN:
选择在虚拟网络中部署的 Azure Spring Apps 服务实例,并打开“应用” 选项卡。
选择此应用程序以打开“概述” 页面。
选择“分配终结点”,将专用 FQDN 分配给应用程序。 分配 FQDN 可能需要几分钟时间。
分配的专用 FQDN(标记为 URL)现在可用。 只能在专用网络中访问该 URL,而不能在 Internet 上访问该 URL。
使用以下命令将终结点分配给应用程序:
az spring app update \
--resource-group $RESOURCE_GROUP \
--name $APP_NAME \
--service $AZURE_SPRING_APPS_INSTANCE_NAME \
--assign-endpoint true
访问应用程序的专用 FQDN
分配后,可以在专用网络中访问应用程序的专用 FQDN。 例如,可以在同一虚拟网络中创建 jumpbox 计算机,也可以在对等互连虚拟网络中创建。 然后,在该 jumpbox 或虚拟机上,可以访问专用 FQDN。
清理资源
如果打算继续阅读后续文章,则可能需要保留这些资源。 如果不再需要它们,请删除资源组,这将删除资源组中的资源。 若要使用 Azure CLI 删除资源组,请使用以下命令:
az group delete --name $RESOURCE_GROUP
后续步骤