Восстановление узла после очистки из-за нехватки ресурсов - PullRequest
0 голосов
/ 19 февраля 2020

У меня есть настройка кластера k8s с использованием kubespray.

На прошлой неделе у одного из моих узлов k8s было очень мало памяти, поэтому все модули были исключены, включая некоторые важные модули, такие как calico-node, kube-proxy (Я думал, что эти модули являются критическими и никогда не были выселены, несмотря ни на что)

После этого все модули ситцевого узла не готовы, когда я проверяю журнал, говорят, что: Warning: Readiness probe failed: calico/node is not ready: BIRD is not ready: BGP not established with 192.168.0.xxx, где 192.168.0.xxx - это IP вышеуказанного проблемного c узла.

Мой вопрос: как мне восстановить этот узел? безопасно ли снова запускать cluster.yml для kubespray?

Моя версия k8s v1.13.3

Спасибо.

1 Ответ

0 голосов
/ 20 февраля 2020

Когда узел имеет давление на диск, его состояние меняется на NotReady, и к узлу добавляется порча: Taints: node.kubernetes.io/disk-pressure:NoSchedule.

Все модули, работающие на этом узле, выселяются, кроме api-server, kube-controller and kube-scheduler - менеджер выселения спасет эти модули от выселения с сообщением об ошибке: cannot evict a critical static pod [...]

Как только узел будет освобожден от диска при нажатии он изменит свой статус на Ready, а ранее добавленные загрязнения будут удалены. Вы можете проверить это, запустив kubectl describe node <node_name>. В поле условий вы должны увидеть, что DiskPressure изменил статус на False, что означает, что на узле достаточно свободного места. Аналогичная информация также может быть найдена в поле Events.

  Normal   NodeReady                1s                     kubelet, node1     Node node1 status is now: NodeReady
  Normal   NodeHasNoDiskPressure    1s (x2 over 1s)        kubelet, node1     Node node1 status is now: NodeHasNoDiskPressure

После подтверждения того, что узел готов с достаточным пространством на диске, вы можете перезапустить kubelet и запустить kubespray cluster.yml - модули будут повторно развернуты на узле. Вам просто нужно убедиться, что узел готов к обработке развертываний.

...