SlideShare a Scribd company logo
Juju on ubuntu cloud
Zhengpeng Hou
zhengpeng.hou@canonical.com
Canonical Ltd.
What is DevOps?




                  3
What drives DevOps?
●
    Speed of the deployment
●
    Continuous Integration, Automated Testing,
    etc.
●
    Fast change vs. Stability




                                                 4
What does DevOps “deliver”?

●
    Fast repeatable server setup, consistent
    environment
●
    Abstract ops tasks to empower devs
●
    Smaller deployments empower ops
●
    Repeatable processes that let you scale out
    quickly




                                                  5
You've got the tools already



●
  Hardware
●
  Virtualization
●
  Platform (OS)
●
  Configuration Management
●
    … need to tie that together into something whole.




                                                        6
Manages Services, not Machines




                     Devops Distilled   7
Elevate to Juju

      Service
   Orchestration



    Configuration
    Management


   Virtualization


    Operating
     System



    Hardware

                    8
Juju is
                DevOps distilled.
 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.




                                                                                9
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




                                                                   10
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.




                                                               11
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.




                                                              12
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.




                                                           13
●
    Encapsulates services - a formula defines all
    the ways the service needs to expose or
    consume config data to/from other services.
●
    Orchestrates provisioning (EC2, OpenStack,
    Bare Metal)
●
    Juju makes sharing Charms easy



                                                    14
15
16 Presentation by B.Saller, N.Barcet
17 Presentation by B.Saller, N.Barcet
18 Presentation by B.Saller, N.Barcet
19 Presentation by B.Saller, N.Barcet
20 Presentation by B.Saller, N.Barcet
$ juju bootstrap
$ juju deploy hadoop-master
$ juju deploy hadoop-slave




                              21
Charms
●
    Reusable, codified best-practice.
●
    Distilled deployment expertise.
●
    Communication via interfaces.
●
    Doesn't require foreknowledge of who will
    use them or how




                                                22
Relating services


                    23
Relations


●
    A high-level interface describing the interactions
    between services
●
    Services have `provides` and `requires` interfaces
●
    Juju models the relationship between services, not
    machines




                                                         24
Scaling services


                   25
DOES THIS WEBSCALE?




                      26
Services
Services change during their lifetime:
●   Number of instances?
●   Which machines they run on?
●   What services they depend on?
●   And how those services are implemented?




                                              27
$ juju bootstrap
$ juju deploy hadoop-master
$ juju deploy hadoop-slave
$ juju add-relation hadoop-master hadoop-
slave
$ juju add-unit hadoop-slave




                                            28
$ juju bootstrap
$ juju deploy hadoop-master
$ juju deploy hadoop-slave
$ juju add-relation hadoop-master hadoop-
slave
$ juju add-unit hadoop-slave
$ juju add-unit hadoop-slave



                                            29
$ juju bootstrap
$ juju deploy hadoop-master
$ juju deploy hadoop-slave
$ juju   add-relation hadoop-master hadoop-
slave
$ juju   add-unit hadoop-slave
$ juju   add-unit hadoop-slave
$ juju   add-unit hadoop-slave


                                              30
31
32
~40 charms

             33
Juju Under the Hood



                      34
35
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




36 Presentation by B.Saller, N.Barcet
Juju


                                           Load
                                          Balancer
                                            HAProxy        Each charm defines
                                                           dependencies and/or
                                                           provides.
                                        Depends Provides
     Juju environment



                                         Cloud app
                                          Cloud app
                                           Cloud app

     and dependency
     solver
                                        Provides Depends



                                        SQL Database
                                            MySQL



37 Presentation by B.Saller, N.Barcet
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



38 Presentation by B.Saller, N.Barcet
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 formulas
                                                          what bounds are to atoms.
     and dependency
     solver
                                          Juju Relation
                                                          Services are loosely coupled
                                                          but highly cohesive.
                                         MySQL
                                          MySQL
                                           MySQL



