SlideShare a Scribd company logo
From chef09 to chef11 
my approach to a real devops task 
Antonio Peña @apenav for @MadridDevops 
September 2014 http://about.me/apenav
http://madrid.devops.es
Motivation 
● feedback 
● sharing experience 
● learning 
● talking about devops
Impostor Syndrome
Three Parts 
● Devops 
● Chef 
● Migration
About 
DevOps
Software is broken or will be
Devops (I)
Devops (II)
Devops (III)
So little time, so much to talk about
Big Business. DevOps Myths (I)
Big Business. DevOps Myths (II)
My approach to a 
configuration management project 
Antonio Peña @apenav for @MadridDevops 
September 2014 http://about.me/apenav
Best tool to make config mgmt? 
● cfengine 
● puppet 
● chef 
● salt 
● ansible 
-- Business decision-making. Make your choice 
-- Strengths/weakness. Tend to converge.
About 
Chef
What is Chef? 
● a company 
○ Opscode Inc. 
○ getchef.com 
○ @chef 
● a product (with paid support) 
○ packages, not recommended install from gemfiles 
● an open source project 
● a community (open source but not only)
Beginners, experts and middle class
Berkshelf.I
Berkshelf.II
“Spanish” Way 
Master Chef RTVE
Howto devops in Spain? (I) 
● e.g. Demo in a Big Company
Howto devops in Spain? (II) 
● startup 
● why not? 
● sandbox
Howto devops in Spain? (III) 
● consulting
Working in a company 
as a Developer. 
Daily tasks
Initial problem 
Problem to be solved (in aprox. 2 weeks): 
1. install chef-server 11 in a centos6 behind a 
VPN 
2. install 2 web frontends + 2 backends 
a. (redis s/m + mysql m/s)
Real problem 
1. refactor/migrate/write from scratch about 20 
old-fashioned (2009) but very reliable (daily 
used, very difficult to extend for an outsider) 
ubuntu ruby18-webapp-related recipes to 
newer ones 
2. proof of concept to migrate chef09 company’ 
s repository to anything better
From scratch 
http://devopsreactions.tumblr.com/post/97637875636/what-happens-when-i-am-allowed-to-rewrite-code-from
Methodology or the like 
“Big bang” approach, but iterative: 
● use chef11 community cookbooks 
● almost no direct migration from chef09 ones
Criteria to use community cookbooks? 
https://github.com/opscode-cookbooks/mysql 
When in doubt use popular 
opscode 
community 
cookbooks. 
So many content to 
follow!
About 
Migration
To the kitchen
Let’s cook! 
1. Hosting Environment 
2. Cookbook Development 
3. Monolithic cookbook approach 
4. Everything is a cookbook 
5. Production Cookbook Deployment 
6. Production Cookbook Development 
7. Opscode packages 
8. Developers’ isolated ruby environment 
9. Final Steps 
10. Conclusions
Chef Server 
Internals
1.- Hosting Environment (I) 
Open Source chef-server in a centos6. 
Modify and test undocumented chef-server 
config, with some “little” external problems: 
- shared server behind a VPN 
- unavailable ports: reassign 80/443 to 81/8443 
- 8000 not opened in firewall (so no reports will 
be available)
Asking for opening ports in firewall 
http://devopsreactions.tumblr.com/post/41094252078/asking-the-security-team-for-a-firewall-exception
2.- Cookbook Development (I) 
Opscode free(*) hosting 
● Great help because Multiproject! 
● http://learn.getchef.com 
● Berkshelf helped a lot with dependencies (**) 
● Good practices freezing versions 
(*) not open-source (limited to 10 nodes) 
(**) not so easy when not opscode server
2.- Cookbook Development (II) 
Chef-DK: 
● ruby binaries in specific /opt folders 
● not needed rvm/rbenv/ruby source code/... 
● own path & pre-installed useful gems and 
tools
2.- Cookbook Development (III) 
● http://jtimberman.housepub.org/blog/2014/04/30/chefdk-and- 
ruby/ 
● Berkshelf 3.0. 
● The Test Kitchen integration testing framework. 
● ChefSpec, for unit testing cookbooks. 
● Foodcritic, static code analysis on cookbooks. 
● All of the Chef tools you're already familiar with: Chef 
Client, Knife, Ohai and Chef Zero.
2.- Cookbook Development (IV) 
Better practices? Any? 
● No time for tests nor TDD (to learn about) 
● Not enough RAM in laptop nor in AWS micro 
instances for making testing/CI with Vagrant 
● Foodcritic and more, but later 
● I hope to use them ASAP: just because I like 
it. The same with Puppet.
2.- Cookbook Development (V) 
First stages of development 
● make risks, quick tests, quickwin, try and try 
● think in advance, virtualhosts library 
● ugly code you know it will be easy to change 
● the community code is better than yours 
● extend, not create from the ground 
● parametrize cookbooks: redis
3.- Monolithic cookbook approach 
Thanks a lot to Mathias Lafeldt @mlafeldt 
“monolithic cookbook” idea, easy to refactor 
later (see Puppet Module Structure Redux). 
● http://mlafeldt.github.io/practicing-ruby-cookbook 
● https://github.com/elm-city-craftworks/ 
practicing-ruby-cookbook
4.- Everything is a cookbook 
● https://tomduffield.com/everything-as-a-cookbook- 
chefconf2014/ 
● https://speakerdeck.com/tduffield/everything-as- 
a-cookbook-1
Cool guys don’t look back to explosions?
5.-ProductionCookbookDevelopment 
● A new beginning. Almost from scratch. 
Develop new recipes and cookbooks against a 
new chef organization in opscode free hosting. 
● install, fix, check-apply and repeat in 
frontend staging instances 
(Poor’s man plan–do–check–adjust) 
https://en.wikipedia.org/wiki/PDCA
6.-ProductionCookbookDeployment 
● chef site cookbook install “cookbook” (new 
git branch in ~/chef-repo/cookbook/) 
● chef site cookbook install chef-client
7.- Opscode packages (I) 
● WARNING: chefdk.rpm installs binaries 
under /usr/bin and gems in its own gemsdir 
● REMOVE any puppet or ruby preexistent 
package or binary, no interferences please! 
● BEWARE: never use binaries without explicit 
PATH e.g. /opt/chef/bin/chef-client
7.- Opscode packages (II) 
NO RVM nor system ruby allowed 
● chef-server.rpm 
● chef.rpm 
● chefdk.rpm 
every opscode rpm package installs one or 
more ruby binaries in its own path
8.- Developers isolated ruby environment (I) 
● Developers need multiple rubies installed 
(1.9.3 & 2.0.X) 
● unprivileged users will install its own gems, 
without interfering with chef ruby-binaries 
SOLUTION: compile explicit versions from 
source code, rewrite PATH in user environment 
and install “bundler gem” as root.
8.- Developers isolated ruby environment (II) 
Opscode chef.rpm package provides 2.1 ruby 
● install passenger-apache library+binary 
compiled and installed as a gem under chef. 
rpm gemlib path (a community recipe is in 
charge of it) 
● compatible to both 2.0.x and 1.9.x user 
rubies
8.- Developers isolated ruby environment(III) 
Explicit ruby version (1.9.3 or 2.0.X) in 
appropriate virtualhost apache files (from 
templates) 
NOTE: Foodcritic tool helped a lot when looking 
for errors (e.g. specially with chef templates)
9. Final Steps (I) 
After just 2 weeks, it almost worked ok. 
Traditional approach to development: logrotate 
and monit forked recipes with “999” suffix 
added to “semver” in metadata.rb 
● not perfect 
● Explicit installation of dependencies when in 
Opensource Opscode server
9. Final Steps (II) 
Pareto principle! 80/20 Rule. 
● Two more weeks with “fringes” 
● create new organization in opscode free 
account 
● chef-solo-search for “local” databags 
● BIG CRISIS: no chef-server available -> 
chef-solo deployment
Angry chef?
9. Final Steps (III) 
Create git repo (first commit in 2 weeks) 
● install explicit dependencies 
● “chef cookbook site install” 
● only needed “ancient” (fork and modify) 
approach in two cookbooks: monit and 
passenger
9. Final Steps (IV) 
“In extremis”: Refactor the “monolithic” 
cookbook 
Monolithic cookbook refactored as 3 cookbooks 
Three layers of attribute+template files: 
● general cookbook (i.e. language, servers,...) 
○ company cookbook (i.e. final customer specific) 
■ project cookbook (i.e. virtualhost config)
9. Final Steps (V) 
● only two “old fashioned” forked recipes: 
monit and passenger 
● new recipes forces a different way to use 
databags
10. Conclusions (I) 
To FIX: 
● move logrotate recipes in railssites2 to 
another new bootstrapping-node-sysadmin 
cookbook 
● not exactly applied but inspired in 
"everything is a cookbook"
10. Conclusions (II) 
● You need to have “Luck” 
○ no way to configure staging chef-server (only 
working through 127.0.0.1 and VPN) 
○ no way to configure ubuntu from opscode deb 
packages 
● You need big motivation to success
10. Conclusions (III) 
To be improved: 
● ubuntu/RHEL cookbooks 
● tests 
● mysql m/s cookbook 
● monit recipe 
● opensource chef-server hosting
THANKS FOR YOUR 
PATIENCE

