deploying openstack on 6 servers

I'm new to openstack and i'm still learning. In 2 month i'll get 6 servers like:

  • 4 servers with dual xeon e5-2630 , 96gb ram, 2 1gb ethernet and 2 500gb hdd in raid
  • 1 DAS with 40tb of storage (10x4tb HDD)
  • 1 server with single xeon e5-2630 with 16-32 gb of ram.

I has a few questions for this setup and with openstack in general:

  • i practically has 3 dedicated compute nodes, 1 compute+storage node(1 server+DAS) and 1 node/network controller. As i read the best practice for networking server is to have this service run on all nodes for redundancy as opposed to running on a single controller where is it fails then all the ecosystem fails too.What is your oppinion? Another thing is the colocation of services as i don't have the necessary number of hardware to deploy every service on it's private hardware. I was thinking that the controller should run the controlling part service of nova, the object storage server and block storage server and the compute+storage server should run nova+object storage+block storage. What do you think of this setup?

  • for the DAS should i use raid or not because i read somewhere that swift and opesntack in general doesn't get along very well with raid?

  • should i use openstack-networking or the newer quantum?
  • i'll use this servers for hosting, storage like dropbox and virtualization. Except the latter, the first 2 will run in VMs . The thing is that i don't understand how openstack works with available resources. Does it make a pool of the available ram, cpu, storage etc? The DAS will be connected to only 1 server. Reading and writing to disk uses ram memory for cache etc;my question is : will openstack fill the ram proportionaly on all nodes when reading or writing or will it use only the ram from where DAS is attached to?This is an important problem for me. Also, only having one machine with actual storage capability will it help adding 2 more 1gb ethernet to cope with intense requests on the storage server? Or should i distribute the HDD's to all servers and install the storage services on them?
  • i didn't find a good tutorial on how to deploy openstack using maas and juju, because it seems to be an easier setup then manual install.
  • how does openstack get along with amd opteron 6300 series? I'm asking this because there is a possibility that i could change from intel to amd, the latter being much cheaper so i can get for the same ammount of money twice and something the number of cores (e5-2630 being a 6 core with ht, and from what i understand i should disable ht)

    To be continued when i will be confronted by other problems.

Thank you for your help!


DISCLAMIER: I AM NOT AN OPENSTACK EXPERT. THE FOLLOWING IS MERELY AN OPINION AND MAY BE OUTDATED OR COMPLETELY INCORRECT. IN NO WAY CAN I BE HELD RESPONSIBLE FOR CONSEQUENCES IN USING THE CONTENT BELOW.

Multi-Hosting

Having networking services running on every node will have its advantages and disadvantages.

Many different networking redundancy possibilities are possible including multi-hosting.

Multi-Hosting requires adding an IP on the VM network to each host in the system, and you'll probably get a slight performance decrease on the compute host.

It's also possible to combine this with a hardware gateway to remove the need for your compute hosts to gateway, and they'd only need to DHCP and NAT for VMs.

Another noted disadvantage of Multi-Hosting is the additional uses of IP's in a subnet.

Take a look at this document for more info.

In my opinion, it's probably a good idea to multi-host.

RAID

The Openstack documentation recommends you do not use RAID, the reason being that Swift is very write-heavy and performs very poorly with most parity-based RAID (e.g. RAID 5 or the more complicated RAID 26).

Don't forget to backup your data, of course!

Openstack-Networking vs. Quantum/Neutron

  • Openstack-Networking seems to be a more mature stack in terms of time in the field and resources for learning.
  • Quantum/Neutron seems to be designed to be more extensible and easier to manage.
  • Quantum/Neutron does not support multi-hosting and will not in the future.
  • I really can't give an honest opinion, as I have personally worked with neither and cannot easily find a good discussion on the two. I'd say go with the one your team is comfortable with and provides the options you need.

Distribution of Resources

I really can't help as much as I would want here. I'd give this article a read, and ping the IRC Channel.

Installing with MAAS and Juju

Ubuntu provides a tutorial for Ubuntu Cloud Infrastructure installation with MAAS and Juju.

CPU: Intel vs. AMD

I cannot find any good information whether AMD or Intel is better for Openstack. Based on the absence of information on the subject, I would think there's very little disadvantage. The Openstack Documentation refers to both AMD and Intel chips in a similar fashion.

The page only states that AMD-V is required, and the Opteron 6300 specifications page states it does.

On the topic of hyper-threading, it will double the logical cores, and that may be good. It's recommended you stress-test both configurations to see which is faster.

More Help

Ask Ubuntu may not have been the best location to ask these kinds of questions.

Try these places if you have questions or want a professional opinion:

  • Openstack IRC Channel
  • Openstack Q&A
  • Openstack Mailing Lists
  • Openstack User Groups
  • Server Fault