Book Image

Learning OpenStack Networking (Neutron)

By : James Denton
Book Image

Learning OpenStack Networking (Neutron)

By: James Denton

Overview of this book

OpenStack Neutron is an OpenStack component that provides networking as a service for other OpenStack services to architect networks and create virtual machines through its API. This API lets you define network connectivity in order to leverage network capabilities to cloud deployments. Through this practical book, you will build a strong foundational knowledge of Neutron, and will architect and build an OpenStack cloud using advanced networking features. We start with an introduction to OpenStack Neutron and its various components, including virtual switching, routing, FWaaS, VPNaaS, and LBaaS. You’ll also get hands-on by installing OpenStack and Neutron and its components, and use agents and plugins to orchestrate network connectivity and build a virtual switching infrastructure. Moving on, you’ll get to grips with the HA routing capabilities utilizing VRRP and distributed virtual routers in Neutron. You’ll also discover load balancing fundamentals, including the difference between nodes, pools, pool members, and virtual IPs. You’ll discover the purpose of security groups and learn how to apply the security concept to your cloud/tenant/instance. Finally, you' ll configure virtual private networks that will allow you to avoid the use of SNAT and floating IPs when connecting to remote networks.
Table of Contents (21 chapters)
Learning OpenStack Networking (Neutron) Second Edition
About the Author
About the Reviewers

Changes to the OpenStack installation

OpenStack can run in a virtualized environment, but various components must be tuned accordingly. The configuration is not optimal but should provide an experience that is acceptable for demonstration purposes.

Changes to the Nova configuration

After the OpenStack installation is complete, a change must be made to the Nova configuration on the virtual machines running the nova-compute service before instances can be booted. Software-based virtualization must be enabled in place of the faster, hardware-based KVM hypervisor.

On the compute node virtual machines, edit the auxiliary Nova configuration file at /etc/nova/nova-compute.conf and set virt_type to qemu from kvm:


Restart the nova-compute service on both the compute nodes with the following command:

# service nova-compute restart

Changes to the Neutron configuration

Due to the lack of flexibility in configuring tagged networks with VirtualBox, the external GATEWAY_NET provider network that was configured in Chapter 7, Creating Standalone Routers with Neutron, must be configured as a flat network. To enable the use of flat networks, the flat_networks configuration option in the ML2 configuration file must be updated.

Using a text editor, update the flat_networks configuration option within the [ml2_type_flat] section of the ML2 configuration file on all hosts with the following:

flat_networks = physnet2

For reference, the ML2 plugin configuration file can be found at /etc/neutron/plugins/ml2/ml2_conf.ini.

Restart the neutron-server service on the controller node for the changes to take effect.

# service neutron-server restart


When creating the GATEWAY_NET network, be sure to use the --provider:network_type=flat and --provider:physical_network=physnet2 options rather than vlan. Your workstation should be able to access floating IPs thanks to the VirtualBox host-only network configuration implemented earlier in this appendix.