日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

服務(wù)發(fā)現(xiàn)DNS

DNS域名解析是ACK Serverless集群內(nèi)實(shí)現(xiàn)服務(wù)發(fā)現(xiàn)的方式之一。本文主要介紹ACK Serverless集群中DNS域名解析原理和DNS服務(wù)發(fā)現(xiàn)方案。

索引

注意事項(xiàng)

  • 如果在創(chuàng)建ACK Serverless集群時(shí),未開啟任意DNS服務(wù)發(fā)現(xiàn)組件,容器Pod將默認(rèn)使用VPC提供的DNS服務(wù)器進(jìn)行域名解析。該模式下不支持Kubernetes內(nèi)Service服務(wù)名的域名解析。

  • 對于已創(chuàng)建的ACK Serverless集群,啟用DNS服務(wù)發(fā)現(xiàn)方案僅對新建的容器Pod生效,即啟用前創(chuàng)建的容器Pod并不會(huì)隨著方案的啟用而切換其DNS配置文件,需重新創(chuàng)建容器Pod來使其接入新的DNS服務(wù)發(fā)現(xiàn)方案。

  • CoreDNS(托管)組件會(huì)逐步替換CoreDNS(非托管),直至CoreDNS(非托管)下線,后續(xù)您可能無法在控制臺看到CoreDNS(非托管)。如需使用CoreDNS(非托管)組件,請提交工單咨詢。

ACK Serverless集群中DNS域名解析原理

ACK Serverless集群創(chuàng)建容器Pod時(shí),默認(rèn)情況下,/etc/resolv.conf文件的內(nèi)容如下。該文件指定了DNS服務(wù)器、搜索域和一些其他參數(shù)。

# nameserver表示本容器Pod使用的DNS服務(wù)器IP地址。
nameserver 172.xx.x.xx
# search表示請求服務(wù)時(shí)需要拼接的域名后綴,當(dāng)Pod處于kube-system命名空間時(shí)如下。
search kube-system.svc.cluster.local svc.cluster.local cluster.local
# 其他參數(shù)
options ndots:5

關(guān)于DNS域名解析配置文件和Pod DNSPolicy的字段含義,請參見DNS原理和配置說明

ACK Serverless集群支持的DNS服務(wù)發(fā)現(xiàn)方案

DNS服務(wù)發(fā)現(xiàn)方案

說明

CoreDNS(托管)

推薦使用。容器Pod使用CoreDNS(托管)組件進(jìn)行域名解析,由ACK Serverless來創(chuàng)建并保證CoreDNS的正常運(yùn)行。您無需關(guān)心CoreDNS的運(yùn)行狀態(tài),免除手動(dòng)運(yùn)維。此外,該方案不占用集群中的ECI實(shí)例。

CoreDNS(非托管)

容器Pod使用CoreDNS(非托管)組件進(jìn)行域名解析,您必須確保正確配置CoreDNS,并時(shí)刻關(guān)注CoreDNS副本的運(yùn)行狀態(tài)。

PrivateZone

容器Pod使用PrivateZone組件進(jìn)行域名解析,ACK Serverless會(huì)自動(dòng)創(chuàng)建、更新PrivateZone中的域名解析記錄。

CoreDNS(托管)

托管版CoreDNS組件通過kube-system命名空間下的kube-dns服務(wù)的集群IP暴露DNS服務(wù)。業(yè)務(wù)Pod使用托管CoreDNS的流程如下。

image.png

鏈路

說明

客戶端(Client Pod)訪問上游服務(wù)(TargetService)時(shí),會(huì)先從本地DNS域名解析配置文件(/etc/resolv.conf)中獲取DNS服務(wù)器地址,再向DNS服務(wù)器地址發(fā)出域名解析請求,查詢TargetService對應(yīng)的目標(biāo)IP地址。

在本方案中,DNS服務(wù)器地址為ACK Serverless集群kube-system命名空間下創(chuàng)建的名為kube-dns集群IP的IP地址。kube-dns的集群IP的后端由ACK Serverless集群負(fù)責(zé)動(dòng)態(tài)維護(hù)更新,您無需關(guān)注。

image.png

