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