Azure 专用 DNS 为虚拟网络提供可靠且安全的 DNS 服务。 Azure 专用 DNS 可管理并解析虚拟网络中的域名,使你无需配置自定义 DNS 解决方案。
使用专用访问(VNET 集成)网络模式部署 Azure Database for PostgreSQL 灵活服务器时,必须提供专用 DNS 区域才能启用 DNS 解析。 若要使用专用网络访问创建新的Azure Database for PostgreSQL灵活服务器,需要在配置具有专用访问权限Azure Database for PostgreSQL灵活服务器时使用专用 DNS 区域。
在现有服务器上,可以将专用 DNS 区域从创建服务器期间提供的 DNS 区域更改为已存在的另一个区域。 另一个专用 DNS 区域可以位于你有权访问的任何订阅的任何资源组上。
使用 Azure 门户:
选择您的“Azure Database for PostgreSQL”灵活服务器。
在资源菜单中,选择“ 网络”。
对于使用 专用访问(VNET 集成)部署的服务器,可以更改的唯一与网络相关的设置是集成服务器的专用 DNS 区域。 若要更改它,请在“专用 DNS集成”部分展开“订阅”和“专用 DNS区域”下拉列表,选择要在其中集成服务器的现有private DNS区域。
如果所选的专用 DNS 区域未链接到注入服务器的虚拟网络,则会看到“ 将专用 DNS 区域链接到虚拟网络 ”复选框。 它默认处于选中状态,这意味着所选的专用 DNS 区域已链接到服务器的虚拟网络。 通过清除复选框,决定不将专用 DNS 区域链接到服务器的虚拟网络。 因此,该虚拟网络中的任何主机都无法使用该服务器保存在该专用区域中的 A 记录来解析你的服务器名称。 选择“保存”。
系统通知会提示你,更改正在被应用。
该过程完成后,通知会通知你已应用更改。
使用 az postgres flexible-server update 命令更改与服务器关联的专用 DNS 区域。
privateZoneId=$(az network private-dns zone show --resource-group <private_dns_zone_resource_group> --name <private_dns_zone> --query id --output tsv)
az postgres flexible-server update \
--resource-group <server_resource_group> \
--name <server> \
--private-dns-zone $privateZoneId
若要将专用 DNS 区域链接到服务器的虚拟网络,请运行以下命令:
# Obtain the delegated subnet in which your server is integrated
subnetId=$(az postgres flexible-server show --resource-group <server_resource_group> --name <server> --query network.delegatedSubnetResourceId --output tsv)
# Trim the subnet part, to end up having the identifier of the virtual network
virtualNetworkId=$(echo $subnetId | sed 's/\/subnets.*//')
virtualNetworkName=$(echo $subnetId | sed -n 's|.*/virtualNetworks/\(.*\)/subnets/.*|\1|p')
# Link the private DNS zone to the virtual network
az network private-dns link vnet create --resource-group <private_dns_zone_resource_group> --zone-name <private_dns_zone> --virtual-network $virtualNetworkId --registration-enabled false --name $virtualNetworkName
相关内容