SlideShare a Scribd company logo
Lets build an
                         OpenStack!
                                   Dan Bode
                                   @bodepd
                         ‘doer of things’ at PuppetLabs




Thursday, April 18, 13
Connect to our
                                 network

                         • SSID: puppet_openstack
                         • We’ll bridge you to the outside world from
                           here (please respect our pipes)




Thursday, April 18, 13
Dependencies

                         • Ruby (we assume its already installed)
                         • VirtualBox
                         • Ubuntu precise base box
                         • Vagrant
                         • Puppet modules
Thursday, April 18, 13
• download requirements:
                          • http://10.0.1.2/share/
                            • virtual_box/VirtualBox-.4.2.10.dmg
                            • precise64.box
                            • puppet-openstack_dev_env.tgz
                            • vagrant/Vagrant.dmg

Thursday, April 18, 13
• unpack the modules
                         • tar -xzvf puppet-openstack_dev_env.tgz



Thursday, April 18, 13
• vagrant box add precise64 precise64.box




Thursday, April 18, 13
• double check the proxy settings
                          • manifests/pre.pp
                          • manifests/setup/precise64.pp



Thursday, April 18, 13
• vagrant up openstack_controller




Thursday, April 18, 13
• vagrant up compute1




Thursday, April 18, 13
• vagrant ssh openstack_controller
                          • bash /tmp/test_nova.sh
                            • source /root/openrc



Thursday, April 18, 13
The Goal



Thursday, April 18, 13
The Goal:




             Start with your laptop   Your Laptop

Thursday, April 18, 13
The Goal:




                         Install VBox      Virtual Box
                                          Your Laptop

Thursday, April 18, 13
The Goal:



                     Install vagrant        Vagrant
                                           Virtual Box
                                          Your Laptop

Thursday, April 18, 13
The Goal:


     Define/Boot 2 VMs with
                               VM1             VM2
            Vagrant
                                     Vagrant
                                 Virtual Box
                                 Your Laptop

Thursday, April 18, 13
The Goal:

    Run Puppet on those VMs          Puppet
                               VM1             VM2
                                     Vagrant
                                 Virtual Box
                                 Your Laptop

Thursday, April 18, 13
Vagrant (Vagrantfile)

                                        VM1             VM2
                                              Vagrant
                                          Virtual Box
                                          Your Laptop

Thursday, April 18, 13
Librarian Puppet (Puppetfile)
                                   Puppet
                             VM1             VM2
                                   Vagrant
                               Virtual Box
                               Your Laptop

Thursday, April 18, 13
Puppetfile
                                     mod 'puppetlabs/openstack', :git => 'git://github.com/stackforge/puppet-openstack'
                                     mod 'puppetlabs/nova', :git => 'git://github.com/stackforge/puppet-nova'
                                     mod 'puppetlabs/glance', :git => 'git://github.com/stackforge/puppet-glance'
                                     mod 'puppetlabs/keystone', :git => 'git://github.com/stackforge/puppet-keystone'
                                     mod 'puppetlabs/horizon', :git => 'git://github.com/stackforge/puppet-horizon'
                                     mod 'puppetlabs/swift', :git => 'git://github.com/stackforge/puppet-swift'
                                     mod 'puppetlabs/cinder', :git => 'git://github.com/stackforge/puppet-cinder'
                                     mod 'puppetlabs/tempest', :git => 'git://github.com/puppetlabs/puppetlabs-tempest'
                                     mod 'puppet/quantum', :git => 'git://github.com/bodepd/puppet-quantum/'
                                     # openstack middleware
                                     mod 'puppet/vswitch', :git => 'git://github.com/ekarlso/puppet-vswitch'
                                     mod 'puppetlabs/rabbitmq', :git => 'git://github.com/puppetlabs/puppetlabs-rabbitmq'
                                     mod 'puppetlabs/mysql', :git => 'git://github.com/puppetlabs/puppetlabs-mysql'
                                     mod 'puppetlabs/git', :git => 'git://github.com/puppetlabs/puppetlabs-git'
                                     mod 'puppetlabs/vcsrepo', :git => 'git://github.com/puppetlabs/puppetlabs-vcsrepo'
                                     mod 'saz/memcached', :git => 'git://github.com/saz/puppet-memcached'
                                     mod 'puppetlabs/rsync', :git => 'git://github.com/puppetlabs/puppetlabs-rsync'
                                     .......




Thursday, April 18, 13
Site Manifests (manifest/site.pp)




