Ask Your Question

Controller node vs Computer Node

asked 2014-09-24 17:43:57 -0500

NewStacker gravatar image


I am fairly new to the OpenStack, and am trying to set up a simple network using Neutron. I dont understand the difference between a controller node and a compute node. Can anyone please help me out with this?

1) What is the function of both?

2) Do we always need both of them?

Thanking in anticipation.

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2014-09-24 19:58:17 -0500

larsks gravatar image

updated 2014-09-24 19:58:30 -0500

What is the function of both?

The terms "compute node" and "controller" describe a fairly simplistic deployment model with only two roles:

  • A "compute" node runs a hypervisor and the nova-compute service. This is where virtual instances actually run.

  • The "controller" is basically everything else -- public facing APIs, web interface, scheduler, database server, message queue, etc.

Do we always need both of them?

It really depends on what you are trying to do. You need all of the services that comprise these two roles, but they don't need to be organized like this.

It's pretty common to have a "compute" role in any model. On the other hand, the stuff on the "controller" is often spread across several systems:

  • Dedicated network hosts to isolate tenant traffic
  • Dedicated storage nodes providing glance/cinder/etc, or providing a shared filesystem like NFS or GlusterFS for use by the rest of the cluster,
  • Dedicated database servers
  • Dedicated web servers to clearly separate "ui" from "api services"


How you structure your deployment depends heavily on your goals: do you need HA? Are you trying to optimize storage performance? Are you trying to minimize cost?

edit flag offensive delete link more


To me, this is a very good answer. In addition, I would say that you can also have a look at this community document ( where they explain the installation of a basic deployment.

MCo gravatar imageMCo ( 2014-09-25 01:22:12 -0500 )edit

Thanks you Larsks. Your answer was really helpful. Actually I am trying to isolate two the traffic from two companies and provide them basic services likes Routing-NAT, Firewall, Loadbalancer and VPN.

NewStacker gravatar imageNewStacker ( 2014-09-25 06:28:27 -0500 )edit

I'm also a beginner, I have installed OSM (version 4) on top of an Ubuntu OS on top of a vmware. Now, I would like to work with OpenStack, but I'm confused over whether I need to have another two physical (or vm) machines for both the Controller and Compute nodes or they reside on only one ?!!

SudanHashbang gravatar imageSudanHashbang ( 2018-10-17 05:58:02 -0500 )edit

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower


Asked: 2014-09-24 17:43:57 -0500

Seen: 12,827 times

Last updated: Sep 24 '14