Добавление и удаление узлов кластера Kubernetes
Если нагрузка на компоненты Open Single Management Platform изменится, вы можете добавить или удалить целевые устройства, включенные в кластер Kubernetes (узлы кластера). KDT позволяет вам изменить количество узлов в существующем кластере Kubernetes.
Вы можете добавлять или удалять узлы только в том случае, если приложение Open Single Management Platform развернуто на нескольких узлах.
Чтобы добавить узлы в кластер Kubernetes:
- Экспортируйте текущий конфигурационный файл.
Текущая версия конфигурационного файла сохраняется в указанной директории с указанным именем.
- В разделе
nodes
экспортированного конфигурационного файла добавьте параметры одного или нескольких новых узлов (desc
,type
,host
,kind
,user
иkey
) и сохраните конфигурационный файл. - Скопируйте открытый ключ на каждый новый узел (например, в директорию
/home/<имя_пользователя>/.ssh
) с помощью утилиты ssh-copy-id. - На устройстве администратора выполните следующую команду, чтобы применить измененный конфигурационный файл к кластеру Kubernetes. В команде укажите полный путь к этому конфигурационному файлу:
./kdt apply -i <
полный_путь_к_конфигурационному_файлу
>
- Выполните следующую команду, чтобы обновить компонент Bootstrap с добавленными узлами. В команде укажите полный путь к транспортному архиву с компонентами Open Single Management Platform:
./kdt apply -k <
полный_путь_к_транспортному_архиву
> --force-bootstrap
Новые узлы добавлены в кластер Kubernetes.
Чтобы удалить узел из кластера Kubernetes:
- Убедитесь, что на устройстве администратора установлена утилита kubectl.
- Переместите конфигурационный файл, который используется для развертывания, в директорию
/root/.kube
. - Переименуйте конфигурационный файл в
config.yaml
. - Выполните следующую команду для отображения списка всех узлов кластера:
kubectl get nodes
- Выполните следующую команду, чтобы перенести все поды с узла, который вы хотите удалить. В команде укажите имя узла, который будет удален. Поды будут распределены среди оставшихся узлов.
kubectl drain <
имя_узла
> --delete-emptydir-data --ignore-daemonsets
- Выполните следующую команду для удаления узла из кластера:
kubectl delete node <
имя_узла
>
Указанный узел удален.
В начало