Your SlideShare is downloading. ×
0
Monday, June 18, 12
Puppet & Openstack:              Building and Testing Community Puppet Modules              Teyo Tyree              Co-Fou...
Monday, June 18, 12
Laziness...Impatience...Hubris...                                                     Larry Wall                          ...
Puppet automates                         computers.Monday, June 18, 12
Declarative                      Idempotent                      Model DrivenMonday, June 18, 12
Puppetized infrastucture is awesome. Using                      someone else’s puppetized infrastructure is               ...
Build Reusable InfrastructureMonday, June 18, 12
Monday, June 18, 12
New GoalMonday, June 18, 12
Build reusable models for                       complex applications.Monday, June 18, 12
Model OpenstackMonday, June 18, 12
OpenStack is an                      opensource cloud                      controlling software                      that ...
Monday, June 18, 12
repos:                        repo_paths:                          # openstack git repos                          git://gi...
repos:                        repo_paths:                          # openstack git repos                          git://gi...
class nova(                        $nova_cluster_id=localcluster,                        $sql_connection = false,         ...
We aren’t Openstack experts.                      We need the community.Monday, June 18, 12
Puppetized infrastucture is awesome. Using                      someone else’s Puppetized infrastructure is               ...
EngagementMonday, June 18, 12
Fear the Fork!Monday, June 18, 12
Monday, June 18, 12
300+ merged pull requests!Monday, June 18, 12
class nova(                        $nova_cluster_id=localcluster,                        $sql_connection = false,         ...
class nova::params {                        case $::osfamily {                          RedHat: {                         ...
Whoa, we need tests!Monday, June 18, 12
Data                                  Puppet           Rspec-Puppet   Facts            ModelMonday, June 18, 12
let :facts do                                                     Data            {:operatingsystem => ‘RedHat’}          ...
Data       let :params do         {:rabbit_host => ‘10.0.0.42’}       end                                            Puppe...
it do                                                      Data        should contain_file (‘/etc/nova.conf’).           w...
Openstack DevopsMonday, June 18, 12
Openstack is not static!Monday, June 18, 12
TempestMonday, June 18, 12
Puppet               defines             deploymentsMonday, June 18, 12
Testing Openstack?Monday, June 18, 12
Git                                     Tempest                            PuppetMonday, June 18, 12
https://github.com/puppetlabs/puppetlabs-openstack                      http://rspec-puppet.com/                      http...
Questions?Monday, June 18, 12
Upcoming SlideShare
Loading in...5
×

Aligning Continuous Integration Deployment: Automated Validation of OpenStack Deployments

4,158

Published on

Ever think to yourself...how can my team automate the processes for my complex system? How does Continuous integration and Continuous Deployment fit in? In this talk by Teyo and Dan you will dive into world of automation using Puppet and OpenStack. Start off with brief overview of Puppet and OpenStack, then dive into examples of how you model complex deployments of OpenStack using Puppet.

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

  • Be the first to like this

No Downloads
Views
Total Views
4,158
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
29
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Aligning Continuous Integration Deployment: Automated Validation of OpenStack Deployments"

  1. 1. Monday, June 18, 12
  2. 2. Puppet & Openstack: Building and Testing Community Puppet Modules Teyo Tyree Co-Founder Dan Bode Integration SpecialistMonday, June 18, 12
  3. 3. Monday, June 18, 12
  4. 4. Laziness...Impatience...Hubris... Larry Wall The InternetMonday, June 18, 12
  5. 5. Puppet automates computers.Monday, June 18, 12
  6. 6. Declarative Idempotent Model DrivenMonday, June 18, 12
  7. 7. Puppetized infrastucture is awesome. Using someone else’s puppetized infrastructure is even more awesome. Teyo Tyree Atlassian Conf 2012Monday, June 18, 12
  8. 8. Build Reusable InfrastructureMonday, June 18, 12
  9. 9. Monday, June 18, 12
  10. 10. New GoalMonday, June 18, 12
  11. 11. Build reusable models for complex applications.Monday, June 18, 12
  12. 12. Model OpenstackMonday, June 18, 12
  13. 13. OpenStack is an opensource cloud controlling software that is comprised of three components called Compute, Object Storage, and Image Service.Monday, June 18, 12
  14. 14. Monday, June 18, 12
  15. 15. repos:   repo_paths:     # openstack git repos     git://github.com/puppetlabs/puppetlabs-nova: nova     git://github.com/puppetlabs/puppetlabs-glance: glance     git://github.com/puppetlabs/puppetlabs-swift: swift     git://github.com/puppetlabs/puppetlabs-keystone: keystone     git://github.com/puppetlabs/puppetlabs-horizon: horizon     # openstack middleware     git://github.com/puppetlabs/puppetlabs-rabbitmq: rabbitmqNerd Sniped     git://github.com/puppetlabs/puppetlabs-mysql:     git://github.com/puppetlabs/puppetlabs-git:     git://github.com/puppetlabs/puppetlabs-vcsrepo:     git://github.com/saz/puppet-memcached:     git://github.com/puppetlabs/puppetlabs-rsync: mysql git vcsrepo memcached rsync     # other deps     git://github.com/ghoneycutt/puppet-xinetd: xinetd     git://github.com/saz/puppet-ssh: ssh     git://github.com/puppetlabs/puppetlabs-stdlib: stdlib     git://github.com/puppetlabs/puppetlabs-apt: apt     git://github.com/ripienaar/puppet-concat: concat     git://github.com/duritong/puppet-sysctl.git: sysctlMonday, June 18, 12
  16. 16. repos:   repo_paths:     # openstack git repos     git://github.com/puppetlabs/puppetlabs-nova: nova     git://github.com/puppetlabs/puppetlabs-glance: glance     git://github.com/puppetlabs/puppetlabs-swift: swift     git://github.com/puppetlabs/puppetlabs-keystone: keystone     git://github.com/puppetlabs/puppetlabs-horizon: horizon     # openstack middleware     git://github.com/puppetlabs/puppetlabs-rabbitmq: rabbitmqLego Blocks     git://github.com/puppetlabs/puppetlabs-mysql:     git://github.com/puppetlabs/puppetlabs-git:     git://github.com/puppetlabs/puppetlabs-vcsrepo:     git://github.com/saz/puppet-memcached:     git://github.com/puppetlabs/puppetlabs-rsync: mysql git vcsrepo memcached rsync     # other deps     git://github.com/ghoneycutt/puppet-xinetd: xinetd     git://github.com/saz/puppet-ssh: ssh     git://github.com/puppetlabs/puppetlabs-stdlib: stdlib     git://github.com/puppetlabs/puppetlabs-apt: apt     git://github.com/ripienaar/puppet-concat: concat     git://github.com/duritong/puppet-sysctl.git: sysctlMonday, June 18, 12
  17. 17. class nova(   $nova_cluster_id=localcluster,   $sql_connection = false,   $image_service = nova.image.glance.GlanceImageService,   $glance_api_servers = localhost:9292,   $rabbit_host = localhost,   $rabbit_password=guest,   $rabbit_port=5672,   $rabbit_userid=guest, Flexible   $rabbit_virtual_host=/,   $auth_strategy = keystone,   $service_down_time = 60,   $logdir = /var/log/nova,   $state_path = /var/lib/nova,   $lock_path = $::nova::params::lock_path,   $verbose = false,   $periodic_interval = 60,   $report_interval = 10,   $root_helper = $::nova::params::root_helper ) {...}Monday, June 18, 12
  18. 18. We aren’t Openstack experts. We need the community.Monday, June 18, 12
  19. 19. Puppetized infrastucture is awesome. Using someone else’s Puppetized infrastructure is even more awesome! Teyo Tyree Atlassian Conf 2012Monday, June 18, 12
  20. 20. EngagementMonday, June 18, 12
  21. 21. Fear the Fork!Monday, June 18, 12
  22. 22. Monday, June 18, 12
  23. 23. 300+ merged pull requests!Monday, June 18, 12
  24. 24. class nova(   $nova_cluster_id=localcluster,   $sql_connection = false,   $image_service = nova.image.glance.GlanceImageService,   $glance_api_servers = localhost:9292,   $rabbit_host = localhost,   $rabbit_password=guest,   $rabbit_port=5672,   $rabbit_userid=guest, Flexible   $rabbit_virtual_host=/,   $auth_strategy = keystone,   $service_down_time = 60,   $logdir = /var/log/nova,   $state_path = /var/lib/nova,   $lock_path = $::nova::params::lock_path,   $verbose = false,   $periodic_interval = 60,   $report_interval = 10,   $root_helper = $::nova::params::root_helper ) {...}Monday, June 18, 12
  25. 25. class nova::params {   case $::osfamily {     RedHat: { # package names       $api_package_name = false       $cert_package_name = false       $common_package_name = openstack-nova Multi-platform       $compute_package_name = false       ...          }     Debian: { # package names       $api_package_name = nova-api       $cert_package_name = nova-cert       $common_package_name = nova-common       $compute_package_name = nova-compute       ... }Monday, June 18, 12
  26. 26. Whoa, we need tests!Monday, June 18, 12
  27. 27. Data Puppet Rspec-Puppet Facts ModelMonday, June 18, 12
  28. 28. let :facts do Data {:operatingsystem => ‘RedHat’} end Puppet Facts ModelMonday, June 18, 12
  29. 29. Data let :params do {:rabbit_host => ‘10.0.0.42’} end Puppet Facts ModelMonday, June 18, 12
  30. 30. it do Data should contain_file (‘/etc/nova.conf’). with_content (‘rabbit_host = 10.0.0.42’) end Puppet Facts ModelMonday, June 18, 12
  31. 31. Openstack DevopsMonday, June 18, 12
  32. 32. Openstack is not static!Monday, June 18, 12
  33. 33. TempestMonday, June 18, 12
  34. 34. Puppet defines deploymentsMonday, June 18, 12
  35. 35. Testing Openstack?Monday, June 18, 12
  36. 36. Git Tempest PuppetMonday, June 18, 12
  37. 37. https://github.com/puppetlabs/puppetlabs-openstack http://rspec-puppet.com/ https://github.com/openstack/tempestMonday, June 18, 12
  38. 38. Questions?Monday, June 18, 12
  1. A particular slide catching your eye?

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

×