Dies ist der zweite Teil der Konfiguration von Neutron (Networking) unter Ubuntu 14.04. Sie können den vorherigen Artikel zum Konfigurieren von Neutron Nr. 1 durchgehen, in dem wir Netzwerkkomponenten auf dem Controller-Knoten installiert und konfiguriert haben.
Hier, in diesem Tutorial, werden wir Network Node installieren und konfigurieren.
Voraussetzung:
Stellen Sie sicher, dass Sie das OpenStack Kilo-Repository auf dem Rechenknoten aktiviert haben, oder befolgen Sie die nachstehenden Schritte, um es zu aktivieren.
Installieren Sie den Schlüsselbund und das Repository des Ubuntu Cloud-Archivs.
# apt-get install ubuntu-cloud-keyring # echo "deb http://ubuntu-cloud.archive.canonical.com/ubuntu" "trusty-updates/kilo main" > /etc/apt/sources.list.d/cloudarchive-kilo.list
Aktualisieren Sie Ihr System.
# apt-get update
Konfigurieren Sie die Kernelparameter auf dem Netzwerkknoten, bearbeiten Sie die Datei /etc/sysctl.conf.
# nano /etc/sysctl.conf
Fügen Sie der Datei die folgenden Parameter hinzu.
net.ipv4.ip_forward=1 net.ipv4.conf.all.rp_filter=0 net.ipv4.conf.default.rp_filter=0
Übernehmen Sie die Änderungen.
# sysctl -p
Netzwerkkomponenten installieren und konfigurieren:
Installieren Sie die folgenden Pakete auf dem Netzwerkknoten.
# apt-get install neutron-plugin-ml2 neutron-plugin-openvswitch-agent neutron-l3-agent neutron-dhcp-agent neutron-metadata-agent
Bearbeiten Sie /etc/neutron/neutron.conf.
# nano /etc/neutron/neutron.conf
Ändern Sie die folgenden Einstellungen und stellen Sie sicher, dass Sie Einträge in den richtigen Abschnitten platzieren. Kommentieren Sie im Fall des Datenbankabschnitts alle Verbindungsoptionen aus, da der Netzwerkknoten nicht direkt auf die Datenbank zugreift
[DEFAULT] ... rpc_backend = rabbit core_plugin = ml2 service_plugins = router allow_overlapping_ips = True auth_strategy = keystone verbose = True [oslo_messaging_rabbit] ... rabbit_host = controller rabbit_userid = openstack rabbit_password = password ## Replace "password" with the password you chose for the openstack account in RabbitMQ [database] ... #connection = sqlite:////var/lib/neutron/neutron.sqlite ##Comment out the above line. [keystone_authtoken] ... auth_uri = http://controller:5000 auth_url = http://controller:35357 auth_plugin = password project_domain_id = default user_domain_id = default project_name = service username = neutron password = password ## Replace "password" with the password you chose for neutron user in the identity service
Modular Layer 2 (ML2) Plug-in konfigurieren:
Bearbeiten Sie die Datei /etc/neutron/plugins/ml2/ml2_conf.ini.
# nano /etc/neutron/plugins/ml2/ml2_conf.ini
Ändern Sie die folgenden Abschnitte.
[ml2] ... type_drivers = flat,vlan,gre,vxlan tenant_network_types = gre mechanism_drivers = openvswitch [ml2_type_flat] ... flat_networks = external [ml2_type_gre] ... tunnel_id_ranges = 1:1000 [securitygroup] ... enable_security_group = True enable_ipset = True firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver [ovs] local_ip = 192.168.11.22 ## Tunnel network interface on your Network Node. bridge_mappings = external:br-ex [agent] tunnel_types = gre
Hinweis:Die Strophen [ovs] und [agent] müssen am Ende der Datei zusätzlich hinzugefügt werden.
Konfigurieren Sie den Layer-3 (L3)-Agent:
Es bietet Routing-Dienste für virtuelle Netzwerke. Bearbeiten Sie die Datei /etc/neutron/l3_agent.ini.
# nano /etc/neutron/l3_agent.ini
Ändern Sie den Abschnitt [DEFAULT].
[DEFAULT] ... interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver external_network_bridge = router_delete_namespaces = True verbose = True
Konfigurieren Sie den DHCP-Agenten:
Bearbeiten Sie die Datei /etc/neutron/dhcp_agent.ini.
# nano /etc/neutron/dhcp_agent.ini
Ändern Sie die folgenden Strophen.
[DEFAULT] ... interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq dhcp_delete_namespaces = True verbose = True
Konfigurieren Sie den Metadaten-Agent:
Bearbeiten Sie die Datei /etc/neutron/metadata_agent.ini
# nano /etc/neutron/metadata_agent.ini
Ändern Sie die folgenden Abschnitte, möglicherweise müssen Sie die vorhandenen Einträge auskommentieren.
[DEFAULT] ... verbose = True auth_uri = http://controller:5000 auth_url = http://controller:35357 auth_region = RegionOne auth_plugin = password project_domain_id = default user_domain_id = default project_name = service username = neutron password = password ## Replace "password" with the password you chose for neutron user in the identity service. nova_metadata_ip = controller metadata_proxy_shared_secret = 26f008fb8c504b393df3 ## Replace "26f008fb8c504b393df3" with a suitable secret for the metadata proxy
Auf dem Controller-Knoten , bearbeiten Sie die Datei /etc/nova/nova.conf.
# nano /etc/nova/nova.conf
Ändern Sie die [Neutron]-Abschnitte.
[neutron] ... service_metadata_proxy = True metadata_proxy_shared_secret = 26f008fb8c504b393df3 ## Replace "26f008fb8c504b393df3" with the secret you chose for the metadata proxy.
Starten Sie den Compute-API-Dienst auf dem Controller-Knoten neu.
# service nova-api restart
Konfigurieren Sie den Open vSwitch (OVS)-Dienst:
Starten Sie den OVS-Dienst auf dem Netzwerkknoten neu.
# service openvswitch-switch restart
Fügen Sie die externe Bridge hinzu.
# ovs-vsctl add-br br-ex
Fügen Sie der externen Bridge einen Port hinzu, der mit der physischen externen Netzwerkschnittstelle verbunden ist, in meinem Fall ist eth2 der Schnittstellenname.
# ovs-vsctl add-port br-ex eth2
Starten Sie die Netzwerkdienste neu.
# service neutron-plugin-openvswitch-agent restart # service neutron-l3-agent restart # service neutron-dhcp-agent restart # service neutron-metadata-agent restart
Betrieb überprüfen:
Administratoranmeldeinformationen auf dem Controller-Knoten laden.
# source admin-openrc.sh
Listen Sie die Agenten auf.
# neutron agent-list +--------------------------------------+--------------------+---------+-------+----------------+---------------------------+ | id | agent_type | host | alive | admin_state_up | binary | +--------------------------------------+--------------------+---------+-------+----------------+---------------------------+ | 23da3f95-b81b-4426-9d7a-d5cbfc5241c0 | Metadata agent | network | :-) | True | neutron-metadata-agent | | 4217b0c0-fbd4-47d9-bc22-5187f09d958a | DHCP agent | network | :-) | True | neutron-dhcp-agent | | b4cf95cd-2eba-4c69-baa6-ae8832384e40 | Open vSwitch agent | network | :-) | True | neutron-openvswitch-agent | | d9e174be-e719-4f05-ad05-bc444eb97df5 | L3 agent | network | :-) | True | neutron-l3-agent | +--------------------------------------+--------------------+---------+-------+----------------+---------------------------+
Das ist alles!!! Sie haben den Netzwerkknoten erfolgreich konfiguriert.