SlideShare a Scribd company logo
1 of 16
Download to read offline
Juju – Welcome to Service Orchestration
●
    VCLUG/VC PHP December 3, 2011
●
    Clint Byrum <clint.byrum@canonical.com>
●
    SpamapS on IRC
●
    http://juju.ubuntu.com/




     1 Presentation by Clint Byrum
DevOps Distilled™ - Isn't that config management?




 ●
     Config Management                           ●
                                                     Service Orchestration
 ●
     Machine Centric                             ●
                                                     Service Centric
 ●
     De-coupled from provisioning                ●
                                                     Coupled with provisioning
 ●
  Knowledge Sharing Involves Customization and   ●
                                                     Designed for Knowledge Sharing
 assumptions.                                    ●
                                                     Complimentary to config management
 ●
  Analog: ./configure && make && sudo make       ●
                                                     Analog: apt-get install
 install




      2 Presentation by Clint Byrum
The Cloud




 http://www.flickr.com/photos/gsbrown99/2706179635/sizes/o/i
 n/photostream/
                                                                                           http://www.flickr.com/photos/stevendepolo/4226949238/sizes/l
                                                                                           /in/photostream/




                                           http://www.flickr.com/photos/kaptainkobold/5892507537/sizes/
                                           z/in/photostream/




                                                                                                                                http://www.flickr.com/photos/emsl/4929154481/sizes/l/in/phot
                                                                                                                                ostream/




3 Presentation by Clint Byrum
Open Source




                        http://www.flickr.com/photos/smiteme/1184482747/sizes/o/in/photostream/


4 Presentation by Clint Byrum
Open Source + The Cloud =
Juju!
                                ●
                                    Yes this is the plug
                                ●
                                    Some things are better served by NOT being
                                    in Ubuntu's archive.
                                ●
                                    Juju in many ways makes Ubuntu Server
                                    invisible when using it properly.




5 Presentation by Clint Byrum
name: mediawiki
                                           summary: "website engine for collaborative
Charms are simple                          work"
                                           description: |
                                            MediaWiki is a wiki engine (a program for
                                            creating a collaboratively edited website).
●
  Some yaml metadata                       It is
                                            designed to handle heavy websites
●
  A few scripts that run at the right time containing
●
  Well encapsulated                         library-like document collections, and
                                           supports
●
  Written with whatever tool you want!      user uploads of images/sounds, multilingual
●
  Assumptions can be eliminated             content, TOC autogeneration, ISBN links,
                                           etc.
●
  Easy to read, easy to review             requires:
●
  https://code.launchpad.net/charm           db:
                                               interface: mysql
                                             slave:
                                               interface: mysql
                                             cache:
                                               interface: memcache
                                           provides:
                                             website:
                                               interface: http


6 Presentation by Clint Byrum
http://upload.wikimedia.org/wikipedia/commons/d/d8/Wikimedia-servers-2010-12-28.svg




Relationships

●
    Various strategies
●
    - Assumptions in code
●
    - Assumptions in config mgmt.
●
    - Puppet – Exported Configs
●
    - Chef – Search
●
    - Juju – Fundamental component




7 Presentation by Clint Byrum
http://upload.wikimedia.org/wikipedia/commons/d/d8/Wikimedia-servers-2010-12-28.svg




Relationships

●
    Various strategies
●
    - Assumptions in code
●
    - Assumptions in config mgmt.
●
    - Puppet – Exported Configs
●
    - Chef – Search
●
    - Juju – Fundamental component




8 Presentation by Clint Byrum
Example: Mediawiki

●   juju deploy mysql wiki-db
●   juju deploy mediawiki demo-wiki
●   juju deploy memcached wiki-cache
●   juju deploy haproxy wiki-balancer
●   juju add-unit wiki-cache
●   juju add-unit demo-wiki
●   juju add-relation wiki-db:db demo-wiki:db
●   juju add-relation wiki-cache demo-wiki
●   juju add-relation wiki-balancer:reverseproxy demo-wiki:website




9 Presentation by Clint Byrum
Add slaves

●   juju deploy mysql wiki-slave-db
●   juju add-relation wiki-slave-
    db:slave wiki-db:master
●   juju add-relation demo-
    wiki:slave-db wiki-slave-db:db




10 Presentation by Clint Byrum
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
Configure

●   juju set demo-wiki name=”Life, The Universe, and Everything”
●   juju deploy mediawiki –config=arthur-dents-wiki.yaml arthur-
    dents-wiki




12 Presentation by Clint Byrum
Charms today

               ThinkUp

                  HAProxy

           MySQL         Jenkins
Deployment Options


●
    EC2 API
●
    Ubuntu Orchestra
●
    Local Dev
●
    ??? Fully abstracted




14 Presentation by Clint Byrum
The Future

●
    Charm Store
●
    Subordinate Charms
●
    Placement Constraints
●
    Stacks
●
    Storage Management
●
    Cloud Federation
●
    Auto Scaling
●
    Charms, Charms, Charms, Charms...


                                 http://www.flickr.com/photos/tom_twinhelix/3916931452/sizes/l/in/photostream/


15 Presentation by Clint Byrum
THANK YOU

●
    https://juju.ubuntu.com/
●
    https://cloud.ubuntu.com/
●
    https://launchpad.net/juju
●
    #juju on Freenode
●
    Clint Byrum <clint.byrum@canonical.com>




16 Presentation by Clint Byrum

More Related Content

What's hot

mapserver_install_linux
mapserver_install_linuxmapserver_install_linux
mapserver_install_linux
tutorialsruby
 
Nginx 0.8.x 安装手册
Nginx 0.8.x 安装手册Nginx 0.8.x 安装手册
Nginx 0.8.x 安装手册
Yiwei Ma
 
연구자 및 교육자를 위한 계산 및 분석 플랫폼 설계 - PyCon KR 2015
연구자 및 교육자를 위한 계산 및 분석 플랫폼 설계 - PyCon KR 2015연구자 및 교육자를 위한 계산 및 분석 플랫폼 설계 - PyCon KR 2015
연구자 및 교육자를 위한 계산 및 분석 플랫폼 설계 - PyCon KR 2015
Jeongkyu Shin
 
Nginx 0.9.x 安装手册
Nginx 0.9.x 安装手册Nginx 0.9.x 安装手册
Nginx 0.9.x 安装手册
Yiwei Ma
 
Grabbing the PostgreSQL Elephant by the Trunk
Grabbing the PostgreSQL Elephant by the TrunkGrabbing the PostgreSQL Elephant by the Trunk
Grabbing the PostgreSQL Elephant by the Trunk
Harold Giménez
 
Bundling Client Side Assets
Bundling Client Side AssetsBundling Client Side Assets
Bundling Client Side Assets
Timothy Oxley
 

What's hot (20)

Bpug mcollective 20140624
Bpug mcollective 20140624Bpug mcollective 20140624
Bpug mcollective 20140624
 
mapserver_install_linux
mapserver_install_linuxmapserver_install_linux
mapserver_install_linux
 
Nginx 0.8.x 安装手册
Nginx 0.8.x 安装手册Nginx 0.8.x 安装手册
Nginx 0.8.x 安装手册
 
My best grunt
My best gruntMy best grunt
My best grunt
 
MySQL Sandbox 3
MySQL Sandbox 3MySQL Sandbox 3
MySQL Sandbox 3
 
Cialug August 2021
Cialug August 2021Cialug August 2021
Cialug August 2021
 
Alfredo-PUMEX
Alfredo-PUMEXAlfredo-PUMEX
Alfredo-PUMEX
 
연구자 및 교육자를 위한 계산 및 분석 플랫폼 설계 - PyCon KR 2015
연구자 및 교육자를 위한 계산 및 분석 플랫폼 설계 - PyCon KR 2015연구자 및 교육자를 위한 계산 및 분석 플랫폼 설계 - PyCon KR 2015
연구자 및 교육자를 위한 계산 및 분석 플랫폼 설계 - PyCon KR 2015
 
Nginx 0.9.x 安装手册
Nginx 0.9.x 安装手册Nginx 0.9.x 安装手册
Nginx 0.9.x 安装手册
 
Embedded Linux Odp
Embedded Linux OdpEmbedded Linux Odp
Embedded Linux Odp
 
Easy as pie creating widgets for ibm connections
Easy as pie   creating widgets for ibm connectionsEasy as pie   creating widgets for ibm connections
Easy as pie creating widgets for ibm connections
 
Kvm optimizations
Kvm optimizationsKvm optimizations
Kvm optimizations
 
[Spring Camp 2013] Java Configuration 없인 못살아!
[Spring Camp 2013] Java Configuration 없인 못살아![Spring Camp 2013] Java Configuration 없인 못살아!
[Spring Camp 2013] Java Configuration 없인 못살아!
 
[H3 2012] 우리가 모르는 Node.js로 할 수 있는 몇가지
[H3 2012] 우리가 모르는 Node.js로 할 수 있는 몇가지[H3 2012] 우리가 모르는 Node.js로 할 수 있는 몇가지
[H3 2012] 우리가 모르는 Node.js로 할 수 있는 몇가지
 
Datagrids with Symfony 2, Backbone and Backgrid
Datagrids with Symfony 2, Backbone and BackgridDatagrids with Symfony 2, Backbone and Backgrid
Datagrids with Symfony 2, Backbone and Backgrid
 
Director x Backbone = :)
Director x Backbone = :)Director x Backbone = :)
Director x Backbone = :)
 
Grabbing the PostgreSQL Elephant by the Trunk
Grabbing the PostgreSQL Elephant by the TrunkGrabbing the PostgreSQL Elephant by the Trunk
Grabbing the PostgreSQL Elephant by the Trunk
 
Django로 만든 웹 애플리케이션 도커라이징하기 + 도커 컴포즈로 개발 환경 구축하기
Django로 만든 웹 애플리케이션 도커라이징하기 + 도커 컴포즈로 개발 환경 구축하기Django로 만든 웹 애플리케이션 도커라이징하기 + 도커 컴포즈로 개발 환경 구축하기
Django로 만든 웹 애플리케이션 도커라이징하기 + 도커 컴포즈로 개발 환경 구축하기
 
Bundling Client Side Assets
Bundling Client Side AssetsBundling Client Side Assets
Bundling Client Side Assets
 
Asynchronous Module Definition (AMD)
Asynchronous Module Definition (AMD)Asynchronous Module Definition (AMD)
Asynchronous Module Definition (AMD)
 

Viewers also liked

Viewers also liked (8)

Презентация высокого полета экспресс курс
Презентация высокого полета экспресс курсПрезентация высокого полета экспресс курс
Презентация высокого полета экспресс курс
 
Почему презентации так трудно делать?
Почему презентации так трудно делать?Почему презентации так трудно делать?
Почему презентации так трудно делать?
 
Juju presentation
Juju presentationJuju presentation
Juju presentation
 
7 базовых сюжетов сторителлинга для вашей презентации
7 базовых сюжетов сторителлинга для вашей презентации7 базовых сюжетов сторителлинга для вашей презентации
7 базовых сюжетов сторителлинга для вашей презентации
 
Сколько слайдов в самый раз?
Сколько слайдов в самый раз?Сколько слайдов в самый раз?
Сколько слайдов в самый раз?
 
САМАЯ ЛУЧШАЯ ПРЕЗА
САМАЯ ЛУЧШАЯ ПРЕЗАСАМАЯ ЛУЧШАЯ ПРЕЗА
САМАЯ ЛУЧШАЯ ПРЕЗА
 
Секреты презентации. Как сделать презентацию для спикера?
Секреты презентации. Как сделать презентацию для спикера?Секреты презентации. Как сделать презентацию для спикера?
Секреты презентации. Как сделать презентацию для спикера?
 
Как стать супергероем презентаций: дизайн
Как стать супергероем презентаций: дизайнКак стать супергероем презентаций: дизайн
Как стать супергероем презентаций: дизайн
 

Similar to Juju Presentation 2011

Ensemble oscon 2011
Ensemble oscon 2011Ensemble oscon 2011
Ensemble oscon 2011
OSCON Byrum
 
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Docker, Inc.
 

Similar to Juju Presentation 2011 (20)

Ensemble oscon 2011
Ensemble oscon 2011Ensemble oscon 2011
Ensemble oscon 2011
 
