国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

配置自定義DNS服務(wù) 容器云 UK8S

ernest.wang / 3137人閱讀

摘要:在中,的默認(rèn)配置信息如下的配置信息包含以下的插件錯(cuò)誤日志會(huì)以標(biāo)準(zhǔn)輸出的方式打印到容器日志的健康狀況插件是中用來替代的模塊,將的域名轉(zhuǎn)為的工作由該插件完成,其中常用的參數(shù)作用如下用于設(shè)置的記錄處理模式,如。

配置自定義DNS服務(wù)

本文主要介紹如何在UK8S集群中,使用自定義的DNS服務(wù)。

從Kubernetes 1.11起,CoreDNS取代kube-dns成為默認(rèn)的DNS方案,UK8S目前支持的Kubernetes版本>=1.11,因此本文主要介紹如何修改CoreDNS的配置以達(dá)到使用自定義DNS服務(wù)的目的。

簡(jiǎn)介

CoreDNS是一個(gè)模塊化、插件式的DNS服務(wù)器,其配置文件信息保存在Corefile內(nèi)。UK8S集群管理員可通過修改ConfigMap,來配置自定義DNS服務(wù)。

在UK8S中,CoreDNS的默認(rèn)Corefile配置信息如下:

</>復(fù)制代碼

  1. apiVersion: v1
  2. kind: ConfigMap
  3. data:
  4. Corefile: |
  5. .:53 {
  6. errors
  7. health
  8. kubernetes cluster.local in-addr.arpa ip6.arpa {
  9. pods insecure
  10. upstream
  11. fallthrough in-addr.arpa ip6.arpai
  12. ttl 30
  13. }
  14. prometheus :9153
  15. forward . /etc/resolv.conf {
  16. policy sequential
  17. }
  18. cache 30
  19. loop
  20. reload
  21. loadbalance
  22. }
  23. metadata:
  24. name: coredns
  25. namespace: kube-system

Corefile的配置信息包含以下CoreDNS的插件:

errors: 錯(cuò)誤日志會(huì)以標(biāo)準(zhǔn)輸出的方式打印到容器日志;

health: CoreDNS的健康狀況;

kubernetes: kubernetes插件是CoreDNS中用來替代kube-dns的模塊,將service的域名轉(zhuǎn)為IP的工作由該插件完成,其中常用的參數(shù)作用如下:

pods POD-MODES: 用于設(shè)置Pod的A記錄處理模式,如1-2-3-4.ns.pod.cluster.local. in A 1.2.3.4pods disabled為默認(rèn)值,表示不為pod提供dns記錄;pods insecure會(huì)一直返回對(duì)應(yīng)的A記錄,而不校驗(yàn)ns;pods verified會(huì)校驗(yàn)ns是否正確,如果該ns下有對(duì)應(yīng)的pod,則返回A記錄。

upstream [ADDRESS..]: 定義用于解析外部hosts的上游dns服務(wù)器。如果不指定,則CoreDNS會(huì)自行處理,例如使用后面會(huì)介紹到的proxy插件。

fallthrough [ZONE..]: 如果指定此選項(xiàng),則DNS查詢將在插件鏈上傳遞,該插件鏈可以包含另一個(gè)插件來處理查詢,例如in-addr.arpa

prometheus: CoreDNS對(duì)外暴露的監(jiān)控指標(biāo),默認(rèn)為http://localhost:9153/metrics。

forward [from to]: 任何不屬于Kubernetes集群內(nèi)部的域名,其DNS請(qǐng)求都將指向forword指定的 DNS 服務(wù)器地址。from一般為".",代表所有域名,to可以為多個(gè),如111.114.114.114 8.8.8.8。需要注意的是,新版本的CoreDNS已forward插件替代proxy插件,不過使用方法是一致的,如果你的集群是proxy,建議改為forward插件,性能更好。

reload: 允許自動(dòng)加載變化了的Corefile,建議配置,這樣CoreDNS可以實(shí)現(xiàn)熱更新。

其他選項(xiàng)的意義請(qǐng)查看Kubernetes官方文檔,下面我們舉例說明下如何修改ConfigMap。

示例為特殊域配置DNS服務(wù)器

假設(shè)我們有一個(gè)ucloudk8s的服務(wù)域,自建的私有DNS Server地址為10.9.10.8,則集群管理員可以執(zhí)行kubectl edit configmap/coredns -n kube-system中添加如下所示的一段規(guī)則,這是個(gè)獨(dú)立的Server Block,我們可以在Corefile里面為不同的域配置不同的Server Block

</>復(fù)制代碼

  1. ucloudk8s.com:53 {
  2. errors
  3. cache 30
  4. forward . 10.9.10.8
  5. }

并且,我們不希望使用/etc/resolv.conf里配置的DNS服務(wù)器作為上游服務(wù)器,而是指向自建的DNS Server,只需要直接修改之前提到的upstream和proxy選項(xiàng)即可

