1. 程式人生 > 其它 >packstack安裝openstack train後配置網路

packstack安裝openstack train後配置網路

packstack allinone方式,在安裝過程中使用選項,參考https://www.rdoproject.org/networking/neutron-with-existing-external-network/ 

本文是allinone安裝之後,再配置的網路

系統:centos7.9, packstack-train(現在支援的是centos8以上的安裝了)

外網(public)使用flat方式,內網(private)使用的geneve方式,外網可用(flat 或 vlan),內網可用(geneve或vxlan)

注意外網使用flat方式要單獨佔用一個網絡卡。我這是兩網絡卡的環境

ovs-vsctl add-port br-ex eno2


ip link set br-ex up
systemctl restart network

ml2_conf.ini配置

如下,改動了的內容已標黃。

[ml2]

type_drivers=geneve,flat

tenant_network_types=geneve

mechanism_drivers=ovn

path_mtu=0

extension_drivers=port_security,qos

#註釋了firewall_driver,因為參考

https://24eade5565127d985eb0-7e6feee1594781d3a430e22d861f8db7.ssl.cf2.rackcdn.com/839783/16/check/neutron-tempest-plugin-scenario-ovn/b9f78e3/controller/logs/etc/neutron/plugins/ml2/ml2_conf.ini

[securitygroup]

enable_security_group=True

#firewall_driver=neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver

[ml2_type_geneve]

max_header_size=38

vni_ranges=10:100

#設定flat_networks為extnet,通過ovs-vsctl list Open_vSwitch查詢ovn-bridge-mappings值為extnet對映到網橋br-ex

[ml2_type_flat]

flat_networks=extnet

[ovn]

ovn_nb_connection=tcp:172.0.37.22:6641

ovn_sb_connection=tcp:172.0.37.22:6642

ovn_metadata_enabled=True

 網絡卡配置

然後br-ex網橋預設是沒有br-ex的,建立檔案/etc/sysconfig/network-scripts/ifcfg-br-ex

DEVICE=br-ex

DEVICETYPE=ovs

TYPE=OVSBridge

BOOTPROTO=static

IPADDR=172.0.37.23

NETMASK=255.255.0.0

GATEWAY=172.0.0.254

DNS1=114.114.114.114

ONBOOT=yes

修改/etc/sysconfig/network-scripts/ifcfg-eno2內容為下,為防止eno2網絡卡原配置還要使用,在原選項前加#註釋掉。我這是有兩個網絡卡的eno1,和eno2,單網絡卡應該也可以,flat要單獨佔用網絡卡

DEVICE=eno2

TYPE=OVSPort

DEVICETYPE=ovs

OVS_BRIDGE=br-ex

ONBOOT=yes

然後重啟網路,會導致當前shell連線斷開,重連就是

systemctl restart network

neutron有個問題,ovs的external_ids的hostname是localhost。而我的實際hostname是localhostname.localdomain

修改ovs服務檔案(永久生效),ovs-vswitchd.service服務中檢視該檔案

vi /usr/share/openvswitch/scripts/ovs-ctl

  把hn="$(hostname -f)" || hn="$(uname -n)"

  改為hn="$(hostname)" || hn="$(uname -n)"

hostname -f獲取的是前半段localhost。而不是localhost.localdomain,改為hostname

然後重啟服務systemctl restart ovs-vswitchd.service

參考: dashborad建立網路https://blog.csdn.net/qq_28540443/article/details/109184700