回覆列表
  • 1 # 使用者6502807828552

    你好,使用方法如下:

    首先我們讓ovsdb-server監聽一個TCP埠:

    ovs-appctl-tovsdb-serverovsdb-server/add-remoteptcp:6640

    接下來,啟動ovn-northd後臺程序。這個程序負責將來自Docker的網路資訊(儲存在OVN_Northbound資料庫中)轉換成邏輯流儲存於OVN_Southbound資料庫。

    /usr/share/openvswitch/scripts/ovn-ctlstart_northd

    2、一次性配置

    在每一個你打算建立容器的主機上,你需要執行以下的命令(如果你的OVS資料庫被清空,你需要再次執行這個命令。除此之外,重複執行這個命令都是沒有任何影響的)。

    其他的主機可以透過$LOCAL_IP地址來訪問到這個主機,它就相當於本地通道的端點。

    $ENCAP_TYPE是指使用者想使用的通道的型別。它可以是”geneve“或者”stt“。(注意,你的核心需要支援以上兩個型別,使用者可以透過執行以下命令來檢測核心是否支援以上型別:"llsmod|grep$ENCAP_TYPE")。

    ovs-vsctlsetOpen_vSwitch.external_ids:ovn-remote="tcp:$CENTRAL_IP:6640"external_ids:ovn-encap-ip=$LOCAL_IPexternal_ids:ovn-encap-type="$ENCAP_TYPE"

    最後,啟動ovn-controller(你需要在每一次啟動時執行以下命令):

    /usr/share/openvswitch/scripts/ovn-ctlstart_controller

    3、啟動OpenvSwitch網路驅動

    在預設情況下,Docker使用Linux網橋,但它支援外擴充套件。為了替換Linux網橋,我們需要先啟動OpenvSwitch驅動。

    OpenvSwitch驅動使用了PythonFlask模組來監聽Docker的網路API請求。因此,使用者需要先安裝Python的Flask模組。

    easy_install-UpippipinstallFlask

    在每一個你想要建立容器的主機上啟動OpenvSwitch驅動:

    ovn-docker-overlay-driver--detach

    Docker內部包含了一些模組,這些模組擁有類似於OVN的邏輯交換機和邏輯埠的概念。請讀者仔細閱讀Docker的文件來查詢相關的命令。這裡我們給出了一些案例:

    1)建立使用者自己的邏輯交換機

    下面的命令建立了一個名為”foo“的邏輯交換機,它的網段為”192.168.1.0/24”:

    NID=`dockernetworkcreate-dopenvswitch--subnet=192.168.1.0/24foo`

    2)顯示已有邏輯交換機

    dockernetworkls

    你也可以透過以下命令從OVN的northbound資料庫中查詢到這個邏輯交換機:

    ovn-nbctl--db=tcp:$CENTRAL_IP:6640lswitch-list

    3)Docker建立邏輯埠,並且將這個埠附加到邏輯網路上

    比如說,將一個邏輯埠新增到容器busybox的“foo”網路上:

    dockerrun-itd--net=foo--name=busyboxbusybox

    4)顯示所有的邏輯埠

    Docker現在並沒有一個CLI命令來羅列所有的邏輯埠,但是你可以從OVN的資料庫中找到它們:

    ovn-nbctl--db=tcp:$CENTRAL_IP:6640lport-list$NID

    5)使用者也可以建立一個邏輯埠,並將它新增到一個執行中的容器上:

    dockernetworkcreate-dopenvswitch--subnet=192.168.2.0/24bardockernetworkconnectbarbusybox

    dockernetworkdisconnectbarbusybox

    dockernetworkrmbar

  • 中秋節和大豐收的關聯?
  • 《劍網3指尖江湖》這些角色可能是你老鄉,裴元來自外國,請問角色籍貫分別對應哪裡?