Docker實戰(zhàn)之容器網(wǎng)絡機制(上)-Linux路由機制打通網(wǎng)絡
一,Linux路由機制打通網(wǎng)絡

docker128上修改Docker0的網(wǎng)絡地址,與docker130不沖突
vi /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/docker daemon --bip=172.18.42.1/16 -H fd:// -H=unix:///var/run/docker.sock
systemctl daemon-reload
重啟docker128





二,Docker網(wǎng)絡方案一覽
雙網(wǎng)卡獨立大二層交換(linux bridge)

Overlay網(wǎng)絡

基于ovs的Overlay網(wǎng)絡

學習neutron網(wǎng)絡

官方的Libnetwork
Socketplane被docker公司收購,成為其官方網(wǎng)絡的起源
開發(fā)者不想操作是否是 VLANs, VXLANs, Tunnels 或者是 TEPs. 對于架構(gòu)人們最關心的是性能和可靠性。而
SocketPlane 在 socket 層面提供了一個網(wǎng)絡的抽象層,通過可管理的方式去解決各種網(wǎng)絡問題。
主要特性:
?Open vSwitch 集成
?用于 Docker 的零配置多主機網(wǎng)絡
?Docker/SocketPlane 集群的優(yōu)雅增長
?支持多網(wǎng)絡
?分布式 IP 地址管理 (IPAM)

官方的Libnetwork

1.將libnetwork集成到Docker Engine
2.在Docker CLI中使用新的network命令
3.撰寫『-net』參數(shù)的文檔,以告知用戶如何使用它來為容器指定網(wǎng)絡
4.在network和endpoint中支持添加『label』
5.研發(fā)新的『bridge』插件,以替換Docker目前的實現(xiàn)
6.研發(fā)『分布式bridge』插件,以支持跨容器網(wǎng)絡
目前看到有一些計劃是打算將OVS項目關聯(lián)到Docker上來,從Linux Kernel 3.3開始,OVS項目就是內(nèi)核的一部分。 當我聽到這個的時候我覺得是不是腦袋讓驢踢了。首先聲明我并不是反對使用OVS,實際上,它是一個非常不錯的網(wǎng)絡工具套件。它的設置比較復雜,對于新手來說有一個陡峭的學習曲線,但是一旦學會,OVS就可以幫你事半功倍。關于這個話題我聽到的一個討論是:“如果OVS工作在Docker上,那么工作一切都變得很美好”。讓我告訴你,親們:如果讓我花費大量時間學習它,最后的結(jié)果只能是:“還好,可以用”。我并不想說的那么憤世嫉俗,實際情況是在某些常用環(huán)境下OVS會崩潰。因此,使用OVS只是一種瘋狂的想法罷了。
?
http://containertutorials.com/network/ovs_docker.html
?
https://github.com/openvswitch/ovs/blob/master/utilities/ovs-docker
Currently libnetwork is nothing more than an
attempt to modularize the Docker platform's
networking subsystem by moving it into
libnetwork as a library.
這僅僅是開始