## How to deploy (pretty much) anything with Juju Wes Mason [@1stvamp](http://twitter.com/1stvamp)
## Who? - / `@1stvamp` - Online services, [Canonical](http://www.canonical.com/) - Open source
## Juju? - Service orchestration - Deployment tool(s) - Vagrant for your production infrastructure - Not just Ubuntu
## But why? - Service orientated architecture - Scaling - Configuration
## Charms - Re-usable - Best-practices for deploying/configuring a service - e.g. distilled expertise - Charm store
## Charm anatomy - **`metadata.yaml`** - `config.yaml` - `hooks/`
### `metadata.yaml`
## Charm anatomy - `metadata.yaml` - **`config.yaml`** - `hooks/`
### `config.yaml`
## Charm anatomy - `metadata.yaml` - `config.yaml` - **`hooks/`**
### `hooks/` directory - Event based orchestration - Development environment (local env, debug-hooks) - Can be written in anything (mostly Python though)
## Example juju init juju deploy myapp juju deploy postgres juju add-relation myapp postgres juju add-unit postgres -n 2 juju stat
## Configuration juju set myapp foo=bar juju set haproxy global_user=haproxy_admin
## Best practice presets juju set wordpress tuning=optimized
### Not just configuration management.. - Use with your favourite CM (Ansible, Chef, Puppet etc.) - CM handles machine configuration, can be mixed with service config
## sys.exit(0) - Slides: [github.com/1stvamp/juju-talk](https://github.com/1stvamp.org/juju-talk) - Juju: [juju.ubuntu.com](http://juju.ubuntu.com/)
## ^D - Jonathan "Joff" Oliver: [about.me/joffie](http://about.me/joffie) - Grab me and say hi `:-)`