calico】的更多相关文章

From the previous posts, I have analysed 4 different Docker multi-host network solutions - Calico, Flannel, Weave and Docker Overlay Network. You can see more details on how to install, config and tune features of them from previous posts: Calico: A…
一,Multi-host网络需求 开始之前推荐两篇文章 http://xelatex.github.io/2015/11/15/Battlefield-Calico-Flannel-Weave-and-Docker-Overlay-Network/ http://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=400983139&idx=1&sn=f033e3dca32ca9f0b7c9779528523e7e&scene=1&a…
在上一篇文章<quay.io/coreos/etcd 基于Docker镜像的集群搭建>中,介绍了ETCD集群的搭建.在此基础上,我们进一步实践calico docker的应用. PaaS 平台的网络需求: 在使用Docker构建PaaS平台的过程中,我们首先遇到的问题是需要选择一个满足需求的网络模型: 1)让每个容器拥有自己的网络栈,特别是独立的 IP 地址: 2)能够进行跨服务器的容器间通讯,同时不依赖特定的网络设备: 3)有访问控制机制,不同应用之间互相隔离,有调用关系的能够通讯. 调研了…
一,需求 Kubernetes官方推荐的是Flannel,但是Flannel是一个overlay的网络,对性能会有一定的影响.Calico恰好能解决一下overlay网络的不足. Calico在Kubernetes上是以plugin的方式运行的,即calico会检测Kubernetes对于pod或者service的操作,来控制ip的分配和回收.   二,准备 主要参考: https://github.com/kubernetes/kubernetes/blob/master/docs/getti…
(这一篇中很多错误,勿参考!) The reference urls: https://github.com/kubernetes/kubernetes/blob/master/docs/getting-started-guides/ubuntu-calico.md https://github.com/projectcalico/calico-docker/blob/master/docs/kubernetes/KubernetesIntegration.md   I have 3 hosts…
Calico 是一个纯三层的虚拟网络方案,Calico 为每个容器分配一个 IP,每个 host 都是 router,把不同 host 的容器连接起来.与 VxLAN 不同的是,Calico 不对数据包做额外封装,不需要 NAT 和端口映射,扩展性和性能都很好. 与其他容器网络方案相比,Calico 还有一大优势:network policy.用户可以动态定义 ACL 规则,控制进出容器的数据包,实现业务需求. 实验环境描述 Calico 依赖 etcd 在不同主机间共享和交换信息,存储 Cal…
上一节我们部署了 Calico 网络,今天将运行容器并分析 Calico 的网络结构. 在 host1 中运行容器 bbox1 并连接到 cal_net1: docker container run --net cal_net1 --name bbox1 -tid busybox 查看 bbox1 的网络配置. cali0 是 calico interface,分配的 IP 为 192.168.119.2.cali0 对应 host1 编号 11 的 interface cali5f744ac0…
前面我们完成了 Calico 网络的部署并运行了容器,今天将讨论 Calico 的连通性. 测试一下 bbox1 与 bbox2 的连通性: ping 成功,数据包流向如下图所示. ① 根据 bbox1 的路由表,将数据包从 cal0 发出. ② 数据经过 veth pair 到达 host1,查看路由表,数据由 enp0s8 发给 host2(192.168.56.105). 192.168.183.64/26 via 192.168.56.105 dev enp0s8  proto bird…
Calico 默认的 policy 规则是:容器只能与同一个 calico 网络中的容器通信.本节讨论如何定制 policy. calico 能够让用户定义灵活的 policy 规则,精细化控制进出容器的流量,下面我们就来实践一个场景: 创建一个新的 calico 网络 cal_web 并部署一个 httpd 容器 web1. 定义 policy 允许 cal_net2 中的容器访问 web1 的 80 端口. 首先创建 cal_web. docker network create --driv…
在前面的小节中,我们没有特别配置,calico 会为自动为网络分配 subnet,当然我们也可以定制. 首先定义一个 IP Pool,比如: cat << EOF | calicoctl create -f - - apiVersion: v1 kind: ipPool metadata: cidr: 17.2.0.0/16 EOF 用此 IP Pool 创建 calico 网络. docker network create --driver calico --ipam-driver cali…