Thursday, April 18, 13
Specify how nodes map
                           to roles
                         node /openstack-controller/ {
                         ....
                         }

                         node /compute/ {
                         ...
                         }



Thursday, April 18, 13
Hiera (external hierarchical data
                                    lookup)
                            Common                Default


                               CI               US      EU

                         Node Node Node       Node Node Node


Thursday, April 18, 13
check out hiera_data/

             hiera_data/common.yaml
             hiera_data/jenkins.yaml
             hiera_data/NODE.yaml




Thursday, April 18, 13
The OpenStack Module




Thursday, April 18, 13
Specifies high level roles that are very
             opinionated about how to install openstack


                            openstack::all
                         openstack::controller
                         openstack::compute
                         openstack::keystone
                         openstack::db::mysql




Thursday, April 18, 13
High Level Configuration Interfaces
          class { 'openstack::all':
            public_address            =>   $ipaddress_eth0,
            public_interface          =>   $public_interface,
            private_interface         =>   $private_interface,
            admin_email               =>   $admin_email,
            admin_password            =>   $admin_password,
            keystone_db_password      =>   $keystone_db_password,
            keystone_admin_token      =>   $keystone_admin_token,
            nova_db_password          =>   $nova_db_password,
            nova_user_password        =>   $nova_user_password,
            glance_db_password        =>   $glance_db_password,
            glance_user_password      =>   $glance_user_password,
            rabbit_password           =>   $rabbit_password,
            rabbit_user               =>   $rabbit_user,
            libvirt_type              =>   'kvm',
            floating_range            =>   $floating_network_range,
            fixed_range               =>   $fixed_network_range,
            verbose                   =>   $verbose,
            auto_assign_floating_ip   =>   $auto_assign_floating_ip,
          }




Thursday, April 18, 13
The ‘Core’ Modules



Thursday, April 18, 13
• nova
                         • swift
                         • glance
                         • keystone
                         • horizon
                         • openstack
                         • cinder
                         • quantum
                         • ceilometer


Thursday, April 18, 13
Helper Modules



Thursday, April 18, 13
•   rabbitmq

                         •   mysql

                         •   memcache

                         •   apt

                         •   concat

                         •   ntp

                         •   rsync

                         •   stdlib

                         •   xinetd

                         •   openvswitch

                         •   apache




Thursday, April 18, 13
Stackforge


                         • modules have been upstreamed to stackforge
                         • follow openstack development process


Thursday, April 18, 13

More Related Content

Similar to Openstack havana

Using vagrant for developing and testing puppet modules
Using vagrant for developing and testing puppet modulesUsing vagrant for developing and testing puppet modules
Using vagrant for developing and testing puppet modules
Kristian Houlberg Øllegaard
 
Aligning Continuous Integration Deployment: Automated Validation of OpenStack...
Aligning Continuous Integration Deployment: Automated Validation of OpenStack...Aligning Continuous Integration Deployment: Automated Validation of OpenStack...
Aligning Continuous Integration Deployment: Automated Validation of OpenStack...
Atlassian
 
Testing Drupal with Ghosts and Gherkin
Testing Drupal  with Ghosts and GherkinTesting Drupal  with Ghosts and Gherkin
Testing Drupal with Ghosts and Gherkin
Phase2
 
Releasing Puppet: Automating Packaging for Many Platforms or 'Make all the th...
Releasing Puppet: Automating Packaging for Many Platforms or 'Make all the th...Releasing Puppet: Automating Packaging for Many Platforms or 'Make all the th...
Releasing Puppet: Automating Packaging for Many Platforms or 'Make all the th...
Puppet
 
Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...NETWAYS
 
Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...
Puppet
 
Puppet Camp Berlin 2015: Felix Frank | Rapid Testing Setups for Puppet
Puppet Camp Berlin 2015: Felix Frank | Rapid Testing Setups for PuppetPuppet Camp Berlin 2015: Felix Frank | Rapid Testing Setups for Puppet
Puppet Camp Berlin 2015: Felix Frank | Rapid Testing Setups for Puppet
NETWAYS
 
Puppet Camp Berlin 2015: Rapid testing Setups for Puppet
Puppet Camp Berlin 2015: Rapid testing Setups for PuppetPuppet Camp Berlin 2015: Rapid testing Setups for Puppet
Puppet Camp Berlin 2015: Rapid testing Setups for Puppet
Puppet
 
OE Hands-On
OE Hands-OnOE Hands-On
OE Hands-On
Trevor Woerner
 
