Kubernetes не может обнаружить неработоспособный узел

Я закрываю свой узел k8s вручную, чтобы посмотреть, повлияет ли это на мастер.

После выключения я проверяю состояние узлов:

kubectl get nodes

Узел, который вышел из строя, по-прежнему отображается как Ready в статусе. Как следствие, k8s все еще пытается запланировать модули на этом узле, но на самом деле не может. И, что еще хуже, он не перепланирует модули на других исправных узлах.

Через некоторое время (5-10 минут) k8s замечает, что нода исчезла.

Это ожидаемое поведение? Если нет, как я могу это исправить?

Я провел исследование, чтобы выяснить, как K8s проверяет работоспособность узла, я не смог найти ничего ценного.


person Barry Scott    schedule 20.08.2018    source источник


Ответы (1)


Я сам нашел проблему.

Я отключал соединение на сетевом уровне с помощью правил брандмауэра. Так как kubelet открыл сеанс до того, как новый узел правил отказа был замечен как готовый. Поскольку он был готов, он получал трафик. И трафик будет блокироваться по новым правилам, так как у них нет открытой сессии.

Таким образом, это несоответствие возникает только при изменении правил брандмауэра.

person Barry Scott    schedule 21.08.2018