Ask Your Question

Multi node installation on Openstack

asked 2017-02-01 02:36:25 -0600

vgeorga gravatar image

updated 2017-02-01 10:19:15 -0600


I was assigned the task of deploying a multi node installation of OpenStack, using the maximum number of three independent physical machines at my disposal. The proposed platform is Ubuntu 16.04. The basic purpose of this proposed cloud deployment is to work as a VM repository, providing VM's as a working environment for some courses students participate in, as part of the academic services that the university provides.

So my two questions for this matter is as follows:

1) Can anyone suggest a well documented guide (I need this cause im new to OpenStack) for multi node deployment in Ubuntu Linux that is up to date with the latest OpenStack distributions and technologies.

2) I noticed that there is already a guide for Ubuntu here Can anyone tell me if the deployed architecture described inside the guide is eligible to fulfill the needs of the system described above?

Thank you for your time in advance!!


Because I wasn't specific about the hardware requirements or the purpose of our system, I will try to cover those in the section below.

So, the idea we have in mind is to deploy an IaaS system similar to something like this, where MSc students can login as part of a tenant group and create Vitrual Machines on demand which can used as a working environment for their projects.

The proposed idea is to use the machine as follows:

  • 1 machine as the Compute node
  • 1 machine as the Storage node. This means image storage + volume for the instances (e.g. cinder).
  • The rest of the services required will be deployed on the last machine that will be designated as the Controller node.

The hardware specifications of the three machine are thought to be similar to the example architecture suggested in the original newton installation guide:

And last but not least, this task must be completed in the next 4 months.

I hope all the aforementioned information will shed some light to the grey areas :)

edit retag flag offensive close merge delete

3 answers

Sort by ยป oldest newest most voted

answered 2017-02-01 08:18:32 -0600

blakehenderson gravatar image

It really depends on your hardware and the services you require. If all you want is a controller and a few compute nodes then the openstack guide can fulfill your needs--- it is easy to script a simple controller and compute setup --- if you don't really need cinder and swift and any of the other services then don't deploy them.

We use openstack as a research cluster - vms are deployed for short periods of times, then deleted- no need to backup data- if it fails we rebuild it all. Our CS department uses openstack in a similar manner to your needs- for student labs - and they used the openstack guide. Seems to be ok. (They are at kilo -- newton is far easier to script)

if your hardware can handle it you could also use ubuntu MAAS, JUJU to deploy openstack. Visit the juju store and have a look at their bundles-- you would likely want to simplify it. It looks a bit complicated at first but it is really quite simple. I have done this with a single controller and 14 compute nodes.

edit flag offensive delete link more


Well, to be honest, the proposed idea was to use each of the three machines for a basic operation like for a example: 1 as compute node, 1 as storage node (Block and Image together something like that) and the rest in 1 machine that ll be the Controller node. To be honest I think we need storage.

vgeorga gravatar imagevgeorga ( 2017-02-01 09:56:15 -0600 )edit

By the way I checked out the bundles on the juju store. Are those solutions free and do they result in working OpenStack deployments? Is there a catch at the end where you need to pay for services? Because the base cloud solution seems really nice. The solution used must be free.

vgeorga gravatar imagevgeorga ( 2017-02-01 10:29:05 -0600 )edit

the catch is you have to do it all yourself- no help from canonical unless you pay for it. But it can be done. However, this will not be suitable for your deployment. It requires a deployment server and at least 4 other systems.

blakehenderson gravatar imageblakehenderson ( 2017-02-02 07:23:48 -0600 )edit

your best bet is to use the guide and do a manual deployment- then redo it and script the process. Best also to understand what exactly your users will want and need. Determine how to handle and protect student data and what you need on your cluster will become easier to understand.

blakehenderson gravatar imageblakehenderson ( 2017-02-02 07:35:32 -0600 )edit

as a point of comparision-- our cluster has a similar use to what you need-- the controller has mysql, glance, nova-controller, neutron, horizon--- our compute nodes run nova-compute only --- storage is on an external RAID array that is backed up --- data is accessed by CIFS or NFS mounts.

blakehenderson gravatar imageblakehenderson ( 2017-02-02 07:40:38 -0600 )edit

answered 2017-02-01 06:19:53 -0600

Your description of the requirements is not very detailed. If the goal is just to launch and control a few VMs, then the guide you reference does the job, but it covers the Liberty version. The current version is Newton.

Also be aware that the goal of the install guides you find on is to learn OpenStack rather than setting up a production environment. I like to compare it with Linux From Scratch. You may be better off with a deployment system like Packstack, Fuel or OpenStack-Ansible.

edit flag offensive delete link more


Yes you are right about the link I messed up. So are you suggesting that the implementation described in the Ubuntu Newton guide will not result in a operational openstack environment? Secondly, for the OpenStack-Ansible, i'm not familiar with yaml, do I need to learn it before I use this guide? thx

vgeorga gravatar imagevgeorga ( 2017-02-01 06:44:49 -0600 )edit

By the way the scope of the system is to manage a number of VM instances that students can use for their lab courses, yes.

vgeorga gravatar imagevgeorga ( 2017-02-01 06:46:54 -0600 )edit

Oh, the guides will result in a perfectly working environment. It will take a lot of time, and you will learn a lot.

I don't know OpenStack-Ansible well. I guess it's useful to know YAML if you use Ansible, but it's not overly complex and easy to understand.

Bernd Bausch gravatar imageBernd Bausch ( 2017-02-01 08:51:16 -0600 )edit

So when you say a lot of time could please specify that? I have 4 months available to complete this task and I'm new to this. Do you think that's enough time for me? thnx

vgeorga gravatar imagevgeorga ( 2017-02-01 10:18:14 -0600 )edit

Using Packstack for example, a cloud is deployed in an hour or so. By "lot of time", I meant "considerably longer than an hour". Perhaps a day or two.

I say: Go for the manual installation. Good luck!

Bernd Bausch gravatar imageBernd Bausch ( 2017-02-02 00:37:41 -0600 )edit

answered 2017-02-01 08:35:00 -0600

updated 2017-02-01 08:37:17 -0600

Hi @vgeorga

I used the following guide for installation on Ubuntu distribution 16.04 server: I have installed 3 nodes (controller, compute and storage), each node running inside a VM being controlled with virt-manager and hosted on a single server. I recommend following this guide for a test environment. There is a section called "environment" within the guide that shows a reference architecture to start.

edit flag offensive delete link more


Well the first approach is to deploy this system for testing purposes to figure out if this OpenStack deployment can be used as a legit working solution.

vgeorga gravatar imagevgeorga ( 2017-02-01 10:16:00 -0600 )edit

Okay, consider it for your planning.

ctomas gravatar imagectomas ( 2017-02-01 12:13:33 -0600 )edit

Get to know Ask OpenStack

Resources for moderators

Question Tools



Asked: 2017-02-01 02:36:25 -0600

Seen: 1,844 times

Last updated: Feb 01 '17