После успешной установки CAM модуль "cam-mongo" вышел из строя

После успешного развертывания CAM (был запущен и работал в течение нескольких дней), внезапно микросервис "cam-mongo" вышел из строя и при проверке журналов для модуля pod с помощью команды ниже 2 выдает модуль ошибки синхронизации

1) kubectl описать pods -n услуг

Предупреждение BackOff 3s (x3 over 18s) kubelet, 9.109.191.126 Откат, повторный запуск, сбой контейнера

Предупреждение FailedSync 3s (x3 over 18s) kubelet, 9.109.191.126 Модуль синхронизации с ошибкой

С этой информацией вы не знаете, что пошло не так и как вы это исправили

2) kubectl -n services logs cam-mongo-5c89fcccbd-r2hv4 -p (с опцией -p вы можете получить журналы из ранее запущенного контейнера). Приведенная выше команда показывает следующую информацию:

исключение в initAndListen: 98 Невозможно заблокировать файл: /data/db/mongod.lock Ресурс временно недоступен. Экземпляр mongod уже запущен?, terminatingConclusion:

При запуске контейнера внутри модуля "cam-mongo" он не смог использовать существующий файл /data/db/mongod.lock, и, следовательно, ваш модуль не будет работать и вы не сможете получить доступ к CAM

1 ответ

После дальнейшего анализа я решил проблему следующим образом:

1) раскрутить контейнер и установить в него объем cam-mongo.

Чтобы сделать это, я использовал ниже yaml создания pod, который будет монтировать pv'а концерна, где присутствует / data / db /.

вид: Pod

apiVersion: v1

метаданные:

имя: Монго-Устранение неполадок

спецификация:

объемы:

  • имя: Cam-Mongo-PV

    persistentVolumeClaim:

    имя_применения: cam-mongo-pv

контейнеры:

  • имя: Монго-устранение неполадок

    изображение: nginx

    порты:

    • КонтейнерПорт: 80

      имя: "http-сервер"

    volumeMounts:

    • mountPath: "/ data / db"

      имя: Cam-Mongo-PV

RUN: службы kubectl -n создают -f./mongo-troubleshoot-pod.yaml

2) Используйте "docker exec -it /bin/bash " (ищите его в "kubectl -n services description info для po / mongo-Troubleshoot-pod-xxxxx")

кд / данные / дб

rm mongod.lock

рм WiredTiger.lock

3) убить модуль, который вы создали для устранения неполадок

4) убить поврежденный модуль cam-mongo, используя команду ниже

kubectl удалить пакеты -n услуги

Это исправило проблему.

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