Openstack - chef-boneyard/chef-summit-2014 GitHub Wiki
Openstack
Wednesday, Strategy, 10:30
- Convener - Adam S
- Scribe - Aaron Kalin (@martinisoft)
Participants
- Steve D
- Steve
- Martin
- Andrew M
- Bart
- David
- Few more...
Summary of Discussions
Using the community cookbooks for setup over setting it up yourself
- Scaling Openstack up and down might be tricky with Chef
Getting started quickly
- There are OpenStack instant environments out there (Pack Stack, Dev Stack, Suse Cloud)
Existing OpenStack Setups with Chef
Getting Chef Client on the VM
- Bootstrap a VM via knife
- Make an image that has Chef already (Can be a problem when new versions of Chef drop, but omnibus cookbook can help with changing versions)
- Cloud Init
Building images with Chef
- Packer
- Cloud Init
Knife Openstack
- Supports booting up a node with specific networking, flavor (memory, CPU, etc), image
- Doesn't support all the options (yet)
- Provision and bootstraps via the knife plugin (Also sets node name and Ohai hints)
- Ohai hints help with detecting cloud providers such as OpenStack
Using knife or scripting around it to build clusters
- Should I be mixing Vagrant and Knife to replicate a Production OpenStack locally
- Maybe Chef Metal, but it's still new so things may break
- OpenStack Heat for orchestration?
OpenStack Heat
- Lets you template clusters for OpenStack
- Could be used to setup Chef infrastructure to support OpenStack
- Can specify dependencies at the VM level (database nodes, web, etc that depend on each other to exist)
- Can do auto scaling and monitoring of nodes
Misc Orchestration tools
- BOSH - Kind of complicated to solve problems with orchestrating things like OpenStack
- Maybe a service like Consul (Consul.io) for service discovery to help with OpenStack
- etcd - Service discovery with OpenStack
- Terraform - Scripted service setup over various providers, might support OpenStack later?
What will we do now? What needs to happen next?
- Check out OpenStack Heat
- Check out Chef Metal to see if it can be used with OpenStack because it has basic resource abstraction and orchestration EDIT: @jjasghar I've created this: https://github.com/jjasghar/chef-openstack-testing-stack which leverages chef-metal to build openstack. I'm in the process of getting multi-node setups done now.