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

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
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
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
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
 
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
 
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
 

Recently uploaded (20)

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
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
 
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
 

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