The basic process is you register your machine(s) with Juju via: juju add-machine ssh:10.1.1.2 for example. And then you can deploy services to those machines.
Large Deployments
For larger deployments you can use Juju together with the default multiple-server-install coordinator (called MAAS) to deploy charms onto physical machines, or extra physical units to existing services. Juju with MAAS lets you treat a group of physical machines as a cloud, essentially.
You can also run charms directly on your workstation, which we call a local environment. You run each separate service unit as different LXC container on a single machine (Ubuntu only).
Best Answer
First off you need juju and charm-tools, ensure you have backports enabled (they are enabled by default) to get the latest Juju:
Do a
juju generate-config -w
to generate a config for OpenStack that you can customize for your needs.Here's an example for Rackspace Cloud Servers to orchestrate services.
~/.juju/environments.yaml
Official docs: