14 Weave for Docker
Weave 是由Weaveworks针对Docker网络管理开发的,类似于Flannel, Calico 和 Docker重叠网络。Weave处理Docker多主机网络并且管理Docker不同主机上的网络合并,跟另外三种方案相比,weave提供更多特性和选择。
Weave简介
Weave创建一个虚拟网络,跨多台主机连接Docker。在不同主机上的Docker能够互相通信,跟在同一个局域网中一样,在这个局域网中也支持广播。除此之外Docker能够通过主机名互相发现,通过执行Weave DNS发现模块实现,在其它多主机网络解决方案中是不支持的。
Weave也能穿越防火墙并在部署连接的网络中操作。数据包通过最短路径传输到目标主机容器,即使这台主机隐藏在防火墙后,并且发送者主机不能直接访问目标主机。流量也能够被加密,允许主机穿过不受信的网络建立连接。
Weave和Docker可以运行在单主机或重叠网络上,所以在Docker中Weave需要一块独立的网卡,在主机上的weave虚拟网卡能抓取到来自Docker的所有数据包。
安装和配置
环境准备
两台或多台主机(虚机或实机)需要通过weave安装Docker集群,这里使用两台主机(node1:192.168.56.10, node2:192.168.56.20),Ubuntu 14.04
安装和运行Weave集群
sudo wget -O /usr/local/bin/weave https://raw.githubusercontent.com/zettio/weave/master/weave sudo chmod a+x /usr/local/bin/weave 启动weave路由器,这个路由器其实也是在docker中启动的: 启动weave 在Node1执行 [root@h-46mow360 ~]# weave launch [root@h-46mow360 ~]# ifconfig 启动weave 在Node2执行 [root@h-46mow360 ~]# weave launch 192.168.56.10 [root@h-46mow360 ~]# ifconfig ubuntu@node1:~$ weave status connections <- 192.168.56.20:38183 established fastdp 4e:55:70:61:4d:57(node2) 运行Docker Weave集群启动后,我们就可以在两台节点上运行Docker了 ubuntu@node1:~$ weave run -itd --name=worker-1 ubuntu:14 ubuntu@node2:~$ weave run -itd --name=worker-2 ubuntu:14 如果不用weave run 执行eval $(weave env) host1# eval $(weave env) host1# docker run --name a1 -ti weaveworks/ubuntu 检查网络 ubuntu@node1:~$ docker exec worker-1 ping ip
命令
weave launch ip
weave connect ip
weave status connections
eval $(weave env)
weave run
参考 http://www.cnblogs.com/feisky/p/4093717.html http://blog.csdn.net/reedchi/article/details/51670558 https://www.weave.works/docs/net/latest/using-weave/
相关推荐
Weave 创建一个虚拟网络并连接到部署在多个主机上的 Docker 容器。应用程序使用该网络就好像它们是插在同一个网络交换机上,无需任何配置和端口映射。容器内的服务可直接为容器外的应用所访问,而不需要关心容器运行...
今天,我们将深入探讨主流 Docker 网络的实现原理,包括 Docker 原生的 Overlay 网络、Weave 网络和 Flannel 网络。 一、容器网络简介 容器网络是 Docker 环境中容器之间的通信网络。它是容器化应用程序的关键组件...
在这样的背景下,可以通过weave网络实现容器间的互联,同时通过Docker原生网络配合weave网络实现容器访问外部网络和端口映射的需求。每个容器在Weave网络中分配了两个虚拟网卡,分别用于weave网络和宿主机网络的通信...
本文将深入探讨Docker网络解决方案——Flannel的部署过程。 首先,理解Flannel的核心概念是必要的。Flannel为每个容器分配一个全局唯一的IP地址,无论容器运行在哪个节点上,其他节点上的容器都可以通过这个IP直接...
- **网络驱动程序插件**:Docker支持第三方网络驱动,如Weave、Flannel等,以实现更复杂的网络配置。 - **网络策略**:可以通过网络策略来限制容器之间的通信,增加安全性。 理解并熟练使用这些Docker网络命令对于...
Docker网络增强项目是针对Docker原生网络功能的局限性而发展的一系列解决方案,旨在提供更强大、更灵活的网络管理能力,以满足安全性和特殊功能需求。以下是一些主要的Docker网络增强项目介绍: 1. **Libnetwork**...
Weave是另一种与Docker Overlay类似的网络解决方案,它简化了网络配置,提供了自动发现和自动连接的功能,使得容器网络的管理更为简便。 四、Flannel Flannel是CoreOS开发的轻量级网络解决方案,旨在为Kubernetes...
- **使用Weave**:Weave是一种网络插件,可以简化Docker环境下的网络配置,提供更为灵活和高性能的网络解决方案。 - **Bridged与Flat Networking**:在数据中心内部采用Bridged或Flat Networking,可以实现跨物理机...
因此,有许多项目如Flannel、Weave、Calico等致力于增强Docker的网络功能,提供更高级的网络策略和隔离。 总的来说,Docker的网络机制通过Linux内核的特性实现了容器间的网络隔离和通信,同时提供了链接、端口暴露...
Docker支持第三方网络驱动程序,如Weave、Flannel、Calico等,这些插件提供更高级的网络特性,如端到端加密、网络策略和路由控制,增强了网络的灵活性和安全性。 6. **网络命名空间和网络栈** Docker容器的网络...
Docker支持网络驱动插件扩展,如Calico、Weave Net和Flannel等,它们提供了更高级的网络特性,如网络策略控制、IP地址管理、路由和安全性等。这些插件可以增强Docker网络的灵活性和安全性。 六、网络安全 Docker...
在网络插件的使用中,需要注意的是,除了 Calico 之外,还有许多其他的网络解决方案,比如 Flannel、Weave Net 和 Cilium 等,它们各自有着不同的特性、优势和适用场景。管理员在选择网络插件时应根据实际需求和集群...
为了应对这些挑战,社区发展出了一系列Docker网络优化方案,如Flannel、Weave、Calico等,它们提供更高级别的网络服务,如网络策略、负载均衡和跨主机容器通信。这些项目丰富了Docker的网络生态,使得用户可以根据...
6. **安装网络插件**:k8s 需要网络插件才能使容器通信,如 Flannel、Calico 或 Weave Net。 7. **部署应用**:现在可以使用 kubectl 命令部署应用了,如 `kubectl apply -f <your-deployment-file>.yaml`。 以上...
在Docker平台上使用Flocker和Weave 观看影片 参见 然后回到这里与Vagrant一起尝试! 流浪汉快速入门 您还将需要安装Vagrant 1.7.2和Virtualbox。 然后: $ git clone git@github.com/plugins-demo-2015/demo ...
weave docker镜像