成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Docker 高級網(wǎng)絡(luò)配置

jhhfft / 2587人閱讀

摘要:默認(rèn)指定了接口的地址和子網(wǎng)掩碼,讓主機(jī)和容器之間可以通過網(wǎng)橋相互通信。解決方法是創(chuàng)建一對接口,分別放到兩個容器中,配置成點(diǎn)對點(diǎn)鏈路。點(diǎn)到點(diǎn)鏈路不需要子網(wǎng)和子網(wǎng)掩碼。

容器訪問控制 檢查本地系統(tǒng)的轉(zhuǎn)發(fā)支持
sysctl net.ipv4.ip_forward
sysctl -w net.ipv4.ip_forward=1  # 手動打開
如果在啟動Docker服務(wù)的時候設(shè)定--ip-forward=true,Docker會自動設(shè)定
容器之間相互訪問,需要:
1 容器的網(wǎng)絡(luò)拓?fù)涫欠褚呀?jīng)互聯(lián),默認(rèn)連接在docker0網(wǎng)橋
2 本地防火墻是否允許通過
訪問所有端口
默認(rèn)情況下,不同容器之間是允許網(wǎng)絡(luò)互通的, 為了安全,可以禁止。

vim /etc/default/docker
DOCKER_OPTS=--icc=false
訪問指定端口
通過 -icc=false 關(guān)閉網(wǎng)絡(luò)訪問后,還可以通過 --link=CONTAINER_NAME:ALIAS 來訪問容器的開放端口
容器訪問外部實(shí)現(xiàn)
docker run -p or -P 本質(zhì)是在本地iptables的nat表添加相應(yīng)的規(guī)則 
iptables -t nat -nL  # 查看主機(jī)的NAT規(guī)則

如果希望永久綁定到某個固定的IP地址
vim /etc/docker/daemon.json

{
    "ip":"0.0.0.0"
}
配置docker0網(wǎng)橋
Docker服務(wù)默認(rèn)會創(chuàng)建一個docker0網(wǎng)橋,在內(nèi)核層聯(lián)通了其他的物理或者虛擬網(wǎng)卡,將所有的容器和本地主機(jī)都放到同一個物理網(wǎng)絡(luò)。
Docker默認(rèn)指定了docker0接口的IP地址和子網(wǎng)掩碼,讓主機(jī)和容器之間可以通過網(wǎng)橋相互通信。
查看網(wǎng)橋和端口連接信息
yum install bridge-utils -y
brctl show

每次新創(chuàng)建一個容器的時候,Docker從可用的地址段中選擇一個空閑的IP分配給容器的eth0端口,使用本地的docker0接口IP作為所有容器的默認(rèn)網(wǎng)關(guān)。
sudo docker run -it --rm base /bin/bash
ip addr show eth0
ip route
自定義網(wǎng)橋
啟動Docker服務(wù)時使用 -b BRIDGE 或 --bridge=BRIDGE 來指定使用的網(wǎng)橋

若服務(wù)已運(yùn)行,先停止服務(wù)并刪除舊的網(wǎng)橋
sudo systemctl stop docker
sudo ip link set dev docker0 down
sudo brctl delbr docker0

然后創(chuàng)建一個新的網(wǎng)橋bridge0
sudo brctl addbr bridge0
sudo ip addr add 192.168.5.1/24 dev bridge0
sudo ip link set dev bridge0 up

ip addr show bridge0  # 查看確認(rèn)網(wǎng)橋創(chuàng)建并啟動

vim /etc/docker/daemon.json  將Docker默認(rèn)橋接到創(chuàng)建的網(wǎng)橋上。
{
    "bridge": "bridge0",
}
外部工具
pipework  # shell腳本,可以幫助用戶在比較復(fù)雜的場景中完成容器的連接
playground Docker容器網(wǎng)絡(luò)拓?fù)涔芾淼腜ython庫,包括路由器、NAT防火墻,以及其他一些基本服務(wù)。
編輯網(wǎng)絡(luò)配置文件
Docker 1.2.0以后支持在運(yùn)行中的容器編輯 /etc/hosts, /etc/hostname, /etc/resolve.conf文件
但是這些修改都是臨時的,只在運(yùn)行中的容器中保留。
創(chuàng)建點(diǎn)對點(diǎn)的連接
用戶需要有時候在兩個容器之間可以直連通信,而不用通過主機(jī)網(wǎng)橋進(jìn)行橋接。
解決方法是:創(chuàng)建一對peer接口,分別放到兩個容器中,配置成點(diǎn)對點(diǎn)鏈路。

1 啟動兩個容器
docker run -it --rm --net=none base /bin/bash
docker run -it --rm --net=none base /bin/bash

