3. The layer above
Service
Orchestration
Configuration
Management
Virtualization
Operating
System
Hardware
3 Presentation by Nick Barcet
4. Juju, DevOps Distilled
Dev Ops
●
Reuse existing deployment charms in an ●
Explicit control over deployment,
openly-accessible repository of shared configuration and upgrade options
expertise ●
See what’s deployed and track usage in the
●
Reproduce deployments for test and cloud
staging purposes ●
Create and share charms for new
●
Rapid deployment of your dependencies for applications
development purposes ●
Monitor, scale, shrink and adjust
●
Compose whole systems from individual deployment parameters in real time
application components and describe the ●
Explicitly connect different components and
entire deployment maintain those relationships over time
●
Collaborate with developers on the exact
deployment and upgrade processes
●
Get more done: implement decisions
immediately regardless of infrastructure
scale
http://juju.ubuntu.com
4 Presentation by Nick Barcet
5. Juju's Charms
●
Charms are a shareable, re-usable, and repeatable
expressions of DevOps best practices.
●
You can use them unmodified, or easily change and connect
them to fit your needs.
●
Deploying a formula is similar to installing a package on
Ubuntu: ask for it and it’s there, remove it and it’s completely
gone.
5 Presentation by Nick Barcet
6. Juju is a community of DevOps expertise.
●
Most of the application you want will be available in Juju.
●
Juju provides direct and free access to a DevOps community-
contributed collection of formulas
6 Presentation by Nick Barcet
7. Juju provides service orchestration
●
Juju focuses on managing the service units you need to
deliver a single solution, above simply configuring the
machines or cloud instances needed to run them.
●
Charms developed, tested, and deployed on your own
hardware will operate the same in an EC2 API compatible
cloud or OpenStack or Orchestra, Ubuntu's bare-metal
provisioning (more providers to come).
7 Presentation by Nick Barcet
8. Juju is intelligent
●
Juju exposes re-usable service units and well-defined
interfaces that allow you to quickly and organically adjust and
scale solutions without repeating yourself.
8 Presentation by Nick Barcet
9. Juju is Easy
●
There’s no need to learn a domain specific language (DSL) to
use Juju or create formulas. You can be up and running with
your own formula in minutes
9 Presentation by Nick Barcet
11. Juju
Juju treats individual
services as atoms that are
described as charms and can
Juju environment
be instantiated one or many
times.
Cloud app
Cloud app
Cloud app
and dependency
solver
11 Presentation by Nick Barcet OpenStack in Action, Paris
12. Juju
Load
Balancer
HAProxy Each charm (or atom) define
dependencies and/or
provides.
Depends Provides
Juju environment
Cloud app
Cloud app
Cloud app
and dependency
solver
Provides Depends
SQL Database
MySQL
12 Presentation by Nick Barcet OpenStack in Action, Paris
13. Juju
Load
Balancer
HAProxy
Varnish Multiple charms can provide
the same service and can be
easily switched.
Depends Provides
Juju environment
Cloud app
Cloud app
Cloud app
and dependency
solver
Provides Depends
SQL Database
MySQL
13 Presentation by Nick Barcet OpenStack in Action, Paris
14. Juju
Varnish
Varnish Juju maintains the relations
between the services so that
you don't need to care about
Juju environment
Juju Relation
the elasticity of your
environment.
Cloud app
Cloud app
Cloud app Relations are to charms what
bounds are to atoms.
and dependency
solver
Juju Relation
Services are loosely coupled
but highly cohesive.
MySQL
MySQL
MySQL
14 Presentation by Nick Barcet OpenStack in Action, Paris
15. Juju
Varnish Juju delivers service focused
management through their
life-cycle
Juju Relation ●
Offers the same simple rules to
Juju environment
components of you infra as we do already
for packages on your servers: dependencies,
provides
Cloud app
Cloud app
Cloud app
●
Adds the notion of dynamic relations
between components
●
To provide you with simple automated
and dependency
solver* elasticity that is easy to expand
Juju Relation
●
Working on your bare metal servers
(through Orchestra*) as easily as on your
favourite clouds (AWS, OpenStack*, ...)
MySQL
15 Presentation by Nick Barcet OpenStack in Action, Paris soon
*coming
16. Result
wiki-balancer/0
ec2-174-129-69-54.compute-1.amazonaws.com
wiki-balancer
local:haproxy-14
demo-wiki/0
demo-wiki/1 ec2-50-16-127-225.compute-1.amazonaws.com
ec2-50-16-149-161.compute-1.amazonaws.com
demo-wiki
local:mediawiki-68
db
db
che
wiki-db/0 wiki-slave-db wiki-cache/1
ec2-50-19-198-127.compute-1.amazonaws.com local:mysql-98 ec2-75-101-216-57.compute-1.amazonaws.com
wiki-cache
local:memcached-11
wiki-db wiki-slave-db/0
local:mysql-98 ec2-50-17-77-63.compute-1.amazonaws.com wiki-cache/0
ec2-184-72-144-240.compute-1.amazonaws.com