kapil thangavelu software developer, ubuntu server

19
1

Upload: others

Post on 09-Feb-2022

6 views

Category:

Documents


0 download

TRANSCRIPT

1

Kapil ThangaveluSoftware Developer, Ubuntu ServerCanonical Ltd.

4

Juju is 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.

5

Juju is DevOps distilled.

Most of the service applications you want will be available in the Juju Charm Store...providing direct and free access to

a DevOps community-contributed collection of charms.

6

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.

7

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.

8

Charms● Reusable, codified best-practice● Deployment expertise● 60+ in code.launchpad.net/charm● Deployable using charm-tools package● Charm Store coming soon!

9 Presentation by Kapil Thangavelu

Charms are simple

● Some yaml metadata

● A few scripts that run at the right time

● Written with whatever tool you want!

● Easy to read, easy to review

● https://code.launchpad.net/principia

juju: formulaname: mediawikirevision: 84summary: "website engine for collaborative work"description: | MediaWiki is a wiki engine (a program for creating a collaboratively edited website). It is designed to handle heavy websites containing library-like document collections, and supports user uploads of images/sounds, multilingual content, TOC autogeneration, ISBN links, etc.requires: db: interface: mysql slave: interface: mysql cache: interface: memcacheprovides: website: interface: http

10 Presentation by Kapil Thangavelu

Relationships

● Various strategies

● - Assumptions in code

● - Assumptions in config mgmt.

● - Puppet – Exported Configs

● - Chef – Search

● - Juju – Fundamental component

http://upload.wikimedia.org/wikipedia/commons/d/d8/Wikimedia-servers-2010-12-28.svg

11 Presentation by Kapil Thangavelu

Deployment Options

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

12 Presentation by Kapil Thangavelu

Example: Mediawiki

●juju deploy mysql wiki-db●juju deploy mediawiki demo-wiki

●juju deploy –constraints=”mem=32G” memcached wiki-cache

●juju deploy haproxy wiki-balancer

●Juju deploy reconnoiter monitoring

●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

●Juju add-relation monitoring demo-wiki

13 Presentation by Kapil Thangavelu

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

Result

wiki-db service wiki-cache servicewiki-slave-db service

wiki-balancer service

demo-wiki service

wiki-dblocal:mysql-98

wiki-db/0ec2-50-19-198-127.compute-1.amazonaws.com

demo-wikilocal:mediawiki-68

db

wiki-slave-dblocal:mysql-98

db

wiki-cachelocal:memcached-11

cache

wiki-balancerlocal:haproxy-14

reverseproxydemo-wiki/0

ec2-50-16-127-225.compute-1.amazonaws.comdemo-wiki/1ec2-50-16-149-161.compute-1.amazonaws.com

masterwiki-slave-db/0

ec2-50-17-77-63.compute-1.amazonaws.com wiki-cache/0ec2-184-72-144-240.compute-1.amazonaws.com

wiki-cache/1ec2-75-101-216-57.compute-1.amazonaws.com

wiki-balancer/0ec2-174-129-69-54.compute-1.amazonaws.com

15

Architecture

16

Enough Talk...Show Me the SOMETHING!

17

Demo: Local Deployment

18

Nice Trick...Show Me SOMETHING REAL!!!!

….SSH Fail

Thank You

● www.ubuntu.com● cloud.ubuntu.com● juju.ubuntu.com