Azure 专用 DNS 为虚拟网络提供可靠且安全的 DNS 服务。 Azure 专用 DNS 可管理并解析虚拟网络中的域名,使你无需配置自定义 DNS 解决方案。
在使用 专用访问(VNET 集成) 模式部署 Azure Database for PostgreSQL 灵活服务器时,您需要提供必需的专用 DNS 区域,以便进行 DNS 解析。 若要使用专用网络访问创建新的 Azure Database for PostgreSQL 灵活服务器,需要在配置具有专用访问权限的 Azure Database for PostgreSQL 灵活服务器时使用专用 DNS 区域。
在现有服务器上,您可以将私有 DNS 区域从创建服务器时提供的更改为另一个已经存在的私有 DNS 区域,该区域可以位于您有权访问的任何订阅的任何资源组中。
使用 Azure 门户:
选择您的“Azure Database for PostgreSQL”灵活服务器。
在资源菜单中,选择“ 网络”。
使用 专用访问(VNET 集成) 部署的服务器的唯一与网络相关的可修改设置是服务器在其中集成的专用 DNS 区域。 若要更改它,请在 “专用 DNS 集成 ”部分展开 “订阅 ”和 “专用 DNS 区域 ”组合框,选择要在其中集成服务器的现有专用 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
相关内容