More Related Content

What's hot

Killer R10K Workflow - PuppetConf 2014
Killer R10K Workflow - PuppetConf 2014Killer R10K Workflow - PuppetConf 2014
Killer R10K Workflow - PuppetConf 2014
Puppet
 
Introduction to GitHub Actions
Introduction to GitHub ActionsIntroduction to GitHub Actions
Introduction to GitHub Actions
Bo-Yi Wu
 
Jenkins Shared Libraries Workshop
Jenkins Shared Libraries WorkshopJenkins Shared Libraries Workshop
Jenkins Shared Libraries Workshop
Julien Pivotto
 
Migrating To GitHub
Migrating To GitHub  Migrating To GitHub
Migrating To GitHub
Sridhar Peddinti
 
Serving Pull Requests with Jenkins
Serving Pull Requests with JenkinsServing Pull Requests with Jenkins
Serving Pull Requests with Jenkins
Seth Goings
 
Version control
Version controlVersion control
Version control
Giovanni Marco Dall'Olio
 
CocoaPods for private libraries
CocoaPods for private librariesCocoaPods for private libraries
CocoaPods for private libraries
CocoaHeads France
 
Lightweight continuous delivery for small schools
Lightweight continuous delivery for small schoolsLightweight continuous delivery for small schools
Lightweight continuous delivery for small schools
Charles Fulton
 
