How do I "clean up" a machine after using the local provider?
I'm doing some testing and sometimes I have issues with containers and juju. How do I clean up a machine so that I can start using the local provider "from scratch" without reinstalling?
LXC containers and the Juju environment need to persist through a reboot, so everything is not contained in one place.
First, ensure that you have the environment destroyed and the containers are not running. Then remove the following files and directories:
/etc/init/juju-*
/etc/lxc/auto/juju-*
/etc/rsyslog.d/25-juju*
/var/lib/juju/containers/*
/var/lib/lxc/juju-*
~/.juju/<env>
~/.juju/environments/<env>.jenv
Then you can reboostrap with a clean environment.
In certain cases you might need to list, stop, and destroy containers by hand, do this before removing the Juju files.
- http://manpages.ubuntu.com/manpages/trusty/en/man1/lxc-ls.1.html
- http://manpages.ubuntu.com/manpages/trusty/en/man1/lxc-stop.1.html
- http://manpages.ubuntu.com/manpages/trusty/en/man1/lxc-destroy.1.html
You might find the following snippet I use helpful:
http://blog.naydenov.net/2014/03/remove-juju-local-environment-cleanly/
It's a bash script that needs to be run as root, and it tries to clean up aggressively all remnants of a local juju environment, including LXC templates, containers, logs, running mongodb test servers, etc.