SlideShare a Scribd company logo
1 of 35
Download to read offline
CODECAMP 2012            @hurrycane
Saturday, March 10, 12
Infrastructure as code
                           Tools for DevOps


                            Bogdan Gâza


CODECAMP 2012                                 @hurrycane
Saturday, March 10, 12
$ whoami


                   Student at Faculty of Computer Science, Iasi, Romania

                           https://github.com/sferik/rails_admin


                                 bogdan.gaza@info.uaic.ro


                                  @hurrycane

CODECAMP 2012                                                              @hurrycane
Saturday, March 10, 12
Agenda

                         DevOps Culture
                         Tools for devops
                         Automated infrastructure
                         Demo

CODECAMP 2012                                       @hurrycane
Saturday, March 10, 12
Devs
                          vs
                         Ops


CODECAMP 2012                   @hurrycane
Saturday, March 10, 12
The team
CODECAMP 2012                       @hurrycane
Saturday, March 10, 12
Dev   Ops   Dev   Ops


                               The team
CODECAMP 2012                                    @hurrycane
Saturday, March 10, 12
Ops
            Ops’ job is to keep the site stable and fast




CODECAMP 2012                                              @hurrycane
Saturday, March 10, 12
Dev
                         Dev’s job is to add new features




CODECAMP 2012                                               @hurrycane
Saturday, March 10, 12
Discourage change to increase stability
                                          VS
                          Allow change as soon as it’s needed.




CODECAMP 2012                                                      @hurrycane
Saturday, March 10, 12
The blame game




CODECAMP 2012                             @hurrycane
Saturday, March 10, 12
Lowering risk of change
                         through tools and culture




CODECAMP 2012                                        @hurrycane
Saturday, March 10, 12
Ops who think like devs
                         Devs who think like ops




CODECAMP 2012                                      @hurrycane
Saturday, March 10, 12
DevOps


CODECAMP 2012                     @hurrycane
Saturday, March 10, 12
Tools for DevOps



CODECAMP 2012                               @hurrycane
Saturday, March 10, 12
Tools for DevOps

                     • Automated infrastructure
                     • Shared version control
                     • One step build / deploy
                     • Always ship trunk
                     • Shared metrics
CODECAMP 2012                                     @hurrycane
Saturday, March 10, 12
Automated infrastructure

                         Reconstructing of the application from
                                source code repository
                                application data backup
                                 bare metal resources.



CODECAMP 2012                                                     @hurrycane
Saturday, March 10, 12
In cloud environments:




                               Role &
                             Configuration
                             Management



                              OS Imaging




CODECAMP 2012                               @hurrycane
Saturday, March 10, 12
Automated infrastructure
CODECAMP 2012                                       @hurrycane
Saturday, March 10, 12
Minions




                         Automated infrastructure
CODECAMP 2012                                       @hurrycane
Saturday, March 10, 12
Automated infrastructure
CODECAMP 2012                                       @hurrycane
Saturday, March 10, 12
Puppet
                         A tour of puppet




CODECAMP 2012                               @hurrycane
Saturday, March 10, 12
Puppet
               Modules           Puppet Master      Configuration




                         Node   Node     Node    Node


CODECAMP 2012                                                 @hurrycane
Saturday, March 10, 12
Puppet
                         node 'codecamp.ro' {
                           package { 'ruby'
                             ensure => 'latest'
                           }
                         }



CODECAMP 2012                                     @hurrycane
Saturday, March 10, 12
Puppet
                         yum install ruby
                         apt-get install ruby
                         ports install ruby
                         rpm -Uvh ruby-1.8.7.i386.rpm
                         up2date ruby
                         fink install ruby

CODECAMP 2012                                           @hurrycane
Saturday, March 10, 12
Chef
                         A tour of chef




CODECAMP 2012                             @hurrycane
Saturday, March 10, 12
Chef
            Coobooks                Chef Server




                         Chef     Chef      Chef     Chef
                         client   client    client   client


CODECAMP 2012                                                 @hurrycane
Saturday, March 10, 12
Chef


                         Each system that has chef-client
                            installed is called a node



CODECAMP 2012                                               @hurrycane
Saturday, March 10, 12
Chef
                         Each node has attributes.
                          {
                              "kernel" : {
                                 "machine" : "x86_64",
                                 "os" : "Darwin",
                                 "release" : "10.7.3"
                              },
                              "ipaddress" : "192.168.0.12",
                              "hostname" : "latte"
                          }