39 Presentation by B.Saller, N.Barcet
Juju



                                           Varnish            Juju delivers service focused
                                                              management through their
                                                              life-cycle
                                          Juju Relation   ●
                                                              Offers the same simple rules to components
     Juju environment
                                                              of you infra as we do already for packages
                                                              on your servers: dependencies, provides
                                                          ●
                                                              Adds the notion of dynamic relations
                                        Cloud app
                                         Cloud app
                                          Cloud app           between components
                                                          ●
                                                              To provide you with simple automated
                                                              elasticity that is easy to expand
     and dependency
     solver*                                              ●
                                                              Working on your bare metal servers
                                          Juju Relation
                                                              (through Orchestra*) as easily as on your
                                                              favourite clouds (AWS, OpenStack*, ...)



                                           MySQL



40 Presentation by B.Saller, N.Barcet                         *coming soon
●
    All development is public
●
    Free and Open Source Software
●
    Communication is open

    Join Us
●
    IRC: #juju on irc.freenode.net
●
    Launchpad: https://launchpad.net/juju
●
    Web: https://juju.ubuntu.com/
cloud.ubuntu.com

More Related Content

PDF
Maas Juju Introduction
PDF
Openstack deployment-with ubuntu
PDF
Understanding Juju Charms
PDF
Ubuntu Cloud Juju
PDF
Openstack in action2 canonical - openstack cloud on ubuntu it is happening ...
PDF
OpenStack & Ubuntu (india openstack day)
PDF
Juju + Puppet (Puppetconf 2011)
PDF
Open stack meetup_boston_ubuntu_cloud
Maas Juju Introduction
Openstack deployment-with ubuntu
Understanding Juju Charms
Ubuntu Cloud Juju
Openstack in action2 canonical - openstack cloud on ubuntu it is happening ...
OpenStack & Ubuntu (india openstack day)
Juju + Puppet (Puppetconf 2011)
Open stack meetup_boston_ubuntu_cloud

What's hot (20)

KEY
Nuxeo on the Cloud - Nuxeo World 2011
PDF
Essex deployday
PDF
Cloud Ubuntu Cloud Guest
PDF
OpenStack Benelux - Cloud, OpenStack and a Market In Motion - Sept 2015final
PDF
An OpenNebula Private Cloud
PPTX
Dell openstack boston meetup dell crowbar and open stack
PPTX
OpenStack Ecosystem (10000 feet oveview)
PPTX
vBACD- July 2012 - Crash Course in Open Source Cloud Computing
PPTX
BACD July 2012 : The Xen Cloud Platform
PPTX
What's new OpenStack kilo
PDF
The Ubuntu OpenStack interoperability lab - Proven integration testing Nicola...
PDF
JCO Conference OpenStack
PDF
Cloud Storage - Technical Whitepaper - SolidFire
KEY
OpenStack Boston User Group, OpenStack overview
PDF
Ubuntu in the cloud What's Coming - Nick Barcet, Canonical
ODP
Cloudstack networking2
PDF
OSS Presentation by Stefano Maffulli
PDF
TechDay - Cambridge 2016 - OpenNebula at Knight Point Systems
PPT
Apache CloudStack AlpesJUG
Nuxeo on the Cloud - Nuxeo World 2011
Essex deployday
Cloud Ubuntu Cloud Guest
OpenStack Benelux - Cloud, OpenStack and a Market In Motion - Sept 2015final
An OpenNebula Private Cloud
Dell openstack boston meetup dell crowbar and open stack
OpenStack Ecosystem (10000 feet oveview)
vBACD- July 2012 - Crash Course in Open Source Cloud Computing
BACD July 2012 : The Xen Cloud Platform
What's new OpenStack kilo
The Ubuntu OpenStack interoperability lab - Proven integration testing Nicola...
JCO Conference OpenStack
Cloud Storage - Technical Whitepaper - SolidFire
OpenStack Boston User Group, OpenStack overview
Ubuntu in the cloud What's Coming - Nick Barcet, Canonical
Cloudstack networking2
OSS Presentation by Stefano Maffulli
TechDay - Cambridge 2016 - OpenNebula at Knight Point Systems
Apache CloudStack AlpesJUG
Ad

Similar to Juju on ubuntu cloud (20)