CloudInit Introduction
CloudInit IntroductionCloudInit Introduction
CloudInit Introduction
Publicis Sapient Engineering
 
How much for an openstack cloud please?
How much for an openstack cloud please?How much for an openstack cloud please?
How much for an openstack cloud please?
eNovance
 
Lessons I Learned While Scaling to 5000 Puppet Agents
Lessons I Learned While Scaling to 5000 Puppet AgentsLessons I Learned While Scaling to 5000 Puppet Agents
Lessons I Learned While Scaling to 5000 Puppet Agents
Puppet
 
Introduction to ansible
Introduction to ansibleIntroduction to ansible
Introduction to ansible
Javier Arturo Rodríguez
 
Heroku & Sinatra
Heroku & SinatraHeroku & Sinatra
Heroku & Sinatra
myles_byrne
 
Automated reproducible images on openstack using vagrant and packer
Automated reproducible images on openstack using vagrant and packerAutomated reproducible images on openstack using vagrant and packer
Automated reproducible images on openstack using vagrant and packer
Jan Collijs
 
Getting Started With Puppet - Chad Metcalf
Getting Started With Puppet - Chad MetcalfGetting Started With Puppet - Chad Metcalf
Getting Started With Puppet - Chad Metcalf
Puppet
 
DSL Quest: A WAT Safari - PuppetConf 2013
DSL Quest: A WAT Safari - PuppetConf 2013DSL Quest: A WAT Safari - PuppetConf 2013
DSL Quest: A WAT Safari - PuppetConf 2013
Puppet
 
Building Reusable Puppet Modules
Building Reusable Puppet ModulesBuilding Reusable Puppet Modules
Building Reusable Puppet Modules
Puppet
 
How I hack on puppet modules
How I hack on puppet modulesHow I hack on puppet modules
How I hack on puppet modules
Kris Buytaert
 
Pragmatic JavaScript
Pragmatic JavaScriptPragmatic JavaScript
Pragmatic JavaScript
John Hann
 

Similar to Openstack havana (20)

Using vagrant for developing and testing puppet modules
Using vagrant for developing and testing puppet modulesUsing vagrant for developing and testing puppet modules
Using vagrant for developing and testing puppet modules
 
Aligning Continuous Integration Deployment: Automated Validation of OpenStack...
Aligning Continuous Integration Deployment: Automated Validation of OpenStack...Aligning Continuous Integration Deployment: Automated Validation of OpenStack...
Aligning Continuous Integration Deployment: Automated Validation of OpenStack...
 
Testing Drupal with Ghosts and Gherkin
Testing Drupal  with Ghosts and GherkinTesting Drupal  with Ghosts and Gherkin
Testing Drupal with Ghosts and Gherkin
 
Releasing Puppet: Automating Packaging for Many Platforms or 'Make all the th...
Releasing Puppet: Automating Packaging for Many Platforms or 'Make all the th...Releasing Puppet: Automating Packaging for Many Platforms or 'Make all the th...
Releasing Puppet: Automating Packaging for Many Platforms or 'Make all the th...
 
Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...
 
Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...
 
Puppet Camp Berlin 2015: Felix Frank | Rapid Testing Setups for Puppet
Puppet Camp Berlin 2015: Felix Frank | Rapid Testing Setups for PuppetPuppet Camp Berlin 2015: Felix Frank | Rapid Testing Setups for Puppet
Puppet Camp Berlin 2015: Felix Frank | Rapid Testing Setups for Puppet
 
Puppet Camp Berlin 2015: Rapid testing Setups for Puppet
Puppet Camp Berlin 2015: Rapid testing Setups for PuppetPuppet Camp Berlin 2015: Rapid testing Setups for Puppet
Puppet Camp Berlin 2015: Rapid testing Setups for Puppet
 
OE Hands-On
OE Hands-OnOE Hands-On
OE Hands-On
 
CloudInit Introduction
CloudInit IntroductionCloudInit Introduction
CloudInit Introduction
 
How much for an openstack cloud please?
How much for an openstack cloud please?How much for an openstack cloud please?
How much for an openstack cloud please?
 
Lessons I Learned While Scaling to 5000 Puppet Agents
Lessons I Learned While Scaling to 5000 Puppet AgentsLessons I Learned While Scaling to 5000 Puppet Agents
Lessons I Learned While Scaling to 5000 Puppet Agents
 
Introduction to ansible
Introduction to ansibleIntroduction to ansible
Introduction to ansible
 
Heroku & Sinatra
Heroku & SinatraHeroku & Sinatra
Heroku & Sinatra
 
Automated reproducible images on openstack using vagrant and packer
Automated reproducible images on openstack using vagrant and packerAutomated reproducible images on openstack using vagrant and packer
Automated reproducible images on openstack using vagrant and packer
 
Getting Started With Puppet - Chad Metcalf
Getting Started With Puppet - Chad MetcalfGetting Started With Puppet - Chad Metcalf
Getting Started With Puppet - Chad Metcalf
 
DSL Quest: A WAT Safari - PuppetConf 2013
DSL Quest: A WAT Safari - PuppetConf 2013DSL Quest: A WAT Safari - PuppetConf 2013
DSL Quest: A WAT Safari - PuppetConf 2013
 
Building Reusable Puppet Modules
Building Reusable Puppet ModulesBuilding Reusable Puppet Modules
Building Reusable Puppet Modules
 
How I hack on puppet modules
How I hack on puppet modulesHow I hack on puppet modules
How I hack on puppet modules
 
Pragmatic JavaScript
Pragmatic JavaScriptPragmatic JavaScript
Pragmatic JavaScript
 

More from bodepd

Puppet as data_chicago
Puppet as data_chicagoPuppet as data_chicago
Puppet as data_chicagobodepd
 
Puppet: Orchestration framework?
Puppet: Orchestration framework?Puppet: Orchestration framework?
Puppet: Orchestration framework?
bodepd
 
Cloud building talk
Cloud building talkCloud building talk
Cloud building talkbodepd
 
Cloudstack talk
Cloudstack talkCloudstack talk
Cloudstack talkbodepd
 
Openstack grizzley puppet_talk
Openstack grizzley puppet_talkOpenstack grizzley puppet_talk
Openstack grizzley puppet_talk
bodepd
 
Hacking puppet
Hacking puppetHacking puppet
Hacking puppet
bodepd
 
Google compute presentation puppet conf
Google compute presentation puppet confGoogle compute presentation puppet conf
Google compute presentation puppet conf
bodepd
 
Openstack presentation
Openstack presentationOpenstack presentation
Openstack presentation
bodepd
 

More from bodepd (8)

Puppet as data_chicago
Puppet as data_chicagoPuppet as data_chicago
Puppet as data_chicago
 
Puppet: Orchestration framework?
Puppet: Orchestration framework?Puppet: Orchestration framework?
Puppet: Orchestration framework?
 
Cloud building talk
Cloud building talkCloud building talk
Cloud building talk
 
Cloudstack talk
Cloudstack talkCloudstack talk
Cloudstack talk
 
Openstack grizzley puppet_talk
Openstack grizzley puppet_talkOpenstack grizzley puppet_talk
Openstack grizzley puppet_talk
 
Hacking puppet
Hacking puppetHacking puppet
Hacking puppet
 
Google compute presentation puppet conf
Google compute presentation puppet confGoogle compute presentation puppet conf
Google compute presentation puppet conf
 
Openstack presentation
Openstack presentationOpenstack presentation
Openstack presentation
 

Recently uploaded

Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
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
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
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
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
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
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
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
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
Pixlogix Infotech
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
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
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
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
 

Recently uploaded (20)

Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
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
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
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
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
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 -...
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
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
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
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...
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
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
 