客戶端(Client Pod)請求集群外部域名時(shí),托管CoreDNS會(huì)將域名請求轉(zhuǎn)發(fā)至VPC提供的DNS服務(wù)器(100.100.2.136、100.100.2.138)進(jìn)行解析。

客戶端(Client Pod)通過DNS服務(wù)器獲取到上游服務(wù)(TargetService)的IP地址后,向該IP發(fā)出請求。

開啟CoreDNS(托管)組件

重要
  • 開啟CoreDNS(托管)組件后,ACK Serverless集群會(huì)自動(dòng)在kube-system命名空間下創(chuàng)建名為kube-dns的集群IP服務(wù)。請勿手動(dòng)修改。

  • CoreDNS(托管)組件逐步開放中,如在控制臺無法看到CoreDNS(托管)組件,表明當(dāng)前地域尚未開放支持CoreDNS(托管)組件。CoreDNS(托管)組件的自定義配置功能逐步開放中,如有使用需求,請提交工單咨詢。

  • 方式一:對于新建的ACK Serverless集群,您可以在創(chuàng)建集群時(shí),指定CoreDNS(托管)作為DNS服務(wù)發(fā)現(xiàn),啟用托管版CoreDNS組件。

    image.png

  • 方式二:對于已創(chuàng)建的ACK Serverless集群,您可以在集群管理頁面,選擇運(yùn)維管理 > 組件管理,單擊網(wǎng)絡(luò)頁簽,然后單擊CoreDNS(托管)組件的安裝,啟用托管版CoreDNS組件。具體操作,請參見管理組件

CoreDNS(非托管)

CoreDNS(非托管)是Kubernetes集群中負(fù)責(zé)DNS解析的組件,能夠支持解析集群內(nèi)部自定義服務(wù)域名和集群外部域名。CoreDNS(非托管)具備豐富的插件集,在集群層面支持自建DNS、自定義Hosts、CNAME、Rewrite等需求。與Kubernetes一樣,CoreDNS項(xiàng)目由CNCF托管,關(guān)于CNCF的更多信息,請參見CNCF。關(guān)于CoreDNS的更多信息,請參見CoreDNS: DNS and Service Discovery

非托管版CoreDNS組件通過kube-system命名空間下的kube-dns集群IP暴露DNS服務(wù),業(yè)務(wù)Pod使用非托管CoreDNS的流程如下。

image.png

鏈路

說明

客戶端(Client Pod)訪問上游服務(wù)(TargetService)時(shí),會(huì)先從本地DNS域名解析配置文件(/etc/resolv.conf)中獲取DNS服務(wù)器地址,再向該DNS服務(wù)器地址發(fā)出域名解析請求,查詢TargetService對應(yīng)的目標(biāo)IP地址。

在本方案中,DNS服務(wù)器地址為ACK Serverless集群kube-system命名空間的kube-dns集群IP的IP地址。

image.png

客戶端(Client Pod)請求集群外部域名時(shí),CoreDNS會(huì)將域名請求轉(zhuǎn)發(fā)至VPC提供的DNS服務(wù)器(100.100.2.136、100.100.2.138)進(jìn)行解析。

客戶端(Client Pod)通過DNS服務(wù)器獲取到上游服務(wù)(TargetService)的IP地址后,向該IP發(fā)出請求。

開啟CoreDNS(非托管)組件

  • 方式一:對于新建的ACK Serverless集群,您可以在創(chuàng)建集群時(shí),指定CoreDNS作為DNS服務(wù)發(fā)現(xiàn),啟用非托管版CoreDNS組件。

    image.png

  • 方式二:對于已創(chuàng)建的ACK Serverless集群,您可以在集群管理頁面,選擇運(yùn)維管理 > 組件管理,單擊網(wǎng)絡(luò)頁簽,然后單擊CoreDNS組件的安裝,啟用非托管版CoreDNS組件。具體操作,請參見管理組件

PrivateZone

