Обновление образов узлов Службы Azure Kubernetes (AKS)
Служба Azure Kubernetes (AKS) регулярно предоставляет новые образы узлов, поэтому рекомендуется часто обновлять образы узлов, чтобы использовать последние функции AKS. Образы узлов Linux обновляются еженедельно, а образы узлов Windows обновляются ежемесячно. Объявления об обновлении изображений включены в заметки о выпуске AKS и могут занять до недели для развертывания этих обновлений во всех регионах. Вы также можете автоматически обновлять образ узла и планировать их с помощью планового обслуживания. Дополнительные сведения см. в разделе "Автоматическое обновление образов узлов".
В этой статье показано, как обновить образы узлов кластера AKS и как обновить образы пула узлов без обновления версии Kubernetes. Сведения об обновлении версии Kubernetes для кластера см. в статье Обновление кластера AKS.
Примечание.
Кластер AKS должен использовать масштабируемые наборы виртуальных машин для узлов.
Невозможно изменить версию образа узла (например , AKSUbuntu-2204 до AKSUbuntu-1804 или AKSUbuntu-2204-202308.01.0 до AKSUbuntu-2204-202307.27.0).
Проверка доступных обновлений образа узла
Проверьте наличие доступных обновлений
az aks nodepool get-upgrades
образа узла с помощью команды.az aks nodepool get-upgrades \ --nodepool-name <node-pool-name> \ --cluster-name <cluster-name> \ --resource-group <resource-group>
В выходных данных найдите и запишите
latestNodeImageVersion
значение. Это значение является последней версией образа узла, доступной для пула узлов.Проверьте текущую версию образа узла, чтобы сравнить ее с последней версией
az aks nodepool show
с помощью команды.az aks nodepool show \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name> \ --query nodeImageVersion
nodeImageVersion
Если значение отличается отlatestNodeImageVersion
значения, можно обновить образ узла.
Обновление всех образов узлов во всех пулах узлов
Обновите все образы узлов во всех пулах узлов в кластере
az aks upgrade
с помощью команды с флагом--node-image-only
.az aks upgrade \ --resource-group <resource-group> \ --name <cluster-name> \ --node-image-only
Вы можете проверить состояние образов узлов с помощью
kubectl get nodes
команды.Примечание.
Эта команда может немного отличаться в зависимости от используемой оболочки. Дополнительные сведения о средах Windows и PowerShell см. в документации по JSONPath Kubernetes.
kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
По завершении обновления используйте
az aks show
команду, чтобы получить обновленные сведения о пуле узлов. Текущий образ узла отображается в свойствеnodeImageVersion
.az aks show \ --resource-group <resource-group> \ --name <cluster-name>
Обновление определенного пула узлов
Обновите образ ОС пула узлов без обновления кластера Kubernetes с помощью
az aks nodepool upgrade
команды с флагом--node-image-only
.az aks nodepool upgrade \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name> \ --node-image-only
Вы можете проверить состояние образов узлов с помощью
kubectl get nodes
команды.Примечание.
Эта команда может немного отличаться в зависимости от используемой оболочки. Дополнительные сведения о средах Windows и PowerShell см. в документации по JSONPath Kubernetes.
kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
По завершении обновления используйте
az aks nodepool show
команду, чтобы получить обновленные сведения о пуле узлов. Текущий образ узла отображается в свойствеnodeImageVersion
.az aks nodepool show \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name>
Обновление образов узлов со всплеском активности узлов
Чтобы ускорить процесс обновления образа узла, можно обновить образы узлов, используя настраиваемое значение всплеска активности узлов. По умолчанию AKS использует один дополнительный узел для настройки обновлений.
Обновите образы узлов с всплеском узла с помощью
az aks nodepool update
команды с флагом--max-surge
, чтобы настроить количество узлов, используемых для обновлений.Примечание.
Дополнительные сведения о компромиссах для различных параметров
--max-surge
см. в разделе Настройка обновления со всплеском активности узлов.az aks nodepool update \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name> \ --max-surge 33% \ --no-wait
Вы можете проверить состояние образов узлов с помощью
kubectl get nodes
команды.kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
Получите обновленные сведения о пуле узлов, используя
az aks nodepool show
обновленные сведения о пуле узлов. Текущий образ узла отображается в свойствеnodeImageVersion
.az aks nodepool show \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name>
Следующие шаги
- Сведения о последних образах узлов см. в заметках о выпуске AKS.
- Узнайте, как обновить версию Kubernetes с обновлением кластера AKS.
- Автоматическое применение обновлений кластера и пула узлов с помощью GitHub Actions.
- Дополнительные сведения о нескольких пулах узлов см. в разделе "Создание нескольких пулов узлов".
- Сведения об обновлении рекомендаций по обновлению с помощью исправлений AKS и руководства по обновлению.
Azure Kubernetes Service