Golang Microservices meetup
Golang Microservices meetupGolang Microservices meetup
Golang Microservices meetup
Girish Ramnani
 
Intro to Git for Drupal 7
Intro to Git for Drupal 7Intro to Git for Drupal 7
Intro to Git for Drupal 7
Chris Caple
 
Open Innovation Lab (OIL) - 20150227 - GIT Intro Workshop
Open Innovation Lab (OIL) - 20150227 - GIT Intro WorkshopOpen Innovation Lab (OIL) - 20150227 - GIT Intro Workshop
Open Innovation Lab (OIL) - 20150227 - GIT Intro Workshop
Wong Hoi Sing Edison
 
Contributing to Koha
Contributing to KohaContributing to Koha
Contributing to Koha
Libriotech
 
Flow
FlowFlow
Puppet at GitHub
Puppet at GitHubPuppet at GitHub
Puppet at GitHub
Puppet
 
Git Tutorial
Git TutorialGit Tutorial
Git Tutorial
Moshe Kaplan
 
Culerity and Headless Full Stack Integration Testing
Culerity and Headless Full Stack Integration TestingCulerity and Headless Full Stack Integration Testing
Culerity and Headless Full Stack Integration Testing
Patrick Huesler
 
Git'in in 15
Git'in in 15Git'in in 15
Git'in in 15
Stacy Vicknair
 
Distributed Versioning Tools, BeJUG 2010
Distributed Versioning Tools, BeJUG 2010Distributed Versioning Tools, BeJUG 2010
Distributed Versioning Tools, BeJUG 2010
Pursuit Consulting
 
Git workflows presentation
Git workflows presentationGit workflows presentation
Git workflows presentation
Mack Hardy
 

What's hot (20)

Killer R10K Workflow - PuppetConf 2014
Killer R10K Workflow - PuppetConf 2014Killer R10K Workflow - PuppetConf 2014
Killer R10K Workflow - PuppetConf 2014
 
Introduction to GitHub Actions
Introduction to GitHub ActionsIntroduction to GitHub Actions
Introduction to GitHub Actions
 
Jenkins Shared Libraries Workshop
Jenkins Shared Libraries WorkshopJenkins Shared Libraries Workshop
Jenkins Shared Libraries Workshop
 
Git flow
Git flowGit flow
Git flow
 
Migrating To GitHub
Migrating To GitHub  Migrating To GitHub
Migrating To GitHub
 
Serving Pull Requests with Jenkins
Serving Pull Requests with JenkinsServing Pull Requests with Jenkins
Serving Pull Requests with Jenkins
 
Version control
Version controlVersion control
Version control
 
CocoaPods for private libraries
CocoaPods for private librariesCocoaPods for private libraries
CocoaPods for private libraries
 
Lightweight continuous delivery for small schools
Lightweight continuous delivery for small schoolsLightweight continuous delivery for small schools
Lightweight continuous delivery for small schools
 
Golang Microservices meetup
Golang Microservices meetupGolang Microservices meetup
Golang Microservices meetup
 
Intro to Git for Drupal 7
Intro to Git for Drupal 7Intro to Git for Drupal 7
Intro to Git for Drupal 7
 
Open Innovation Lab (OIL) - 20150227 - GIT Intro Workshop
Open Innovation Lab (OIL) - 20150227 - GIT Intro WorkshopOpen Innovation Lab (OIL) - 20150227 - GIT Intro Workshop
Open Innovation Lab (OIL) - 20150227 - GIT Intro Workshop
 
Contributing to Koha
Contributing to KohaContributing to Koha
Contributing to Koha
 
Flow
FlowFlow
Flow
 
Puppet at GitHub
Puppet at GitHubPuppet at GitHub
Puppet at GitHub
 
Git Tutorial
Git TutorialGit Tutorial
Git Tutorial
 
Culerity and Headless Full Stack Integration Testing
Culerity and Headless Full Stack Integration TestingCulerity and Headless Full Stack Integration Testing
Culerity and Headless Full Stack Integration Testing
 
Git'in in 15
Git'in in 15Git'in in 15
Git'in in 15
 
Distributed Versioning Tools, BeJUG 2010
Distributed Versioning Tools, BeJUG 2010Distributed Versioning Tools, BeJUG 2010
Distributed Versioning Tools, BeJUG 2010
 
Git workflows presentation
Git workflows presentationGit workflows presentation
Git workflows presentation
 

Viewers also liked

Paper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra FmanciaPaper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra FmanciaFcoKraken
 
Yaiza tapia POWER POINT CASTE BALNEARIO.
Yaiza tapia POWER POINT CASTE BALNEARIO. Yaiza tapia POWER POINT CASTE BALNEARIO.
Yaiza tapia POWER POINT CASTE BALNEARIO.
yaizatapia
 
Computer skills (ch1)
Computer skills (ch1)Computer skills (ch1)
Computer skills (ch1)
DrSamahAhmed
 
ERP Future 2014 - ERP für KMU?
ERP Future 2014 - ERP für KMU?ERP Future 2014 - ERP für KMU?
ERP Future 2014 - ERP für KMU?
WernerHehenwarter
 
El Siste ma Solar
El Siste ma SolarEl Siste ma Solar
El Siste ma Solarpingui
 
Centroamerica ILAEV Bus tour 2014.ppt
Centroamerica ILAEV Bus tour 2014.pptCentroamerica ILAEV Bus tour 2014.ppt
Centroamerica ILAEV Bus tour 2014.ppt
Iskcon Panama
 
GFI MailSecurity's Deployment Strategies
GFI MailSecurity's Deployment StrategiesGFI MailSecurity's Deployment Strategies
GFI MailSecurity's Deployment Strategies
GFI Software
 
Revista Oficial ANECPLA: Infoplagas. Nº 51 JUN 2013
Revista Oficial ANECPLA: Infoplagas. Nº 51  JUN 2013Revista Oficial ANECPLA: Infoplagas. Nº 51  JUN 2013
Revista Oficial ANECPLA: Infoplagas. Nº 51 JUN 2013
ANECPLA
 
Blogger tercer
Blogger tercerBlogger tercer
Blogger tercer
Gabriel Garcia
 
Eurosega Sevilla abogados de empresas
Eurosega Sevilla abogados de empresasEurosega Sevilla abogados de empresas
Eurosega Sevilla abogados de empresas
Escuela de Formación del Franquiciado EUROSEGA
 
Vendor Landscape: Email Security Gateway
Vendor Landscape: Email Security GatewayVendor Landscape: Email Security Gateway
Vendor Landscape: Email Security Gateway
Info-Tech Research Group
 
Kumite
KumiteKumite
Localizarea electronica a publicatiilor in biblioteca
Localizarea electronica a publicatiilor in bibliotecaLocalizarea electronica a publicatiilor in biblioteca
Localizarea electronica a publicatiilor in biblioteca
Biblioteca Universitatii "Dunarea de Jos" din Galati
 
Test y pruebas de caja Negra y caja Blanca
Test y pruebas de caja Negra y caja BlancaTest y pruebas de caja Negra y caja Blanca
Test y pruebas de caja Negra y caja Blanca
Manuel Murcia
 
Japón terremoto 10 mar 2011
Japón terremoto 10 mar 2011Japón terremoto 10 mar 2011
Japón terremoto 10 mar 2011
Luis Cantón
 
Recursos gesofera minerales y rocas
Recursos gesofera minerales y rocasRecursos gesofera minerales y rocas
Recursos gesofera minerales y rocas
Gemita165
 
Temario ETP
Temario ETPTemario ETP
Temario ETP
Carlos García
 
Functional training idde 4 pilares
Functional training idde 4 pilaresFunctional training idde 4 pilares
Functional training idde 4 pilares
Cesar Chavez Calderon
 
Starbucks corporation plan marketing
Starbucks corporation plan marketingStarbucks corporation plan marketing
Starbucks corporation plan marketing
Centro Educativo San Javier
 

Viewers also liked (20)

Paper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra FmanciaPaper Mmulfpuna Mpi Cparra Fmancia
Paper Mmulfpuna Mpi Cparra Fmancia
 
Yaiza tapia POWER POINT CASTE BALNEARIO.
Yaiza tapia POWER POINT CASTE BALNEARIO. Yaiza tapia POWER POINT CASTE BALNEARIO.
Yaiza tapia POWER POINT CASTE BALNEARIO.
 
Computer skills (ch1)
Computer skills (ch1)Computer skills (ch1)
Computer skills (ch1)
 
ERP Future 2014 - ERP für KMU?
ERP Future 2014 - ERP für KMU?ERP Future 2014 - ERP für KMU?
ERP Future 2014 - ERP für KMU?
 
El Siste ma Solar
El Siste ma SolarEl Siste ma Solar
El Siste ma Solar
 
Centroamerica ILAEV Bus tour 2014.ppt
Centroamerica ILAEV Bus tour 2014.pptCentroamerica ILAEV Bus tour 2014.ppt
Centroamerica ILAEV Bus tour 2014.ppt
 
GFI MailSecurity's Deployment Strategies
GFI MailSecurity's Deployment StrategiesGFI MailSecurity's Deployment Strategies
GFI MailSecurity's Deployment Strategies
 
Match point
Match pointMatch point
Match point
 
Revista Oficial ANECPLA: Infoplagas. Nº 51 JUN 2013
Revista Oficial ANECPLA: Infoplagas. Nº 51  JUN 2013Revista Oficial ANECPLA: Infoplagas. Nº 51  JUN 2013
Revista Oficial ANECPLA: Infoplagas. Nº 51 JUN 2013
 
Blogger tercer
Blogger tercerBlogger tercer
Blogger tercer
 
Eurosega Sevilla abogados de empresas
Eurosega Sevilla abogados de empresasEurosega Sevilla abogados de empresas
Eurosega Sevilla abogados de empresas
 
