Я использую juju на своей локальной машине, используя местного провайдера (LXC).
У меня 3 машины на данный момент. Поскольку это, вероятно, использует ресурсы, и мне иногда это нужно, я хотел бы закрыть его (не теряя свои данные или любое другое состояние) и перезапустить (bootstrap?) Из командной строки.
Тем не менее, я не могу найти способ просто выключить все машины без потери настроек и данных.
Есть ли способ закрыть его и перезапустить из командной строки?
Как уже упоминалось @hatch, в настоящее время нет команды, чтобы справиться с этим.
Однако вы можете сделать это вручную.
Все контейнеры lxc названы в честь пользователя и имени среды.
Итак, давайте предположим, что ваш user-id - «tim» (у меня -), а окружение - «testlocal», если у вас есть три машины (кроме машины 0, которая на самом деле является хостом), вы можете перейти:
sudo lxc-stop -n tim-testlocal-machine-1
sudo lxc-stop -n tim-testlocal-machine-2
sudo lxc-stop -n tim-testlocal-machine-3
Затем можно остановить агент машины и сервер БД на хост-машине.
sudo stop juju-agent-tim-testlocal
sudo stop juju-db-tim-testlocal
Чтобы восстановить его, просто выполните шаги в обратном порядке:
sudo start juju-db-tim-testlocal
sudo start juju-agent-tim-testlocal
И затем вызовите контейнеры lxc
sudo lxc-start -n tim-testlocal-machine-1
sudo lxc-start -n tim-testlocal-machine-2
sudo lxc-start -n tim-testlocal-machine-3
Этого должно быть достаточно.
На момент написания статьи (Juju 1.17.1) невозможно приостановить работу машины через juju.
Вы можете отправить сообщение об ошибке здесь: https://bugs.launchpad.net/juju-core запрашивая эту функцию, хотя :)