Lets build an                         OpenStack!                                   Dan Bode                               ...
Connect to our                                 network                         • SSID: puppet_openstack                   ...
Dependencies                         • Ruby (we assume its already installed)                         • VirtualBox        ...
• download requirements:                          • http://10.0.1.2/share/                            • virtual_box/Virtua...
• unpack the modules                         • tar -xzvf puppet-openstack_dev_env.tgzThursday, April 18, 13
• vagrant box add precise64 precise64.boxThursday, April 18, 13
• double check the proxy settings                          • manifests/pre.pp                          • manifests/setup/p...
• vagrant up openstack_controllerThursday, April 18, 13
• vagrant up compute1Thursday, April 18, 13
• vagrant ssh openstack_controller                          • bash /tmp/test_nova.sh                            • source /...
The GoalThursday, April 18, 13
The Goal:             Start with your laptop   Your LaptopThursday, April 18, 13
The Goal:                         Install VBox      Virtual Box                                          Your LaptopThursd...
The Goal:                     Install vagrant        Vagrant                                           Virtual Box        ...
The Goal:     Define/Boot 2 VMs with                               VM1             VM2            Vagrant                  ...
The Goal:    Run Puppet on those VMs          Puppet                               VM1             VM2                    ...
Vagrant (Vagrantfile)                                        VM1             VM2                                           ...
Librarian Puppet (Puppetfile)                                   Puppet                             VM1             VM2     ...
Puppetfile                                     mod puppetlabs/openstack, :git => git://github.com/stackforge/puppet-opensta...
Site Manifests (manifest/site.pp)Thursday, April 18, 13
Specify how nodes map                           to roles                         node /openstack-controller/ {            ...
Hiera (external hierarchical data                                    lookup)                            Common            ...
check out hiera_data/             hiera_data/common.yaml             hiera_data/jenkins.yaml             hiera_data/NODE.y...
The OpenStack ModuleThursday, April 18, 13
Specifies high level roles that are very             opinionated about how to install openstack                            ...
High Level Configuration Interfaces          class { openstack::all:            public_address            =>   $ipaddress_e...
The ‘Core’ ModulesThursday, April 18, 13
• nova                         • swift                         • glance                         • keystone                ...
Helper ModulesThursday, April 18, 13
•   rabbitmq                         •   mysql                         •   memcache                         •   apt       ...
Stackforge                         • modules have been upstreamed to stackforge                         • follow openstack...
Upcoming SlideShare
Loading in...5
×

Openstack havana

1,383

Published on

presentation used at the puppet build an openstack lab

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,383
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
76
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Openstack havana

  1. 1. Lets build an OpenStack! Dan Bode @bodepd ‘doer of things’ at PuppetLabsThursday, April 18, 13
  2. 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. 3. Dependencies • Ruby (we assume its already installed) • VirtualBox • Ubuntu precise base box • Vagrant • Puppet modulesThursday, April 18, 13
  4. 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.dmgThursday, April 18, 13
  5. 5. • unpack the modules • tar -xzvf puppet-openstack_dev_env.tgzThursday, April 18, 13
  6. 6. • vagrant box add precise64 precise64.boxThursday, April 18, 13
  7. 7. • double check the proxy settings • manifests/pre.pp • manifests/setup/precise64.ppThursday, April 18, 13
  8. 8. • vagrant up openstack_controllerThursday, April 18, 13
  9. 9. • vagrant up compute1Thursday, April 18, 13
  10. 10. • vagrant ssh openstack_controller • bash /tmp/test_nova.sh • source /root/openrcThursday, April 18, 13
  11. 11. The GoalThursday, April 18, 13
  12. 12. The Goal: Start with your laptop Your LaptopThursday, April 18, 13
  13. 13. The Goal: Install VBox Virtual Box Your LaptopThursday, April 18, 13
  14. 14. The Goal: Install vagrant Vagrant Virtual Box Your LaptopThursday, April 18, 13
  15. 15. The Goal: Define/Boot 2 VMs with VM1 VM2 Vagrant Vagrant Virtual Box Your LaptopThursday, April 18, 13
  16. 16. The Goal: Run Puppet on those VMs Puppet VM1 VM2 Vagrant Virtual Box Your LaptopThursday, April 18, 13
  17. 17. Vagrant (Vagrantfile) VM1 VM2 Vagrant Virtual Box Your LaptopThursday, April 18, 13
  18. 18. Librarian Puppet (Puppetfile) Puppet VM1 VM2 Vagrant Virtual Box Your LaptopThursday, April 18, 13
  19. 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
  20. 20. Site Manifests (manifest/site.pp)Thursday, April 18, 13
  21. 21. Specify how nodes map to roles node /openstack-controller/ { .... } node /compute/ { ... }Thursday, April 18, 13
  22. 22. Hiera (external hierarchical data lookup) Common Default CI US EU Node Node Node Node Node NodeThursday, April 18, 13
  23. 23. check out hiera_data/ hiera_data/common.yaml hiera_data/jenkins.yaml hiera_data/NODE.yamlThursday, April 18, 13
  24. 24. The OpenStack ModuleThursday, April 18, 13
  25. 25. Specifies high level roles that are very opinionated about how to install openstack openstack::all openstack::controller openstack::compute openstack::keystone openstack::db::mysqlThursday, April 18, 13
  26. 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
  27. 27. The ‘Core’ ModulesThursday, April 18, 13
  28. 28. • nova • swift • glance • keystone • horizon • openstack • cinder • quantum • ceilometerThursday, April 18, 13
  29. 29. Helper ModulesThursday, April 18, 13
  30. 30. • rabbitmq • mysql • memcache • apt • concat • ntp • rsync • stdlib • xinetd • openvswitch • apacheThursday, April 18, 13
  31. 31. Stackforge • modules have been upstreamed to stackforge • follow openstack development processThursday, April 18, 13
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×