CODECAMP 2012                                                 @hurrycane
Saturday, March 10, 12
Chef
         Each node has a Run list in which each Role is applied
                         {
                             "runlist" : [
                               "role[webserver]",
                               "role[database_master]",
                               "role[development]"
                             ]
                         }


CODECAMP 2012                                              @hurrycane
Saturday, March 10, 12
Chef
         To describe a state of your node you use Resources

                         package "ruby" do
                           version '1.8.7',
                           action 'install'
                         end

CODECAMP 2012                                            @hurrycane
Saturday, March 10, 12
Chef
                                Cookbook directory
                         .
                         !""   metadata.rb
                         !""   recipes
                         #     %"" default.rb
                         %""   templates
                               %"" default
                                   %"" port_ssh.erb


CODECAMP 2012                                         @hurrycane
Saturday, March 10, 12
Demo
                     Setting up a Ruby on Rails stack using Chef and EC2




CODECAMP 2012                                                              @hurrycane
Saturday, March 10, 12
QA

RubyAndRails 2010             @hurrycane
Saturday, March 10, 12
Thanks!
                         And please don’t forget the evaluation form!




RubyAndRails 2010                                                       @hurrycane
Saturday, March 10, 12

More Related Content

Similar to CodeCamp Iasi 10 march 2012 - Infrastructure as code

RubyMotion Inspect Conference - 2013. (Without speaker notes.)
RubyMotion Inspect Conference - 2013. (Without speaker notes.)RubyMotion Inspect Conference - 2013. (Without speaker notes.)
RubyMotion Inspect Conference - 2013. (Without speaker notes.)alloy020
 
Who Pulls the Strings?
Who Pulls the Strings?Who Pulls the Strings?
Who Pulls the Strings?Ronny Trommer
 
Mercurial DVCS
Mercurial DVCSMercurial DVCS
Mercurial DVCSHosam Aly
 
Introducing Immutant
Introducing Immutant Introducing Immutant
Introducing Immutant Jim Crossley
 
Html5 new sword for interactive app
Html5 new sword for interactive appHtml5 new sword for interactive app
Html5 new sword for interactive appYohan Totting
 
OAE Developer Bootcamp
OAE Developer BootcampOAE Developer Bootcamp
OAE Developer BootcampBert Pareyn
 
Ruby CI with Jenkins
Ruby CI with JenkinsRuby CI with Jenkins
Ruby CI with Jenkinscowboyd
 
Symfony2 and MongoDB
Symfony2 and MongoDBSymfony2 and MongoDB
Symfony2 and MongoDBPablo Godel
 
State of the Union by Dan Bode Puppet Labs
State of the Union by Dan Bode Puppet LabsState of the Union by Dan Bode Puppet Labs
State of the Union by Dan Bode Puppet Labsbuildacloud
 
Building businesspost.ie using Node.js
Building businesspost.ie using Node.jsBuilding businesspost.ie using Node.js
Building businesspost.ie using Node.jsRichard Rodger
 
The State of Puppet - Dan Bode
The State of Puppet - Dan BodeThe State of Puppet - Dan Bode
The State of Puppet - Dan BodePuppet
 
Architectural Patterns for the Cloud
Architectural Patterns for the CloudArchitectural Patterns for the Cloud
Architectural Patterns for the CloudMaarten Balliauw
 
Drupal Cloud to the rescue? Servers, Files, CDNs and Fun!
Drupal Cloud to the rescue? Servers, Files, CDNs and Fun!Drupal Cloud to the rescue? Servers, Files, CDNs and Fun!
Drupal Cloud to the rescue? Servers, Files, CDNs and Fun!a_c_m
 
Games for the Masses (QCon London 2012)
Games for the Masses (QCon London 2012)Games for the Masses (QCon London 2012)
Games for the Masses (QCon London 2012)Wooga
 
Building real time apps with node.js, socket.io, knockout.js
Building real time apps with node.js, socket.io, knockout.jsBuilding real time apps with node.js, socket.io, knockout.js
Building real time apps with node.js, socket.io, knockout.jsbetabeers
 
S3 Group: Customized SoC Solutions
S3 Group: Customized SoC Solutions S3 Group: Customized SoC Solutions
S3 Group: Customized SoC Solutions S3 Group
 