Openstack havana

  • 1. Lets build an OpenStack! Dan Bode @bodepd ‘doer of things’ at PuppetLabs Thursday, April 18, 13
  • 2. Connect to our network • SSID: puppet_openstack • We’ll bridge you to the outside world from here (please respect our pipes) Thursday, April 18, 13
  • 3. Dependencies • Ruby (we assume its already installed) • VirtualBox • Ubuntu precise base box • Vagrant • Puppet modules Thursday, April 18, 13
  • 4. • download requirements: • http://10.0.1.2/share/ • virtual_box/VirtualBox-.4.2.10.dmg • precise64.box • puppet-openstack_dev_env.tgz • vagrant/Vagrant.dmg Thursday, April 18, 13
  • 5. • unpack the modules • tar -xzvf puppet-openstack_dev_env.tgz Thursday, April 18, 13
  • 6. • vagrant box add precise64 precise64.box Thursday, April 18, 13
  • 7. • double check the proxy settings • manifests/pre.pp • manifests/setup/precise64.pp Thursday, April 18, 13
  • 8. • vagrant up openstack_controller Thursday, April 18, 13
  • 9. • vagrant up compute1 Thursday, April 18, 13
  • 10. • vagrant ssh openstack_controller • bash /tmp/test_nova.sh • source /root/openrc Thursday, April 18, 13
  • 12. The Goal: Start with your laptop Your Laptop Thursday, April 18, 13
  • 13. The Goal: Install VBox Virtual Box Your Laptop Thursday, April 18, 13
  • 14. The Goal: Install vagrant Vagrant Virtual Box Your Laptop Thursday, April 18, 13
  • 15. The Goal: Define/Boot 2 VMs with VM1 VM2 Vagrant Vagrant Virtual Box Your Laptop Thursday, April 18, 13
  • 16. The Goal: Run Puppet on those VMs Puppet VM1 VM2 Vagrant Virtual Box Your Laptop Thursday, April 18, 13
  • 17. Vagrant (Vagrantfile) VM1 VM2 Vagrant Virtual Box Your Laptop Thursday, April 18, 13
  • 18. Librarian Puppet (Puppetfile) Puppet VM1 VM2 Vagrant Virtual Box Your Laptop Thursday, April 18, 13
  • 19. Puppetfile mod 'puppetlabs/openstack', :git => 'git://github.com/stackforge/puppet-openstack' mod 'puppetlabs/nova', :git => 'git://github.com/stackforge/puppet-nova' mod 'puppetlabs/glance', :git => 'git://github.com/stackforge/puppet-glance' mod 'puppetlabs/keystone', :git => 'git://github.com/stackforge/puppet-keystone' mod 'puppetlabs/horizon', :git => 'git://github.com/stackforge/puppet-horizon' mod 'puppetlabs/swift', :git => 'git://github.com/stackforge/puppet-swift' mod 'puppetlabs/cinder', :git => 'git://github.com/stackforge/puppet-cinder' mod 'puppetlabs/tempest', :git => 'git://github.com/puppetlabs/puppetlabs-tempest' mod 'puppet/quantum', :git => 'git://github.com/bodepd/puppet-quantum/' # openstack middleware mod 'puppet/vswitch', :git => 'git://github.com/ekarlso/puppet-vswitch' mod 'puppetlabs/rabbitmq', :git => 'git://github.com/puppetlabs/puppetlabs-rabbitmq' mod 'puppetlabs/mysql', :git => 'git://github.com/puppetlabs/puppetlabs-mysql' mod 'puppetlabs/git', :git => 'git://github.com/puppetlabs/puppetlabs-git' mod 'puppetlabs/vcsrepo', :git => 'git://github.com/puppetlabs/puppetlabs-vcsrepo' mod 'saz/memcached', :git => 'git://github.com/saz/puppet-memcached' mod 'puppetlabs/rsync', :git => 'git://github.com/puppetlabs/puppetlabs-rsync' ....... Thursday, April 18, 13
  • 21. Specify how nodes map to roles node /openstack-controller/ { .... } node /compute/ { ... } Thursday, April 18, 13
  • 22. Hiera (external hierarchical data lookup) Common Default CI US EU Node Node Node Node Node Node Thursday, April 18, 13
  • 23. check out hiera_data/ hiera_data/common.yaml hiera_data/jenkins.yaml hiera_data/NODE.yaml Thursday, April 18, 13
  • 25. Specifies high level roles that are very opinionated about how to install openstack openstack::all openstack::controller openstack::compute openstack::keystone openstack::db::mysql Thursday, April 18, 13
  • 26. High Level Configuration Interfaces   class { 'openstack::all':     public_address => $ipaddress_eth0,     public_interface => $public_interface,     private_interface => $private_interface,     admin_email => $admin_email,     admin_password => $admin_password,     keystone_db_password => $keystone_db_password,     keystone_admin_token => $keystone_admin_token,     nova_db_password => $nova_db_password,     nova_user_password => $nova_user_password,     glance_db_password => $glance_db_password,     glance_user_password => $glance_user_password,     rabbit_password => $rabbit_password,     rabbit_user => $rabbit_user,     libvirt_type => 'kvm',     floating_range => $floating_network_range,     fixed_range => $fixed_network_range,     verbose => $verbose,     auto_assign_floating_ip => $auto_assign_floating_ip,   } Thursday, April 18, 13
  • 28. • nova • swift • glance • keystone • horizon • openstack • cinder • quantum • ceilometer Thursday, April 18, 13
  • 30. rabbitmq • mysql • memcache • apt • concat • ntp • rsync • stdlib • xinetd • openvswitch • apache Thursday, April 18, 13
  • 31. Stackforge • modules have been upstreamed to stackforge • follow openstack development process Thursday, April 18, 13