</>復(fù)制代碼

  1. upstream 10.9.10.8
  2. forward . 172.16.0.1

修改完畢后的configmap如下:

</>復(fù)制代碼

  1. apiVersion: v1
  2. kind: ConfigMap
  3. data:
  4. Corefile: |
  5. .:53 {
  6. errors
  7. health
  8. kubernetes cluster.local in-addr.arpa ip6.arpa {
  9. pods insecure
  10. upstream 10.9.10.8
  11. fallthrough in-addr.arpa ip6.arpa
  12. }
  13. prometheus :9153
  14. forward . 10.9.10.8
  15. cache 30
  16. loop
  17. reload
  18. loadbalance
  19. }
  20. ucloudk8s.com:53 {
  21. errors
  22. cache 30
  23. forward . 10.9.10.8
  24. }
  25. metadata:
  26. name: coredns
  27. namespace: kube-system
驗(yàn)證

我們?cè)谕琕PC下的某臺(tái)云主機(jī)中(請(qǐng)勿在UK8S Node節(jié)點(diǎn)中操作)安裝一個(gè)DNS服務(wù)器,來驗(yàn)證自定義DNS是否正常工作。

通過Docker安裝DNS服務(wù)器

</>復(fù)制代碼

  1. docker run -d -p 53:53/tcp -p 53:53/udp --cap-add=NET_ADMIN --name dns-server andyshinn/dnsmasq:2.75
進(jìn)入容器

</>復(fù)制代碼

  1. docker exec -it dns-server /bin/sh
配置上游DNS服務(wù)器

</>復(fù)制代碼

  1. vi /etc/resolv.dnsmasq
  2. nameserver 114.114.114.114
  3. nameserver 8.8.8.8
配置本地解析規(guī)則

</>復(fù)制代碼

  1. vi /etc/dnsmasqhosts
  2. 110.110.110.110 baidu.com
修改dnsmasq配置文件,指定使用上述兩個(gè)我們自定義的配置文件,修改下述兩個(gè)選項(xiàng),并重啟容器。

</>復(fù)制代碼

  1. vi /etc/dnsmasq.conf
  2. resolv-file=/etc/resolv.dnsmasq
  3. addn-hosts=/etc/dnsmasqhosts
  4. docker restart dns-server
修改CoreDNS的configmap,添加如下規(guī)則。

</>復(fù)制代碼

  1. baidu.com:53{
  2. errors
  3. cache 30
  4. forward . 10.9.10.8(測(cè)試時(shí)需修改成你的DNS地址)
  5. }
進(jìn)入K8S在容器內(nèi)測(cè)試,使用dig命名測(cè)試,可以看到解析地址為110.110.110.110,符合預(yù)期。

</>復(fù)制代碼

  1. bash-4.4# dig baidu.com
  2. ; <<>> DiG 9.12.3-P4 <<>> baidu.com
  3. ;; global options: +cmd
  4. ;; Got answer:
  5. ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39140
  6. ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
  7. ;; OPT PSEUDOSECTION:
  8. ; EDNS: version: 0, flags:; udp: 4096
  9. ;; QUESTION SECTION:
  10. ;baidu.com. IN A
  11. ;; ANSWER SECTION:
  12. baidu.com. 5 IN A 110.110.110.110
  13. ;; Query time: 4 msec
  14. ;; SERVER: 172.17.0.2#53(172.17.0.2)
  15. ;; WHEN: Mon May 27 09:11:50 UTC 2019
  16. ;; MSG SIZE rcvd: 63
常見問題修改了CoreFile,但解析不成功

首先確認(rèn)CoreFile是否包含了reload插件,如果沒有包含,需要添加reload,并且重建CoreDNS,使其可以加載到最新的DNS規(guī)則。

其次,通過kubectl logs COREDNS-POD-NAME -n kube-system查看CoreDNS日志,確認(rèn)CoreDNS是否正常工作,以及DNS配置是否加載成功。

如果依然不能正常工作,在容器或Pod內(nèi)執(zhí)行dig @YOUR-DNS-SERVER-ADDRESS YOUR-DOMAIN,確認(rèn)您的DNS服務(wù)器是否正常工作。

如以上操作皆無效,請(qǐng)聯(lián)系UCloud技術(shù)支持協(xié)助處理。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/126934.html

