Juju Presentation 2011


Published on

Juju presentation by Clint Byrum of Canonical.


Published in: Technology
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Juju Presentation 2011

  1. 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. 2. DevOps Distilled™ - Isnt 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. 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. 4. Open Source http://www.flickr.com/photos/smiteme/1184482747/sizes/o/in/photostream/4 Presentation by Clint Byrum
  5. 5. Open Source + The Cloud =Juju! ● Yes this is the plug ● Some things are better served by NOT being in Ubuntus archive. ● Juju in many ways makes Ubuntu Server invisible when using it properly.5 Presentation by Clint Byrum
  6. 6. name: mediawiki summary: "website engine for collaborativeCharms 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: http6 Presentation by Clint Byrum
  7. 7. http://upload.wikimedia.org/wikipedia/commons/d/d8/Wikimedia-servers-2010-12-28.svgRelationships● Various strategies● - Assumptions in code● - Assumptions in config mgmt.● - Puppet – Exported Configs● - Chef – Search● - Juju – Fundamental component7 Presentation by Clint Byrum
  8. 8. http://upload.wikimedia.org/wikipedia/commons/d/d8/Wikimedia-servers-2010-12-28.svgRelationships● Various strategies● - Assumptions in code● - Assumptions in config mgmt.● - Puppet – Exported Configs● - Chef – Search● - Juju – Fundamental component8 Presentation by Clint Byrum
  9. 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:website9 Presentation by Clint Byrum
  10. 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:db10 Presentation by Clint Byrum
  11. 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 dbche 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. 12. Configure● juju set demo-wiki name=”Life, The Universe, and Everything”● juju deploy mediawiki –config=arthur-dents-wiki.yaml arthur- dents-wiki12 Presentation by Clint Byrum
  13. 13. Charms today ThinkUp HAProxy MySQL Jenkins
  14. 14. Deployment Options● EC2 API● Ubuntu Orchestra● Local Dev● ??? Fully abstracted14 Presentation by Clint Byrum
  15. 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. 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