Узлы кластера Kubernetes не создаются автоматически, когда другие теряются в Kubespray

Я успешно развернул мультимастерный кластер Kubernetes, используя репозиторий https://github.com/kubernetes-sigs/kubespray и все работает отлично. Но когда я останавливаю / прекращаю работу узла в кластере, новый узел не присоединяется к кластеру. Я развернул kubernetes с помощью KOPS, но узлы были созданы автоматически при удалении одного из них. Это ожидаемое поведение в kubespray? Пожалуйста помоги..

1 ответ

Это ожидаемое поведение, потому что kubespray не создает ASG, которые являются ресурсами, специфичными для AWS. Можно заметить, что kubespray имеет дело только с существующими машинами; в репо они предлагают игрушки-терраформы для предоставления машин, но сам kubespray не входит в этот бизнес.

У вас есть несколько вариантов:

Пост-предоставление с использованием scale.yml

  1. Предоставьте новый узел, используя ваш любимый механизм
  2. Создайте файл инвентаря, содержащий его, и etcd машины (предположительно, чтобы kubespray мог выдавать сертификаты etcd для нового узла
  3. Вызвать scale.yml сборник пьес

Вы можете наслаждаться AWX в поддержку этого.

Используя равнину kubeadm join

Это механизм, который я использую для своих кластеров, FWIW

  1. Создайте токен соединения kubeadm, используя kubeadm token create --ttl 0 (или любой другой TTL, который вы можете использовать)

    Вам нужно будет сделать это только один раз или, возможно, один раз для ASG, в зависимости от ваших допусков безопасности

  2. Используйте механизм cloud-init, чтобы убедиться, что docker, kubeadm, а также kubelet двоичные файлы присутствуют на машине

    Вы также можете использовать AMI для этого, если вам нравится создавать AMI

  3. Затем вызвать kubeadm join как описано здесь: https://kubernetes.io/docs/setup/independent/high-availability/

Используйте контроллер машины

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

У наших друзей в Kubedex есть целая страница, посвященная этому вопросу

Другие вопросы по тегам