I would have thought that
juju shutdown would move the instances in the deployment from "running" to "stopped." Instead it actually terminates all instances. Are juju deployments inherently ephemeral? Is there any way to stop and restart an juju deployment?
The short answers are, "no" and "no".
The shutdown command has always made me a little nervous, because of the finality of these terminations. The default AMI's used are for EBS instances, so you can at least snapshot all the instances before the shutdown, but I don't think there's an easy way to then start new instances with these EBS volumes just yet. I do think that it would be useful to have the ability to stop / start services or the whole deployment.
We've talked about having various options for saving and restoring the data before/after shutdown, which is related to your question. I'd suggest renewing this discussion on the Juju mailing list, which is more appropriate for development discussions: