узлы kubernetes продолжают перезагружаться при использовании томов ладьи

Несколько дней назад я столкнулся с проблемой, когда мои узлы постоянно перезагружались

Мой стек:

  • 1 мастер, 2 рабочих k8s-cluster, построенный с помощью kubeadm (v1.17.1-00)

  • Ubuntu 18.04 x86_64 4.15.0-74-общий

  • Плагин Flannel cni (v0.11.0)

  • Rook (v1.2) cephfs для хранения. Ceph был развернут в том же кластере, где живет мое приложение

Я смог запустить кластер ceph, но когда я попытался развернуть свое приложение, которое использовало мои ладьи, внезапно мои поды начали умирать

Я получил это сообщение, когда использовал kubectl describe pods/name команда:

Pod sandbox changed, it will be killed and re-created

В ивентах k8s я получил:

<Node name> has been rebooted

Через некоторое время узел оживает, но в итоге умирает через 2-3 минуты.

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

Я просмотрел журналы системных ошибок отказавшего узла по команде journalctl -p 3.

И обнаружил, что журналы переполнены этими сообщениями: kernel: cache_from_obj: Wrong slab cache. inode_cache but object is from ceph_inode_info.

После поиска этой проблемы я обнаружил эту проблему:https://github.com/coreos/bugs/issues/2616

Оказалось, что cephfs просто не работает с некоторыми версиями ядра Linux!! Для меня ничего из этого не сработало:

  • Ubuntu 19.04 x86_64 5.0.0-32-общий
  • Ubuntu 18.04 x86_64 4.15.0-74-общий

1 ответ

Решение

Решение

Cephfs не работает с некоторыми версиями ядра Linux. Обновите ядро. Наконец-то я заработал на Ubuntu 18.04 x86_64 5.0.0-38-generic

Проблема с Github, которая мне помогла:https://github.com/coreos/bugs/issues/2616

Это действительно сложная проблема, я изо всех сил пытался найти решение, и я потратил МНОГО времени, пытаясь понять, что происходит. Надеюсь, эта информация кому-то поможет, потому что в Google не так много информации.

Другие вопросы по тегам