Cloudbase Solutions has partnered with Spirent to build and release a suite of SaltStack states for deploying OpenStack, supporting Icehouse, Juno and Kilo releases, on multiple target platforms. These states are being enhanced and extended to also support OPNFV scenarios. Anyone wishing to collaborate on this parallel effort is welcome to join.
It is recognized that there are many choices available for:
- hardware (number of NICs, CPUs, RAM, storage)
- operating system distribution
- devops tools
- openstack release
- networking solution (Open vSwitch, OpenDaylight, OpenContrail, etc)
Regarding the devops tools, there are certainly many tools available each with their own pros and cons. Each organization will use the one best suited for their needs, though many times based on personal experience of the sysadmins. Changing from one tool to another is no easy task as the library of scripts can contain years of investment from hundreds of contributors. More and more of these devops tools have moved beyond just the ability to update operating system configuration files. Now there are solutions to deploy fully working, highly secure and available, multi-node OpenStack platforms. Some organizations might use Fuel, some native Puppet, or Packstack (RDO), others SaltStack, Ansible, Chef, while some hardcore sysadmins might still rely purely on bash scripts.
With this in mind we started last year contributing to a project to build a flexible deployment framework for OpenStack. The goal is to allow defining profiles for any particular OpenStack deployment configuration, all the way to defining networks, flavors and available Glance images, and ensure easy (re)deployment of these profiles, in a reliable and repeatable manner.
This allows to tear down and rebuild machines multiple times a day as part of automated testing solutions.
We are working closely with the OpenDaylight and OpenStack developers to bring more components into this testing framework.
Since the OPNFV Getting Started project is not using SaltStack, it is our intention to follow along as closely as possible to provide a platform with similar capabilities. The end result should be the same:
- Centos 6.5 / 7, Ubuntu 12.04 / 14.04, Microsoft Hyper-V Server OS
- kernel parameters for CPU and RAM constraints
- 1, 2, 4, 6, 8, 12 NICS (1g or 10g)
- OpenStack Icehouse or Juno (Kilo will be added once it is released)
These salt states are available on GitHub.