Continuous delivery the french way Agile Cambridge 2014
Continuous delivery the french way Agile Cambridge 2014Continuous delivery the french way Agile Cambridge 2014
Continuous delivery the french way Agile Cambridge 2014Dimitri Baeli
 

Similar to CodeCamp Iasi 10 march 2012 - Infrastructure as code (20)

RubyMotion Inspect Conference - 2013. (Without speaker notes.)
RubyMotion Inspect Conference - 2013. (Without speaker notes.)RubyMotion Inspect Conference - 2013. (Without speaker notes.)
RubyMotion Inspect Conference - 2013. (Without speaker notes.)
 
Who Pulls the Strings?
Who Pulls the Strings?Who Pulls the Strings?
Who Pulls the Strings?
 
Mercurial DVCS
Mercurial DVCSMercurial DVCS
Mercurial DVCS
 
Introducing Immutant
Introducing Immutant Introducing Immutant
Introducing Immutant
 
Html5 new sword for interactive app
Html5 new sword for interactive appHtml5 new sword for interactive app
Html5 new sword for interactive app
 
OAE Developer Bootcamp
OAE Developer BootcampOAE Developer Bootcamp
OAE Developer Bootcamp
 
Ruby CI with Jenkins
Ruby CI with JenkinsRuby CI with Jenkins
Ruby CI with Jenkins
 
Symfony2 and MongoDB
Symfony2 and MongoDBSymfony2 and MongoDB
Symfony2 and MongoDB
 
State of the Union by Dan Bode Puppet Labs
State of the Union by Dan Bode Puppet LabsState of the Union by Dan Bode Puppet Labs
State of the Union by Dan Bode Puppet Labs
 
Building businesspost.ie using Node.js
Building businesspost.ie using Node.jsBuilding businesspost.ie using Node.js
Building businesspost.ie using Node.js
 
The State of Puppet - Dan Bode
The State of Puppet - Dan BodeThe State of Puppet - Dan Bode
The State of Puppet - Dan Bode
 
Cdi from monolith to module
Cdi from monolith to moduleCdi from monolith to module
Cdi from monolith to module
 
What's hot Juno?
What's hot Juno?What's hot Juno?
What's hot Juno?
 
Architectural Patterns for the Cloud
Architectural Patterns for the CloudArchitectural Patterns for the Cloud
Architectural Patterns for the Cloud
 
SpecBDD in PHP
SpecBDD in PHPSpecBDD in PHP
SpecBDD in PHP
 
Drupal Cloud to the rescue? Servers, Files, CDNs and Fun!
Drupal Cloud to the rescue? Servers, Files, CDNs and Fun!Drupal Cloud to the rescue? Servers, Files, CDNs and Fun!
Drupal Cloud to the rescue? Servers, Files, CDNs and Fun!
 
Games for the Masses (QCon London 2012)
Games for the Masses (QCon London 2012)Games for the Masses (QCon London 2012)
Games for the Masses (QCon London 2012)
 
Building real time apps with node.js, socket.io, knockout.js
Building real time apps with node.js, socket.io, knockout.jsBuilding real time apps with node.js, socket.io, knockout.js
Building real time apps with node.js, socket.io, knockout.js
 
S3 Group: Customized SoC Solutions
S3 Group: Customized SoC Solutions S3 Group: Customized SoC Solutions
S3 Group: Customized SoC Solutions
 
Continuous delivery the french way Agile Cambridge 2014
Continuous delivery the french way Agile Cambridge 2014Continuous delivery the french way Agile Cambridge 2014
Continuous delivery the french way Agile Cambridge 2014
 

More from Codecamp Romania

Cezar chitac the edge of experience
Cezar chitac   the edge of experienceCezar chitac   the edge of experience
Cezar chitac the edge of experienceCodecamp Romania
 
Business analysis techniques exercise your 6-pack
Business analysis techniques   exercise your 6-packBusiness analysis techniques   exercise your 6-pack
Business analysis techniques exercise your 6-packCodecamp Romania
 
Bpm company code camp - configuration or coding with pega
Bpm company   code camp - configuration or coding with pegaBpm company   code camp - configuration or coding with pega
Bpm company code camp - configuration or coding with pegaCodecamp Romania
 
