openstack pike linuxbridge换成openvswitch
现有网络节点的网络方案为:
neutron ml2 type driver: vxlan
neutron ml2 mechanism driver : linuxbridge
neutron l2 agent: linuxbridge
改后的方案:
neutron ml2 type driver: vxlan
neutron ml2 mechanism driver : openvswitch
neutron l2 agent: openvswitch
在网络节点和计算节点停止并删除neutron-linuxbridge-agent
systemcat stop neutron-linuxbridge-agent
systemcat disable neutron-linuxbridge-agent
yum remove neutron-linuxbridge-agent
删除linuxbridge agent
openstack work agent list 查看linuxbridgent agent对应的id
openstack work agent delete $id 删除对应的id
在网络节点和计算节点安装neutron-openvswitch-agent
yum install -y openstack-neutron-openvswitch
在网络节点添加br-ex网桥
ovs-vsctl add-br br-ex
br-ex 网桥绑定网卡
ifconfig eth0 0 && ovs-vsctl add-port br-ex eth0
为了开启生效在/etc/rc.local加上如下配置
ovs-vsctl add-port br-ex eth0
ifconfig br-ex 192.168.100.114/24 (ip根据时间情况改)
网上有说改/etc/sysconfig/network-scripts下的文件,亲测了下在centos7.4环境下,network重启失败
所以建议在/etc/rc.local里添加配置。并改/etc/rc.local为可执行权限
chmod +x /etc/rc.d/rc.local
修改配置
Neutron
/etc/neutron/plugins/ml2/ml2_conf.ini
[ml2]
type_drivers = flat,vlan,vxlan
mechanism_drivers = openvswitch,l2population
extension_drivers = port_security
tenant_network_types = vxlan
[ml2_type_flat]
flat_networks = provider
[ml2_type_vxlan]
vni_ranges = 1:1000
[securitygroup]
enable_ipset = True
/etc/neutron/l3_agent.ini
[DEFAULT]
interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver
debug = false
/etc/neutron/dhcp_agent.ini
[DEFAULT]
interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver
dhcp_driver = neutron.agent.linux.dhcp.
Dnsmasq
enable_isolated_metadata = True
/etc/neutron/plugins/ml2/openvswitch_agent.ini
[ovs]
tunnel_bridge = br-tun
local_ip = 10.2.2.4
integration_bridge = br-int
enable_tunneling = True
[agent]
tunnel_types = vxlan
l2_population = True
[securitygroup]
firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver
enable_security_group = True
重启服务
systemctl restart neutron-server.service neutron-openvswitch-agent.service neutron-dhcp-agent.service neutron-metadata-agent.service neutron-l3-agent.service
将neutron-openvswitch-agent设置开机自启动
systemctl enable neutron-openvswitch-agent.service
计算节点配置
/etc/neutron/plugins/ml2/openvswitch_agent.ini
[ovs]
tunnel_bridge = br-tun
local_ip = 10.2.2.2
integration_bridge = br-int
enable_tunneling = True
[agent]
tunnel_types = vxlan
l2_population = True
[securitygroup]
firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver
enable_security_group = True
重启服务并设置开机自启动
systemctl restart openstack-nova-compute.service neutron-openvswitch-agent.service
systemctl enable neutron-openvswitch-agent.service