provisionamento orquestrado nas nuvens com juju

23
provisionamento orquestrado nas nuvens com JuJu Thiago Rondon, b-datum.com 7masters, cloud computing, 30 de outubro de 2013 Wednesday, October 30, 13

Upload: thiago-rondon

Post on 28-Nov-2014

218 views

Category:

Technology


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Provisionamento orquestrado nas nuvens com Juju

provisionamento orquestrado nas nuvens

com JuJuThiago Rondon, b-datum.com

7masters, cloud computing,30 de outubro de 2013

Wednesday, October 30, 13

Page 2: Provisionamento orquestrado nas nuvens com Juju

o que é ?

• Ubuntu, Go, OpenSource

• Escale com deploy e integração.

• Monitoramento e Diagnóstico

• AWS, Azure, HP Cloud, OpenStack, MAAS

• Provisionamento orquestrado

Wednesday, October 30, 13

Page 3: Provisionamento orquestrado nas nuvens com Juju

charms

Wednesday, October 30, 13

Page 4: Provisionamento orquestrado nas nuvens com Juju

metadata.yamlname: vanillasummary: Vanilla is an open-source, pluggable, themeable, multi-lingual forum.maintainer: Your Name <[email protected]>description: | Vanilla is designed to deploy and grow small communities to scale. This charm deploys Vanilla Forums as outlined by the Vanilla Forums installation guide.categories: - applicationsprovides: website: interface: httprequires: database: interface: mysql

Wednesday, October 30, 13

Page 5: Provisionamento orquestrado nas nuvens com Juju

Hooks

• install, start, stop

• config-changed, upgrade-charm

• relation-joined, relation-changed

• relation-departed, relation-broken

Wednesday, October 30, 13

Page 6: Provisionamento orquestrado nas nuvens com Juju

cenário clássico

jenkins jenkins-slave

nagios

Wednesday, October 30, 13

Page 7: Provisionamento orquestrado nas nuvens com Juju

bootstrap

$  juju  bootstrap  

jenkins

jenkins-slave

nagios

state machine

$  juju  deploy  jenkins  

$  juju  deploy  jenkins-­‐slave  

$  juju  deploy  nagios

Wednesday, October 30, 13

Page 8: Provisionamento orquestrado nas nuvens com Juju

relacionamento

$  juju  add-­‐relation  jenkins  jenkins-­‐slave  

jenkins jenkins-slave

Wednesday, October 30, 13

Page 9: Provisionamento orquestrado nas nuvens com Juju

para o mundo

$  juju  set  jenkins  password=imasters  

$  juju  expose  jenkins

Wednesday, October 30, 13

Page 10: Provisionamento orquestrado nas nuvens com Juju

para o mundo➜    ~    juju  status  jenkinsenvironment:  amazonmachines:    "1":        agent-­‐state:  started        agent-­‐version:  1.16.0        dns-­‐name:  ec2-­‐54-­‐205-­‐44-­‐5.compute-­‐1.amazonaws.com        instance-­‐id:  i-­‐0db6ad75        instance-­‐state:  running        series:  precise        hardware:  arch=amd64  cpu-­‐cores=1  cpu-­‐power=100  mem=1740M  root-­‐disk=8192Mservices:    jenkins:        charm:  cs:precise/jenkins-­‐8        exposed:  true        relations:            master:            -­‐  jenkins-­‐slave        units:            jenkins/0:                agent-­‐state:  error                agent-­‐state-­‐info:  'hook  failed:  "master-­‐relation-­‐changed"'                agent-­‐version:  1.16.0                machine:  "1"                open-­‐ports:                -­‐  8080/tcp                public-­‐address:  ec2-­‐54-­‐205-­‐44-­‐5.compute-­‐1.amazonaws.com

Wednesday, October 30, 13

Page 11: Provisionamento orquestrado nas nuvens com Juju

escalando

$  juju  add-­‐unit  jenkins-­‐slave  

jenkins

jenkins-slave

jenkins-slave

Wednesday, October 30, 13

Page 12: Provisionamento orquestrado nas nuvens com Juju

relacionando

jenkins jenkins-slave

jenkins-slave

nagios

$  juju  add-­‐relation  nagios  jenkins$  juju  add-­‐relation  nagios  jenkins-­‐slave

Wednesday, October 30, 13

Page 13: Provisionamento orquestrado nas nuvens com Juju

configurando

nagios

$  juju  expose  nagios$  juju  ssh  nagios/0  sudo  cat  /var/lib/juju/nagios.passwd

Wednesday, October 30, 13

Page 14: Provisionamento orquestrado nas nuvens com Juju

serviço subordinado

$  juju  deploy  nrpe$  juju  add-­‐relation  nrpe  jenkins$  juju  add-­‐relation  nrpe  jenkins-­‐slave$  juju  add-­‐relation  nrpe:monitors  nagios:monitors

nrpe

Wednesday, October 30, 13

Page 15: Provisionamento orquestrado nas nuvens com Juju

jenkins

nagiosjenkins-slave

jenkins-slave

nrpe

state machine

Wednesday, October 30, 13

Page 16: Provisionamento orquestrado nas nuvens com Juju

resumindo...➜    ~    juju  bootstrap➜    ~    juju  deploy  jenkins➜    ~    juju  deploy  jenkins-­‐slave➜    ~    juju  add-­‐relation  jenkins  jenkins-­‐slave➜    ~    juju  deploy  nagios➜    ~    juju  set  jenkins  password=imasters➜    ~    juju  expose  jenkins➜    ~    juju  add-­‐unit  jenkins-­‐slave➜    ~    juju  add-­‐relation  nagios  jenkins➜    ~    juju  expose  nagios➜    ~    juju  add-­‐relation  nagios  jenkins-­‐slave➜    ~    juju  deploy  nrpe➜    ~    juju  add-­‐relation  nrpe  jenkins➜    ~    juju  add-­‐relation  nrpe  jenkins-­‐slave➜    ~    juju  add-­‐relation  nrpe:monitors  nagios:monitors

Wednesday, October 30, 13

Page 17: Provisionamento orquestrado nas nuvens com Juju

juju GUI

juju-gui

$  juju  deploy  juju-­‐gui$  juju  expose  juju-­‐gui

Wednesday, October 30, 13

Page 18: Provisionamento orquestrado nas nuvens com Juju

juju GUI

Wednesday, October 30, 13

Page 19: Provisionamento orquestrado nas nuvens com Juju

juju GUI

Wednesday, October 30, 13

Page 20: Provisionamento orquestrado nas nuvens com Juju

como esta ?$  juju  status$  juju  status  service*$  juju  status  -­‐e  local$  juju  status  -­‐-­‐format=json$  juju  ssh  wordpress/1$  juju  debug-­‐log

Wednesday, October 30, 13

Page 21: Provisionamento orquestrado nas nuvens com Juju

escalando

$  juju  add-­‐unit  -­‐n  5  mysql$  juju  add-­‐machine$  juju  deploy  -­‐-­‐constraints=”mem=4G”

Wednesday, October 30, 13

Page 22: Provisionamento orquestrado nas nuvens com Juju

destroy/remove

$  juju  remove-­‐unit  mysql/6$  juju  destroy-­‐environment  -­‐e  amazon$  juju  detroy-­‐relation  service  mysql

Wednesday, October 30, 13

Page 23: Provisionamento orquestrado nas nuvens com Juju

http://juju.ubuntu.comhttps://code.launchpad.net/~juju

Wednesday, October 30, 13