Как добавить дополнительные узлы управляющей плоскости в существующий кластер Kubernetes?

Вопрос или проблема

Я экспериментирую с настройкой нескольких контрольных плоскостей в кластере Kubernetes.

Я успешно создал первую контрольную плоскость и инициализировал ее, используя следующую команду:

sudo kubeadm init --control-plane-endpoint "$LOAD_BALANCER_IP" --upload-certs --pod-network-cidr=10.244.0.0/16

После выполнения команды kubelet успешно запустился, и я получил следующее сообщение:

Теперь вы можете присоединить любое количество узлов контрольной плоскости, выполнив следующую команду от имени root на каждом узле:

    kubeadm join 192.168.0.200:6443 --token 9vr73a.a8uxyaju799qwdjv \
      --discovery-token-ca-cert-hash sha256:7c2e69131a36ae2a042a339b33381c6d0d43887e2de83720eff5359e26aec866 \
      --control-plane --certificate-key f8902e114ef118304e561c3ecd4d0b543adc226b7a07f675f56564185ffe0c07

    Обратите внимание, что ключ сертификата предоставляет доступ к чувствительным данным кластера. Держите его в секрете!
    В качестве меры предосторожности загруженные сертификаты будут удалены через два часа. При необходимости вы можете использовать следующую команду для повторной загрузки сертификатов:
    
    kubeadm init phase upload-certs

Кроме того, для присоединения рабочих узлов я могу использовать:

kubeadm join 192.168.0.200:6443 --token 9vr73a.a8uxyaju799qwdjv \
  --discovery-token-ca-cert-hash sha256:7c2e69131a36ae2a042a339b33381c6d0d43887e2de83720eff5359e26aec866

Мои вопросы:

  1. Мне нужно запустить kubeadm init снова на втором узле контрольной плоскости, чтобы присоединить его к существующей контрольной плоскости?

    Или мне просто использовать команду kubeadm join с флагом --control-plane?

  2. Как мне сгенерировать команду для присоединения узлов контрольной плоскости по необходимости?
    Для рабочих узлов я могу использовать следующую команду для регенерации токена присоединения:

    kubeadm token create --print-join-command

Существует ли аналог для узлов контрольной плоскости, или как мне регенерировать команду присоединения, чтобы добавить больше контрольных плоскостей после инициализации?

Буду признателен за любые рекомендации или лучшие практики по добавлению дополнительных контрольных плоскостей в существующий кластер Kubernetes!

Ответ или решение

Конечно! Вот исчерпывающий ответ на ваш вопрос о добавлении дополнительных узлов контрольной плоскости в существующий кластер Kubernetes.

Как добавить дополнительные узлы контрольной плоскости в существующий кластер Kubernetes?

1. Использование команды kubeadm join

Для того чтобы добавить второй узел контрольной плоскости, вам не нужно снова запускать команду kubeadm init. Вместо этого вы просто используете команду kubeadm join с флагом --control-plane. Вы также должны использовать --certificate-key, чтобы обеспечить доступ к кластерным конфиденциальным данным.

Пример команды для добавления нового узла контрольной плоскости может выглядеть следующим образом:

sudo kubeadm join $LOAD_BALANCER_IP:6443 --token YOUR_TOKEN \
  --discovery-token-ca-cert-hash sha256:YOUR_CA_CERT_HASH \
  --control-plane --certificate-key YOUR_CERTIFICATE_KEY

Замените YOUR_TOKEN, YOUR_CA_CERT_HASH и YOUR_CERTIFICATE_KEY на реальные значения, которые вы получили при инициализации первого узла.

2. Генерация команд для добавления узлов контрольной плоскости

Для генерации команды присоединения новых узлов контрольной плоскости вы можете использовать следующую команду:

kubeadm token create --print-join-command --control-plane

Эта команда создаст токен и соответствующую команду для присоединения нового узла контрольной плоскости, включая хеш сертификата и ключ.

3. Если токен недоступен

Если токен истек или вы не можете его найти, вы можете создать новый токен:

kubeadm token create

После создания токена, вы сможете использовать команду kubeadm token list, чтобы увидеть все доступные токены, и затем сформировать join-команду для новосозданного узла.

Также учитывайте, что для управления сертификатами вы можете выполнить следующую команду, если вам нужно заново загрузить сертификаты:

kubeadm init phase upload-certs

4. Рекомендации по добавлению узлов контрольной плоскости

  • Убедитесь, что ваш новый узел контрольной плоскости имеет доступ к необходимым ресурсам и сетевым настройкам для взаимодействия с существующим кластером.
  • Не забудьте синхронизировать время между всеми узлами, так как это важно для работы Kubernetes.
  • Регулярно проверяйте журналы и состояние узлов после добавления нового узла контрольной плоскости, чтобы удостовериться, что он функционирует корректно.

Следуя этим шагам, вы сможете успешно добавить дополнительные узлы контрольной плоскости к вашему кластеру Kubernetes, обеспечивая большую отказоустойчивость и масштабируемость. Если у вас возникнут дополнительные вопросы, не стесняйтесь спрашивать!

Оцените материал
Добавить комментарий

Капча загружается...