Andrei prisacaru takingtheunitteststothedatabase
Andrei prisacaru takingtheunitteststothedatabaseAndrei prisacaru takingtheunitteststothedatabase
Andrei prisacaru takingtheunitteststothedatabaseCodecamp Romania
 
2015 dan ardelean develop for windows 10
2015 dan ardelean   develop for windows 10 2015 dan ardelean   develop for windows 10
2015 dan ardelean develop for windows 10 Codecamp Romania
 
The case for continuous delivery
The case for continuous deliveryThe case for continuous delivery
The case for continuous deliveryCodecamp Romania
 
Stefan stolniceanu spritekit, 2 d or not 2d
Stefan stolniceanu   spritekit, 2 d or not 2dStefan stolniceanu   spritekit, 2 d or not 2d
Stefan stolniceanu spritekit, 2 d or not 2dCodecamp Romania
 
Sizing epics tales from an agile kingdom
Sizing epics   tales from an agile kingdomSizing epics   tales from an agile kingdom
Sizing epics tales from an agile kingdomCodecamp Romania
 
Raluca butnaru corina cilibiu the unknown universe of a product and the cer...
Raluca butnaru corina cilibiu   the unknown universe of a product and the cer...Raluca butnaru corina cilibiu   the unknown universe of a product and the cer...
Raluca butnaru corina cilibiu the unknown universe of a product and the cer...Codecamp Romania
 
Parallel & async processing using tpl dataflow
Parallel & async processing using tpl dataflowParallel & async processing using tpl dataflow
Parallel & async processing using tpl dataflowCodecamp Romania
 
Material design screen transitions in android
Material design screen transitions in androidMaterial design screen transitions in android
Material design screen transitions in androidCodecamp Romania
 
Kickstart your own freelancing career
Kickstart your own freelancing careerKickstart your own freelancing career
Kickstart your own freelancing careerCodecamp Romania
 
Ionut grecu the soft stuff is the hard stuff. the agile soft skills toolkit
Ionut grecu   the soft stuff is the hard stuff. the agile soft skills toolkitIonut grecu   the soft stuff is the hard stuff. the agile soft skills toolkit
Ionut grecu the soft stuff is the hard stuff. the agile soft skills toolkitCodecamp Romania
 
Diana antohi me against myself or how to fail and move forward
Diana antohi   me against myself  or how to fail  and move forwardDiana antohi   me against myself  or how to fail  and move forward
Diana antohi me against myself or how to fail and move forwardCodecamp Romania
 

More from Codecamp Romania (20)

Cezar chitac the edge of experience
Cezar chitac   the edge of experienceCezar chitac   the edge of experience
Cezar chitac the edge of experience
 
Cloud powered search
Cloud powered searchCloud powered search
Cloud powered search
 
Ccp
CcpCcp
Ccp
 
Business analysis techniques exercise your 6-pack
Business analysis techniques   exercise your 6-packBusiness analysis techniques   exercise your 6-pack
Business analysis techniques exercise your 6-pack
 
Bpm company code camp - configuration or coding with pega
Bpm company   code camp - configuration or coding with pegaBpm company   code camp - configuration or coding with pega
Bpm company code camp - configuration or coding with pega
 
Andrei prisacaru takingtheunitteststothedatabase
Andrei prisacaru takingtheunitteststothedatabaseAndrei prisacaru takingtheunitteststothedatabase
Andrei prisacaru takingtheunitteststothedatabase
 
Agility and life
Agility and lifeAgility and life
Agility and life
 
2015 dan ardelean develop for windows 10
2015 dan ardelean   develop for windows 10 2015 dan ardelean   develop for windows 10
2015 dan ardelean develop for windows 10
 
The bigrewrite
The bigrewriteThe bigrewrite
The bigrewrite
 
The case for continuous delivery
The case for continuous deliveryThe case for continuous delivery
The case for continuous delivery
 
Stefan stolniceanu spritekit, 2 d or not 2d
Stefan stolniceanu   spritekit, 2 d or not 2dStefan stolniceanu   spritekit, 2 d or not 2d
Stefan stolniceanu spritekit, 2 d or not 2d
 
Sizing epics tales from an agile kingdom
Sizing epics   tales from an agile kingdomSizing epics   tales from an agile kingdom
Sizing epics tales from an agile kingdom
 
Scale net apps in aws
Scale net apps in awsScale net apps in aws
Scale net apps in aws
 
Raluca butnaru corina cilibiu the unknown universe of a product and the cer...
Raluca butnaru corina cilibiu   the unknown universe of a product and the cer...Raluca butnaru corina cilibiu   the unknown universe of a product and the cer...
Raluca butnaru corina cilibiu the unknown universe of a product and the cer...
 
Parallel & async processing using tpl dataflow
Parallel & async processing using tpl dataflowParallel & async processing using tpl dataflow
Parallel & async processing using tpl dataflow
 
Material design screen transitions in android
Material design screen transitions in androidMaterial design screen transitions in android
Material design screen transitions in android
 
Kickstart your own freelancing career
Kickstart your own freelancing careerKickstart your own freelancing career
Kickstart your own freelancing career
 
Ionut grecu the soft stuff is the hard stuff. the agile soft skills toolkit
Ionut grecu   the soft stuff is the hard stuff. the agile soft skills toolkitIonut grecu   the soft stuff is the hard stuff. the agile soft skills toolkit
Ionut grecu the soft stuff is the hard stuff. the agile soft skills toolkit
 
Ecma6 in the wild
Ecma6 in the wildEcma6 in the wild
Ecma6 in the wild
 
Diana antohi me against myself or how to fail and move forward
Diana antohi   me against myself  or how to fail  and move forwardDiana antohi   me against myself  or how to fail  and move forward
Diana antohi me against myself or how to fail and move forward
 

Recently uploaded

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 

Recently uploaded (20)

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 

CodeCamp Iasi 10 march 2012 - Infrastructure as code

  • 1. CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 2. Infrastructure as code Tools for DevOps Bogdan Gâza CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 3. $ whoami Student at Faculty of Computer Science, Iasi, Romania https://github.com/sferik/rails_admin bogdan.gaza@info.uaic.ro @hurrycane CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 4. Agenda DevOps Culture Tools for devops Automated infrastructure Demo CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 5. Devs vs Ops CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 6. The team CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 7. Dev Ops Dev Ops The team CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 8. Ops Ops’ job is to keep the site stable and fast CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 9. Dev Dev’s job is to add new features CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 10. Discourage change to increase stability VS Allow change as soon as it’s needed. CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 11. The blame game CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 12. Lowering risk of change through tools and culture CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 13. Ops who think like devs Devs who think like ops CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 14. DevOps CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 15. Tools for DevOps CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 16. Tools for DevOps • Automated infrastructure • Shared version control • One step build / deploy • Always ship trunk • Shared metrics CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 17. Automated infrastructure Reconstructing of the application from source code repository application data backup bare metal resources. CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 18. In cloud environments: Role & Configuration Management OS Imaging CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 19. Automated infrastructure CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 20. Minions Automated infrastructure CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 21. Automated infrastructure CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 22. Puppet A tour of puppet CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 23. Puppet Modules Puppet Master Configuration Node Node Node Node CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 24. Puppet node 'codecamp.ro' { package { 'ruby' ensure => 'latest' } } CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 25. Puppet yum install ruby apt-get install ruby ports install ruby rpm -Uvh ruby-1.8.7.i386.rpm up2date ruby fink install ruby CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 26. Chef A tour of chef CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 27. Chef Coobooks Chef Server Chef Chef Chef Chef client client client client CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 28. Chef Each system that has chef-client installed is called a node CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 29. Chef Each node has attributes. { "kernel" : { "machine" : "x86_64", "os" : "Darwin", "release" : "10.7.3" }, "ipaddress" : "192.168.0.12", "hostname" : "latte" } CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 30. Chef Each node has a Run list in which each Role is applied { "runlist" : [ "role[webserver]", "role[database_master]", "role[development]" ] } CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 31. Chef To describe a state of your node you use Resources package "ruby" do version '1.8.7', action 'install' end CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 32. Chef Cookbook directory . !"" metadata.rb !"" recipes #   %"" default.rb %"" templates %"" default %"" port_ssh.erb CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 33. Demo Setting up a Ruby on Rails stack using Chef and EC2 CODECAMP 2012 @hurrycane Saturday, March 10, 12
  • 34. QA RubyAndRails 2010 @hurrycane Saturday, March 10, 12
  • 35. Thanks! And please don’t forget the evaluation form! RubyAndRails 2010 @hurrycane Saturday, March 10, 12