Почему я получаю сообщение "Требуется очистка конструкции" на ceph с Kubernetes? - PullRequest
0 голосов
/ 05 декабря 2018

Извините, что спрашиваю, я относительно новичок в Kubernetes и Ceph, только немного об этом знаю.

Я настроил Kubernetes и Ceph, используя это руководство (http://tutorial.kubernetes.noverit.com/content/ceph.html)

Я настроил свой кластер следующим образом:

1 Kube-Master и 2 рабочих узла (действует ceph-монитор с двумя OSD в каждом)
Ceph-deploy, который я использовал для настройки ceph-кластера, находится вKube-master.

Все работает нормально, я установил мое примерное веб-приложение (развертывание) с 5 репликами, которые будут создавать файл при нажатии на остальные API. Файл копируется на каждый узел.

Но через 10 минут я создал еще один файл с помощью API, но когда я пытаюсь составить список (ls -l), я получаю следующую ошибку:

Для узла 1:

ls: cannot access 'previousFile.txt': Structure needs cleaning
previousFile.txt  newFile.txt

Для узла 2:

previousFile.txt  

Для узла 2 новый файл не создан

В чем может быть проблема? Я пробовал много раз, но всплывала одна и та же ошибка.

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 06 декабря 2018

Похоже, что ваша файловая система повреждена.Что нужно проверить:

  • $ kubectl logs <ceph-pod1>
  • $ kubectl logs <ceph-pod2>
  • $ kubectl describe deployment <ceph-deployment> # перезапустился ли какой-либо из модулей?

Некоторая информация о сообщении об ошибке здесь .

В зависимости от того, что у вас есть, вам может понадобиться начать с нуля.Или вы можете посмотреть восстановление данных в Ceph, но может не работать, если у вас нет привязки.

Запуск Ceph в Kubernetes может быть очень сложным, потому что любой запуск / перезапускпоскольку конкретный узел, запускающийся на другом узле Kubernetes, может повредить данные, поэтому вам необходимо убедиться, что эта часть достаточно прочная, возможно, используя Node Affinity или запуская модули Ceph на определенных узлах Kubernetes с метками .

...