После успешной установки CAM модуль «cam-mongo» вышел из строя - PullRequest
0 голосов
/ 11 мая 2018

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

1) kubectl description pods -n services

Предупреждение BackOff 3 с (x3 свыше 18 с) 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 Ответ

0 голосов
/ 11 мая 2018

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

1) закрутите контейнер и установите в нем том cam-mongo.

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

вид: Pod

apiVersion: v1

метаданные:

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

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

тома:

  • имя: cam-mongo-pv

    persistentVolumeClaim:

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

контейнеры:

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

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

    порты:

    • containerPort: 80

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

    volumeMounts:

    • mountPath: "/ data / db"

      имя: cam-mongo-pv

RUN: kubectl -n services create -f ./mongo-troubleshoot-pod.yaml

2) Использовать "docker exec -it / bin / bash"(ищите его в информации "службы kubectl -n опишите po / mongo-Troubleshoot-pod-xxxxx")

cd / data / db

rm mongod.lock

rm WiredTiger.lock

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

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

kubectl delete pods -nуслуги

Исправлена ​​ошибка.

...