如何在 Docker 中使用 OVS 網橋進行網路連線?
OVS 網橋或 Open vSwitch 網橋用作 Linux 中原生網橋的替代方案。它支援物理交換機中的大多數功能,同時還支援單個網橋上的多個 VLAN。它在 Docker 網路中也得到了廣泛使用,因為它被證明對多主機網路很有用,並且與原生網橋相比提供了更安全的通訊。
在本文中,我們將討論如何使用 Open vSwitch 網橋 (OVS) 執行 Docker 網路。我們將討論有助於安裝 OVS 和 Docker 的 OVS 實用程式的各種命令。然後,我們將嘗試建立一個 OVS 網橋,然後將兩個 Docker 容器連線到該網橋。最後,我們將嘗試使用 ping 命令測試連線。
安裝 OVS 網橋
要在 Linux 系統中安裝 Open vSwitch 網橋,可以使用以下 apt−get 命令。
sudo apt−get −y install openvswitch−switch
為 Docker 安裝 OVS 實用程式
要安裝 OVS Docker 實用程式,可以使用以下命令:
移動到當前使用者的 bin 目錄。
sudo cd /usr/bin
使用以下 wget 命令下載 openvswitch 倉庫:
sudo cd /usr/bin
使用以下命令更改訪問許可權。rwx 許可權確保所有者、組和使用者都設定了 rwx,從而賦予他們讀取、寫入和執行許可權。
sudo chmod a+rwx ovs−docker
建立 OVS 網橋
現在讓我們建立一個新的 OVS 網橋,並新增和配置它,以便在不同網路上的 Docker 容器相互連線。
sudo ovs−vsctl add−br ovs−br1
ovs−vsctl 命令用於查詢和配置 OVS 交換機。它建立並添加了一個 ovs 網橋。
可以使用以下命令顯示 ovs 網橋。
sudo ovs−vsctl show
將容器連線到網橋
我們可以使用兩種不同的模式(NAT 和 Bridge)將容器連線到網橋。
在 NAT 模式下,網橋實際上是一個虛擬介面。Docker 容器將具有內部 IP 地址,並應用網路地址轉換規則以與外部世界通訊。另一方面,如果它們以橋接模式連線,則網橋將成為一個真正的網路介面卡。
我們將嘗試使用橋接模式連線它們。
首先,我們必須在 OVS 網橋上配置內部 IP 地址,為此,我們可以使用以下命令:
sudo ifconfig ovs−br1 173.16.1.1 netmask 255.255.255.0 up
現在,我們將建立兩個與 ubuntu 映象關聯的不同 Docker 容器。
sudo docker run −it −−name myContainer1 ubuntu bash sudo docker run −it −−name myContainer2 ubuntu bash
現在,我們將嘗試使用以下命令將容器與 OVS 網橋連線。
sudo ovs−docker add−port ovs−br1 eth1 myContainer1 −−ipaddress=173.16.1.2/24 sudo ovs−docker add−port ovs−br1 eth1 myContainer2 −−ipaddress=173.16.1.3/24
以上命令將容器連線到網橋並將 IP 地址與它們關聯。
現在,您可以輕鬆地使用 ping 命令測試連線。
總之,在本文中,我們瞭解瞭如何建立、新增和使用 OVS 網橋將兩個容器連線到網橋。
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP