Ask Your Question

How to build OpenStack from scratch

asked 2015-06-22 12:04:59 -0500

anonymous user


updated 2015-06-23 16:18:26 -0500


I understand OpenStack is comprised of seven core components - Nova, Swift, Cinder, Neuton, Horizon, Keystone and Glance. I also understand there are instructions on how to install OpenStack on specific platforms. What I am not very clear is if I had to build OpenStack from scratch, how do I go about doing it?

I could guess that for each core component listed I will need to get appropriate source code from GitHub and compile/build it. Missing part is the "glue" steps that will bind all these components together to form OpenStack deployment once I have source code compiled. At least I could no find it.

Please let me know if there are best practices around building and running OpenStack from source code.


edit retag flag offensive close merge delete


Please never use OS for OpenStack.

Fsoppelsa gravatar imageFsoppelsa ( 2015-06-23 12:13:56 -0500 )edit


osnewbie gravatar imageosnewbie ( 2015-06-23 16:18:50 -0500 )edit

7 answers

Sort by ยป oldest newest most voted

answered 2015-06-22 18:51:52 -0500

jeffrey-olsen gravatar image

You can do a couple of ways. My quick answer is tools like Fuel if you are using Mirantis OpenStack, Auto Pilot for Ununtu or if you are looking for trunk or kilo is-ansible-deployment.

edit flag offensive delete link more

answered 2015-06-24 08:40:03 -0500

mudzimba gravatar image

Google Openstack installation guide and then just follow the the document. Going this way will give you a great opportunity to learn Openstack

edit flag offensive delete link more

answered 2015-06-25 11:18:37 -0500

Stephanie Fuller gravatar image

I have been using documentation to install manually. It is mostly good, but it has taken me many months to become moderately capable. Make sure you don't accidentally open the juno documentation in the middle of a kilo install...

edit flag offensive delete link more

answered 2015-06-23 16:26:20 -0500

osnewbie gravatar image

Thank you all for responding - it sounds like I have to make use of a tool to do it. I'll look into Devstack/Mirantis OpenStack and other tools mentioned above.

edit flag offensive delete link more

answered 2015-06-24 12:01:05 -0500

pedroalvarez gravatar image

updated 2015-06-24 12:10:51 -0500

In [Baserock] we have currently finished the [OpenStack integration], which means that we are now able to build and deploy a full OpenStack (Kilo) cloud, from scratch, from source (not only the OpenStack components, but the entire software stack). You can take a look at this short [Video] I created to demonstrate the final result.

This hasn't been an easy trip, but mainly because we had to add support for many things in Baserock that OpenStack needs, and also add things that aren't included in OpenStack repositories, but in distribution packages.

If anybody is interested, you will find more information about Baserock in the [wiki], and also we will be glad to help to understand our work in [#baserock @ freenode]

PS: Sorry about the links mess, I don't know how to do them in markdown here, although it looks it's because I don't have enough karma points.

  • Baserock:
  • wiki:
  • OpenStack integration: (
  • Video] (
  • #baserock @ freenode:
edit flag offensive delete link more

answered 2015-06-23 02:28:52 -0500

OpenStack breaks the boundaries of management of compute , storage and networking etc that are the essential building blocks of IT Infrastructure.As an OpenStack expert you need familiar with visualization, linux networking, Storage technologies and more. This might be a long journey, be patient.:-)

In my personal view, this journey might be covered in 5 phases:


Try OpenStack first. you should be able to deploy openstack single node mode(devstack recommended) to get a little sense of what it is and how to use it and learn how to troubleshooting during installation.


Familiar with the architecture.Read official documents in and ask and helping stackers resolve issues in


Learn the core technologies that OpenStack leveraged. OpenStack is an orchestration framework which integrating the existing and newest technologies via a uniform framework(manager -> driver) and exposes the features via restful api.You need to master various technologies like virtualization(libvirt, kvm, xen, docker etc) , networking(openvswitch,tcp/ip, etc), storage(iscisi,lvm,etc) etc.


Get yourself comfortable with Python. OpenStack mainly written in Python,if you want to be an contributor or extend the existing features of OpenStack, you must know Python and the python libraries that OpenStack utilizes.


Push OpenStack in production.At this phase, you have loaded enough experiences and knowledge in OpenStack, time to leverage the power of OpenStack in production.

One more thing, the OpenStack provides a great training guide for different roles this might be the first article you need to take a close look.

Hope that helps!

edit flag offensive delete link more


Thank you but I was more interested in how to bind all the separate OpenStack components together if I had to build it from source. From all the comments below it sounds like I have to use some sort of tool to do it - like Devstack/Fuel.

osnewbie gravatar imageosnewbie ( 2015-06-23 16:22:38 -0500 )edit

answered 2015-06-23 01:17:45 -0500

uts9 gravatar image

Try Devstack. It's great tool for learning OpenStack.

edit flag offensive delete link more

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower


Asked: 2015-06-22 12:04:59 -0500

Seen: 3,043 times

Last updated: Jun 25 '15