2017-02-03 140 views
-2

我使用OpenStack來幫助我虛擬化我的基礎架構。 您可以看到我的拓撲結構如何 - >My Topology in Openstack在Ubuntu 16.04上配置OpenVSwitch的問題

我在配置2臺交換機時遇到問題。 這裏是我做了什麼(我在sudo的模式):

1)安裝openvswitch paquets:

apt-get install openvswitch-switch 

2)創建一個名爲橋BR0:

ovs-vsctl add-br br0 

3)打開mybridge接口:

ifconfig br0 up 

4)將物理接口ens4添加到網橋(我是con使用接口ens3)經由SSH通過開關necting:

ovs-vsctl add-port br0 ens4 

5)拆下ens4的IP尋址:

ifconfig ens4 0 

6)添加到BR0前者ens4的IP adressing(I取開關1爲實例):

ifconfig br0 192.168.1.18 

7)在路由表中添加默認網關:

route add default gw 192.168.1.1 br0 

不幸的是,在所有這些步驟之後,我仍然無法從Host_1(其IP地址爲192.168.1.12)ping到我的Switch_1(其IP地址爲192.168.1.18,IP地址192.168.0.30用於配置通過SSH連接的交換機),反之亦然。

任何想法? 預先感謝您

P.S. :如果圖片不可讀,請告訴我,我會做一個新的。

回答

1

我假設這些開關代表虛擬機,基本上,因爲在OpenStack中,你不能創建交換機。

這就是說,由於ARP的原因,你必須改變MAC地址。嘗試爲網橋提供與ens4相同的MAC地址,並更改ens4的MAC地址。該腳本應如下所示:

NIC="ens4" 
MAC=$(ifconfig $NIC | grep "HWaddr\b" | awk '{print $5}') 
ovs-vsctl add-br br0 -- set bridge br0 other-config:hwaddr=$MAC 
ovs-vsctl add-port br0 $NIC > /dev/null 2>&1 
ifconfig $NIC 0.0.0.0 
LAST_MAC_CHAR=${MAC:(-1)} 
AUX="${MAC:0:${#MAC}-1}" 
if [ "$LAST_MAC_CHAR" -eq "$LAST_MAC_CHAR" ] 2>/dev/null; then 
    NL="a" 
else 
    NL="1" 
fi 
NEW_MAC="$AUX$NL" 
ifconfig $NIC hw ether $NEW_MAC 

此外,請檢查您是否允許虛擬機安全組中的ICMP流量。