Если вы столкнулись с неисправностью, когда кластер доступен, но некоторые узлы в нём недоступны, вы можете исправить её, обратившись к методам, приведённым в этом разделе.
Kubernetes предоставляет heartbeats, помогающие определить, доступен ли узел. Для получения подробной информации о механизме и интервале обнаружения см. Heartbeats.
Возможные причины перечислены в порядке вероятности.
Если неисправность сохраняется после исключения причины, проверьте другие причины.
Симптом
Подключение узла в кластере аномально, несколько узлов сообщают об ошибках записи, но services не затронуты.
Локализация неисправности
Слишком высокое использование CPU или памяти на узле приведёт к высокой задержке сети или вызовет системный OOM, поэтому узел отображается как недоступный.
Решение
После того как узлы станут доступными, нагрузка будет восстановлена.
Войдите в консоль CCE и проверьте, доступен ли кластер.
Если имена узлов несоответствуют и вход в узел с помощью пароля или ключа невозможен, это означает, что при создании ECS возникла проблема Cloud-Init. В этом случае перезапустите узел и отправьте запрос в службу поддержки ECS для выявления причины.
Войдите в консоль VPC. В панели навигации выберите Access Control > Security Groups и найдите master node security group кластера.
Имя этого security group имеет формат {cluster_name}-cce-control-{ID}. Вы можете выполнить поиск security group по имени кластера, а затем использовать -cce-control-.
Проверьте, были ли изменены правила security group. Подробную информацию о security groups см. в How Do I Modify Cluster Security Group Rules?.
Проверьте, существует ли такое правило security group.
При добавлении узла в кластер добавьте правила security group, показанные на рисунке ниже, в security group cluster-name-cce-control-random-ID, чтобы обеспечить доступность добавленного узла. Это необходимо, если к VPC подсети узла был добавлен вторичный CIDR‑блок и подсеть находится во вторичном CIDR‑блоке. Однако если вторичный CIDR‑блок уже был добавлен к VPC при создании кластера, этот шаг не требуется.
Проверьте, были ли изменены правила security group. Подробную информацию о security groups см. в How Do I Modify Cluster Security Group Rules?.
Каждый новый узел оснащён 100‑GiB Диском с данными, предназначенным для Docker. Если этот Диск с данными удалён или повреждён, сервис Docker будет прерван, и узел станет недоступным.
Нажмите имя узла и проверьте, был ли удалён Диск с данными, подключённый к узлу. Если диск был отсоединён от узла, необходимо присоединить к узлу другой Диск с данными и перезапустить узел. После этого узел можно восстановить.
Проверьте состояние компонента. Например, чтобы проверить состояние kubelet, выполните следующую команду:
kubelet — это имя компонента. При необходимости его можно заменить.
Ожидаемый вывод показан на рисунке ниже.

systemctl restart yangtse
Проверьте состояние компонента еще раз.
cat /var/log/cloud-init-output.log | grep resolv
Если вывод команды содержит следующую информацию, это означает, что произошёл сбой разрешения доменных имён.
Could not resolve host: Unknown error
Если диск vdb на узле был удалён, вы можете восстановить узел, обратившись к What Should I Do If the vdb Disk of a Node Is Damaged and the Node Can't Be Recovered After Reset?
systemctl status docker

Если команда не может быть выполнена или статус сервиса Docker не активен, определите причину или при необходимости обратитесь в техническую поддержку.
docker ps -a | wc -l
Если команда приостановлена, выполняется слишком долго, или если количество аномальных контейнеров превышает 1000, следует проверить, не создаются ли нагрузки повторно и не удаляются ли они. При частом создании и удалении большого количества контейнеров может возникнуть множество аномальных контейнеров, которые невозможно быстро очистить.
В этом случае прекратите повторное создание и удаление нагрузок или используйте больше узлов для распределения нагрузки. Обычно узел восстанавливается через некоторое время. При необходимости выполните команду docker rm {container_id}, чтобы вручную очистить аномальные контейнеры.