Как удалить связь в Жужу после уничтожения одного из связанных сервисов?

Я пробую Джуджу и во время игры создал сервис Django, а затем Mongodb. Я связал их, а затем уничтожил mongodb. Теперь мой сервис Django находится в состоянии ошибки: agent-state-info: 'hook fail: "connection-broken" ". Я пытался разрушить связь с juju destroy-relation python-django mongodb, но безрезультатно. Mongodb по-прежнему появляется в статусе джуджу, но в состоянии «умирает», прошло несколько часов с тех пор, как я его уничтожил. Я не проделал никакой реальной работы с этим сервисом, поэтому могу уничтожить его и начать все заново, но во время обучения я хотел бы узнать, есть ли более чистый способ решения этой ситуации.

2
задан 3 October 2013 в 20:17

1 ответ

Во-первых, досадно «задним числом» немного. Перед удалением сервисов всегда полезно удалить отношения: https://jujucharms.com/docs/stable/charms-destroy

Как только машина находится в состоянии ошибки, Juju не будет обрабатывать какие-либо хуки для этого сервиса - даже те, которые его уничтожат. Это для защиты от возможной потери данных. Однако существует механизм для возврата машины в адаптивное состояние:

juju resolved <machine identifier>

, например

juju resolved mongodb/0

Это позволит снова включить выполнение ловушек для этой машины / службы. Тогда будет возможно:

juju destroy-relation mongodb django
juju destroy-service mongodb
juju destroy-service django
0
ответ дан 3 October 2013 в 20:17

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

Похожие вопросы: