Я заметил, что одна из служб AKS находится в состоянии сбоя. Когда я пошел на диагностику, то обнаружил, что текущая версия больше не поддерживается. Поэтому я попытался следовать инструкциям, изложенным здесь: https://docs.microsoft.com/en-us/azure/aks/upgrade-cluster
Сначала я выполнил команду:
az aks get-upgrades --resource-group myResourceGroup --name myAKSCluster --output table
, а затем:
az aks upgrade --resource-group myResourceGroup --name myAKSCluster --kubernetes-version new_version
и это приведет к ошибке:
Операция завершилась неудачно со статусом: «Конфликт». Подробности: обновления запрещены, пока кластер находится в неисправном состоянии. Чтобы узнать, как решить проблему, посетите https://aka.ms/aks-cluster-failed , чтобы выяснить, почему состояние кластера могло быть сбойным, и шаги по исправлению состояния кластера.
Итак, состояние не удалось из-за старой версии, и версия не может быть обновлена из-за состояния ошибки ...
Я проверил это https://stackoverflow.com/questions/54631309/this -container-service-is-in-a-failed-state , но это не было нашей проблемой, у нас было достаточно ресурсов для обхода (что мы проверили с помощью az aks show --resource-group myResourceGroup - -name myAKSCluster --query agentPoolProfiles
)
Удаление и повторное создание AKS невозможно.
Итак, после нескольких часов попыток различных решений и неудач, я нашел исправление для этого среди ответов здесь: https: // github .com / Azure / AKS / issues / 542
Чтобы исправить состояние сбоя из-за устаревшей версии, мне пришлось просто сделать следующее:
Обновить aks до версии, которая уже существует. Итак, моя версия была 1.14.8, и я просто запустил:
az aks upgrade --resource-group myResourceGroup --name myAKSCluster --kubernetes-version 1.14.8
, что исправило сбойное состояние кластера!
После этого я просто выполнил обновление до следующей версии (1.18.19 в моем случае):
az aks upgrade --resource-group myResourceGroup --name myAKSCluster --kubernetes-version 1.18.19
Я надеюсь, что это избавит кого-то от многих часов разочарований :)