Ask Your Question
1

Multiple Network Nodes: What is the common practice in a commercial deployment/production environment?

asked 2014-09-23 01:33:07 -0500

fhussain gravatar image

updated 2014-09-23 01:44:06 -0500

Hi,

In a three node deployment architecture of OpenStack i.e. setting up a Controller Node, a Compute Node and a Network Node, what is the common practice regarding number of Network Nodes?

As per my understanding, there must be multiple Compute Nodes in a production environment to be able to provision lots of instances (VMs), but what about the Network Node? Do they have multiple Network Nodes as well?

Moreover, I want to be clear on this analogy:

An instance uses the resources (RAM,CPU, Storage,etc.) of a Compute Node.
Does a Router use the resources(RAM,CPU, Storage,etc.) of a Network Node?
I mean on what physical resource/node a router is actually deployed?

Regards.

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted
1

answered 2014-09-23 09:08:19 -0500

larsks gravatar image

As per my understanding, there must be multiple Compute Nodes in a production environment to be able to provision lots of instances (VMs), but what about the Network Node? Do they have multiple Network Nodes as well?

In a nova-network environment, there is a "multi-host" node in which each compute host acts as the network gateway for instances running on this node. This distributes the network load and provides some fault tolerance in your network infrastructure (since loss of a compute node affects only those instances that were running on the failed node).

If you are using Neutron in Icehouse (or earlier), your network node is a bottleneck -- many neutron services can only have a single active instance at any given time, and all routed network traffic flows through a single node. You can get fault tolerance by setting up some sort of active/passive HA pair, but losing the network node can still be quite disruptive.

So, a production environment will typically have multiple network nodes in order to provide high availability, but only one will be active at any given time.

This document has some information about configuring your environment for HA.

Beginning in Juno, Neutron offers support for a distributed virtual router which is meant to alleviate some of these issues.

Does a Router use the resources(RAM,CPU, Storage,etc.) of a Network Node? I mean on what physical resource/node a router is actually deployed?

A neutron "router" is just a network namespace on the network host with a couple of virtual interfaces in it. In other words, a router consumes very few physical resources on it's own. There is no "running process" to consume memory or cpu, and the memory required to support virtual interfaces is minimal.

It does require some CPU resources to forward packets, so if you are handling a lot of traffic you will CPU utilization go up, but this is a function of packet forwarding in general and not specific to the virtual router.

edit flag offensive delete link more

Comments

I am sorry to ask but please clarify what does HA stand for?

fhussain gravatar imagefhussain ( 2014-09-24 00:17:23 -0500 )edit

HA stands for "high availability".

larsks gravatar imagelarsks ( 2014-09-24 09:43:41 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Get to know Ask OpenStack

Resources for moderators

Question Tools

2 followers

Stats

Asked: 2014-09-23 01:33:07 -0500

Seen: 1,598 times

Last updated: Sep 23 '14