Container eth0:eth0它是Overlay網絡分配的惟一的IP地址,它是veth pair虛擬設備對,做用是實現點對點的通訊,經過橋接到br0這個網橋中,能夠實現不一樣 NameSwitch之間容器進行通訊。
br0:它是Overlay默認建立的網橋。
VETP:對VXLAN數據包的封裝與街封裝。
Container eth1:eth1是容器主機的默認網絡,主要提供容器訪問外網所提供的服務,走的默認docker網絡架構,只不過他建立了docker_gwbridge這個網橋。
docker_gwbridge:docker_gwbridge是容器所建立的網橋它替代了docker0的服務。
eth0:真機網卡與外界網卡鏈接得真機網卡,它用來轉發,容器VXLAN與NAT兩種網卡類型的數據包到指定的對端節點。
複製代碼
容器Container1 發送數據包 到容器 Container2。node
hostname | ip |
---|---|
node103 | 192.168.44.103 |
node104 | 192.168.44.104 |
爲支持容器跨主機通訊,Docker 提供了 overlay driver。Docerk overlay 網絡須要一個 key-value 數據庫用於保存網絡狀態信息,包括 Network、Endpoint、IP 等。Consul、Etcd 和 ZooKeeper 都是 Docker 支持的 key-vlaue 軟件,咱們這裏使用 Consul。(Etcd後續再補充)docker
# docker run -d -p 8500:8500 -h consul --name consul progrium/consul -server -bootstrap
複製代碼
容器啓動後,能夠經過:http:192.168.44.103:8500訪問,如圖: 數據庫
# vi /usr/lib/systemd/system/docker.service
複製代碼
在ExecStart一欄添加:bootstrap
ExecStart=/usr/bin/dockerd-current -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --cluster-store=consul://192.168.44.103:8500 --cluster-advertise=ens33:2376 \
複製代碼
--cluster-store 指定 consul 的地址。
--cluster-advertise 告知 consul 本身的鏈接地址。
複製代碼
# systemctl daemon-reload
# systemctl restart docker
複製代碼
此時,查看node103:8500 可以看到兩個節點的信息centos
[root@node104 ~]# docker network create -d overlay ov_net1
複製代碼
[root@node103 ~]# docker run -itd --privileged --name node2 --hostname node2 --net ov_net1 --rm big_computing /usr/sbin/init
root@node104 ~]# docker run -itd --privileged --name node1 --hostname node1 --net ov_net1 --rm big_computing /usr/sbin/init
複製代碼
[root@node104 ~]# docker exec -it node1 /bin/bash
複製代碼
一樣的方法進去node2,也可以ping通node1bash
同時,修改condor_config中添加:
ALLOW_WRITE = *
ALLOW_READ = *
複製代碼
同時,修改condor_config中添加:
ALLOW_WRITE = *
ALLOW_READ = *
複製代碼
肺炎猖狂,在家閉關!最近,會持續更新本身前期整理的學習資料,你們若是感興趣的,請點贊,加關注網絡