Масштабирование вертикального узла
Область применения: AKS в Azure Local 22H2, AKS на Windows Server
Вы можете изменить размер виртуальных машин в заданном пуле узлов, чтобы увеличить ресурсы, доступные пулу узлов в AKS, включенном Azure Arc.
Чтобы обеспечить соответствие требованиям приложений в Служба Azure Kubernetes (AKS), может потребоваться настроить количество узлов, выполняющих рабочие нагрузки. В некоторых случаях горизонтальное масштабирование кластера путем добавления узлов недостаточно для удовлетворения требований приложения для получения дополнительных ядер ЦП или памяти.
Без вертикального масштабирования узлов необходимо повторно развернуть в новом пуле узлов и переместить приложение. Эта ситуация может не быть идеальной в ограниченных пограничных средах ресурсов. Чтобы обеспечить эту гибкость, AKS Arc представляет возможность изменить размер виртуальной машины (SKU) виртуальных машин в заданном пуле узлов.
Как работает масштабирование вертикальных узлов в AKS Arc
В AKS Arc пулы узлов целевого кластера управляются внутри системы как machineDeployment. Одно из свойств machineDeployment — это размер виртуальной машины (SKU), выбранный при New-AksHciNodePool
выполнении команды.
Чтобы изменить пул узлов на другой размер виртуальной машины (SKU), можно использовать Set-AksHciNodePool
команду для изменения размера виртуальной машины для рабочих узлов и Set-AksHciCluster
команды, чтобы изменить размер виртуальной машины для узлов уровня управления.
При отправке команды с новым размером виртуальной машины (SKU) создается новый компьютерDeployment для пула узлов или кластера, заменив существующий набор компьютеров. Это событие активирует поток обновления в базовой системе развертывания. Аналогично обновлению версии ОС или Kubernetes, новый компьютерDeployment использует последовательное обновление для замены одной виртуальной машины в пуле узлов или плоскости управления после другой. Каждое обновление проверяет правильное оцепление старого узла и очистку перед удалением.
Примечание.
В системе предполагается, что достаточно аппаратных ресурсов доступны для увеличения масштаба нового набора компьютеров вместо старого набора компьютеров.
Пример процесса
В следующем примере показано вертикальное масштабирование узлов.
Изменение размера виртуальной машины для пула рабочих узлов Linux с 4 ядрами и 6 ГБ памяти на 4 ядра и 8 ГБ памяти
Сначала проверьте текущий размер виртуальной машины пула узлов в кластере mycluster
. В выходных данных вы увидите, что размер виртуальной машины :Standard_K8S3_v1
get-akshcinodepool -clustername mycluster
Status : {Error, Phase, Details}
ClusterName : mycluster
NodePoolName : mycluster-linux
Version : v1.22.4
OsType : Linux
NodeCount : 2
VmSize : Standard_K8S3_v1
Phase : scaling
Standard_K8S3_v1
В списке доступных размеров виртуальных машин показано, что он имеет 4 ядра и 6 ГБ памяти:
Get-AksHciVmSize
VmSize CPU MemoryGB
------ --- --------
Default 4 4
Standard_A2_v2 2 4
Standard_A4_v2 4 8
Standard_D2s_v3 2 8
Standard_D4s_v3 4 16
Standard_D8s_v3 8 32
Standard_D16s_v3 16 64
Standard_D32s_v3 32 128
Standard_DS2_v2 2 7
Standard_DS3_v2 2 14
Standard_DS4_v2 8 28
Standard_DS5_v2 16 56
Standard_DS13_v2 8 56
Standard_K8S_v1 4 2
Standard_K8S2_v1 2 2
Standard_K8S3_v1 4 6
Новый размер, установленный для 4 ядер и 8 ГБ памяти Standard_A4_v2
. Чтобы обновить пул mycluster-linux
узлов, используйте Set-AksHciNodePool
командлет, который был обновлен, чтобы принять -VMsize
параметр:
Set-AksHciNodePool -ClusterName mycluster -name mycluster-linux -vmsize Standard_A4_v2
Через несколько минут процесс завершится. Вы можете проверить результат, снова выполнив Get-AksHciNodePool
команду и убедившись, что VmSize
сейчас:Standard_A4_v2
get-akshcinodepool -clustername mycluster
Status : {Error, Phase, Details}
ClusterName : mycluster
NodePoolName : mycluster-linux
Version : v1.22.4
OsType : Linux
NodeCount : 2
VmSize : Standard_A4_v2
Phase : scaling
Следующие шаги
См. документацию по обновленным командам PowerShell: