国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Docker Overlay網絡的MTU

wuyangnju / 3055人閱讀

摘要:如果的網卡為,則不需要此步驟設置和的以下步驟得在或之前做假設你有三個機器,,準備搞一個集群獲得的參數,注意停掉刪掉虛擬網卡啟動重建,記得設置之前得到的參數和正確的值再到和上執行相同的命令。

原文地址

Docker Daemon生產環境配置提到了MTU設置,但是這只是針對于名為bridge的docker bridge network,對于overlay network是無效的。

如果docker host machine的網卡MTU為1500,則不需要此步驟

設置ingressdocker_gwbridge的MTU

以下步驟得在swarm init或join之前做

假設你有三個機器,manager、worker-1、worker-2,準備搞一個Docker swarm集群

1) [manager] docker swarm init

2) [manager] 獲得docker_gwbridge的參數,注意Subnet

$ docker network inspect docker_gwbridge
[
    {
        "Name": "docker_gwbridge",
        ...
        "IPAM": {
            ...
            "Config": [
                {
                    "Subnet": "172.18.0.0/16",
                    ...
                }
            ]
        },
        ...
    }
]

3) [manager] docker swarm leave --force

4) [manager] 停掉docker sudo systemctl stop docker.service

5) [manager] 刪掉虛擬網卡docker_gwbridge

$ sudo ip link set docker_gwbridge down
$ sudo ip link del dev docker_gwbridge

6) [manager] 啟動docker sudo systemctl start docker.service

7) [manager] 重建docker_gwbridge

記得設置之前得到的Subnet參數和正確的MTU值

$ docker network rm docker_gwbridge
$ docker network create 
  --subnet 172.18.0.0/16 
  --opt com.docker.network.bridge.name=docker_gwbridge 
  --opt com.docker.network.bridge.enable_icc=false 
  --opt com.docker.network.bridge.enable_ip_masquerade=true 
  --opt com.docker.network.driver.mtu=1450 
  docker_gwbridge

再到worker-1和worker-2上執行相同的命令。

8) [manager] docker swarm init

9) [manager] 先觀察ingress network的參數,注意SubnetGateway

$ docker network inspect ingress
[
    {
        "Name": "ingress",
        ...
        "IPAM": {
            ...
            "Config": [
                {
                    "Subnet": "10.255.0.0/16",
                    "Gateway": "10.255.0.1"
                }
            ]
        },
        ...
    }
]

10) [manager] 刪除ingress network,docker network rm ingress

11) [manager] 重新創建ingress network,記得填寫之前得到的SubnetGateway,以及正確的MTU值:

$ docker network create 
  --driver overlay 
  --ingress 
  --subnet=10.255.0.0/16 
  --gateway=10.255.0.1 
  --opt com.docker.network.driver.mtu=1450 
  ingress

12) [worker-1] [worker-2] join docker swarm join ...

注意:新機器在join到swarm之前,得先執行第7步

驗證:

1) 啟動一個swarm service,docker service create -td --name busybox busybox

2) 觀察虛擬網卡

發現MTU都是1450:

$ ip link
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens3:  mtu 1450 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether fa:16:3e:71:09:f5 brd ff:ff:ff:ff:ff:ff
3: docker0:  mtu 1450 qdisc noqueue state UP mode DEFAULT group default
    link/ether 02:42:6b:de:95:71 brd ff:ff:ff:ff:ff:ff
298: docker_gwbridge:  mtu 1450 qdisc noqueue state UP mode DEFAULT group default
    link/ether 02:42:ae:7b:cd:b4 brd ff:ff:ff:ff:ff:ff
309: veth7e0f9e5@if308:  mtu 1450 qdisc noqueue master docker_gwbridge state UP mode DEFAULT group default
    link/ether 16:ca:8f:c7:d3:7f brd ff:ff:ff:ff:ff:ff link-netnsid 1
311: vethcb94fec@if310:  mtu 1450 qdisc noqueue master docker0 state UP mode DEFAULT group default
    link/ether 9a:aa:de:7b:4f:d4 brd ff:ff:ff:ff:ff:ff link-netnsid 2

3) 觀察容器內網卡

網卡MTU也是1450:

$ docker exec b.1.pdsdgghzyy5rhqkk5et59qa3o ip link
1: lo:  mtu 65536 qdisc noqueue qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
310: eth0@if311:  mtu 1450 qdisc noqueue
    link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff
自建overlay network的MTU 方法一:在docker compose file設置
...

networks:                                
  my-overlay:                               
    driver: bridge                       
    driver_opts:                         
      com.docker.network.driver.mtu: 1450

不過這樣不好,因為這樣就把docker compose file的內容和生產環境綁定了,換了個環境這個MTU值未必合適。

方法二:外部創建時設置
docker network create 
  -d overlay 
  --opt com.docker.network.driver.mtu=1450 
  --attachable 
  my-overlay

用法:

在docker compose file里這樣用:

...

networks:
  app-net:
    external: true
    name: my-overlay

docker run --network my-overlay ...

docker service create --network my-overlay ...

參考資料

Use overlay networks

Docker MTU issues and solutions

docker network create

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/27674.html

相關文章

  • Docker Swarm部署應用總結

    摘要:配置網絡參照生產環境配置中的和子網章節。特別注意觀察和的子網是否與已有網絡沖突如果有沖突則參考網絡的中的方法修改子網。部署使用的是的監控方案。創建應用網絡創建你也可以改成自己的名字參考網絡的檢查子網與是否配置正確。 原文 大綱 本文只是一種實際部署方案的例子,涉及到的技術有(除Docker/Docker Swarm外): Docker overlay network Fluentd...

    Paul_King 評論0 收藏0
  • Docker Daemon生產環境關鍵幾個參數

    摘要:原文地址一些生產環境中要注意的參數配置。本文介紹一些生產環境中要特別注意的參數,這些參數可以通過在命令行參數形式給,也可以通過在里配置。然后執行來驗證配置是否生效。它們的原理就是修改參數。 原文地址 一些docker daemon生產環境中要注意的參數配置。 本文介紹一些生產環境中dockerd要特別注意的參數,這些參數可以通過在dockerd命令行參數形式給,也可以通過在/etc/d...

    mengbo 評論0 收藏0
  • OpenStack 與 Rancher 融合新玩法

    摘要:本次分享給大家帶來與能夠融合使用的一些玩法。計算節點的進程不能在運行在中。部署的過程需要拉取很多鏡像,需要耐心的等待。之前的計劃應該是在版會添加的支持,差不多就是今年月份左右。 OpenStack是開源Iaas云的事實標準,功能大而全,除了能管理虛機同時也能管理容器,OpenStack項目中的Magnum、Kuryr、Kolla、Murano、Nova-docker等都是與容器場景很不...

    android_c 評論0 收藏0
  • 談談 Docker 網絡

    摘要:基于近期學習的內容,整理與網絡相關的知識。針對這一問題,采用網絡來解決。但這篇博客的重點不在,我們可以在啟動時,為其指定一個分布式存儲,從而使得我們能夠實驗網絡。 基于近期學習的 Docker 內容,整理與 Docker 網絡相關的知識。實驗環境:Centos 7.4 Docker 版本如下: Client: Version: 18.03.1-ce API versio...

    mozillazg 評論0 收藏0

發表評論

0條評論

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