Nuvola: a tale of migration to AWS
Nuvola: a tale of migration to AWSNuvola: a tale of migration to AWS
Nuvola: a tale of migration to AWS
 
Why you’re going to fail running java on docker!
Why you’re going to fail running java on docker!Why you’re going to fail running java on docker!
Why you’re going to fail running java on docker!
 
Linux containers and docker
Linux containers and dockerLinux containers and docker
Linux containers and docker
 
Unikernels: the rise of the library hypervisor in MirageOS
Unikernels: the rise of the library hypervisor in MirageOSUnikernels: the rise of the library hypervisor in MirageOS
Unikernels: the rise of the library hypervisor in MirageOS
 
Unikernels: Rise of the Library Hypervisor
Unikernels: Rise of the Library HypervisorUnikernels: Rise of the Library Hypervisor
Unikernels: Rise of the Library Hypervisor
 
Docker and friends at Linux Days 2014 in Prague
Docker and friends at Linux Days 2014 in PragueDocker and friends at Linux Days 2014 in Prague
Docker and friends at Linux Days 2014 in Prague
 
Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure
Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure
Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure
 
Lightweight Virtualization with Linux Containers and Docker | YaC 2013
Lightweight Virtualization with Linux Containers and Docker | YaC 2013Lightweight Virtualization with Linux Containers and Docker | YaC 2013
Lightweight Virtualization with Linux Containers and Docker | YaC 2013
 
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
 
Security of Linux containers in the cloud
Security of Linux containers in the cloudSecurity of Linux containers in the cloud
Security of Linux containers in the cloud
 
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on AzureDocker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
 
Containers > VMs
Containers > VMsContainers > VMs
Containers > VMs
 
OpenNebulaConf 2016 - Measuring and tuning VM performance by Boyan Krosnov, S...
OpenNebulaConf 2016 - Measuring and tuning VM performance by Boyan Krosnov, S...OpenNebulaConf 2016 - Measuring and tuning VM performance by Boyan Krosnov, S...
OpenNebulaConf 2016 - Measuring and tuning VM performance by Boyan Krosnov, S...
 
Let's Containerize New York with Docker!
Let's Containerize New York with Docker!Let's Containerize New York with Docker!
Let's Containerize New York with Docker!
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
 
Openstack Third-Party CI and the review of a few Openstack Infrastructure pro...
Openstack Third-Party CI and the review of a few Openstack Infrastructure pro...Openstack Third-Party CI and the review of a few Openstack Infrastructure pro...
Openstack Third-Party CI and the review of a few Openstack Infrastructure pro...
 
Scaling Development Environments with Docker
Scaling Development Environments with DockerScaling Development Environments with Docker
Scaling Development Environments with Docker
 
Tuning systemd for embedded
Tuning systemd for embeddedTuning systemd for embedded
Tuning systemd for embedded
 
Replatforming Legacy Packaged Applications: Block-by-Block with Minecraft
Replatforming Legacy Packaged Applications: Block-by-Block with MinecraftReplatforming Legacy Packaged Applications: Block-by-Block with Minecraft
Replatforming Legacy Packaged Applications: Block-by-Block with Minecraft
 

Recently uploaded

Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
FIDO Alliance
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
FIDO Alliance
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
FIDO Alliance
 

Recently uploaded (20)

State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate Guide
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 Warsaw
 
Event-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingEvent-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream Processing
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
 
UiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overviewUiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overview
 
Top 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development CompaniesTop 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development Companies
 
Using IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandUsing IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & Ireland
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideCollecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
 
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
 

