全部產品
Search
文件中心

Container Compute Service:服務發現DNS

更新時間:Dec 11, 2024

DNS網域名稱解析是ACS叢集內實現服務發現的方式之一。本文主要介紹ACS叢集中DNS網域名稱解析原理和DNS服務發現方案。

注意事項

  • 如果在建立ACS叢集時,未開啟任意DNS服務發現組件,容器Pod將預設使用VPC提供的DNS伺服器進行網域名稱解析。該模式下不支援Kubernetes內Service服務名的網域名稱解析。

  • 對於已建立的ACS叢集,啟用DNS服務發現方案僅對建立的容器Pod生效,即啟用前建立的容器Pod並不會隨著方案的啟用而切換其DNS設定檔,需重新建立容器Pod來使其接入新的DNS服務發現方案。

ACS叢集中DNS網域名稱解析原理

在ACS叢集建立容器Pod時,預設情況下,/etc/resolv.conf檔案的內容如下。該檔案指定了DNS伺服器、搜尋域和一些其他參數。

# nameserver表示本容器Pod使用的DNS伺服器IP地址。
nameserver 172.xx.x.xx
# search表示請求服務時需要拼接的網域名稱尾碼,當Pod處於kube-system命名空間時如下。
search kube-system.svc.cluster.local svc.cluster.local cluster.local
# 其他參數
options ndots:5

關於DNS網域名稱解析設定檔和Pod DNSPolicy的欄位含義,請參見DNS原理和配置說明。