OpenStack Queens三节点从零部署-安装部署Neutron(四)

最后修改时间:2018年6月30日

文档版本:1.0

本操作在网络节点上完成

一. 安装neutron软件包

⚠ 如果使用LinuxBridge作为虚拟交换机则为以下代码
root@network:~# apt-get -y install neutron-plugin-ml2 neutron-plugin-linuxbridge-agent neutron-l3-agent neutron-dhcp-agent neutron-metadata-agent python-neutronclient
 
⚠ 如果使用OVS作为虚拟交换机则为以下代码
root@network:~# apt-get -y install neutron-plugin-ml2 neutron-l3-agent neutron-dhcp-agent neutron-metadata-agent python-neutronclient neutron-openvswitch-agent

二. 修改neutron配置文件

# 由于官方配置文件修改较为麻烦,这里直接创建一个新的配置文件
root@network:~# mv /etc/neutron/neutron.conf /etc/neutron/neutron.conf.org
root@network:~# vim /etc/neutron/neutron.conf
 
[DEFAULT]
core_plugin = ml2
service_plugins = router
auth_strategy = keystone
state_path = /var/lib/neutron
allow_overlapping_ips = True
# 消息队列连接设置
transport_url = rabbit://openstack:root@controller

[agent]
root_helper = sudo /usr/bin/neutron-rootwrap /etc/neutron/rootwrap.conf

# Keystone连接设置
[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:5000
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = neutron
password = root

[oslo_concurrency]
lock_path = $state_path/lock
 
# 因为配置文件是新建的,这里把权限加回去
root@network:~# chmod 640 /etc/neutron/neutron.conf
root@network:~# chgrp neutron /etc/neutron/neutron.conf
 
# 修改三层代理配置
root@network:~# vim /etc/neutron/l3_agent.ini
 
# 第17行:去掉注释并添加
⚠ 如果使用LinuxBridge作为虚拟交换机则为以下代码
interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
 
⚠ 如果使用OVS作为虚拟交换机则为以下代码
interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver
 
# 修改DHCP代理配置
root@network:~# vim /etc/neutron/dhcp_agent.ini
 
# 第17行:去掉注释并添加
⚠ 如果使用LinuxBridge作为虚拟交换机则为以下代码
interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
 
⚠ 如果使用OVS作为虚拟交换机则为以下代码
interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver
 
# 第28行:去掉注释
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
 
# 第37行:取消注释并修改
enable_isolated_metadata = True
 
# 修改元数据代理配置
root@network:~# vim /etc/neutron/metadata_agent.ini
 
# 第17行:去掉注释并添加控制节点IP
nova_metadata_host = 192.168.0.10
 
# 第34行:去掉注释并添加元数据代理共享密码
metadata_proxy_shared_secret = metadata_secret
 
# 第260行:去掉注释并添加控制节点IP
memcache_servers = 192.168.0.10:11211
 
# 修改二层插件配置
root@network:~# vim /etc/neutron/plugins/ml2/ml2_conf.ini
 
# 第129行:添加相应设置(tenant_network_types设置暂时留空,之后会设置)
⚠ 如果使用LinuxBridge作为虚拟交换机则为以下代码
[ml2]
type_drivers = flat,vlan,vxlan
tenant_network_types =
mechanism_drivers = linuxbridge,l2population
extension_drivers = port_security
 
⚠ 如果使用OVS作为虚拟交换机则为以下代码
[ml2]
type_drivers = flat,vlan,gre,vxlan
tenant_network_types =
mechanism_drivers = openvswitch,l2population
extension_drivers = port_security
 
# 第262行:去掉注释并添加firewall_driver
⚠ 如果使用LinuxBridge作为虚拟交换机则为以下代码
enable_security_group = True
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
 
⚠ 如果使用OVS作为虚拟交换机则为以下代码
enable_security_group = True
firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver
 
# 最后一行:取消注释
enable_ipset = True
 
⚠ 如果二层交换的虚拟使用LinuxBridge还需要执行以下操作
root@network:~# vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini
 
# 第235行:取消注释并添加本节点的数据网络IP
local_ip = 172.16.0.30

三. 创建连接文件、重启服务

# 创建连接文件
root@controller:~# ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini
 
# 重启服务
⚠ 如果使用LinuxBridge作为虚拟交换机则为以下代码
root@network:~# systemctl enable neutron-linuxbridge-agent neutron-l3-agent neutron-dhcp-agent neutron-metadata-agent
root@network:~# systemctl restart neutron-linuxbridge-agent neutron-l3-agent neutron-dhcp-agent neutron-metadata-agent
 
⚠ 如果使用OVS作为虚拟交换机则为以下代码
root@network:~# systemctl enable openvswitch-switch neutron-openvswitch-agent neutron-l3-agent neutron-dhcp-agent neutron-metadata-agent
root@network:~# systemctl restart openvswitch-switch neutron-openvswitch-agent neutron-l3-agent neutron-dhcp-agent neutron-metadata-agent
Leave a Reply