Vendor Landscape: Email Security Gateway
Vendor Landscape: Email Security GatewayVendor Landscape: Email Security Gateway
Vendor Landscape: Email Security Gateway
 
Kumite
KumiteKumite
Kumite
 
Localizarea electronica a publicatiilor in biblioteca
Localizarea electronica a publicatiilor in bibliotecaLocalizarea electronica a publicatiilor in biblioteca
Localizarea electronica a publicatiilor in biblioteca
 
Test y pruebas de caja Negra y caja Blanca
Test y pruebas de caja Negra y caja BlancaTest y pruebas de caja Negra y caja Blanca
Test y pruebas de caja Negra y caja Blanca
 
Japón terremoto 10 mar 2011
Japón terremoto 10 mar 2011Japón terremoto 10 mar 2011
Japón terremoto 10 mar 2011
 
Recursos gesofera minerales y rocas
Recursos gesofera minerales y rocasRecursos gesofera minerales y rocas
Recursos gesofera minerales y rocas
 
Temario ETP
Temario ETPTemario ETP
Temario ETP
 
Functional training idde 4 pilares
Functional training idde 4 pilaresFunctional training idde 4 pilares
Functional training idde 4 pilares
 
Starbucks corporation plan marketing
Starbucks corporation plan marketingStarbucks corporation plan marketing
Starbucks corporation plan marketing
 

Similar to MadridDevops September 2014: "From chef09 to chef11, one approach to devops"

Chef - Administration for programmers
Chef - Administration for programmersChef - Administration for programmers
Chef - Administration for programmers
mrsabo
 
Cooking Perl with Chef: Real World Tutorial with Jitterbug
Cooking Perl with Chef: Real World Tutorial with JitterbugCooking Perl with Chef: Real World Tutorial with Jitterbug
Cooking Perl with Chef: Real World Tutorial with Jitterbug
David Golden
 
Emerging chef patterns and practices
Emerging chef patterns and practicesEmerging chef patterns and practices
Emerging chef patterns and practicesOwain Perry
 
Building a PaaS using Chef
Building a PaaS using ChefBuilding a PaaS using Chef
Building a PaaS using Chef
Shaun Domingo
 
Workshop presentation
Workshop presentationWorkshop presentation
Workshop presentation
Cloud 66
 
Continuous Integration at Mollie
Continuous Integration at MollieContinuous Integration at Mollie
Continuous Integration at Mollie
willemstuursma
 
Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD
Annie Huang
 
CIbox - OpenSource solution for making your #devops better
CIbox - OpenSource solution for making your #devops betterCIbox - OpenSource solution for making your #devops better
CIbox - OpenSource solution for making your #devops better
Andrii Podanenko
 
Efficient development workflows with composer
Efficient development workflows with composerEfficient development workflows with composer
Efficient development workflows with composer
nuppla
 
Reproducible development to live applications with Red Hat CDK and Red Hat Op...
Reproducible development to live applications with Red Hat CDK and Red Hat Op...Reproducible development to live applications with Red Hat CDK and Red Hat Op...
Reproducible development to live applications with Red Hat CDK and Red Hat Op...
Lalatendu Mohanty
 
High Productivity Web Development Workflow
High Productivity Web Development WorkflowHigh Productivity Web Development Workflow
High Productivity Web Development Workflow
Vũ Nguyễn
 
High productivity web development workflow - JavaScript Meetup Saigon 2014
High productivity web development workflow - JavaScript Meetup Saigon 2014High productivity web development workflow - JavaScript Meetup Saigon 2014
High productivity web development workflow - JavaScript Meetup Saigon 2014
Oliver N
 
DevOps demystified
DevOps demystifiedDevOps demystified
DevOps demystified
Xebia IT Architects
 
Docker based-Pipelines with Codefresh
Docker based-Pipelines with CodefreshDocker based-Pipelines with Codefresh
Docker based-Pipelines with Codefresh
Codefresh
 
DrupalCon Los Angeles - Continuous Integration Toolbox
DrupalCon Los Angeles - Continuous Integration ToolboxDrupalCon Los Angeles - Continuous Integration Toolbox
DrupalCon Los Angeles - Continuous Integration Toolbox
Andrii Podanenko
 
DevOps Fest 2019. Олег Белецкий. Using Chef to manage hardware-based infrastr...
DevOps Fest 2019. Олег Белецкий. Using Chef to manage hardware-based infrastr...DevOps Fest 2019. Олег Белецкий. Using Chef to manage hardware-based infrastr...
DevOps Fest 2019. Олег Белецкий. Using Chef to manage hardware-based infrastr...
DevOps_Fest
 
Hands-on Lab: Red Hat Container Development & OpenShift
Hands-on Lab: Red Hat Container Development & OpenShiftHands-on Lab: Red Hat Container Development & OpenShift
Hands-on Lab: Red Hat Container Development & OpenShift
Amazon Web Services
 
Chef tooling and TDD
Chef tooling and  TDDChef tooling and  TDD
Chef tooling and TDD
Sai Kothapalle
 
