kubeadm init не работает, когда я использую --apiserver-Advertise-address

Я устанавливаю автономный кластер Kubernetes (версия kubeadm - 1.14) в операционной системе RHEL 7.7. У меня есть балансировщик нагрузки (частный LB с частным IP-адресом), настроенный для моего главного узла Kubernetes. Когда я ввел команду

kubeadm init --apiserver-Advertise-address =

, я получил следующую ошибку:

Невозможно зарегистрировать узел «имя главного узла» на сервере API. напишите tcp «IP-адрес мастерноды»: <52444> - «IP-адрес LB»: 6443. Сброс соединения одноранговым узлом.

Если я выдаю только kubeadm init , команда успешно инициирует кластер.

Кроме того, если я использую DNS LB и пытаюсь создать многоплановый кластер (используя controlPlaneEndpoint в качестве DNS LB), это тоже работает. Есть идеи, почему это не удается с адресом - apiserver-Advertise-address ?

А что, если я использую метод создания многоплоскостного кластера (controlPlaneEndpoint), но использую кластер, построенный как автономный кластер? (т. е. без добавления дополнительных мастер-узлов). Вызовет ли это какие-либо проблемы?

0
задан 4 August 2020 в 15:36
1 ответ

Если я правильно понимаю ваш вариант использования, это может быть невозможно.

apiserver-advertise-address используется для установки интерфейса узла, к которому будет привязан api-сервер. Поэтому вы не можете привязываться к интерфейсу LB, потому что это не настоящий интерфейс. Официальный источник:

(Необязательно) Если не указано иное, kubeadm использует сеть интерфейс, связанный со шлюзом по умолчанию, для установки рекламы адрес API-сервера данного конкретного узла плоскости управления. Чтобы использовать другой сетевой интерфейс, укажите --apiserver-advertise-address= аргумент для kubeadm init. Чтобы развернуть кластер IPv6 Kubernetes с использованием адресации IPv6, необходимо указать адрес IPv6, например --apiserver-advertise-address=fd00::101

В то время как --apiserver-advertise-address можно использовать для установки адрес API-сервера этого конкретного узла уровня управления, --control-plane-endpoint можно использовать для установки общей конечной точки для всех узлов плоскости управления.

1
ответ дан 7 August 2020 в 12:56

Теги

Похожие вопросы