PDF
Juju
PDF
Cloud Juju Primer
PDF
Matt Bruzek - Monitoring Your Public Cloud With Nagios
PDF
Service orchestration and metal as a service with juju and maas
PDF
MLUG Workshop January 2014 - Introducing Juju
PDF
OSGi Cloud Ecosystems (EclipseCon 2013)
PDF
OSGi Cloud Ecosystems (OSGi Users Forum Germany)
PPT
Calico and juju
PDF
Juju presentation
PDF
OSGi Cloud Ecosystems
PDF
Slides open stack emily_updated_2
PPTX
Cloud Side: Introduction about Ubuntu Juju
PDF
Juju introduction @ MyGOSSCON 2012
PDF
Domestic cloud
PDF
Sharding for Mere Mortals
PDF
UShareSoft-ow2-conference-nov10
PDF
Informology - Introduction to juju
PDF
Getting Started with jClouds: Multi Cloud Framework
PDF
Getting started with jClouds
PDF
DevOpsMtl, Metal edition – MaaS and Juju
Juju
Cloud Juju Primer
Matt Bruzek - Monitoring Your Public Cloud With Nagios
Service orchestration and metal as a service with juju and maas
MLUG Workshop January 2014 - Introducing Juju
OSGi Cloud Ecosystems (EclipseCon 2013)
OSGi Cloud Ecosystems (OSGi Users Forum Germany)
Calico and juju
Juju presentation
OSGi Cloud Ecosystems
Slides open stack emily_updated_2
Cloud Side: Introduction about Ubuntu Juju
Juju introduction @ MyGOSSCON 2012
Domestic cloud
Sharding for Mere Mortals
UShareSoft-ow2-conference-nov10
Informology - Introduction to juju
Getting Started with jClouds: Multi Cloud Framework
Getting started with jClouds
DevOpsMtl, Metal edition – MaaS and Juju
Ad

More from Francisco Gonçalves (20)

PDF
Ulteo virtual desktop system
PDF
O que é o SecondLife? Sabia que este pode catalisar a colaboração na sua empr...
PDF
Porque a-burocracia-deve-morrer
PPTX
20140128 webinar-get-more-out-of-mysql-with-tokudb-140319063324-phpapp02
PDF
A automatização e virtualização do seu negócio
PDF
O rad da wave maker developing for the cloud
PDF
Scale out database apps através de galera cluster e maria db
PDF
Re pensando-virtualização-através-linux containers
PDF
O docker vai mudar tudo na sua infra estrutura-ti
PPTX
Teamwork Web Application
PPTX
Hypervisor "versus" Linux Containers with Docker !
PDF
MariaDB Galera Cluster presentation
PDF
Linux capacity planning
PPTX
Wavemaker RAD for the Cloud with CloudJee - Future Direction 2014
PDF
Cloud foundry and openstackcloud
PDF
Ubuntu cloud infrastructures
PDF
Desk top virtual_gbanif
PDF
Open Source Vantagens E Beneficios - By Softelabs
PPT
Consolidação winintel
Ulteo virtual desktop system
O que é o SecondLife? Sabia que este pode catalisar a colaboração na sua empr...
Porque a-burocracia-deve-morrer
20140128 webinar-get-more-out-of-mysql-with-tokudb-140319063324-phpapp02
A automatização e virtualização do seu negócio
O rad da wave maker developing for the cloud
Scale out database apps através de galera cluster e maria db
Re pensando-virtualização-através-linux containers
O docker vai mudar tudo na sua infra estrutura-ti
Teamwork Web Application
Hypervisor "versus" Linux Containers with Docker !
MariaDB Galera Cluster presentation
Linux capacity planning
Wavemaker RAD for the Cloud with CloudJee - Future Direction 2014
Cloud foundry and openstackcloud
Ubuntu cloud infrastructures
Desk top virtual_gbanif
Open Source Vantagens E Beneficios - By Softelabs
Consolidação winintel

