Руководство. Масштабирование приложений в 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.