Slide 1

Slide 1 text

Chef + Vagrant DevOps Tools

Slide 2

Slide 2 text

Config Management Tool Ruby, Erlang

Slide 3

Slide 3 text

Wrapper for virtualization software Fácil. Muy fácil.

Slide 4

Slide 4 text

Boris Quiroz SRE Preyproject.com (Prey) git.io/bq @cereal_bars

Slide 5

Slide 5 text

4M+ Usuarios ~2.5 Devices/User 20k LOC Chef + Vagrant = <3 preyproject.com

Slide 6

Slide 6 text

Chef + Vagrant DevOps Tools

Slide 7

Slide 7 text

Chef Server Nodes DevOps

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

Chef UI

Slide 10

Slide 10 text

Chef Server Nodes DevOps

Slide 11

Slide 11 text

Nodes: boostrap cookbooks chef-client ohai

Slide 12

Slide 12 text

Nodes: boostrap cookbooks chef-client ohai

Slide 13

Slide 13 text

Cookbooks Unidad fundamental Define el escenario Contiene recetas → git.io/prey_chef

Slide 14

Slide 14 text

https://supermarket.getchef.com

Slide 15

Slide 15 text

Chef Server Nodes DevOps

Slide 16

Slide 16 text

Workstations: devops knife chef-repo source control

Slide 17

Slide 17 text

$ knife bootstrap x.x.x.x -x ubuntu --sudo \ bootstrap-file

Slide 18

Slide 18 text

$ knife node run_list add srv-1 “role[dev]”

Slide 19

Slide 19 text

$ knife cookbook site search haproxy

Slide 20

Slide 20 text

$ knife node list --environment development

Slide 21

Slide 21 text

$ knife ssh ‘name:srv-1’ ‘uptime’ -x ubuntu

Slide 22

Slide 22 text

Chef + Vagrant DevOps Tools

Slide 23

Slide 23 text

Ambientes reproducibles, de forma fácil y rápida.

Slide 24

Slide 24 text

“Works on my machine”.

Slide 25

Slide 25 text

Vagrantfile Boxes Provisioner

Slide 26

Slide 26 text

Vagrantfile Tipo Atributos Provisioner

Slide 27

Slide 27 text

Vagrantfile Boxes Provisioner

Slide 28

Slide 28 text

Package de Vagrant. Vagrant 1.5+ → Versioning!

Slide 29

Slide 29 text

https://vagrantcloud.com

Slide 30

Slide 30 text

vagrant box add USER/BOX vagrant box add hashicorp/precise64 vagrant box list vagrant box list ubuntu/precise64 (virtualbox, 12.04.4)

Slide 31

Slide 31 text

Kitchen CI Uso Práctico

Slide 32

Slide 32 text

Test para nuestra infraestructura. → Flujo de trabajo simple. → Optimiza el código. → Favorece la velocidad del desarrollo.

Slide 33

Slide 33 text

Config File: → Driver → Provisioner → Platforms → Suites

Slide 34

Slide 34 text

No content

Slide 35

Slide 35 text

Instancia Plataforma + Suite

Slide 36

Slide 36 text

Driver: Vagrant, Docker, etc. Provisioner: chef_solo, chef_zero Platform: Ubuntu, CentOS Suite: Recetas y tests

Slide 37

Slide 37 text

Demo

Slide 38

Slide 38 text

Boris Quiroz bq@zsh.io b.zsh.io @cereal_bars prey.github.io