Kubernetes and CoreOS @ Athens Docker meetup
Kubernetes and CoreOS @ Athens Docker meetupKubernetes and CoreOS @ Athens Docker meetup
Kubernetes and CoreOS @ Athens Docker meetup
Mist.io
 
Efficient development workflows with composer
Efficient development workflows with composerEfficient development workflows with composer
Efficient development workflows with composer
nuppla
 

Similar to MadridDevops September 2014: "From chef09 to chef11, one approach to devops" (20)

Chef - Administration for programmers
Chef - Administration for programmersChef - Administration for programmers
Chef - Administration for programmers
 
Cooking Perl with Chef: Real World Tutorial with Jitterbug
Cooking Perl with Chef: Real World Tutorial with JitterbugCooking Perl with Chef: Real World Tutorial with Jitterbug
Cooking Perl with Chef: Real World Tutorial with Jitterbug
 
Emerging chef patterns and practices
Emerging chef patterns and practicesEmerging chef patterns and practices
Emerging chef patterns and practices
 
Building a PaaS using Chef
Building a PaaS using ChefBuilding a PaaS using Chef
Building a PaaS using Chef
 
Workshop presentation
Workshop presentationWorkshop presentation
Workshop presentation
 
Continuous Integration at Mollie
Continuous Integration at MollieContinuous Integration at Mollie
Continuous Integration at Mollie
 
Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD
 
CIbox - OpenSource solution for making your #devops better
CIbox - OpenSource solution for making your #devops betterCIbox - OpenSource solution for making your #devops better
CIbox - OpenSource solution for making your #devops better
 
Efficient development workflows with composer
Efficient development workflows with composerEfficient development workflows with composer
Efficient development workflows with composer
 
Reproducible development to live applications with Red Hat CDK and Red Hat Op...
Reproducible development to live applications with Red Hat CDK and Red Hat Op...Reproducible development to live applications with Red Hat CDK and Red Hat Op...
Reproducible development to live applications with Red Hat CDK and Red Hat Op...
 
High Productivity Web Development Workflow
High Productivity Web Development WorkflowHigh Productivity Web Development Workflow
High Productivity Web Development Workflow
 
High productivity web development workflow - JavaScript Meetup Saigon 2014
High productivity web development workflow - JavaScript Meetup Saigon 2014High productivity web development workflow - JavaScript Meetup Saigon 2014
High productivity web development workflow - JavaScript Meetup Saigon 2014
 
DevOps demystified
DevOps demystifiedDevOps demystified
DevOps demystified
 
Docker based-Pipelines with Codefresh
Docker based-Pipelines with CodefreshDocker based-Pipelines with Codefresh
Docker based-Pipelines with Codefresh
 
DrupalCon Los Angeles - Continuous Integration Toolbox
DrupalCon Los Angeles - Continuous Integration ToolboxDrupalCon Los Angeles - Continuous Integration Toolbox
DrupalCon Los Angeles - Continuous Integration Toolbox
 
DevOps Fest 2019. Олег Белецкий. Using Chef to manage hardware-based infrastr...
DevOps Fest 2019. Олег Белецкий. Using Chef to manage hardware-based infrastr...DevOps Fest 2019. Олег Белецкий. Using Chef to manage hardware-based infrastr...
DevOps Fest 2019. Олег Белецкий. Using Chef to manage hardware-based infrastr...
 
Hands-on Lab: Red Hat Container Development & OpenShift
Hands-on Lab: Red Hat Container Development & OpenShiftHands-on Lab: Red Hat Container Development & OpenShift
Hands-on Lab: Red Hat Container Development & OpenShift
 
Chef tooling and TDD
Chef tooling and  TDDChef tooling and  TDD
Chef tooling and TDD
 
Kubernetes and CoreOS @ Athens Docker meetup
Kubernetes and CoreOS @ Athens Docker meetupKubernetes and CoreOS @ Athens Docker meetup
Kubernetes and CoreOS @ Athens Docker meetup
 
Efficient development workflows with composer
Efficient development workflows with composerEfficient development workflows with composer
Efficient development workflows with composer
 

Recently uploaded

FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
Vlad Stirbu
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 

Recently uploaded (20)

FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
 

