Устранение неполадок при сбоях Node Not Ready при наличии сертификатов с истекшим сроком действия

В этой статье описано, как устранять неполадки в сценариях node Not Ready в кластере Microsoft Служба Azure Kubernetes (AKS) при наличии сертификатов с истекшим сроком действия.

Предварительные требования

  • Azure CLI
  • Средство командной строки OpenSSL для отображения и подписывания сертификатов

Симптомы

Вы обнаружите, что узел кластера AKS находится в состоянии Узел не готов.

Причина

Существует один или несколько сертификатов с истекшим сроком действия.

Предотвращение: запустите OpenSSL для подписи сертификатов.

Проверьте срок действия сертификатов, вызвав команду openssl-x509 следующим образом:

  • Для узлов масштабируемого набора виртуальных машин используйте команду az vmss run-command invoke :

    az vmss run-command invoke \
        --resource-group <resource-group-name> \
        --name <vm-scale-set-name> \
        --command-id RunShellScript \
        --instance-id 0 \
        --output tsv \
        --query "value[0].message" \
        --scripts "openssl x509 -in /etc/kubernetes/certs/apiserver.crt -noout -enddate"
    
  • Для узлов группы доступности виртуальных машин используйте команду az vm run-command invoke :

    az vm run-command invoke \
        --resource-group <resource-group-name> \
        --name <vm-availability-set-name> \
        --command-id RunShellScript \
        --output tsv \
        --query "value[0].message" \
        --scripts "openssl x509 -in /etc/kubernetes/certs/apiserver.crt -noout -enddate"
    

После вызова этих команд могут появиться определенные коды ошибок. Сведения о кодах ошибок 50, 51 и 52 см. по следующим ссылкам.

Если появляется код ошибки 99, это означает, что команда apt-get update заблокирована для доступа к одному или нескольким из следующих доменов:

  • security.ubuntu.com
  • azure.archive.ubuntu.com
  • nvidia.github.io

Чтобы разрешить доступ к этим доменам, обновите конфигурацию любых блокирующих брандмауэров, групп безопасности сети (NSG) или сетевых виртуальных устройств (NVA).

Решение. Смена сертификатов

Вы можете применить автоматическую смену сертификатов для смены сертификатов в узлах до истечения срока их действия. Этот параметр не требует простоя для кластера AKS.

Если вы можете сократить время простоя кластера, вместо этого можно вручную сменить сертификаты .

Примечание.

Начиная с выпуска AKS от 15 июля 2021 г. обновление кластера AKS автоматически помогает сменить сертификаты кластера. Однако это изменение поведения не вступают в силу для сертификата кластера с истекшим сроком действия. Если обновление выполняет только следующие действия, сертификаты с истекшим сроком действия не будут продлены:

  • Обновление образа узла.
  • Обновите пул узлов до той же версии.
  • Обновите пул узлов до более поздней версии.

Только полное обновление (т. е. обновление уровня управления и пула узлов) помогает обновить сертификаты с истекшим сроком действия.

Дополнительная информация