摘要:我們很高興地宣布,在中,增加了對可配置的私有區(qū)域通常稱為存根域和外部上游名稱服務器的支持。例如,下面的配置插入單個存根域和兩個上游名稱服務器。具有存根域后綴的名稱例如將被發(fā)送到配置的自定義解析程序。
許多用戶他們想要集成domain name zones(現(xiàn)有域名區(qū)域)到Kubernetes DNS 命名空間。例如,混合云用戶可能希望在群集內(nèi)解析其內(nèi)部“.corp”域地址。其他用戶可能具有由非Kubernetes服務發(fā)現(xiàn)系統(tǒng)(如Consul)組成的區(qū)域。我們很高興地宣布,在Kubernetes 1.6中,kube-dns增加了對可配置的私有DNS區(qū)域(通常稱為“存根域”)和外部上游DNS名稱服務器的支持。在這篇博文中,我們將介紹如何配置和使用此功能。
Default lookup flow
Kubernetes目前支持使用dnsPolicy標志在每個pod上指定的兩個DNS策略:
“Default”
“ClusterFirst”
如果未明確指定dnsPolicy,則默認使用“ClusterFirst”:
果將dnsPolicy設置為“Default”,則名稱解析配置將從運行pod的node節(jié)點繼承。注意:此功能不能與dnsPolicy一起使用:“Default”。
如果將dnsPolicy設置為“ClusterFirst”,則DNS查詢將發(fā)送到kube-dns服務。對于以配置的集群域后綴為根的域(上面示例中以“.cluster.local”結(jié)尾的任何地址)的查詢將由kube-dns服務應答。所有其他查詢(例如,www.kubernetes.io)將被轉(zhuǎn)發(fā)到從節(jié)點繼承的上游名稱服務器。在此功能之前,通常通過使用自定義解析程序替換上游DNS來引入存根域。但是,這導致自定義解析程序本身成為DNS解析的關(guān)鍵路徑,其中可伸縮性和可用性問題可能導致群集丟失DNS功能。此特性允許用戶在不接管整個解析路徑的情況下引入自定義解析。
Customizing the DNS Flow
從Kubernetes 1.6開始,集群管理員可以通過為kube-dns提供ConfigMap來指定自定義存根域和上游域名服務器。例如,下面的配置插入單個存根域和兩個上游名稱服務器。根據(jù)規(guī)定,帶有“.acme.local”后綴的DNS請求將被轉(zhuǎn)發(fā)到偵聽1.2.3.4的DNS。此外,Google Public DNS將為上游查詢提供服務。有關(guān)數(shù)據(jù)格式的一些注意事項,請參閱本節(jié)末尾的ConfigMap配置說明。
apiVersion: v1 kind: ConfigMap metadata: name: kube-dns namespace: kube-system data: stubDomains: | {“acme.local”: [“1.2.3.4”]} upstreamNameservers: | [“8.8.8.8”, “8.8.4.4”]
下圖顯示了上述配置中指定的DNS查詢流。將dnsPolicy設置為“ClusterFirst”后,DNS查詢將首先發(fā)送到kube-dns中的DNS緩存層。從此處檢查請求的后綴,然后將其轉(zhuǎn)發(fā)到相應的DNS。在這種情況下,具有集群后綴的名稱(例如“.cluster.local”)將發(fā)送到kube-dns。具有存根域后綴的名稱(例如“.acme.local”)將被發(fā)送到配置的自定義解析程序。最后,與這些后綴中的任何一個都不匹配的請求將被轉(zhuǎn)發(fā)到上游DNS。
下面是一個示例域名和這些域名的查詢目的地的表格:
Domain name | Server answering the query |
kubernetes.default.svc.cluster.local | kube-dns |
foo.acme.local | custom DNS (1.2.3.4) |
widget.com | upstream DNS (one of 8.8.8.8, 8.8.4.4) |
ConfigMap Configuration Notes
stubDomains存根區(qū)域(可選)
格式:使用DNS后綴密鑰的JSON映射(例如;“acme.local”)和由DNS IP的JSON數(shù)組組成的值。
注意:目標名稱服務本身可能是Kubernetes服務。例如,您可以運行自己的dnsmasq副本以將自定義DNS名稱導出到Cluster DNS名稱空間中。
upstreamNameservers上游命名服務(可選)
格式:DNS IP的JSON數(shù)組。
注意:如果指定,則指定的值將替換默認情況下從節(jié)點的/etc/resolv.conf獲取的名稱服務
限制:最多可以指定三個上游名稱服務器
示例 #1: 增加 Consul DNS Stub Domain
在該示例中,用戶具有他們希望與kube-dns集成的Consul DNS服務發(fā)現(xiàn)系統(tǒng)。 consul域服務器位于10.150.0.1,所有consul名稱的后綴為“.consul.local”。要配置Kubernetes,集群管理員只需創(chuàng)建一個ConfigMap對象,如下所示。注意:在此示例中,集群管理員不希望覆蓋節(jié)點的上游名稱服務器,因此他們不需要指定可選的upstreamNameservers字段。
apiVersion: v1 kind: ConfigMap metadata: name: kube-dns namespace: kube-system data: stubDomains: | {“consul.local”: [“10.150.0.1”]}
示例 #2: 替換Upstream Nameservers
在此示例中,集群管理員希望顯式強制所有非集群DNS查找在172.16.0.1處通過自己的名稱服務器。再次,這很容易實現(xiàn);他們只需要使用upstreamNameservers字段創(chuàng)建一個ConfigMap,指定所需的名稱服務器。
apiVersion: v1 kind: ConfigMap metadata: name: kube-dns namespace: kube-system data: upstreamNameservers: | [“172.16.0.1”]
總結(jié)
上文是kube-dns實現(xiàn)的解決方案。而stubDomains 和 upstreamNameservers 在coredns 中 通過 proxy 插件實現(xiàn)。coredns是接下來重點研究的東西。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/33065.html
摘要:我們很高興地宣布,在中,增加了對可配置的私有區(qū)域通常稱為存根域和外部上游名稱服務器的支持。例如,下面的配置插入單個存根域和兩個上游名稱服務器。具有存根域后綴的名稱例如將被發(fā)送到配置的自定義解析程序。 許多用戶他們想要集成domain name zones(現(xiàn)有域名區(qū)域)到Kubernetes DNS 命名空間。例如,混合云用戶可能希望在群集內(nèi)解析其內(nèi)部.corp域地址。其他用戶可能具有...
摘要:自定義從開始,集群管理員可以通過為提供的來指定自定義存根域和上游。例如,下面的配置插入一個單獨的存根域和兩個上游。使用存根域后綴例如的名稱將被發(fā)送到配置的自定義解析器。 許多用戶想將現(xiàn)有的域名 zones 集成到其 Kubernetes DNS 命名空間中。例如,混合云用戶可能希望解決集群內(nèi)部的.corp域地址問題。其他用戶可能是有由非 Kubernetes 服務發(fā)現(xiàn)系統(tǒng)的 zone(...
摘要:云廠商托管服務的域名解析注意事項使用云廠家提供托管式,的域名解析參數(shù),通過界面創(chuàng)建的話,可能廠商界面沒有開放配置,采用了一些默認值,在使用時候,需要了解清楚廠商提供的默認配置,否則會存在問題。原文鏈接使用云廠商托管時容器域名解析注意事項 云廠商托管 Kubernetes 服務的 Pod 域名解析注意事項 使用云廠家提供托管式Kubernetes,Pod的域名解析參數(shù),通過界面創(chuàng)建Pod...
摘要:系統(tǒng)使用命令手動添加內(nèi)網(wǎng)虛擬的情況,若申請的內(nèi)網(wǎng)虛擬為,命令如下使用命令檢查內(nèi)網(wǎng)虛擬是否刪除成功。系統(tǒng)將內(nèi)網(wǎng)虛擬寫入配置文件的情況系統(tǒng)將內(nèi)網(wǎng)虛擬寫入配置文件的情況修改網(wǎng)絡配置文件,命令如下將配置文件段中配置段刪除。 內(nèi)網(wǎng)VIP本篇目錄申請內(nèi)網(wǎng)VIP將內(nèi)網(wǎng)VIP應用于云主機/物理云主機上解除資源中所配置內(nèi)網(wǎng)虛擬IP釋放VIP使用VIP與Keepalive配置服務高可用申請內(nèi)網(wǎng)VIP選擇菜單中網(wǎng)...
摘要:配置說明建議后臺關(guān)閉進程,以免導致解析失敗。在使用產(chǎn)品時,需要將的主機默認修改為以下配置。下面以北京二的配置為例,介紹不同操作系統(tǒng)下的修改方式。含,修改當前的配置文件修改為配置即可生效。修改修改為以下內(nèi)容保存退出,即可生效。配置說明建議后臺關(guān)閉nscd、systemd-resolved進程,以免導致UDNS解析失敗。在使用UDNS產(chǎn)品時,需要將UHost的主機默認DNS修改為以下配置。北京二...
閱讀 1860·2021-09-23 11:21
閱讀 707·2019-08-30 15:55
閱讀 844·2019-08-29 15:40
閱讀 541·2019-08-29 12:56
閱讀 3175·2019-08-26 12:00
閱讀 3567·2019-08-23 18:24
閱讀 2259·2019-08-23 17:08
閱讀 1649·2019-08-23 17:03