MadridDevops September 2014: "From chef09 to chef11, one approach to devops"

  • 1. From chef09 to chef11 my approach to a real devops task Antonio Peña @apenav for @MadridDevops September 2014 http://about.me/apenav
  • 3. Motivation ● feedback ● sharing experience ● learning ● talking about devops
  • 4.
  • 5.
  • 7. Three Parts ● Devops ● Chef ● Migration
  • 9. Software is broken or will be
  • 13. So little time, so much to talk about
  • 14. Big Business. DevOps Myths (I)
  • 15. Big Business. DevOps Myths (II)
  • 16. My approach to a configuration management project Antonio Peña @apenav for @MadridDevops September 2014 http://about.me/apenav
  • 17. Best tool to make config mgmt? ● cfengine ● puppet ● chef ● salt ● ansible -- Business decision-making. Make your choice -- Strengths/weakness. Tend to converge.
  • 19.
  • 20.
  • 21. What is Chef? ● a company ○ Opscode Inc. ○ getchef.com ○ @chef ● a product (with paid support) ○ packages, not recommended install from gemfiles ● an open source project ● a community (open source but not only)
  • 22. Beginners, experts and middle class
  • 26. Howto devops in Spain? (I) ● e.g. Demo in a Big Company
  • 27. Howto devops in Spain? (II) ● startup ● why not? ● sandbox
  • 28. Howto devops in Spain? (III) ● consulting
  • 29. Working in a company as a Developer. Daily tasks
  • 30. Initial problem Problem to be solved (in aprox. 2 weeks): 1. install chef-server 11 in a centos6 behind a VPN 2. install 2 web frontends + 2 backends a. (redis s/m + mysql m/s)
  • 31. Real problem 1. refactor/migrate/write from scratch about 20 old-fashioned (2009) but very reliable (daily used, very difficult to extend for an outsider) ubuntu ruby18-webapp-related recipes to newer ones 2. proof of concept to migrate chef09 company’ s repository to anything better
  • 33. Methodology or the like “Big bang” approach, but iterative: ● use chef11 community cookbooks ● almost no direct migration from chef09 ones
  • 34. Criteria to use community cookbooks? https://github.com/opscode-cookbooks/mysql When in doubt use popular opscode community cookbooks. So many content to follow!
  • 37. Let’s cook! 1. Hosting Environment 2. Cookbook Development 3. Monolithic cookbook approach 4. Everything is a cookbook 5. Production Cookbook Deployment 6. Production Cookbook Development 7. Opscode packages 8. Developers’ isolated ruby environment 9. Final Steps 10. Conclusions
  • 39. 1.- Hosting Environment (I) Open Source chef-server in a centos6. Modify and test undocumented chef-server config, with some “little” external problems: - shared server behind a VPN - unavailable ports: reassign 80/443 to 81/8443 - 8000 not opened in firewall (so no reports will be available)
  • 40. Asking for opening ports in firewall http://devopsreactions.tumblr.com/post/41094252078/asking-the-security-team-for-a-firewall-exception
  • 41. 2.- Cookbook Development (I) Opscode free(*) hosting ● Great help because Multiproject! ● http://learn.getchef.com ● Berkshelf helped a lot with dependencies (**) ● Good practices freezing versions (*) not open-source (limited to 10 nodes) (**) not so easy when not opscode server
  • 42. 2.- Cookbook Development (II) Chef-DK: ● ruby binaries in specific /opt folders ● not needed rvm/rbenv/ruby source code/... ● own path & pre-installed useful gems and tools
  • 43. 2.- Cookbook Development (III) ● http://jtimberman.housepub.org/blog/2014/04/30/chefdk-and- ruby/ ● Berkshelf 3.0. ● The Test Kitchen integration testing framework. ● ChefSpec, for unit testing cookbooks. ● Foodcritic, static code analysis on cookbooks. ● All of the Chef tools you're already familiar with: Chef Client, Knife, Ohai and Chef Zero.
  • 44. 2.- Cookbook Development (IV) Better practices? Any? ● No time for tests nor TDD (to learn about) ● Not enough RAM in laptop nor in AWS micro instances for making testing/CI with Vagrant ● Foodcritic and more, but later ● I hope to use them ASAP: just because I like it. The same with Puppet.
  • 45. 2.- Cookbook Development (V) First stages of development ● make risks, quick tests, quickwin, try and try ● think in advance, virtualhosts library ● ugly code you know it will be easy to change ● the community code is better than yours ● extend, not create from the ground ● parametrize cookbooks: redis
  • 46. 3.- Monolithic cookbook approach Thanks a lot to Mathias Lafeldt @mlafeldt “monolithic cookbook” idea, easy to refactor later (see Puppet Module Structure Redux). ● http://mlafeldt.github.io/practicing-ruby-cookbook ● https://github.com/elm-city-craftworks/ practicing-ruby-cookbook
  • 47. 4.- Everything is a cookbook ● https://tomduffield.com/everything-as-a-cookbook- chefconf2014/ ● https://speakerdeck.com/tduffield/everything-as- a-cookbook-1
  • 48. Cool guys don’t look back to explosions?
  • 49. 5.-ProductionCookbookDevelopment ● A new beginning. Almost from scratch. Develop new recipes and cookbooks against a new chef organization in opscode free hosting. ● install, fix, check-apply and repeat in frontend staging instances (Poor’s man plan–do–check–adjust) https://en.wikipedia.org/wiki/PDCA
  • 50. 6.-ProductionCookbookDeployment ● chef site cookbook install “cookbook” (new git branch in ~/chef-repo/cookbook/) ● chef site cookbook install chef-client
  • 51. 7.- Opscode packages (I) ● WARNING: chefdk.rpm installs binaries under /usr/bin and gems in its own gemsdir ● REMOVE any puppet or ruby preexistent package or binary, no interferences please! ● BEWARE: never use binaries without explicit PATH e.g. /opt/chef/bin/chef-client
  • 52. 7.- Opscode packages (II) NO RVM nor system ruby allowed ● chef-server.rpm ● chef.rpm ● chefdk.rpm every opscode rpm package installs one or more ruby binaries in its own path
  • 53. 8.- Developers isolated ruby environment (I) ● Developers need multiple rubies installed (1.9.3 & 2.0.X) ● unprivileged users will install its own gems, without interfering with chef ruby-binaries SOLUTION: compile explicit versions from source code, rewrite PATH in user environment and install “bundler gem” as root.
  • 54. 8.- Developers isolated ruby environment (II) Opscode chef.rpm package provides 2.1 ruby ● install passenger-apache library+binary compiled and installed as a gem under chef. rpm gemlib path (a community recipe is in charge of it) ● compatible to both 2.0.x and 1.9.x user rubies
  • 55. 8.- Developers isolated ruby environment(III) Explicit ruby version (1.9.3 or 2.0.X) in appropriate virtualhost apache files (from templates) NOTE: Foodcritic tool helped a lot when looking for errors (e.g. specially with chef templates)
  • 56. 9. Final Steps (I) After just 2 weeks, it almost worked ok. Traditional approach to development: logrotate and monit forked recipes with “999” suffix added to “semver” in metadata.rb ● not perfect ● Explicit installation of dependencies when in Opensource Opscode server
  • 57. 9. Final Steps (II) Pareto principle! 80/20 Rule. ● Two more weeks with “fringes” ● create new organization in opscode free account ● chef-solo-search for “local” databags ● BIG CRISIS: no chef-server available -> chef-solo deployment
  • 59. 9. Final Steps (III) Create git repo (first commit in 2 weeks) ● install explicit dependencies ● “chef cookbook site install” ● only needed “ancient” (fork and modify) approach in two cookbooks: monit and passenger
  • 60. 9. Final Steps (IV) “In extremis”: Refactor the “monolithic” cookbook Monolithic cookbook refactored as 3 cookbooks Three layers of attribute+template files: ● general cookbook (i.e. language, servers,...) ○ company cookbook (i.e. final customer specific) ■ project cookbook (i.e. virtualhost config)
  • 61. 9. Final Steps (V) ● only two “old fashioned” forked recipes: monit and passenger ● new recipes forces a different way to use databags
  • 62. 10. Conclusions (I) To FIX: ● move logrotate recipes in railssites2 to another new bootstrapping-node-sysadmin cookbook ● not exactly applied but inspired in "everything is a cookbook"
  • 63. 10. Conclusions (II) ● You need to have “Luck” ○ no way to configure staging chef-server (only working through 127.0.0.1 and VPN) ○ no way to configure ubuntu from opscode deb packages ● You need big motivation to success
  • 64. 10. Conclusions (III) To be improved: ● ubuntu/RHEL cookbooks ● tests ● mysql m/s cookbook ● monit recipe ● opensource chef-server hosting
  • 65.
  • 66. THANKS FOR YOUR PATIENCE

