Я установил лабораторию openstack через juju, развернул rabbitmq-сервер на том же узле, который содержит mysql. но я обнаружил, что rabbitmq-server
дает неразрешимую hook failed
ошибку.
Поэтому я попытался уничтожить службу, чтобы развернуть ее снова, но это не так. Я попытался уничтожить службу из juju-gui
и juju destroy-service rabbitmq-server
, и она все еще там. пропал только модуль rabbitmq-server / 0.
Теперь служба «жизнь» застряла на «умирающем»
rabbitmq-сервер: charm: cs: точный / rabbitmq-сервер-16 выставлен: истинная жизнь: умирающие отношения: кластер: - rabbitmq-сервер
Я подключился к узлу и не нашел журналов, связанных с rabbitmq, в каталоге журналов. но я нашел эти журналы:
/var/log/juju/unit-rabbitmq-server-0.log
2013-12-12 11:16:33 INFO juju.worker.uniter uniter.go:363 committing "stop" hook
2013-12-12 11:16:33 INFO juju.worker.uniter uniter.go:381 committed "stop" hook
2013-12-12 11:16:33 INFO juju.worker.uniter modes.go:421 ModeContinue starting
2013-12-12 11:16:33 INFO juju.worker.uniter modes.go:84 continuing after "stop" hook
2013-12-12 11:16:33 INFO juju.worker.uniter modes.go:421 ModeTerminating starting
2013-12-12 11:16:33 INFO juju.worker.uniter uniter.go:105 unit "rabbitmq-server/0" shutting down: agent should be terminated
2013-12-12 11:16:33 ERROR juju.worker.uniter.filter filter.go:117 tomb: dying
2013-12-12 11:16:33 ERROR juju runner.go:200 worker: fatal "uniter": agent should be terminated
2013-12-12 11:16:33 ERROR juju runner.go:200 worker: fatal "api": agent should be terminated
2013-12-12 11:16:33 INFO juju supercommand.go:286 command finished
Есть ли способ заставить его полностью уничтожиться?
Вы не можете удалить этот сервис, но вы можете развернуть новый сервис с таким же очарованием:
juju deploy rabbitmq-server rabbitmq
... и вы даже можете поставить его на тот же машина, если вы хотите:
juju deploy rabbitmq-server rabbitmq --to <machine-id>
... но вы можете обновить ваш клиент и запустить:
juju upgrade-juju
... чтобы ваша среда работала 1.16.5, в котором эта ошибка устранена. Это не исправит среду, которая уже находится в такой ситуации, но предотвратит ее повторение с новым сервисом.
Необходимо устранить ошибку, используя:
juju resolved rabbitmq-server/0
(при условии, что это имя его устройства)
... для продолжения после сбойной ловушки. Возможно, вам придется делать это более одного раза, потому что у устройства может быть больше хуков, чтобы работать до того, как он окончательно будет очищен, и если он находится в действительно плохом состоянии, они тоже могут ошибаться.