Вертикальное масштабирование узлов кластера
Вертикальное масштабирование заключается в добавлении физических или виртуальных ресурсов к текущим узлам кластера Kubernetes. В зависимости от метода установки платформы вертикальное масштабирование может выполняться как с помощью утилиты nova-ctl, так и вручную.
1. Масштабирование узлов кластера, установленного универсальным методом (UPI)
|
Перед проведением работ по изменению ресурсов узла кластера Kubernetes необходимо вывести данный узел в режим обслуживания. |
1.1. Предварительные условия
-
На вашем локальном компьютере установлена утилита nova-ctl.
-
У вас есть доступ к Kubernetes API с привилегиями администратора кластера (
cluster-admin). -
У вас есть закрытый ключ SSH на вашем локальном компьютере, который нужно предоставить утилите
nova-ctl.-
Выведите список всех узлов кластера и определите имя узла, которому необходимо изменить количество выделенных ресурсов:
kubectl get nodesПримерkubectl get nodes NAME STATUS ROLES AGE VERSION master.mycompany.local Ready control-plane 5d17h v1.26.8 worker.mycompany.local Ready ingress,worker 5d17h v1.26.8 infra.mycompany.local Ready infra 5d17h v1.26.8 -
Переведите выбранный узел в режим обслуживания согласно процедуре, описанной в разделе Перевод узла в режим обслуживания
-
После успешного перевода узла в режим обслуживания вы можете выключить узел для проведения работ по масштабированию ресурсов.
-
После завершения работ по масштабированию включите узел и дождитесь его загрузки.
-
Проверьте, что узел стал доступен для размещения рабочих нагрузок, следуя процедуре возврата узла в эксплуатацию.
-
2. Масштабирование кластера, установленного в среде zVirt (IPI)
2.1. Предварительные условия
-
На вашем локальном компьютере установлена утилита nova-ctl.
-
У вас есть доступ к Kubernetes API с привилегиями администратора кластера (
cluster-admin). -
У вас есть закрытый ключ SSH на вашем локальном компьютере, который нужно предоставить утилите
nova-ctl.-
Запустите процесс масштабирования узлов кластера с помощью команды:
nova-ctl scale --ssh-user <имя_пользователя> --ssh-key <закрытый ключ SSH>В качестве аргументов
--ssh-keyи--ssh-userукажите информацию, использованную на этапе конфигурации ключевой пары SSH. -
Далее для временного редактирования будет открыт файл конфигурации кластера в текстовом редакторе
vi. -
Измените количество выделенных ресурсов для групп узлов, определенных в блоке hostGroup, и сохраните изменения.
Пример
nova-ctl scale --ssh-user nova-installer --ssh-key id_rsa.pem spec: ... infrastructureProvider: ... zvirt: ... hostGroup: ... - name: example-worker templateId: 729df7ab-900b-4df7-ac40-01b70629dd4e vnicProfileId: 9a58ffa8-98d8-472c-9198-5f54a9f8aaac cpuCores: 1 cpuSockets: 12 cpuThreads: 1 memory: 12GiB maximumMemory: 16GiBВ среде виртуализации zVirt ресурсы для виртуальных машин будут добавлены с помощью горячего подключения (hot plug) при следующих условиях:
-
Увеличение объема оперативной памяти (memory) на значение, не превышающее установленный лимит (maximumMemory).
-
Увеличение количества виртуальных процессоров (cpuSockets) без изменения их характеристик (cpuCores, cpuThreads).
Уменьшение количества ресурсов, изменение характеристик виртуальных процессоров (cpuCores, cpuThreads), а также изменение лимита оперативной памяти (maximumMemory) требует последующего перезапуска виртуальных машин вручную. Для выполнения корректного перезапуска узлов кластера действуйте согласно процедуре вертикального масштабирования кластера, установленного универсальным методом (UPI). . В процессе масштабирования будет запрошено подтверждение на изменение виртуальных машин в среде виртуализации zVirt.
Пример
nova-ctl scale --ssh-user nova-installer --ssh-key id_rsa.pem ■ Validating license... done ☕️ 3/8: Preparing infrastructure... The following actions will be preformed: * update ovirt_vm worker03-nova-internal * update ovirt_vm worker04-nova-internal * update ovirt_vm worker05-nova-internal * update ovirt_vm ingress01-nova-internal * update ovirt_vm ingress02-nova-internal Are you sure you want to apply these changes? (yes/no) [no] yes -
-
Дождитесь сообщения об успешном выполнении операции.
Пример
nova-ctl scale --ssh-user nova-installer --ssh-key id_rsa.pem ■ Validating license... done ■ Preparing infrastructure... done ■ Validating cluster nodes... done ■ Preparing cluster nodes... done ■ Scaling Kubernetes cluster... done 🚀 Cluster is successfully scaled. -
Перейдите в веб-интерфейс среды виртуализации zVirt и убедитесь, что ресурсы виртуальных машин были изменены.
-
Запланируйте и выполните процедуру перезапуска узла в среде zVirt. Перезапуск узла рекомендуется выполнять вместе с переводом узла в режим обслуживания.
-