Узлы кластера Kubernetes не создаются автоматически, когда другие теряются в Kubespray
Я успешно развернул мультимастерный кластер Kubernetes, используя репозиторий https://github.com/kubernetes-sigs/kubespray и все работает отлично. Но когда я останавливаю / прекращаю работу узла в кластере, новый узел не присоединяется к кластеру. Я развернул kubernetes с помощью KOPS, но узлы были созданы автоматически при удалении одного из них. Это ожидаемое поведение в kubespray? Пожалуйста помоги..
1 ответ
Это ожидаемое поведение, потому что kubespray не создает ASG, которые являются ресурсами, специфичными для AWS. Можно заметить, что kubespray имеет дело только с существующими машинами; в репо они предлагают игрушки-терраформы для предоставления машин, но сам kubespray не входит в этот бизнес.
У вас есть несколько вариантов:
Пост-предоставление с использованием scale.yml
- Предоставьте новый узел, используя ваш любимый механизм
- Создайте файл инвентаря, содержащий его, и
etcd
машины (предположительно, чтобы kubespray мог выдавать сертификаты etcd для нового узла - Вызвать
scale.yml
сборник пьес
Вы можете наслаждаться AWX в поддержку этого.
Используя равнину kubeadm join
Это механизм, который я использую для своих кластеров, FWIW
Создайте токен соединения kubeadm, используя
kubeadm token create --ttl 0
(или любой другой TTL, который вы можете использовать)Вам нужно будет сделать это только один раз или, возможно, один раз для ASG, в зависимости от ваших допусков безопасности
Используйте механизм cloud-init, чтобы убедиться, что
docker
,kubeadm
, а такжеkubelet
двоичные файлы присутствуют на машинеВы также можете использовать AMI для этого, если вам нравится создавать AMI
- Затем вызвать
kubeadm join
как описано здесь: https://kubernetes.io/docs/setup/independent/high-availability/
Используйте контроллер машины
Существует множество компонентов "контроллеров машин", которые нацелены на использование пользовательских контроллеров внутри Kubernetes для декларативного управления пулами узлов. У меня нет опыта работы с ними, но я верю, что они работают. Эта ссылка была только первой, которая пришла на ум, но есть и другие
У наших друзей в Kubedex есть целая страница, посвященная этому вопросу