Поделиться через


Руководство. Масштабирование приложений в AKS с поддержкой Azure Arc

Область применения: AKS в Azure Local 22H2, AKS на Windows Server

Если вы выполнили предыдущие уроки, у вас должен быть рабочий кластер Kubernetes в AKS, а также развернуто пробное приложение Azure для голосования.

В этом руководстве, пятой части из семи, описывается, как масштабировать поды в приложении. Вы узнаете, как:

  • Масштабирование узлов Kubernetes
  • Масштабируйте поды Kubernetes вручную, запускающие ваше приложение

В последующих руководствах приложение Azure Vote обновляется до новой версии.

Перед началом работы

В предыдущих руководствах описано, как упаковать приложение в образ контейнера, отправить образ в реестр контейнеров Azure и создать кластер Kubernetes. Затем приложение было развернуто в кластере. Если вы еще не выполнили эти шаги, начните с Учебника 1 - Подготовка приложения для AKS с поддержкой Arc.

Масштабирование модулей pod вручную

В предыдущих руководствах описано, как развернуть фронтенд Azure Vote и экземпляр Redis для создания одной реплики. Чтобы просмотреть количество и состояние pods в вашем кластере, используйте следующую команду kubectl get:

kubectl get pods

В следующем примере показан один фронтенд-под и один бэкенд-под.

NAME                               READY     STATUS    RESTARTS   AGE
azure-vote-back-2549686872-4d2r5   1/1       Running   0          31m
azure-vote-front-848767080-tf34m   1/1       Running   0          31m

Чтобы вручную изменить количество pods в развертывании azure-vote-front, используйте команду kubectl scale. В следующем примере количество фронтенд-подов увеличивается до 5.

kubectl scale --replicas=5 deployment/azure-vote-front

Запустите kubectl get pods еще раз, чтобы убедиться, что команда успешно создала дополнительные подсы. Через минуту или около того модули pod доступны в кластере:

kubectl get pods
                                    READY     STATUS    RESTARTS   AGE
azure-vote-back-2606967446-nmpcf    1/1       Running   0          15m
azure-vote-front-3309479140-2hfh0   1/1       Running   0          3m
azure-vote-front-3309479140-bzt05   1/1       Running   0          3m
azure-vote-front-3309479140-fvcvm   1/1       Running   0          3m
azure-vote-front-3309479140-hrbf2   1/1       Running   0          15m
azure-vote-front-3309479140-qphz8   1/1       Running   0          3m

Масштабирование рабочих узлов в пуле узлов

Если вы создали кластер Kubernetes с помощью команд в предыдущем руководстве, ваш развертываемый кластер называется mycluster и включает один пул узлов Linux, который называется linuxnodepoolи имеет одно узло.

Используйте команду Set-AksHciNodePool для масштабирования пула узлов. В следующем примере пул узлов масштабируется с 1 до 3 узлов Linux:

Set-AksHciNodePool -clusterName mycluster -name linuxnodepool -count 3

Если вы хотите масштабировать узлы плоскости управления, используйте команду Set-AksHciCluster.

Заметка

Команда set-AksHciNodePool используется для масштабирования рабочих узлов в пуле. В более ранних версиях AKS, которые не поддерживали пулы узлов в кластерах рабочих нагрузок, была использована команда Set-AksHciCluster. Вы можете использовать только Set-AksHciCluster для масштабирования рабочих узлов в кластерах, созданных со старым набором параметров в New-AksHciCluster.

Выполните следующую команду, чтобы убедиться, что масштабирование выполнено успешно:

Get-AksHciNodePool -clusterName mycluster
ClusterName  : mycluster
NodePoolName : linuxnodepool
Version      : v1.20.7
OsType       : Linux
NodeCount    : 3
VmSize       : Standard_K8S3_v1
Phase        : Deployed

Дальнейшие действия

В этом руководстве вы использовали различные функции масштабирования в кластере Kubernetes. Вы узнали, как:

  • Ручное масштабирование модулей Pod Kubernetes, которые запускают ваше приложение.
  • Масштабирование узлов Kubernetes вручную

Перейдите к следующему руководству, чтобы узнать, как обновить приложение в Kubernetes.