2 找到進(jìn)程號,然后創(chuàng)建網(wǎng)絡(luò)命名空間的跟蹤文件
docker inspect -f "{{.State.Pid}}" e9f076fc2447
docker inspect -f "{{.State.Pid}}" 762086c10c65

sudo mkdir -p /var/run/netns
sudo ln -s /proc/2989/ns/net /var/run/netns/2989
sudo ln -s /proc/3004/ns/net /var/run/netns/3004

3 創(chuàng)建一對peer接口,然后配置路由
sudo ip link add A type veth peer name B

sudo ip link set A netns 2989
sudo ip netns exec 2989 ip addr add 10.1.1.1/32 dev A
sudo ip netns exec  2989 ip link set A up
sudo ip netns exec 2989 ip route add 10.1.1.2/32 dev A

sudo ip link set B netns 3004
sudo ip netns exec 3004 ip addr add 10.1.1.1/32 dev B
sudo ip netns exec  3004 ip link set B up
sudo ip netns exec 3004 ip route add 10.1.1.2/32 dev B

到此2個容器可以相互ping通,并成功建立連接。點(diǎn)到點(diǎn)鏈路不需要子網(wǎng)和子網(wǎng)掩碼。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/27483.html

相關(guān)文章

  • Kubernetes Master High Availability 高級實(shí)踐

    摘要:才云科技云開源高級工程師唐繼元受邀社群,在線分享高級實(shí)踐,介紹如何構(gòu)建環(huán)境。除命令外的停止都是異常停止。 才云科技云開源高級工程師唐繼元受邀DBAplus社群,在線分享《Kubernetes Master High Availability 高級實(shí)踐》,介紹如何構(gòu)建Kubernetes Master High Availability環(huán)境。 以下是分享實(shí)錄: 大家好,我是才云科技的唐繼...

    JiaXinYi 評論0 收藏0
  • Docker容器網(wǎng)絡(luò)指南

    摘要:同時,眾多創(chuàng)業(yè)公司也已經(jīng)開發(fā)出定制的平臺來管理容器,而傳統(tǒng)的供應(yīng)商,如思科和使他們的網(wǎng)絡(luò)管理工具控制容器。虛擬網(wǎng)絡(luò)產(chǎn)品的思科的等個項(xiàng)目是第一批被支持的第三方網(wǎng)絡(luò)工具。 盡管媒體對容器技術(shù)存在大肆宣傳,但是,應(yīng)用程序打包技術(shù)仍在不斷發(fā)展之中,特別是與網(wǎng)絡(luò)有關(guān)的。 在過去的一年里,雖然Docker容器自身在網(wǎng)絡(luò)功能方面有著長足的進(jìn)步。但與此同時,Docker也構(gòu)建了一個插件架構(gòu),允許更先進(jìn)...

    ThreeWords 評論0 收藏0
  • 來說說Kubernetes的運(yùn)作機(jī)制

    摘要:提供用于獲取有關(guān)容器和容器組狀態(tài)的實(shí)時信息的服務(wù),以及有關(guān)群集中開發(fā)人員操作的詳細(xì)信息。集群最高級別的抽象是指運(yùn)行本身是集群應(yīng)用程序的一組機(jī)器及其管理的容器,一個集群必須有一個,即命令和控制集群中所有其他機(jī)器的系統(tǒng)。Docker容器改變了人們對開發(fā)、部署和維護(hù)軟件的思考方式,利用現(xiàn)代操作系統(tǒng)的本機(jī)隔離功能,容器支持類似于虛擬機(jī)的關(guān)注點(diǎn)分離,但是與基于虛擬機(jī)監(jiān)控程序的虛擬機(jī)相比,它的開銷要小得...

    yanest 評論0 收藏0
  • Docker企業(yè)級管理平臺開放下載,免費(fèi)使用

    摘要:云幫能解決什么問題新一代企業(yè)平臺讓開發(fā)人員輕松地開發(fā)部署和運(yùn)維應(yīng)用,讓架構(gòu)師和運(yùn)營人員利用熟知和可靠技術(shù)打造一個受控的運(yùn)行環(huán)境。有助于加速企業(yè)級應(yīng)用服務(wù)于市場,實(shí)現(xiàn)內(nèi)部資源的有效利用。 云幫是什么? 云幫 是一款基于容器技術(shù)的應(yīng)用管理平臺。社區(qū)版針對個人、企業(yè)完全免費(fèi),您可以自由的下載與傳播,但需要遵循我們的社區(qū)版協(xié)議。 云幫從哪里來? 云幫是 北京好雨科技有限公司 結(jié)合容器技術(shù)整合的...

    sumory 評論0 收藏0

發(fā)表評論

0條評論

jhhfft

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<