如何使用 Weave 网络?

weave 是 Weaveworks 开发的容器网络解决方案。

weave 创建的虚拟网络可以将部署在多个主机上的容器连接起来。

对容器来说,weave 就像一个巨大的以太网交换机,所有容器都被接入这个交换机,容器可以直接通信,无需 NAT 和端口映射。

除此之外,weave 的 DNS 模块使容器可以通过 hostname 访问。

实验环境描述

weave 不依赖分布式数据库(例如 etcd 和 consul)交换网络信息,每个主机上只需运行 weave 组件就能建立起跨主机容器网络。

我们会在 host1 和 host2 上部署 weave 并实践 weave 的各项特性。

安装部署 weave

weave 安装非常简单,在 host1 和 host2 上执行如下命令:

curl -L git.io/weave -o /usr/local/bin/weave

chmod a+x /usr/local/bin/weave

在 host1 中启动 weave

在 host1 中执行 weave launch 命令,启动 weave 相关服务。

weave 的所有组件都是以容器方式运行的,weave 会从 docker hub 下载最新的 image 并启动容器。

weave 运行了三个容器:

  • weave 是主程序,负责建立 weave 网络,收发数据 ,提供 DNS 服务等。
  • weaveplugin 是 libnetwork CNM driver,实现 Docker 网络。
  • weaveproxy 提供 Docker 命令的代理服务,当用户运行 Docker CLI 创建容器时,它会自动将容器添加到 weave 网络。

weave 会创建一个新的 Docker 网络 weave:

driver 为 weavemesh,IP 范围 10.32.0.0/12。

------------------------------------------引用来自---------------------------------------------

https://mp.weixin.qq.com/s?__biz=MzIwMTM5MjUwMg==&mid=2653587827&idx=1&sn=fda879b42ad0a6fbdc39b3f45956f53a&chksm=8d30816aba47087c14d7e3a6bd6910c12a7731852335bd9b9973d8a64c81fa08f1ea433a3aaf&scene=21#wechat_redirect

第 8 章 容器网络 - 063 - 如何使用 Weave 网络?的更多相关文章

  1. Docker Weave网络部署

    Weave在Docker主机之间实现Overlay网络,使用业界标准VXLAN封装,基于UDP传输,也可以加密传输.Weave Net创建一个连接多个Docker主机的虚拟网络,类似于一个以太网交换机 ...

  2. 第 8 章 容器网络 - 072 - 一文搞懂各种 Docker 网络

    Docker 起初只提供了简单的 single-host 网络,显然这不利于 Docker 构建容器集群并通过 scale-out 方式横向扩展到多个主机上. 跨主机网络方案: Docker Over ...

  3. 第 8 章 容器网络 - 069 - Calico 的默认连通性

    相同calico 网络之间的连通性 测试一下 bbox1 与 bbox2 的连通性: ping 成功,数据包流向如下图所示. 1)根据 bbox1 的路由表,将数据包从 cal0 发出. 2)数据经过 ...

  4. 第 8 章 容器网络 - 066 - Weave 如何与外网通信?

    Weave 与外网通信 weave 是一个私有的 VxLAN 网络,默认与外部网络隔离. 外部网络如果要访问到 weave 中的容器:1.首先将主机加入到 weave 网络.2.然后把主机当作访问 w ...

  5. 第 8 章 容器网络 - 065 - 容器在 Weave 中如何通信和隔离?

    首先在host2 执行如下命令: weave launch 10.12.31.22 这里必须指定 host1 的 IP 10.12.31.22,这样 host1 和 host2 才能加入到同一个 we ...

  6. 第 8 章 容器网络 - 064 - Weave 网络结构分析

    Weave 网络结构分析 在 host1 中运行容器 bbox1: eval $(weave env) docker run --name bbox1 -itd busybox 首先执行 eval $ ...

  7. 第 8 章 容器网络 - 054 - 准备 macvlan 环境

    准备 macvlan 环境 macvlan 本身是 linux kernel 模块,其功能是允许在同一个物理网卡上配置多个 MAC 地址,即多个 interface,每个 interface 可以配置 ...

  8. centos7下安装docker(12.5容器在单个host上的网络总结)

    单个host上的容器的网络:通过本章的学习,我们知道docker默认有三种网络,可以通过docker network ls查看: none:封闭的网络,通过--network=none来指定: hos ...

  9. Java基础知识二次学习--第七章 容器

    第七章 容器   时间:2017年4月27日15:08:30 章节:07章01节~07章04节 视频长度:20:21 +12:38 +3:55 +2:57 内容:容器API 心得: Java API ...

随机推荐

  1. SVN和Git对比梳理

    在日常运维工作中,经常会用到版本控制系统,目前用到最广泛的版本控制器就是SVN和Git,那么这两者之间有什么不同之处呢?SVN(Subversion)是集中式管理的版本控制器,而Git是分布式管理的版 ...

  2. npm 镜像的问题

    1> cnpm(不推荐) npm install -g cnpm --registry=https://registry.npm.taobao.org 2> 推荐第二种 npm confi ...

  3. Excel编辑栏字体显示大小

    文件-> 选项-> 常规与保存-> 标准字体-> 确定 关闭文件,重启生效

  4. vue项目搭建步骤

    https://blog.csdn.net/echo008/article/details/77099058 https://blog.csdn.net/echo008/article/details ...

  5. pwn学习日记Day4 基础知识积累

    知识杂项 *:字符串重复 空指令NOP:\x90 cmp:是比较指令,cmp的功能相当于减法指令.它不保存结果,只是影响相应的标志位. xor:将两个操作数进行异或运算,并将结果存放到操作数1中. s ...

  6. js回溯法计算最佳旅行线路

    假如有 A,B,C,D四个城市,他们之间的距离用 G[V][E] 表示,为 无穷大,则表示两座城市不相通 现在从计算从某一个城市出发,把所有的城市不重复旅行一次,最短路径 其中G为: (Infinit ...

  7. 对stm32寄存器的理解(个人理解,大神轻喷)

    学习了stm32有一年了,今天想来写写自己对寄存器的理解,帮助那些有志学习stm32的朋友们少走一些弯路. ---------------------------------------------- ...

  8. java Quartz定时器任务与Spring 的实现

    1.xml配置 <?xml version="1.0" encoding="UTF-8"?><beans xmlns="http:/ ...

  9. MyBatis基础入门《二十》动态SQL(foreach)

    MyBatis基础入门<二十>动态SQL(foreach) 1. 迭代一个集合,通常用于in条件 2. 属性 > item > index > collection : ...

  10. bs4.FeatureNotFound: Couldn’t find a tree builder with the features you requested: lxml.

    python3 bs4解析网页时报错: bs4.FeatureNotFound: Couldn’t find a tree builder with the features you requeste ...