Swiftacular - deploy OpenStack Swift with Ansible on CentOS

Swiftacular is a project that can deploy an OpenStack Swift cluster using Ansible. In this post I’ll talk about a recent feature I added which is the ability to deploy to RedHat/CentOS 6.

Providers

For the most part Swiftacular is used for getting used to how OpenStack Swift works and is installed, and will usually be deployed using Vagrant and Virtualbox.

One of the features I hope to add is the ability to use multiple provisioners, such as IaaS providers like as Digital Ocean, OpenStack, etc. Having said that, it’s not required to use Vagrant, you could easily change some IPs around in the ansible hosts file, make a couple changes in other spots, and deploy to any servers, whether they are provided by Vagrant, virtual servers or even bare metal.

But for now, Swiftacular uses Vagrant and Virtualbox.

Deploying to CentOS

By default the Vagrantfile that comes with Swiftacular will use the Ubuntu 12.04 Precise 64bit box that the Vagrant project provides.

But, if you would like to try deploying OpenStack Swift to CentOS 6 Swiftacular supports that as well, and doing so is as easy as changing which box the Vagrantfile points to.

Then, once vagrant up is run and the virtual machines are created, the site.yml playbook can be run and OpenStack Swift will be deployed using the RDO packages. The playbooks will detect that it is a RedHat-like operating system and deploy the right packages and files for that operating system.

About RedHat RDO

Apparently RDO is a meaningless acronym, but I tend to think of it as “RedHat’s Distribution of OpenStack.”

One thing I found while using RDO is that the rdo-release.repo has a priorities setting. Note the “priority=98” option below.

Above it can be seen that there are 100 files on two of the three servers, which makes sense if we want two copies of each file. Though I still have a lot to learn about what OpenStack Swift is actually doing in the background.

Conclusion

Swiftacular now has the basic ability to deploy OpenStack Swift to RedHat 6 based operating systems using the RDO packages. There is a lot more to be done, but now with Ubuntu 12.04 and RedHat 6 support I can move onto adding other interesting features.

If you have any suggestions or run into errors, please do let me know and I’ll fix them. I’d love to get some testers. :)