【Calico系列】1 Calico官网文章列表
2020-01-09 tech calico bgp 39 mins 13680 字
前言
Calico 是容器网络的一种解决方案,提供了纯 3 层的网络模型,每个容器都通过 IP 直接通信,中间通过路由转发找到对方。容器所在的节点充当传统的路由器,提供了路由查找的功能。
我计划将 Calico/BGP 相关的内容都过一遍,把这个过程记录下来。本篇是第一篇,对目前为止官网的 blog 做了一些简单的中文备注或吐槽。calico 团队是个挺有趣的团队(笑,也一直在前进。
由于网络的水深与个人能力有限,本文不免存在错误之处。如有疑问,请查阅文末参考资料或与我线上/线下讨论。
官网
-
为什么选择Calico?
免费开源,简单,可伸展,安全的云网络 (simplify, scale, and secure)
Scalable, distributed control plane
可分发的控制平面Policy-driven network security
安全的网络策略No overlay required
不需要overlayPluggable Data Plane
可插拔的数据平面Integrated with all major cloud platforms
集成云平台Widely deployed, and proven at scale
可扩展
-
功能
- 路由
- ip管理
- 控制平面
- 数据平面
- 网路策略
- 监控
- 支持多架构、多公有云
github: https://github.com/projectcalico/calico
blog列表
https://www.projectcalico.org/blog/
重点感兴趣的技术文,我加粗显示。
-
2014-06-25 Welcome to Project Calico! 开启新项目,仅支持openstack。
-
2014-07-21 Update from the Calico Team – July 21 正在开发calico基于chef的自动化安装,支持centos系Linux,正在定义calico的开发路线图,正在招新。bugfix。
每两周是一个开发周期,每个开发周期(sprint)都用猫的名字来定义。
-
2014-07-22 German Rex is out! 新版本可以加快openstack和calico的安装。
-
2014-07-25 Update from the Calico Team – July 25th 新成员加入,正在建立一套框架进行安装测试和calico的功能测试。
-
2014-08-04 Introducing Havana Brown! bugfix。
-
2014-08-06 Welcome to Red Hat / RPMs available for Calico! 支持redhat,也就是centos系Linux。
-
2014-09-16 New Architecture, Updated Roadmap and IPv6 Support 做了未来开发的规划,正在规划calico架构。将Felix分离出来。已经支持ipv6了。
-
2014-10-17 Congratulations to the OpenStack community on releasing Juno 恭喜 openstack 某版本发布,汇报进度。(对不起我们鸽了,毕竟正在迁移架构。)
-
2014-10-27 New packages and architecture on the way 这次不鸽了,我们已经迁移到新架构了,并准备支持的 openstack 的新版本。但是建议大家等过几天我们推出的新版本。我们下周需要更多的测试,但尽量不影响版本发布。 下周参加openstack峰会。
-
2014-11-07 The three P’s – Paris, Packages and Pesto 几个人参加了峰会,剩下的人在忙碌进行测试,修复bug。(流水账)
-
2014-11-19 Calico and Docker containers 验证了calico与docker结合的可行性,令人兴奋!但是短期内不打算进一步开发。
-
2014-12-03 OpenStack London meetup 活动日常广告。
-
2014-12-16 Exploring Juju with Project Calico 利用juju工具安装openstack与calico。
-
2014-12-19 Updating our Docker prototype to work on GCE 为 gce 的虚机和容器测试calico,讲了一些难点和思路。
-
2015-01-12 Why Calico? 技术文!这篇很有看头,可以更好地理解calico为何选择三层协议进行互联。
-
2015-01-15 New packages and an award 新版本0.10,得了一个杂志的奖项。
-
2015-01-23 Obtaining External Connectivity in OpenStack 在openstack架构中,calico如何做到外部访问内部。
-
2015-02-03 Why BGP? 技术文!介绍calico为何选择bgp协议。
任何网络,特别是大型网络,都有两个不同的路由问题需要处理:
1)发现网络的路由器间拓扑
2)发现网络中或外部连接到网络的endpoint
Calico的设计哲学是使用互联网工具和技术来扩展网络结构。基于VM的云可以托管成千上万的计算服务器,容器云可能会将端点计数增加一两个数量级,BGP是唯一可行的选择。在Calico设计中,这相当于数万个路由器,甚至数百万条路由或端点。BGP路由反射是Calico体系结构的关键部分。
- 简单
- 行业当前的最佳实践
- 唯一可以充分扩展的协议
-
2015-02-03 Using Ethernet as the interconnect fabric for a Calico installation 技术文!基于以太网的calico网络架构设计
在大多数云网络基础架构中,网络边缘是机架柜顶交换机(ToR)。ToR下的计算服务器只是将流量封装起来并将其发送到ToR。没有 可见的 (到互连结构)聚合发生在计算服务器上。
Calico 将IP 推到了边缘,但是在Calico网络中,该边缘是计算服务器本身。
-
2015-02-03 See Project Calico in Action at #MWC15 活动日常广告。
-
2015-03-11 CoreOS London Meetup report 活动日常广告。
-
2015-03-16 Calico at the Docker Edinburgh meetup 活动日常广告。
-
2015-03-23 Calico at Docker Edinburgh 活动日常广告。
-
2015-03-26 Calico Introduction at FOSDEM 活动日常广告。
-
2015-03-31 Technical note on IP fabrics published 技术文!基于IP的calico网络架构设计
一些相关问题:
- Calico网络中路由表的大小,与交换机中的转发表大小的比较
- 确保适当的自治系统边,界并确保这些自治系统的连续性
- 确保路由通告的下一跳正确
-
2015-04-02 Project Calico comes to New York and does a (mini) meetup marathon 活动日常广告。
-
2015-04-10 Moving Calico to a distributed data store using etcd 改架构啦,把存储换成etcd。
-
2015-04-16 IPv6, DDoS and Project Calico 介绍calico如何解决空地址攻击问题。由于calico路由器路由表中均具有完整且准确的端点列表网络,calico只使用最长匹配,不存在的请求就放到黑洞路由中,静默丢弃。
-
2015-04-20 Calico version 0.16 released 版本升级,主要是换了etcd存储。
-
2015-04-27 Project Calico and Clocker 企划联动广告。
-
2015-05-07 Project Calico at the Docker London May meetup 活动日常广告。
-
2015-05-12 Calico at Docker Randstad 活动日常广告。
-
2015-05-14 Using etcd for elections 流水账说明。
-
2015-05-26 Fueling Mirantis OpenStack with Calico 版本联动广告。openstack。
-
2015-06-02 A better future for securing micro-services 活动日常广告。开始见到 kubernetes 了。
-
2015-06-21 Seamless OpenStack and Docker networking using Apache Brooklyn and Project Calico 与brooklyn 和 openstack 的联动广告。
-
2015-06-22 Calico adds simple, highly efficient networking with fine grained security policy to Docker 1.7 release 与 docker 联动!
-
2015-06-25 The Sharp Edges of Gevent 额,不感兴趣,与calico也没有关系。
-
2015-07-09 Calico and containers are flip sides of the same coin 科普文,docker 是未来趋势。
-
2015-07-13 When you view a scale-out network through a 1990’s enterprise lens…. 技术文!雄文。我目前还看不太懂。
-
2015-07-16 Calico networking for Kubernetes 为k8s 1.0 打造的第一个版本。
-
2015-07-17 Its obvious, Project Calico needs to communicate better 技术文!对某篇评论calico文章的的回应。涉及网络知识点较多且深,目前理解起来有困难。
-
2015-08-04 Calico and Weave Scope 非常有趣的项目,可视化排查故障。目前还在研究初期。
-
2015-08-13 Calico Network Policy Comes to Kubernetes 可以在k8s上运行网络策略,而不必使用calico网络的特性。
-
2015-08-14 Emerald City, here we come! 活动日常广告。
-
2015-08-14 Announcing Calico v1.0 1.0版本!
拥有以下特性:
- 针对VM和容器的虚拟化第3层网络解决方案。
- 与 OpenStack Neutron 完全可部署的集成,支持多个Neutron服务器和API线程,以及VM的实时迁移。
- 与容器管理和编排系统(例如Docker,Kubernetes等)的概念验证级别集成。
- 支持IPv4和IPv6工作负载。
- 通过白名单的灵活安全策略,将允许的流量集成到OpenStack的已配置安全组中。
- 控制平面正常重启而不会影响数据平面–您可以重启Calico代理,Neutron插件和BGP客户端,而不会影响工作负载之间的数据流。
达到了以下测试情况:
- 基于Calico的OpenStack集群,其中包含10,000个VM,可跨500个计算主机运行。
- Calico的容器部署可在500台主机上运行多达50,000个容器,且设置速率每秒超过20个容器。
- 在10 Gb网络上的吞吐量测试显示,Calico网络VM的吞吐量接近裸机速度的100%,性能是任何其他虚拟网络技术都无法比拟的。
-
2015-08-20 Calico Q&A with InfoQ 活动日常广告。
-
2015-08-31 Mesos Networking leaps forward with Calico 活动日常广告。
-
2015-09-07 Calico dataplane performance calico的数据平面测试结果!
-
2015-09-09 Calico now works with vanilla OpenStack 版本联动广告。
-
2015-10-07 Calico comes to Dublin 活动日常广告。
-
2015-10-15 OpenStack Liberty – now with added Calico 版本联动广告。
-
2015-10-22 Tokyo here we come and a v1.2 sneak peek 活动日常广告,新版本预热。
-
2015-10-23 Docker 1.9 includes network plugin support and Calico is ready! 支持 docker 的网络插件新特性。
-
2015-10-26 Announcing Calico 1.2! 1.2版本!
-
2015-11-06 Securing Namespaces and Services in Kubernetes 对namespace和service进行访问控制,可以把service暴露出namespace。
-
2015-11-12 Barcelona, here we come! 活动日常广告。
-
2015-11-25 A Little Cat in the Big Apple 活动日常广告。
-
2015-12-03 Calico Networking for Tectonic 企划联动广告。支持 coreos 的企业级k8s Tectonic。今天已经改名了,叫 red hat openshift。
-
2015-12-15 Packet announces beta support for Project Calico 企划联动广告。
-
2016-01-22 Announcing 1.0 Calico CNI integration for Kubernetes 针对 Kubernetes 的 Calico 插件1.0里程碑版本。与CNI集成。
-
2016-02-04 A rocket reaches orbit, Project Calico is right there with it 与 Redhat的py交易,宣传rkt,互相站台。
-
2016-02-11 A Sneak Peek at Kubernetes Policy 科普文,Calico如何将网络策略引入Kubernetes。
-
2016-03-09 Announcing Calico 1.3.0 1.3版本!大规模场景下的性能和占用率优化,测试包括
- 1000个主机中的100,000个容器,每秒的启动速度约为165个容器。该测试包括验证每个容器中的网络连接性,并强加“预定的”分布式安全规则。
- 跨 500 个 OpenStack 主机的 10,000 个VM,每秒6个VM的变动率。
-
2016-04-19 DC/OS: Data center automation with a side of Calico secure networking 企划联动广告。数据中心操作系统。
-
2016-04-19 Calico visits the land of the Longhorns 活动日常广告。
-
2016-05-05 Calico-DC/OS Demo: Security, Speed, and No More Port Forwarding! 科普文,Calico-DC/OS Demo。
-
2016-05-09 Containers, Cloud and Currywurst: CoreOS Fest 2016 活动日常广告。
-
2016-05-09 Flannels, Canals and Tigers, Oh My! — Big News in the Land of Project Calico 新特性预研广告。
-
2016-06-01 Canal brings fine-grained policy to DC/OS and Apache Mesos via CNI canal 发布预热。
-
2016-07-27 Mesos 1.0 – Now with Calico CNI 企划联动广告。mesos 1.0 发布.
-
2016-10-31 Let’s Talk Policy (for a Change) 特性宣传广告。网络策略。
-
2016-11-03 See you in Seattle 活动日常广告。
-
2016-11-07 Celebrating two Milestone Releases 2.0 beta版本宣传预热!
-
2016-11-08 Primetime Kubernetes with Kismatic + Calico 企划联动广告。
-
2016-11-09 And The Winner Is… Project Calico 客户案例广告。
-
2016-11-09 Click, Deploy, Secure: Kubernetes the Easy Way 客户案例广告。
-
2016-11-28 The Results are In… for the 2016 Calico User Survey 用户调查。
虚拟网络解决方案的前5个最重要的因素是:
- 可靠性/简单性
- 数据平面性能
- 易于故障排除
- 可扩展性/控制平面性能
- 微细分/细粒度的安全策略
calico的排名都不错。
-
2016-11-29 Turbo-charged Calico 客户案例广告,偏技术,实现思路很巧,使用了DPDK 。 用加速的用户空间数据平面替换了Calico默认使用的标准Linux内核数据平面。
-
2016-12-22 A Christmas Present from the Team… Calico 2.0! 2.0 版本发布!新特性
- 一个新的基于资源的UX模型(类似于Kubernetes的习惯用法)
- 重大的性能改进
- 简化Kubernetes安装
- 新的数据平面驱动程序API(实验性)
- 增加对使用Kubernetes本身作为数据存储的支持,消除了对etcd的需求。
-
2017-01-03 Calico launches into Gravitational’s orbit 客户案例广告。
-
2017-03-28 New Series: Cloud Native, Microservices, Security, & Scale 演讲文!云原生系列: 微服务,安全性和规模
-
2017-02-24 Webinar: Simplify & Secure Your OpenShift Network 企划联动广告。OpenShift。
-
2017-03-01 New AWS Quick Start Features Project Calico as Default Networking Solution 企划联动广告。AWS。
-
2017-03-21 Project Calico 2.1 Released! 2.1 版本发布!新特性
- IP自动检测
- IP-in-IP模式中用于流量处理
- … …
- Felix和calico / node容器完全用Go编写,性能和占用率优化!
-
2017-03-28 From Zero to Azure: Network Policy Comes to ACS Engine 企划联动广告。Azure。
-
2017-04-04 Cloud Native Series: Monolithic Enterprise and Modern Needs 演讲文!云原生系列:整体企业和现代需求
-
2017-04-11 KubeCon Keynote: Around the (Cloud Native) World in 323 Days KubeCon主题演讲
-
2017-04-13 DockerCon 2017: Hot Dogs, Talks, and Kitties 活动日常广告。
-
2017-04-25 1,000 Community Slack Users!!! 自吹广告。
-
2017-04-27 Cloud Native Series: What is Cloud Native 演讲文!云原生系列:什么是Cloud Native。
-
2017-05-02 Join Karthik at OpenStack Summit Boston 活动日常广告。
-
2017-05-02 Project Calico 2.2 Released! 2.2 版本发布!新特性
- 改进GoBGP支持
- CNI版本更新
- KDD(Kubernetes数据存储驱动程序)路由
- BIRD 1.6.3的BGP多路径支持BIRD 1.6.3
- Felix性能和占用率改进
-
2017-05-12 3 Takeaways on the Future of OpenStack Networking from the Boston Summit 活动日常广告。(可以看出来calico现在在战略上k8s与openstack并驾齐驱了)
-
2017-05-17 Video: Common Networking Operations Across Kubernetes and OpenStack with Calico 自吹广告,但还不错。使用Calico跨Kubernetes和OpenStack进行通用网络操作
-
2017-05-24 Network Policy and Istio: Deep Dive 新技术预热,Istio。
-
2017-05-24 Welcoming Istio to the Kubernetes networking community 企划联动广告。Istio。
-
2017-06-08 How Giant Swarm uses Calico to enable multi-tenant Kubernetes 企划联动广告。Swarm。
-
2017-06-15 Cloud Native Series: What are Microservices 什么是微服务。
-
2017-06-23 Project Calico 2.3 Released! 2.3 版本发布!新特性
- 显着的性能改
- v1 NetworkPolicy API支持
- 引入Typha –以及针对KDD模式的更大规模
-
2017-06-26 The New NetworkPolicy API in Kubernetes 1.7 上下游版本协同。
-
2017-07-13 Using Network Policy in concert with Istio 企划联动广告。Istio。
-
2017-07-18 Using Network Policy in Concert with Istio Part 2 企划联动广告。Istio。
-
2017-07-25 Using Network Policy in Concert with Istio Part 3 企划联动广告。Istio。
-
2017-08-08 Project Calico 2.4 Released!!! 2.4 版本发布!新特性
- Felix和Typha现在支持Kubernetes 健康检查
- DNAT之前的策略
- 使用calicoctl命令行工具配置bgp
- … …
-
2017-08-14 Calico: Shifting into top gear with OpenShift! 企划联动广告。openshift。
-
2017-08-31 From Beta to Stable: Evolution of the NetworkPolicy API calico 在 k8s 网络策略的更改。
-
**2017-09-12 Revealing the hidden host protection superpowers of Felix, the Calico secret agent 技术文!Calico 保护主机Endpoints **
-
2017-09-28Breaking Down the Boxes: Containers 科普文,容器。
-
2017-09-28 Project Calico 2.6 Released!!! 2.6 版本发布!新特性
- 支持Kubernetes 1.8 NetworkPolicy ipBlock和出口规则
- kube-policy-controller现已更名为kube-controllers
- 稳定性增强功能
-
2017-10-26 Enable IPv6 on Kubernetes with Project Calico 操作文,k8s ipv6。
-
2017-11-30 Grow Your Skills with Instructor Led Training 培训广告。
-
2017-12-04 Introducing: Application Layer Policy 新特性,Calico的应用程序层策略。
-
2018-02-22 Announcing Calico v3.0 版本发布!从3.0版本开始,接下来会有一系列和容器紧密相关的更新,非常令人激动。
-
2018-04-10 Announcing Calico v3.1 版本发布!开始支持ipvs!
-
2018-08-14 Announcing Calico v3.2 版本发布!激动:正式支持ipvs!
-
2018-10-24 What’s new in Calico v3.3 版本发布!激动:支持路由反射器!
- 集群内路由反射器
- 集群内路由反射器使用标签的BGP对等配置
- IPAM增强
- 在网络策略中支持SCTP
-
2018-11-05 Calico IPAM: Explained and Enhanced 操作文!ipam操作
-
2018-11-13 In-cluster Route Reflection 技术文!calico的路由反射器
-
2018-12-10 What’s new in Calico v3.4 版本发布!激动:通过 BGP 宣告 Kubernetes service!
-
2019-01-14 Kubernetes Service IP Route Advertisement 操作文!Kubernetes service 路由宣告!
-
2019-01-28 What’s new in Calico 3.5 版本发布!激动:基于拓扑的IP地址分配!
-
2019-03-11 What’s new in Calico v3.6 版本发布!
-
2019-04-17 Comparing kube-proxy modes: iptables or IPVS? iptables或IPVS 模式讨论
-
2019-04-26 When Linux conntrack is no longer your friend 技术文!可以使用Calico网络策略有选择地绕过conntrack,避免不划算的开销,同时仍然加强网络安全性。
-
2019-05-01 What’s new in Calico v3.7 版本发布!支持vxlan,引入了XDP优化,支持 eBPF。
-
2019-06-03 Introducing XDP-optimized denial-of-service mitigation 技术文!Calico的doNotTrack策略通过在Linux数据包处理管道中尽早丢弃流量来帮助缓解DoS攻击。
-
2019-06-13 Tigera adds eBPF support to Calico 自吹广告。
-
2019-07-09 What’s new in Calico v3.8 版本发布!IPAM利用率报告!
-
2019-10-03 What’s new in Calico v3.9 版本发布!跨子网VXLAN封装,实时从flannel到calico的迁移。
-
2019-10-11 Everything you need to know about Kubernetes pod networking on AWS 企划联动广告。aws。
-
2019-11-04 What’s new in Calico v3.10 版本发布!激动:引入 service ExternalIP 的 BGP通告! namespaceSelector 支持多个选择器,calicoctl支持patch 命令。
-
2019-12-11 Live Migration from Flannel to Calico 操作文,不停机从flannel更换为calico。
-
2019-12-30 What’s new in Calico v3.11 版本发布!支持双栈Pod IP!