Juju on ubuntu cloud

  • 4. What drives DevOps? ● Speed of the deployment ● Continuous Integration, Automated Testing, etc. ● Fast change vs. Stability 4
  • 5. What does DevOps “deliver”? ● Fast repeatable server setup, consistent environment ● Abstract ops tasks to empower devs ● Smaller deployments empower ops ● Repeatable processes that let you scale out quickly 5
  • 6. You've got the tools already ● Hardware ● Virtualization ● Platform (OS) ● Configuration Management ● … need to tie that together into something whole. 6
  • 7. Manages Services, not Machines Devops Distilled 7
  • 8. Elevate to Juju Service Orchestration Configuration Management Virtualization Operating System Hardware 8
  • 9. Juju is DevOps distilled. 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. 9
  • 10. 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 10
  • 11. 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. 11
  • 12. 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. 12
  • 13. 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. 13
  • 14. Encapsulates services - a formula defines all the ways the service needs to expose or consume config data to/from other services. ● Orchestrates provisioning (EC2, OpenStack, Bare Metal) ● Juju makes sharing Charms easy 14
  • 15. 15
  • 16. 16 Presentation by B.Saller, N.Barcet
  • 17. 17 Presentation by B.Saller, N.Barcet
  • 18. 18 Presentation by B.Saller, N.Barcet
  • 19. 19 Presentation by B.Saller, N.Barcet
  • 20. 20 Presentation by B.Saller, N.Barcet
  • 21. $ juju bootstrap $ juju deploy hadoop-master $ juju deploy hadoop-slave 21
  • 22. Charms ● Reusable, codified best-practice. ● Distilled deployment expertise. ● Communication via interfaces. ● Doesn't require foreknowledge of who will use them or how 22
  • 24. Relations ● A high-level interface describing the interactions between services ● Services have `provides` and `requires` interfaces ● Juju models the relationship between services, not machines 24
  • 27. Services Services change during their lifetime: ● Number of instances? ● Which machines they run on? ● What services they depend on? ● And how those services are implemented? 27
  • 28. $ juju bootstrap $ juju deploy hadoop-master $ juju deploy hadoop-slave $ juju add-relation hadoop-master hadoop- slave $ juju add-unit hadoop-slave 28
  • 29. $ juju bootstrap $ juju deploy hadoop-master $ juju deploy hadoop-slave $ juju add-relation hadoop-master hadoop- slave $ juju add-unit hadoop-slave $ juju add-unit hadoop-slave 29
  • 30. $ juju bootstrap $ juju deploy hadoop-master $ juju deploy hadoop-slave $ juju add-relation hadoop-master hadoop- slave $ juju add-unit hadoop-slave $ juju add-unit hadoop-slave $ juju add-unit hadoop-slave 30
  • 31. 31
  • 32. 32
  • 34. Juju Under the Hood 34
  • 35. 35
  • 36. 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 36 Presentation by B.Saller, N.Barcet
  • 37. Juju Load Balancer HAProxy Each charm defines dependencies and/or provides. Depends Provides Juju environment Cloud app Cloud app Cloud app and dependency solver Provides Depends SQL Database MySQL 37 Presentation by B.Saller, N.Barcet
  • 38. 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 38 Presentation by B.Saller, N.Barcet
  • 39. 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 formulas what bounds are to atoms. and dependency solver Juju Relation Services are loosely coupled but highly cohesive. MySQL MySQL MySQL 39 Presentation by B.Saller, N.Barcet
  • 40. Juju Varnish Juju delivers service focused management through their life-cycle Juju Relation ● Offers the same simple rules to components Juju environment of you infra as we do already for packages on your servers: dependencies, provides ● Adds the notion of dynamic relations Cloud app Cloud app Cloud app between components ● To provide you with simple automated elasticity that is easy to expand and dependency solver* ● Working on your bare metal servers Juju Relation (through Orchestra*) as easily as on your favourite clouds (AWS, OpenStack*, ...) MySQL 40 Presentation by B.Saller, N.Barcet *coming soon
  • 41. All development is public ● Free and Open Source Software ● Communication is open Join Us ● IRC: #juju on irc.freenode.net ● Launchpad: https://launchpad.net/juju ● Web: https://juju.ubuntu.com/