K8s: как изменить сервер имен для pod при попытке посетить какой-либо домен за пределами кластера - PullRequest
0 голосов
/ 28 мая 2019

По какой-то причине такой сервер имен, как 4.2.2.1,208.67.220.220, не является лучшим вариантом в Китае.Когда модуль пытается разрешить домен за пределами кластера, набор демонов nodelocaldns жалуется на тайм-аут ввода-вывода для разрешения имени домена

[ERROR] plugin/errors: 2 checkpoint-api.hashicorp.com. A: read udp 192.168.1.15:35630->4.2.2.1:53: i/o timeout
[ERROR] plugin/errors: 2 checkpoint-api.hashicorp.com. AAAA: read udp 192.168.1.15:37137->4.2.2.2:53: i/o timeout

Я изменил файл ядра corens вconfigmap для использования другого сервера имен 114.114.114.114, но без эффекта.

---
kind: ConfigMap
apiVersion: v1
metadata:
  name: coredns
  namespace: kube-system
  selfLink: "/api/v1/namespaces/kube-system/configmaps/coredns"
  uid: 844355d4-7dd3-11e9-ab0b-0800274131a7
  resourceVersion: '919'
  creationTimestamp: '2019-05-24T03:25:02Z'
  labels:
    addonmanager.kubernetes.io/mode: EnsureExists
  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 /etc/resolv.conf\n      fallthrough in-addr.arpa
      ip6.arpa\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"}}

'
data:
  Corefile: |
    .:53 {
        errors
        health
        kubernetes cluster.local in-addr.arpa ip6.arpa {
          pods insecure
          upstream 114.114.114.114
          fallthrough in-addr.arpa ip6.arpa
        }
        prometheus :9153
        forward . 114.114.114.114
        cache 30
        loop
        reload
        loadbalance
    }
    consul:53 {
        errors
        cache 30
        forward . 10.233.5.74
}

Итак, какую конфигурацию я пропустил?

1 Ответ

0 голосов
/ 29 мая 2019

Вы можете найти информацию здесь .Точнее:

Чтобы явно заставить все некластерные DNS-запросы проходить через определенный сервер имен по адресу 172.16.0.1, укажите прокси и восходящий канал для сервера имен

proxy .  172.16.0.1
upstream 172.16.0.1
...