PrivateZone是一項(xiàng)基于阿里云VPC環(huán)境提供的私有域名解析服務(wù)。通過使用PrivateZone控制器,就可以實(shí)現(xiàn)對ACK Serverless集群內(nèi)各命名空間的Service和Endpoint資源的實(shí)時(shí)監(jiān)控。該控制器與APIServer交互,自動(dòng)將資源的域名同步到PrivateZone中。ACK Serverless中的容器Pod通過PrivateZone DNS解析服務(wù)就可完成Kubernetes的服務(wù)發(fā)現(xiàn)。關(guān)于如何使用PrivateZone方案,請參見ACK Serverless集群基于云解析PrivateZone的服務(wù)發(fā)現(xiàn)

PrivateZone通過VPC提供的DNS服務(wù)器(100.100.2.136、100.100.2.138)暴露DNS服務(wù),業(yè)務(wù)Pod使用PrivateZone的流程如下。

image.png

鏈路

說明

PrivateZone控制器連接至APIServer,監(jiān)聽集群中服務(wù)的創(chuàng)建和更新事件。

PrivateZone控制器監(jiān)聽到服務(wù)的創(chuàng)建和更新事件后,將其同步至PrivateZone產(chǎn)品中權(quán)威Zone解析記錄中。

客戶端(Client Pod)訪問上游服務(wù)(TargetService)時(shí),會(huì)先從本地DNS域名解析配置文件(/etc/resolv.conf)中獲取DNS服務(wù)器地址,再向該DNS服務(wù)器地址發(fā)出域名解析請求,查詢TargetService對應(yīng)的目標(biāo)IP地址。

在本方案中,DNS服務(wù)器地址為DNS域名解析配置文件中配置VPC提供的DNS服務(wù)器IP地址(100.100.2.136、100.100.2.138)。DNS服務(wù)器會(huì)從PrivateZone獲取正確的解析記錄,返回給客戶端。

客戶端(Client Pod)通過DNS服務(wù)器拿獲取到上游服務(wù)(TargetService)的IP地址后,向該IP發(fā)出請求。

開啟PrivateZone組件

  • 方式一:對于新建的ACK Serverless集群,您可以在創(chuàng)建集群時(shí),指定PrivateZone作為DNS服務(wù)發(fā)現(xiàn),啟用PrivateZone組件。

    image.png

  • 方式二:對于已創(chuàng)建的ACK Serverless集群,您可以在eci-profile配置項(xiàng)中設(shè)置enablePrivateZone參數(shù)值為true,啟用PrivateZone組件。

常見問題

如何確認(rèn)當(dāng)前集群CoreDNS(托管)、CoreDNS(非托管)、PrivateZone組件已成功開啟?

  • CoreDNS(托管)和CoreDNS(非托管)組件

    登錄容器服務(wù)管理控制臺,在集群管理頁面,選擇運(yùn)維管理 > 組件管理,單擊網(wǎng)絡(luò)頁簽,如果組件右上角有已安裝字樣,說明當(dāng)前集群的CoreDNS(托管)或CoreDNS(非托管)組件已開啟成功。

    以CoreDNS(托管)組件為例,如下圖所示。

    image.png

  • PrivateZone組件

    登錄PrivateZone控制臺,通過ACK Serverless的VPC ID搜索權(quán)威Zone,如果能夠搜到名稱以集群ID結(jié)尾的Zone,則說明PrivateZone已開啟成功。

如何確認(rèn)業(yè)務(wù)Pod正在使用CoreDNS(托管)、CoreDNS(非托管)、PrivateZone組件?

  • CoreDNS(托管)和CoreDNS(非托管)組件

    通過執(zhí)行命令kubectl exec進(jìn)入容器Pod中,執(zhí)行命令cat /etc/resolv.conf,如果nameserver字段被指向到kube-system命名空間下的kube-dns服務(wù)的集群IP地址,說明該P(yáng)od正在使用CoreDNS(托管)或CoreDNS(非托管)組件。

  • PrivateZone組件

    通過執(zhí)行命令kubectl exec進(jìn)入容器Pod中,執(zhí)行命令cat /etc/resolv.conf,如果nameserver字段被指向到100.100.2.136100.100.2.138(此處IP為本文示例IP,具體指向的IP地址以實(shí)際為準(zhǔn)),說明Pod正在使用PrivateZone組件。

相關(guān)文檔