начиная с этого понедельника, после обновления до версии 1.17.2 из Rancher, каждый новый узел (капли DigitalOcean, все с Ubuntu 18.04.3) получает свой InternalIP, неправильно равный ExternalIP, Publi c one! Это, в свою очередь, является моим основным подозреваемым виновником отсутствия внутрикластерного разрешения DNS, которое мы испытываем с понедельника, поскольку я только что обнаружил, что неотвечающие службы лежали на новом узле с InternalIP = ExternalIP.
kubectl describe node exacto-devel-mail-01
...
Addresses:
InternalIP: 37.139.20.177
Hostname: exacto-devel-mail-01
«Старый» узел (до обновления 1.17.2, поэтому, предположительно, мы работали на 1.16.6):
kubectl describe node exacto-devel-06
...
Addresses:
InternalIP: 10.129.254.119
Hostname: exacto-devel-06
Я попытался отредактировать узел, назначив правильный InternalIP ценность, но ничего не произошло! Он просто продолжает показывать неправильный адрес!
Эта проблема с ошибкой в разрешении имен кластер-DNS контейнеров, работающих на тех «плохих» узлах с поврежденными InternalIP, появилась в другом кластере после обновления до v1.16.6. Таким образом, я могу сказать, что проблема затрагивает Kubernetes 1.16.6 и 1.17.2, по крайней мере, в управляемых Rancher кластерах k8s.
Чтобы дополнительно прояснить проблему, вот текущий список узлов в моем кластере среды разработки:
kubectl get nodes -o wide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
exacto-devel-01 Ready controlplane,etcd 11d v1.17.2 37.139.0.68 <none> RancherOS v1.5.5 4.14.138-rancher docker://19.3.5
exacto-devel-02 Ready controlplane,etcd 11d v1.17.2 37.139.0.231 <none> RancherOS v1.5.5 4.14.138-rancher docker://19.3.5
exacto-devel-03 Ready controlplane,etcd 11d v1.17.2 37.139.4.139 <none> RancherOS v1.5.5 4.14.138-rancher docker://19.3.5
exacto-devel-04 Ready worker 11d v1.17.2 10.129.254.158 <none> Ubuntu 18.04.3 LTS 4.15.0-74-generic docker://19.3.5
exacto-devel-05 Ready worker 11d v1.17.2 10.129.254.200 <none> Ubuntu 18.04.3 LTS 4.15.0-74-generic docker://19.3.5
exacto-devel-06 Ready worker 10d v1.17.2 10.129.254.119 <none> Ubuntu 18.04.3 LTS 4.15.0-74-generic docker://19.3.2
exacto-devel-elk-01 Ready worker 25h v1.17.2 185.14.186.204 <none> Ubuntu 18.04.4 LTS 4.15.0-76-generic docker://19.3.5
exacto-devel-elk-02 Ready worker 7h8m v1.17.2 198.211.118.87 <none> Ubuntu 18.04.4 LTS 4.15.0-76-generic docker://19.3.5
Как видите, эта проблема затрагивает 01,02,03 и elk-01, elk-02: под заголовком столбца «InternalIP» есть четко идентифицируемый Publi c IP! Хотя это, кажется, не имеет значения для узлов 01,02 и 03, так как они получили роль etcd и controlplane, на самом деле она блокирует расширение кластера для добавления новых функций (в данном примере ELK), поскольку любая рабочая нагрузка развернута. на этих новых узлах возникнут проблемы с разрешением DNS внутри кластера.
Пожалуйста, сообщите, что делать дальше! Спасибо