• 使用weave实现跨主机docker容器互联


    关于weave的原理不做细致的说明,如果想了解weave可以登陆官网:https://www.weave.works/

    In this post,使用阿里云3台ECS服务器进行weave搭建,并测试搭建weave后,跨主机docker容器的连通性。

    场景:
    10.162.204.252 node1
    10.171.31.181 node2
    10.171.19.139 node3

    一、在所有需要跨主机互通的docker宿主机安装weave。
    1.在node1上安装weave,并启动weave。
    wget -O /usr/bin/weave https://raw.githubusercontent.com/zettio/weave/master/weave
    chmod +x /usr/bin/weave
    weave launch

    *注释:在阿里云ECS执行weave launch启动会报错,请在启动的时候加--ipalloc-range 172.16.0.0/12,由于默认ip地址为10段。

    2.在node2上安装weave,并启动weave,并连接node1,如果有多个,可以在连接的时候指定多个。
    wget -O /usr/bin/weave https://raw.githubusercontent.com/zettio/weave/master/weave
    chmod +x /usr/bin/weave
    weave launch 10.162.204.252 --ipalloc-range 172.16.0.0/12

    3.在node3上安装weave,并启动weave,并连接node1,如果有多个,可以在连接的时候指定多个。
    wget -O /usr/bin/weave https://raw.githubusercontent.com/zettio/weave/master/weave
    chmod +x /usr/bin/weave
    weave launch 10.162.204.252 10.171.31.181 --ipalloc-range 172.16.0.0/12


    二、在所有需要跨主机互通的docker宿主机启动docker测试容器。
    1.在node1上,启动一个测试容器,centos或者ubuntu都可以。
    weave run 192.168.4.1/24 -it --name node1 ubuntu /bin/bash

    2.在node2上,启动一个测试容器,centos或者ubuntu都可以。
    weave run 192.168.4.2/24 -it --name node2 centos /bin/bash

    3.在node1上,启动一个测试容器,centos或者ubuntu都可以。
    weave run 192.168.4.3/24 -it --name node3 centos /bin/bash

    三、测试容器的互通性。
    1.登陆node1上启动的测试容器,测试与node2和node3上docker容器的连通性。


    2.登陆node2上启动的测试容器,测试与node1和node3上docker容器的连通性。

    3.登陆node3上启动的测试容器,测试与node1和node2上docker容器的连通性。

    到此,如果没有出现任何问题,跨主机的docker容器已经能够互联。

  • 相关阅读:
    3892: [Usaco2014 Dec]Marathon
    3891: [Usaco2014 Dec]Piggy Back
    2016: [Usaco2010]Chocolate Eating
    3016: [Usaco2012 Nov]Clumsy Cows
    3359: [Usaco2004 Jan]矩形
    1593: [Usaco2008 Feb]Hotel 旅馆
    关于ubuntu上无法运行cmd markdown
    Mininet实验 动态改变转发规则
    Mininet简单性能测试
    Mininet实验 基于Mininet测量路径的损耗率
  • 原文地址:https://www.cnblogs.com/xkops/p/5569876.html
Copyright © 2020-2023  润新知