• 使用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容器已经能够互联。

  • 相关阅读:
    python之Socket网络编程
    python_异常处理
    python_面向对象编程
    Vue-cli3与springboot项目整合打包
    命令打开java控制面板
    后端记录用户登录失败次数
    跨域问题解决办法
    vue-i18n多语言文件归类的两种方法
    svn全局设置过滤文件没有作用的解决办法
    vue数据变化后页面刷新
  • 原文地址:https://www.cnblogs.com/xkops/p/5569876.html
Copyright © 2020-2023  润新知