在Kubernetes的DNS服務(wù)器中插入自定義解析記錄-coredns

向Kubernetes集群域名服務(wù)器中插入自定義的解析記錄-coredns

注意:從Kubenretes 1.14開始,集群內(nèi)部的域名服務(wù)器默認(rèn)換成了coredns

找到kube-system命名空間的名稱為coredns的configmap:

? kubectl get configmap coredns -n kube-system                                                                     yjzeng@yjzeng-ubuntu
NAME      DATA   AGE
coredns   1      9d
------------------------------------------------------------------------------------------------------------------------------------------
~ ?       

編輯這個configmap:

~ ? kubectl edit configmap coredns -n kube-system

編輯為以下內(nèi)容(添加了hosts塊):

apiVersion: v1
data:
  Corefile: |
    .:53 {
        errors
        health
        kubernetes cluster.local in-addr.arpa ip6.arpa {
          pods insecure
          upstream
          fallthrough in-addr.arpa ip6.arpa
          ttl 30
        }
        hosts {
            10.0.0.22 cos6-data1.test.alltest.com
            10.0.0.23 cos6-data2.test.alltest.com
            10.0.0.24 cos6-data3.test.alltest.com
            10.0.0.25 cos6-data4.test.alltest.com
            10.0.0.26 cos6-data5.test.alltest.com
            10.0.0.41 cos6-datanode6.test.alltest.com
            10.0.0.42 cos6-datanode7.test.alltest.com
            10.0.0.43 cos6-datanode8.test.alltest.com
            10.0.0.44 cos6-datanode9.test.alltest.com
        }
        prometheus :9153
        forward . "/etc/resolv.conf"
        cache 30
        loop
        reload
        loadbalance
    }
kind: ConfigMap
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"v1","data":{"Corefile":".:53 {\n    errors\n    health\n    kubernetes cluster.local in-addr.arpa ip6.arpa {\n      pods insecure\n      upstream\n      fallthrough in-addr.arpa ip6.arpa\n      ttl 30\n    }\n    prometheus :9153\n    forward . \"/etc/resolv.conf\"\n    cache 30\n    loop\n    reload\n    loadbalance\n}\n"},"kind":"ConfigMap","metadata":{"annotations":{},"labels":{"addonmanager.kubernetes.io/mode":"EnsureExists"},"name":"coredns","namespace":"kube-system"}}
  creationTimestamp: "2019-08-19T09:14:15Z"
  labels:
    addonmanager.kubernetes.io/mode: EnsureExists
  name: coredns
  namespace: kube-system
  resourceVersion: "3231349"
  selfLink: /api/v1/namespaces/kube-system/configmaps/coredns
  uid: b791c47f-c261-11e9-b426-525400116042

重啟coredns:

~ ? kubectl scale deployment coredns -n kube-system --replicas=0
deployment.extensions/coredns scaled

~ ? kubectl scale deployment coredns -n kube-system --replicas=2                                                     yjzeng@yjzeng-ubuntu
deployment.extensions/coredns scaled

測試,進(jìn)入任意一個具有ping命令的pod中,ping自己插入的域名,能通就說明已經(jīng)生效了。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容