如何将 dns 设置为 azure aks?

how to set dns to azure aks?

我目前正在使用 Azure AKS。

我有一个使用 LoadBalancer 的前端应用程序有一个 public IP 来访问该服务。

我应该直接将我的域名指向 public IP 地址吗?

因为IP是动态的,如果端口销毁再重新创建,会生成一个新的IP。

我应该使用 Ingress/Nginx 控制器来管理 IP 吗?

您可以使用A记录指向外部IP地址。

您可以通过 Azure 门户将 public IP 地址更改为静态 IP 地址,这样重启服务不会更改 IP。

但是在Azure中,如果我们删除Azure AKS,PublicIP地址会被Azure平台收集,我们就会失去这个IP地址。

Should I just direct my domain name to the public IP address?

正如 Mohit 所说,我们可以通过 Azure 门户设置静态 public IP,并将您的域名映射到那个 Public IP 地址。

Because the IP is dynamic, if the port is destroy and recreate again, a new IP is generated.

默认情况下,AKS 将 pods 公开到互联网将创建一个 Kubernetes service,Public IP 地址适用于该服务。

如果一个 pod 不工作(多个 pods),AKS 将在您的服务中创建另一个 pod,并且不会获得新的 public IP。但是,如果您在该服务中只有一个 pod 并重新创建该 pod,我们将获得一个新的 Public IP 地址。

目前,Azure 不支持为 AKS 服务保留 public IP 地址。

希望对您有所帮助。

您可以使用kubernetes-incubator/external-dns to automatically update the A record in your Azure DNS zone with the (dynamic) IP of the Azure Loadbalancer or Ingress controller. Read here如何设置。

您不限于使用 Azure DNS,您可以使用其他提供商,在 v0.4 中:Google CloudDNS、AWS Route 53、AzureDNS、CloudFlare、DigitalOcean、 DNSimple、Infoblox