Juju Presentation 2011

  • 1. Juju – Welcome to Service Orchestration ● VCLUG/VC PHP December 3, 2011 ● Clint Byrum <clint.byrum@canonical.com> ● SpamapS on IRC ● http://juju.ubuntu.com/ 1 Presentation by Clint Byrum
  • 2. DevOps Distilled™ - Isn't that config management? ● Config Management ● Service Orchestration ● Machine Centric ● Service Centric ● De-coupled from provisioning ● Coupled with provisioning ● Knowledge Sharing Involves Customization and ● Designed for Knowledge Sharing assumptions. ● Complimentary to config management ● Analog: ./configure && make && sudo make ● Analog: apt-get install install 2 Presentation by Clint Byrum
  • 3. The Cloud http://www.flickr.com/photos/gsbrown99/2706179635/sizes/o/i n/photostream/ http://www.flickr.com/photos/stevendepolo/4226949238/sizes/l /in/photostream/ http://www.flickr.com/photos/kaptainkobold/5892507537/sizes/ z/in/photostream/ http://www.flickr.com/photos/emsl/4929154481/sizes/l/in/phot ostream/ 3 Presentation by Clint Byrum
  • 4. Open Source http://www.flickr.com/photos/smiteme/1184482747/sizes/o/in/photostream/ 4 Presentation by Clint Byrum
  • 5. Open Source + The Cloud = Juju! ● Yes this is the plug ● Some things are better served by NOT being in Ubuntu's archive. ● Juju in many ways makes Ubuntu Server invisible when using it properly. 5 Presentation by Clint Byrum
  • 6. name: mediawiki summary: "website engine for collaborative Charms are simple work" description: | MediaWiki is a wiki engine (a program for creating a collaboratively edited website). ● Some yaml metadata It is designed to handle heavy websites ● A few scripts that run at the right time containing ● Well encapsulated library-like document collections, and supports ● Written with whatever tool you want! user uploads of images/sounds, multilingual ● Assumptions can be eliminated content, TOC autogeneration, ISBN links, etc. ● Easy to read, easy to review requires: ● https://code.launchpad.net/charm db: interface: mysql slave: interface: mysql cache: interface: memcache provides: website: interface: http 6 Presentation by Clint Byrum
  • 7. http://upload.wikimedia.org/wikipedia/commons/d/d8/Wikimedia-servers-2010-12-28.svg Relationships ● Various strategies ● - Assumptions in code ● - Assumptions in config mgmt. ● - Puppet – Exported Configs ● - Chef – Search ● - Juju – Fundamental component 7 Presentation by Clint Byrum
  • 8. http://upload.wikimedia.org/wikipedia/commons/d/d8/Wikimedia-servers-2010-12-28.svg Relationships ● Various strategies ● - Assumptions in code ● - Assumptions in config mgmt. ● - Puppet – Exported Configs ● - Chef – Search ● - Juju – Fundamental component 8 Presentation by Clint Byrum
  • 9. Example: Mediawiki ● juju deploy mysql wiki-db ● juju deploy mediawiki demo-wiki ● juju deploy memcached wiki-cache ● juju deploy haproxy wiki-balancer ● juju add-unit wiki-cache ● juju add-unit demo-wiki ● juju add-relation wiki-db:db demo-wiki:db ● juju add-relation wiki-cache demo-wiki ● juju add-relation wiki-balancer:reverseproxy demo-wiki:website 9 Presentation by Clint Byrum
  • 10. Add slaves ● juju deploy mysql wiki-slave-db ● juju add-relation wiki-slave- db:slave wiki-db:master ● juju add-relation demo- wiki:slave-db wiki-slave-db:db 10 Presentation by Clint Byrum
  • 11. 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
  • 12. Configure ● juju set demo-wiki name=”Life, The Universe, and Everything” ● juju deploy mediawiki –config=arthur-dents-wiki.yaml arthur- dents-wiki 12 Presentation by Clint Byrum
  • 13. Charms today ThinkUp HAProxy MySQL Jenkins
  • 14. Deployment Options ● EC2 API ● Ubuntu Orchestra ● Local Dev ● ??? Fully abstracted 14 Presentation by Clint Byrum
  • 15. The Future ● Charm Store ● Subordinate Charms ● Placement Constraints ● Stacks ● Storage Management ● Cloud Federation ● Auto Scaling ● Charms, Charms, Charms, Charms... http://www.flickr.com/photos/tom_twinhelix/3916931452/sizes/l/in/photostream/ 15 Presentation by Clint Byrum
  • 16. THANK YOU ● https://juju.ubuntu.com/ ● https://cloud.ubuntu.com/ ● https://launchpad.net/juju ● #juju on Freenode ● Clint Byrum <clint.byrum@canonical.com> 16 Presentation by Clint Byrum