austin openstack meetup: chef and openstack
DESCRIPTION
Presentation on the state of Chef support around the OpenStack ecosystem for the Austin OpenStack Meetup February 16, 2012.TRANSCRIPT
Deploying OpenStack with Opscode Chef
Thursday, February 16, 12
Who am I?
• Matt Ray
• Senior Technical Evangelist
• Opscode, Inc.
• Twitter/GitHub/Launchpad/IRC: mattray
Thursday, February 16, 12
Deploying and Managing OpenStack is not simple.
Thursday, February 16, 12
Chef makes it easier.
Thursday, February 16, 12
Infrastructure as Code
Thursday, February 16, 12
Enable the reconstruction of the business from
nothing but a source code repository, an application
data backup, and bare metal resources.
Thursday, February 16, 12
Configuration Management
Thursday, February 16, 12
System Integration
http://www.flickr.com/photos/opalsson/3773629074/
Thursday, February 16, 12
The Chef Community
• Apache License, Version 2.0
• 550+ Individual contributors
• 100+ Corporate contributors
• Dell, Rackspace,VMware, RightScale, Heroku, and many more
• 400+ cookbooks
• http://community.opscode.com
Thursday, February 16, 12
Resourcesopenstack-cookbooks
crowbaropenstack-chef
Thursday, February 16, 12
github.com/mattray/openstack-cookbooks
• Chef repository for deploying OpenStack
• Bexar/Cactus
• source for many other efforts
• Crowbar
• Mercado Libre
• HP
• http://wiki.opscode.com/display/chef/Deploying+OpenStack+with+Chef
• deprecated
Thursday, February 16, 12
Crowbar
• Datacenter installer from Dell
• Extension of the Chef server
• Components are "barclamps"
• Dell released under the Apache 2 license
• Developed by Dell, Rackspace & Opscode
• Active Development & Community
• https://github.com/dellcloudedge/crowbar
Thursday, February 16, 12
github.com/openstack/openstack-chef
• Chef repository for deploying OpenStack
• Diablo
• trunk (Essex)
• source for many other efforts
• TryStack.org
• Smokestack testing
• mattray/openstack-chef
Thursday, February 16, 12
Deploying OpenStack
• Chef ties it all together automatically
• Scaling changes how we deploy
• Configurations will be supported, shared & documented
• Licensing makes it available to everyone
Thursday, February 16, 12
knife openstack
Thursday, February 16, 12
knife openstack
$ knife openstackAvailable openstack subcommands: (for details, knife SUB-COMMAND --help)
** OPENSTACK COMMANDS **knife openstack flavor list (options)knife openstack image list (options)knife openstack server create (options)knife openstack server delete SERVER [SERVER] (options)knife openstack server list (options)
Thursday, February 16, 12
knife.rb
#trystack.orgknife[:openstack_username] = "mattray"knife[:openstack_password] = "password"knife[:openstack_auth_url] = "http://trystack.org:5000/v2.0/tokens"
#demo.rcb.meknife[:openstack_username] = "opscode"knife[:openstack_password] = "password"knife[:openstack_auth_url] = "http://demo.rcb.me:5000/v2.0/tokens"
Thursday, February 16, 12
knife openstack flavor list
$ knife openstack flavor listID Name RAM Disk 1 m1.tiny 512 MB 0 GB 2 m1.small 2048 MB 20 GB 3 m1.medium 4096 MB 40 GB 4 m1.large 8192 MB 80 GB 5 m1.xlarge 16384 MB 160 GB
Thursday, February 16, 12
knife openstack image list
$ knife openstack image listID Name 13 natty-server-cloudimg-amd64 12 natty-server-cloudimg-amd64-kernel 15 oneiric-server-cloudimg-amd64 14 oneiric-server-cloudimg-amd64-kernel
Thursday, February 16, 12
knife openstack server create --node-name ko1 --flavor 1 --image 13 -S trystack
Thursday, February 16, 12
knife openstack
$ knife openstack server listInstance ID Name Public IP Private IP Flavor Image Keypair State 185 ko1 8.21.28.24 8.21.28.24 1 13 trystack active
Thursday, February 16, 12
Thursday, February 16, 12
$ ssh -i ~/.ssh/trystack.pem [email protected] authenticity of host '8.21.28.24 (8.21.28.24)' can't be established.RSA key fingerprint is 0c:d8:3e:34:d1:de:c4:ee:5f:bc:b5:89:11:0d:73:e0.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added '8.21.28.24' (RSA) to the list of known hosts.Welcome to Ubuntu 11.04 (GNU/Linux 2.6.38-13-virtual x86_64)
* Documentation: https://help.ubuntu.com/
System information as of Thu Feb 16 23:43:29 UTC 2012
System load: 0.08 Processes: 63 Usage of /: 40.8% of 1.35GB Users logged in: 0 Memory usage: 6% IP address for eth0: 8.21.28.24 Swap usage: 0%---------------------------------------------------------------------<snip>Get cloud support with Ubuntu Advantage Cloud Guest http://www.ubuntu.com/business/services/cloud
The programs included with the Ubuntu system are free software;the exact distribution terms for each program are described in theindividual files in /usr/share/doc/*/copyright.
Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted byapplicable law.
To run a command as administrator (user "root"), use "sudo <command>".See "man sudo_root" for details.
ubuntu@ko1:~$
Thursday, February 16, 12
$ knife bootstrap 8.21.28.24 -i ~/.ssh/trystack.pem -x ubuntu --sudo -d omnibusBootstrapping Chef on 8.21.28.248.21.28.24 [Thu, 16 Feb 2012 23:51:40 +0000] INFO: *** Chef 0.10.8 ***8.21.28.24 [Thu, 16 Feb 2012 23:51:40 +0000] INFO: Client key /etc/chef/client.pem is not present - registering8.21.28.24 [Thu, 16 Feb 2012 23:51:42 +0000] INFO: Setting the run_list to [] from JSON8.21.28.24 [Thu, 16 Feb 2012 23:51:42 +0000] INFO: Run List is []8.21.28.24 [Thu, 16 Feb 2012 23:51:42 +0000] INFO: Run List expands to []8.21.28.24 [Thu, 16 Feb 2012 23:51:42 +0000] INFO: Starting Chef Run for ko1.novalocal8.21.28.24 [Thu, 16 Feb 2012 23:51:42 +0000] INFO: Running start handlers8.21.28.24 [Thu, 16 Feb 2012 23:51:42 +0000] INFO: Start handlers complete.8.21.28.24 [Thu, 16 Feb 2012 23:51:43 +0000] INFO: Loading cookbooks []8.21.28.24 [Thu, 16 Feb 2012 23:51:43 +0000] WARN: Node ko1.novalocal has an empty run list.8.21.28.24 [Thu, 16 Feb 2012 23:51:44 +0000] INFO: Chef Run complete in 1.414499044 seconds8.21.28.24 [Thu, 16 Feb 2012 23:51:44 +0000] INFO: Running report handlers8.21.28.24 [Thu, 16 Feb 2012 23:51:44 +0000] INFO: Report handlers complete
Thursday, February 16, 12
Yay Bleeding Edge!
$ git clone [email protected]:mattray/fog.git$ cd fog$ gem build fog.gemspec$ gem install fog-1.1.2.gem
$ git clone -b 0.6.0 [email protected]:mattray/knife-openstack.git$ cd knife-openstack$ gem build knife-openstack.gemspec$ gem install knife-openstack-0.6.0.gem
Thursday, February 16, 12
What's Next?
http://www.flickr.com/photos/felixmorgner/4347750467/
Thursday, February 16, 12
knife-openstack roadmap
• Patches will be merged upstream
• http://wiki.opscode.com/display/chef/OpenStack+Bootstrap+Fast+Start+Guide
• bootstrap will be fixed
• Push to Rubygems.org
• Testing will be done with Crowbar
• Essex/trunk support will be tested
• security groups and floating IPs
Thursday, February 16, 12
Chef Roadmap
• Diablo release (RCB patches)
• Essex milestones (RCB patches)
• Multiple Hypervisors
• KVM, Xen, LXC?
• Databases
• PostgreSQL, MySQL
• HA Support
• Red Hat/Illumos?
Thursday, February 16, 12
Questions?
http://www.flickr.com/photos/mrchippy/443960682/
Questions?
Thursday, February 16, 12
Thanks!
http://www.opscode.com
Thursday, February 16, 12