Ошибка перезапуска сети узла Windows HNS 0xc0000005
У меня есть кластер Kubernetes с двумя узлами Linux и двумя Windows Server 2019, на которых работают Kubernetes v1.26.0 и Containerd v1.6.20, а также инструменты Vmware версии 10.3.2.
Узлы Linux работают нормально, но узел Windows ведет себя неправильно.
Это новый кластер, но узел Windows может работать всего <4 часа, прежде чем поды из Windows начнут жаловаться на отсутствие конечных точек.
Я проверил узел Windows и обнаружил, что во время события в журнале Windows была ошибка 0xc0000005.
Я могу восстановиться после этого, перезапустив HNS, Contained и Kubelet. Затем выполнил перераспределение, но через несколько часов проблема повторяется.
Из кластера я использую сеть Calico и включил Hyper-V на Windows Server. Я также отключил Центр обновления Windows.
Как я могу остановить этот автоперезапуск HNS. Изображение ошибки
2 ответа
Проблема решена путем отключения защиты потока управления (CFG) для определенных программ svchost, vmcompute и vmwp в настройках защиты от эксплойтов Windows.
Также рекомендуется обновить инструменты Vmware до версии 11.3+.
Ошибка 0xc0000005 — это «нарушение прав доступа» в svchost, в данном случае драйвере сетевого фильтра хоста. Приложение в вашем стеке (скорее всего, Calico, но без дополнительных подробностей это просто предположение) плохо себя ведет и пытается получить доступ к защищенной памяти.