相關(guān)文章

  • 拉勾網(wǎng)基于 UK8S平臺(tái)的容器化改造實(shí)踐

    摘要:宋體本文從拉勾網(wǎng)的業(yè)務(wù)架構(gòu)日志采集監(jiān)控服務(wù)暴露調(diào)用等方面介紹了其基于的容器化改造實(shí)踐。宋體此外,拉勾網(wǎng)還有一套自研的環(huán)境的業(yè)務(wù)發(fā)布系統(tǒng),不過這套發(fā)布系統(tǒng)未適配容器環(huán)境。寫在前面 拉勾網(wǎng)于 2019 年 3 月份開始嘗試將生產(chǎn)環(huán)境的業(yè)務(wù)從 UHost 遷移到 UK8S,截至 2019 年 9 月份,QA 環(huán)境的大部分業(yè)務(wù)模塊已經(jīng)完成容器化改造,生產(chǎn)環(huán)境中,后臺(tái)管理服務(wù)已全部遷移到 UK8...

    CoorChice 評(píng)論0 收藏0
  • 容器 UK8S服務(wù)發(fā)現(xiàn):Kubernetes重要概念Service(即服務(wù),本文中兩者等同)以

    摘要:介紹本章節(jié)主要為您簡(jiǎn)要介紹中的一個(gè)重要概念即服務(wù),本文中兩者等同,以及的相關(guān)知識(shí)。在每臺(tái)的固定端口上暴露服務(wù),選擇的服務(wù)類型,集群會(huì)自動(dòng)創(chuàng)建一個(gè)類型的服務(wù),負(fù)責(zé)處理接收到的外部流量。集群外部的可以通過的方式訪問該服務(wù)。Service 介紹本章節(jié)主要為您簡(jiǎn)要介紹 Kubernetes 中的一個(gè)重要概念 Service(即服務(wù),本文中兩者等同),以及ULB的相關(guān)知識(shí)。Service 介紹Serv...

    Tecode 評(píng)論0 收藏0
  • Service 介紹 容器 UK8S

    摘要:介紹介紹介紹是集群中的一個(gè)資源對(duì)象,用于定義如何訪問一組帶有相同特征的。下面我們分別介紹下如何通過在內(nèi)網(wǎng)外網(wǎng)訪問。 Service 介紹本篇目錄1. Service 介紹2. ULB 簡(jiǎn)要介紹本章節(jié)主要為您簡(jiǎn)要介紹 Kubernetes 中的一個(gè)重要概念 Service(即服務(wù),本文中兩者等同),以及ULB的相關(guān)知識(shí)。1. Service 介紹Service 是 Kubernetes 集群中...

    ernest.wang 評(píng)論0 收藏2037
  • UK8S 集群常見問題 容器 UK8S

    摘要:為什么在節(jié)點(diǎn)直接起容器網(wǎng)絡(luò)不通為什么在節(jié)點(diǎn)直接起容器網(wǎng)絡(luò)不通為什么在節(jié)點(diǎn)直接起容器網(wǎng)絡(luò)不通使用自己的插件,而直接用起的容器并不能使用該插件,因此網(wǎng)絡(luò)不通。 UK8S 集群常見問題本篇目錄1. UK8S 完全兼容原生 Kubernetes API嗎?2. UK8S 人工支持3. UK8S對(duì)Node上發(fā)布的容器有限制嗎?如何修改?4. 為什么我的容器一起來就退出了?5. Docker 如何調(diào)整日...

    ernest.wang 評(píng)論0 收藏1762
  • 容器 UK8S】集群常見問題:UK8S創(chuàng)建Pod失敗,使用kubectl describe po

    摘要:集群常見問題單個(gè)集群最多能添加多少個(gè)節(jié)點(diǎn)當(dāng)前單個(gè)集群對(duì)應(yīng)節(jié)點(diǎn)數(shù)量可查看集群節(jié)點(diǎn)配置推薦。創(chuàng)建失敗,使用發(fā)現(xiàn)報(bào)錯(cuò)為,是啥原因在創(chuàng)建等資源時(shí),都需要扮演云賬戶的身份調(diào)用來完成相關(guān)操作。集群內(nèi)可以解析,但無法聯(lián)通外網(wǎng)拉取數(shù)據(jù)失敗。集群常見問題單個(gè)集群最多能添加多少個(gè)節(jié)點(diǎn)?A:當(dāng)前單個(gè)UK8S集群對(duì)應(yīng)節(jié)點(diǎn)數(shù)量可查看集群節(jié)點(diǎn)配置推薦。UK8S完全兼容原生Kubernetes API嗎?A:完全兼容。U...

    Tecode 評(píng)論0 收藏0
  • 容器 UK8S】日志監(jiān)控方案:什么是Prometheus?怎么部署Prometheus?

    摘要:客戶端庫,為需要監(jiān)控的服務(wù)生成相應(yīng)的并暴露給。根據(jù)配置文件,對(duì)接收到的警報(bào)進(jìn)行處理,發(fā)出告警。再創(chuàng)建一個(gè)來告訴需要監(jiān)控帶有為的背后的一組的。什么是Prometheus關(guān)于PrometheusPrometheus 是一套開源的系統(tǒng)監(jiān)控報(bào)警框架。它的設(shè)計(jì)靈感源于 Google 的 borgmon 監(jiān)控系統(tǒng),由SoundCloud 在 2012 年創(chuàng)建,后作為社區(qū)開源項(xiàng)目進(jìn)行開發(fā),并于 2015 ...

    Tecode 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<