weave网络介绍

Weave是Weaveworks开发的轻量级容器网络工具,无需分布式数据库即可创建跨主机的容器网络。通过weave,容器可以直接通信,无需NAT和端口映射。本文详细介绍了weave的安装、启动过程,以及网络结构,包括 weaveexec、weavedb 和 weave 服务的作用。此外,还展示了如何使用weave指定网络地址和IP,以及如何让外部网络访问weave网络。
摘要由CSDN通过智能技术生成

Weave网络介绍
Weave是 Weaveworks 开发的容器网络解决方案。weave 创建的虚拟网络可以将部署在多个主机上的容器连接起来。对容器来说,weave 就像一个巨大的以太网交换机,所有容器都被接入这个交换机,容器可以直接通信,无需 NAT 和端口映射。除此之外,weave 的 DNS 模块使容器可以通过 hostname 访问。

使用环境
weave 不依赖分布式数据库(例如 etcd 和 consul)交换网络信息,每个主机上只需运行 weave 组件就能建立起跨主机容器网络。我们会在 host1 和 host2 上部署 weave 并实践 weave 的各项特性。

Weava下载安装
其实就是下载一个weave的命令

curl -L git.io/weave -o /usr/local/bin/weave
chmod +x /usr/local/bin/weave
使用weave可以进行跨主机的容器网络的通信,这时需要在其中一台下载一些weave需要的组件

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

Weave网络部署
实验环境

一台已安装docker的linux系统即可

实验目的

安装完成weave并启动服务,进行网络分析,理解weave网络的原理结构

实验步骤

按照以上步骤两台主机下载安装weave命令

启动weave服务
第一次启动过程中会下载一些所需要的组件

[root@localhost ~]# weave launch

WARNING: existing iptables rule

'-A FORWARD -j REJECT --reject-with icmp-host-prohibited'

will block name resolution via weaveDNS - please reconfigure your firewall.
8dfaae8e2441dab13f29d45777033161dd61ee86a93dc304cc33d956c957db0e
下载启动完成后,会报出一条警告(WARNING),需要添加一条防火墙策略

[root@localhost ~]# iptables -A FORWARD -j REJECT --reject-with icmp-host-prohibited
[root@localhost ~]# iptables-save
weave启动完成后,会创建出一个新的docker网络weave,驱动类型为weavemesh

[root@localhost ~]# docker network ls
NETWORK ID NAME DRIVER SCOPE
b5f7f7433bac bridge bridge local
dc8bfdbda464 host host local
ecbab8a758e6 none null local
867d84127656 weave weavemesh local
同时也会多出三个关于weave服务的镜像

[root@localhost ~]# docker images
REPOSITORY TAG
weaveworks/weaveexec 2.6.2
weaveworks/weave 2.6.2
busybox latest
httpd latest
centos latest
weaveworks/weavedb latest
weave:是主程序,负责建立weave网络,收发数据,提供DNS服务等

weaveexec:是libnetwork CNM dirver,实现docker网络

weavedb:提供 Docker 命令的代理服务,当用户使用weave集群中的docker创建容器时,它会自动将容器添加到 weave 网络。

查看weave网络信息,10.32.0.0/12是weave的默认网段

[root@localhost ~]# docker network inspect weave

“Subnet”: “10.32.0.0/12”

使用weave网络
执行以下命令,类似于进入一个网络的命名空间,在此模式下创建的容器将会默认使用weave网络的ip网段

[root@localhost ~]# eval $(weave env)
运行容器查看获取ip,会发现一共有两个网段的网卡,一个是用于与docker0网卡桥接,可以连接外网,一个是weave网络

[root@lo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值