Install

  • Controller node—Networking server

    1. Install the Networking server.

    2. Create database ovs_neutron.

    3. Update the Networking configuration file, /etc/neutron/neutron.conf, with plug-in choice and Identity Service user as necessary:

      [DEFAULT]
      core_plugin = neutron.plugins.openvswitch.ovs_neutron_plugin.OVSNeutronPluginV2
      control_exchange = neutron
      rabbit_host = controller
      rabbit_password = RABBIT_PASS
      notification_driver = neutron.openstack.common.notifier.rabbit_notifier
      
      [database]
      connection = mysql://neutron:NEUTRON_DBPASS@controller:3306/neutron
      
      [keystone_authtoken]
      admin_tenant_name=service
      admin_user=neutron
      admin_password=NEUTRON_PASS
    4. Update the plug-in configuration file, /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini:

      [ovs]
      tenant_network_type = gre
      tunnel_id_ranges = 1:1000
      enable_tunneling = True
    5. Start the Networking server.

      The Networking server can be a service of the operating system. The command to start the service depends on your operating system. The following command runs the Networking server directly:

      # neutron-server --config-file /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini \
        --config-file /etc/neutron/neutron.conf
  • Compute node—Compute

    1. Install Compute services.

    2. Update the Compute /etc/nova/nova.conf configuration file. Make sure the following line appears at the end of this file:

      network_api_class=nova.network.neutronv2.api.API
      
      neutron_admin_username=neutron
      neutron_admin_password=NEUTRON_PASS
      neutron_admin_auth_url=http://controlnode:35357/v2.0/
      neutron_auth_strategy=keystone
      neutron_admin_tenant_name=service
      neutron_url=http://controlnode:9696/
    3. Restart relevant Compute services.

  • Compute and Networking node—L2 agent

    1. Install and start Open vSwitch.

    2. Install the L2 agent (Neutron Open vSwitch agent).

    3. Add the integration bridge to the Open vSwitch:

      # ovs-vsctl add-br br-int
    4. Update the Networking configuration file, /etc/neutron/neutron.conf:

      [DEFAULT]
      core_plugin = neutron.plugins.openvswitch.ovs_neutron_plugin.OVSNeutronPluginV2
      control_exchange = neutron
      rabbit_host = controller
      rabbit_password = RABBIT_PASS
      notification_driver = neutron.openstack.common.notifier.rabbit_notifier
      
      [database]
      connection = mysql://neutron:NEUTRON_DBPASS@controller:3306/neutron
    5. Update the plug-in configuration file, /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini.

      Compute node:

      [ovs]
      tenant_network_type = gre
      tunnel_id_ranges = 1:1000
      enable_tunneling = True
      local_ip = 9.181.89.202

      Network node:

      [ovs]
      tenant_network_type = gre
      tunnel_id_ranges = 1:1000
      enable_tunneling = True
      local_ip = 9.181.89.203
    6. Create the integration bridge br-int:

      # ovs-vsctl --may-exist add-br br-int
    7. Start the Networking L2 agent

      The Networking Open vSwitch L2 agent can be a service of operating system. The command to start depends on your operating systems. The following command runs the service directly:

      # neutron-openvswitch-agent --config-file /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini \
        --config-file /etc/neutron/neutron.conf
  • Network node—DHCP agent

    1. Install the DHCP agent.

    2. Update the Networking configuration file, /etc/neutron/neutron.conf

      [DEFAULT]
      core_plugin = neutron.plugins.openvswitch.ovs_neutron_plugin.OVSNeutronPluginV2
      control_exchange = neutron
      rabbit_host = controller
      rabbit_password = RABBIT_PASS
      notification_driver = neutron.openstack.common.notifier.rabbit_notifier
      allow_overlapping_ips = True

      Set allow_overlapping_ips because TenantA and TenantC use overlapping subnets.

    3. Update the DHCP /etc/neutron/dhcp_agent.ini configuration file:

      interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver
    4. Start the DHCP agent.

      The Networking DHCP agent can be a service of operating system. The command to start the service depends on your operating system. The following command runs the service directly:

      # neutron-dhcp-agent --config-file /etc/neutron/neutron.conf \
        --config-file /etc/neutron/dhcp_agent.ini
  • Network node—L3 agent

    1. Install the L3 agent.

    2. Add the external network bridge

      # ovs-vsctl add-br br-ex
    3. Add the physical interface, for example eth0, that is connected to the outside network to this bridge:

      # ovs-vsctl add-port br-ex eth0
    4. Update the L3 configuration file /etc/neutron/l3_agent.ini:

      [DEFAULT]
      interface_driver=neutron.agent.linux.interface.OVSInterfaceDriver
      use_namespaces=True

      Set the use_namespaces option (it is True by default) because TenantA and TenantC have overlapping subnets, and the routers are hosted on one l3 agent network node.

    5. Start the L3 agent

      The Networking L3 agent can be a service of operating system. The command to start the service depends on your operating system. The following command starts the agent directly:

      # neutron-l3-agent --config-file /etc/neutron/neutron.conf \
      --config-file /etc/neutron/l3_agent.ini
Log a bug against this page


loading table of contents...