From 448c0bbe938018cd685663eed6d2d44fcb9ce24a Mon Sep 17 00:00:00 2001 From: Rhys Oxenham Date: Tue, 7 Jan 2014 00:21:16 +0000 Subject: [PATCH] Updates single flat use-case example for RHEL/CentOS/Fedora Adds specific configuration options for RHEL, CentOS and Fedora based distributions which were missing - e.g. the guide presumed RabbitMQ was in use despite it not being relevant for these platforms. In addition it adds clarity on where to find further information or how to complete a specific step where necessary, something the existing implementation lacked. Now uses openstack-config in RHEL and SUSE based platforms. Change-Id: I6c9a45114afbfa99ea2d01a3f682a0dc78a72530 backport: havana Closes-Bug: 1266418 --- .../section_neutron-single-flat.xml | 228 +++++++++++++++--- 1 file changed, 193 insertions(+), 35 deletions(-) diff --git a/doc/install-guide/section_neutron-single-flat.xml b/doc/install-guide/section_neutron-single-flat.xml index 748b259075..7bddc3e766 100644 --- a/doc/install-guide/section_neutron-single-flat.xml +++ b/doc/install-guide/section_neutron-single-flat.xml @@ -50,7 +50,9 @@ controller node. The nova-network service - should not be running. This is replaced by Networking. To delete a network, use nova-manage network delete: + should not be running. This is replaced by the OpenStack Networking component, + neutron. + To delete a network, run this command: # nova-manage network delete --help Usage: nova-manage network delete <args> [options] @@ -118,9 +120,13 @@ Additional services: - - RabbitMQ is running with default guest and - its password. + + RabbitMQ is running with the default guest user + and password. + + + Qpid is running with the default guest user + and password. MySQL server (user is keystone_authtoken, and the RabbitMQ credentials. + + See + for installation instructions. Create database ovs_neutron. + + See + for database creation details. + - - Update the Networking + + If not already configured, update the Networking + /etc/neutron/neutron.conf + configuration file to use the Identity Service, the plug-in, + and database configuration: + # openstack-config --set /etc/neutron/neutron.conf keystone_authtoken \ + auth_port 35357 +# openstack-config --set /etc/neutron/neutron.conf keystone_authtoken \ + auth_protocol http +# openstack-config --set /etc/neutron/neutron.conf keystone_authtoken \ + admin_tenant_name service +# openstack-config --set /etc/neutron/neutron.conf keystone_authtoken \ + admin_user neutron +# openstack-config --set /etc/neutron/neutron.conf keystone_authtoken \ + admin_password NEUTRON_PASS + Configure Networking to connect to the database: + # openstack-config --set /etc/neutron/neutron.conf DATABASE sql_connection \ + mysql://neutron:NEUTRON_DBPASS@controller/neutron + Configure Networking to use your chosen plug-in: + # openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + core_plugin neutron.plugins.openvswitch.ovs_neutron_plugin.OVSNeutronPluginV2 +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + control_exchange neutron + Configure access to the RabbitMQ service: + # openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rpc_backend neutron.openstack.common.rpc.impl_kombu +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rabbit_host controller +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rabbit_userid guest +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rabbit_password RABBIT_PASS + Configure access to the Qpid message queue: + # openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rpc_backend neutron.openstack.common.rpc.impl_qpid +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + qpid_hostname controller +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + qpid_port 5672 +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + qpid_username guest +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + qpid_password guest + + + If not already configured, update the Networking /etc/neutron/neutron.conf configuration file to choose a plug-in and Identity Service user as @@ -186,14 +242,22 @@ admin_password=NEUTRON_PASS Update the plug-in /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini - configuration file: - [ovs] + configuration file with the bridge mappings: + [ovs] network_vlan_ranges = physnet1 bridge_mappings = physnet1:br-eth0 + # openstack-config --set \ + /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini OVS \ + network_vlan_ranges physnet1 +# openstack-config --set \ + /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini OVS \ + bridge_mappings physnet1:br-eth0 - Start the Networking service + Restart the Networking service: + # service neutron-server restart + # service openstack-neutron restart @@ -204,14 +268,16 @@ bridge_mappings = physnet1:br-eth0 class="service" >nova-compute service. + + See + for installation instructions. Update the Compute /etc/nova/nova.conf - configuration file. Make sure the - following line is at the end of the - file: - network_api_class=nova.network.neutronv2.api.API + configuration file to make use + of OpenStack Networking: + network_api_class=nova.network.neutronv2.api.API neutron_admin_username=neutron neutron_admin_password=NEUTRON_PASS @@ -219,29 +285,44 @@ neutron_admin_auth_url=http://controller:35357/v2.0/ neutron_auth_strategy=keystone neutron_admin_tenant_name=service neutron_url=http://controller:9696/ + # openstack-config --set /etc/nova/nova.conf DEFAULT \ + network_api_class nova.network.neutronv2.api.API +# openstack-config --set /etc/nova/nova.conf DEFAULT \ + neutron_url http://controller:9696 +# openstack-config --set /etc/nova/nova.conf DEFAULT \ + neutron_auth_strategy keystone +# openstack-config --set /etc/nova/nova.conf DEFAULT \ + neutron_admin_tenant_name service +# openstack-config --set /etc/nova/nova.conf DEFAULT \ + neutron_admin_username neutron +# openstack-config --set /etc/nova/nova.conf DEFAULT \ + neutron_admin_password NEUTRON_PASS +# openstack-config --set /etc/nova/nova.conf DEFAULT \ + neutron_admin_auth_url http://controller:35357/v2.0 Restart the Compute services + # service openstack-nova-compute restart + # service nova-compute restart Compute and Network - node—L2 agent + node - L2 agent - Install and start Open - vSwitch. - - - Install the L2 agent (Neutron Open - vSwitch agent). + Install and start Open vSwitch. + Then, configure neutron accordingly. + + See + for detailed instructions. Add the integration bridge to Open vSwitch: # ovs-vsctl add-br br-int - + Update the Networking /etc/neutron/neutron.conf configuration file: @@ -255,20 +336,59 @@ notification_driver = neutron.openstack.common.notifier.rabbit_notifier [database] connection = mysql://neutron:NEUTRON_DBPASS@controller/neutron + + + If not already configured, update the Networking + /etc/neutron/neutron.conf + configuration file to use the plug-in, message queue, + and database configuration: + # openstack-config --set /etc/neutron/neutron.conf DATABASE sql_connection \ + mysql://neutron:NEUTRON_DBPASS@controller/neutron + Configure Networking to use your chosen plug-in: + # openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + core_plugin neutron.plugins.openvswitch.ovs_neutron_plugin.OVSNeutronPluginV2 +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + control_exchange neutron + Configure access to the RabbitMQ service: + # openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rpc_backend neutron.openstack.common.rpc.impl_kombu +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rabbit_host controller +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rabbit_userid guest +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rabbit_password RABBIT_PASS + Configure access to the Qpid message queue: + # openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rpc_backend neutron.openstack.common.rpc.impl_qpid +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + qpid_hostname controller +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + qpid_port 5672 +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + qpid_username guest +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + qpid_password guest Update the plug-in /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini configuration file: - [ovs] + [ovs] network_vlan_ranges = physnet1 bridge_mappings = physnet1:br-eth0 + # openstack-config --set \ + /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini OVS \ + network_vlan_ranges physnet1 +# openstack-config --set \ + /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini OVS \ + bridge_mappings physnet1:br-eth0 - + Create a symbolic link from /etc/neutron/plugin.ini to /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini or neutron-server will not run: # ln -s /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini /etc/neutron/plugin.ini - + Create the br-eth0 network bridge @@ -278,18 +398,23 @@ bridge_mappings = physnet1:br-eth0 # ovs-vsctl add-port br-eth0 eth0 - Start the OpenStack Networking L2 - agent. + Restart the OpenStack Networking L2 + agent: + # service openstack-neutron-openvswitch-agent restart + # service neutron-openvswitch-agent restart - Network node—DHCP + Network node - DHCP agent Install the DHCP agent. + + See + for generic installation instructions. - + Update the Networking /etc/neutron/neutron.conf configuration file: @@ -300,14 +425,47 @@ rabbit_host = controller rabbit_password = RABBIT_PASS notification_driver = neutron.openstack.common.notifier.rabbit_notifier - - Update the DHCP - /etc/neutron/dhcp_agent.ini - configuration file: - interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver + + If not already configured, update the Networking + /etc/neutron/neutron.conf + configuration file to use the plug-in and message queue. + # openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + core_plugin neutron.plugins.openvswitch.ovs_neutron_plugin.OVSNeutronPluginV2 +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + control_exchange neutron + Configure access to the RabbitMQ service: + # openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rpc_backend neutron.openstack.common.rpc.impl_kombu +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rabbit_host controller +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rabbit_userid guest +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rabbit_password RABBIT_PASS + Configure access to the Qpid message queue: + # openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + rpc_backend neutron.openstack.common.rpc.impl_qpid +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + qpid_hostname controller +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + qpid_port 5672 +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + qpid_username guest +# openstack-config --set /etc/neutron/neutron.conf DEFAULT \ + qpid_password guest - Start the DHCP agent. + Ensure that the DHCP agent is using the correct + plug-in my changing the configuration in + /etc/neutron/dhcp_agent.ini: + interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver + # openstack-config --set /etc/neutron/dhcp_agent.ini DEFAULT \ + interface_driver neutron.agent.linux.interface.OVSInterfaceDriver + + + Restart the DHCP agent: + # service openstack-neutron-dhcp-agent restart + # service neutron-dhcp-agent restart