On this page, we configure Neutron on the compute node (compute01). The compute node manages network connectivity and security groups for the instances that run on it.

Prerequisites

Make sure you have completed all previous posts before starting.

Install the components

vagrant@compute01:~$ sudo apt install -y neutron-linuxbridge-agent

Configure the common component

Edit /etc/neutron/neutron.conf to configure authentication and the message queue.

In [DEFAULT], configure access to RabbitMQ and the authentication strategy:

[DEFAULT]
transport_url = rabbit://openstack:RABBIT_PASS@controller01
auth_strategy = keystone

In `[keystone_authtoken]`, configure authentication with Keystone:

[keystone_authtoken]
auth_uri = http://controller01:5000
auth_url = http://controller01:5000
memcached_servers = controller01:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = neutron
password = NEUTRON_PASS

In `[oslo_concurrency]`, define the lock path:

[oslo_concurrency]
lock_path = /var/lib/neutron/tmp

Configure the Linux Bridge agent

The Linux bridge agent builds the virtual network infrastructure and manages security groups for instances.

Edit /etc/neutron/plugins/ml2/linuxbridge_agent.ini and configure the options.

In [linux_bridge], assign the physical interface mapped to the provider network (in this case eth0):

Edit /etc/neutron/plugins/ml2/linuxbridge_agent.ini:

[linux_bridge]
physical_interface_mappings = provider:eth0

In [vxlan], enable VXLAN for self-service networks and set the local IP for VXLAN traffic (replace 10.0.0.3 with your compute node’s management IP):

[vxlan]
enable_vxlan = true
local_ip = 10.0.0.3
l2_population = true

In [securitygroup], enable security groups and configure the iptables firewall:

[securitygroup]
enable_security_group = true
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver

Configure Nova to use Neutron

Edit /etc/nova/nova.conf so Nova uses Neutron on this node.

In [neutron], configure the access parameters:

[neutron]
url = http://controller01:9696
auth_url = http://controller01:5000
auth_type = password
project_domain_name = default
user_domain_name = default
region_name = RegionOne
project_name = service
username = neutron
password = NEUTRON_PASS

Restart services and check agents

vagrant@compute01:~$ sudo service nova-compute restart
vagrant@compute01:~$ sudo service neutron-linuxbridge-agent restart

From the controller, check that all agents are active:

vagrant@controller01:~$ openstack network agent list

You should see the Linux bridge agent from the compute node (compute01) in UP state, along with the controller agents:

vagrant@controller01:~$ openstack network agent list
+------------------+------------------+--------------+-------------------+-------+-------+------------------+
| ID               | Agent Type       | Host         | Availability Zone | Alive | State | Binary           |
+------------------+------------------+--------------+-------------------+-------+-------+------------------+
| 5103a975-977d-   | Linux bridge     | compute01    | None              | :-)   | UP    | neutron-         |
| 4adb-885c-       | agent            |              |                   |       |       | linuxbridge-     |
| d51cb92bf2de     |                  |              |                   |       |       | agent            |
| 52a6a02e-6e7a-   | L3 agent         | controller01 | nova              | :-)   | UP    | neutron-l3-agent |
| 43a6-ac66-       |                  |              |                   |       |       |                  |
| 85d27c779a6f     |                  |              |                   |       |       |                  |
| 58d07bea-0a2e-   | Metadata agent   | controller01 | None              | :-)   | UP    | neutron-         |
| 499d-89d1-       |                  |              |                   |       |       | metadata-agent   |
| fa3705f6c0cb     |                  |              |                   |       |       |                  |
| ce87bffc-ab25-   | Linux bridge     | controller01 | None              | :-)   | UP    | neutron-         |
| 431e-99d1-       | agent            |              |                   |       |       | linuxbridge-     |
| 55d13cc69a04     |                  |              |                   |       |       | agent            |
| d705285c-b40a-   | DHCP agent       | controller01 | nova              | :-)   | UP    | neutron-dhcp-    |
| 4041-bbb6-       |                  |              |                   |       |       | agent            |
| 3e8be304f156     |                  |              |                   |       |       |                  |
+------------------+------------------+--------------+-------------------+-------+-------+------------------+