Editor's Notes

  1. Sysadmin de Linux de FI.UPM últimamente ayudando a una startup a escalar con AWS hice esto con chef y ahora mismo con puppet (incluso con windows)
  2. mail twitter meetup
  3. Septiembre Hace mucho que no se habla de devops aquí Charla de madrid-devops, sin ruby, sin chef. Experiencia Tal vez un taller muy enfocado a gente que le interese chef y que lleve a discusión de estas cosas y que den feedback de maneras más correctas de haberlo hecho o cómo seguir aprendiendo (me interesa mucho el feedback). Ofrecérosla como charla interna del grupo de admins y me quito "este peso" (transmitir este conocimiento) para liberar un poco la mente y dejar sitio para otras cosas.
  4. Everybody is
  5. “Trolling” inherent to Culture Open mind
  6. En la buena dirección Velocity
  7. Manufacturing efficient POV Business Schools Toyota way Puppet conf Kris Buytaert?
  8. Big Company POV Karen
  9. Cfgmgmt
  10. Describe estado de infraestructuras
  11. Traditional chef bunch of gems
  12. American dream Biz
  13. 1) devops en gran empresa (problemas estructurales, para que triunfe debe tener apoyo de la dirección). Necesita gran conocimiento de la organización y derivaría en proy de consultoría y tal vez integración con ITIL. Jeff Bezos - like
  14. Devops en pyme/Departamento no crítico. Centrada en herramientas. La empresa se reinventa cada día. Cambios frenéticos, tal vez no llegue a consolidarse si los socios no "compran" la idea. Lo importante es salir, no hacerlo bien.
  15. 3) "Consultor" en startup exitosa que empieza a tener problemas de integración de sw, mediana empresa, necesidad puntual. Sería un perfil más senior que, o tiene mucha suerte y capacidad, o ya se ha "equivocado" en otras aventuras y tal vez aplique bien las técnicas....
  16. Vec contcc
  17. Chef Server Internal Services
  18. Why cool guys don’t look back to explosions https://www.youtube.com/watch?v=Sqz5dbs5zmo
  19. Where? https://raw.githubusercontent.com/opscode-cookbooks/chef-client/master/templates/default/redhat/init.d/chef-client.erb Open Source rules!
  20. - no hables por boca de ganso, si no te has enfrentado a un proyecto devops real, no opines sin saber, que a todo se adapta uno - sufrir un poco "mola" - déjate llevar por los gurús, a veces y si tienes suerte, sale bien - necesitas motivación y dormir poco