Cilium 1.6 发布,基于 BPF 用于容器的关键网络技术

afterer
 afterer
发布于 2019年08月22日
收藏 4

Introduction graph

Cilium 是一种开放源码软件,用于透明地提供和保护使用 Kubernetes、Docker 和 Mesos 等 Linux 容器管理平台部署的应用程序服务之间的网络和 API 连接。1.6 版本已经发布,内容如下:

Policy

  • 新的选择器缓存以大幅度提高基于标签的选择器与标识对象的相关性
  • 如果需要超过默认的 16K,则现在可以配置策略映射大小
  • 从注释中创建的标签现在默认从标识中被忽略
  • 允许所有策略现在通过数据表中的一个条目强制执行,以减少开销
  • 新的垃圾收集器以删除 CiliumNetworkPolcies 状态部分中的过时节点

Kvstore free operation

  • 为安全标识添加了一个新的基于 CRD 的后端
  • 可以在没有配置键值存储的情况下启动 

Kubernetes

  • 简化的 init 容器移除 cilium 状态 
  • 用不同的用户代理识别 Cilium 与顶端的通信
  • Kubernetes Node 状态使用 NetworkUnAvailable=false 标明
  • 在启动时跳过 CRD 创建的新选项
  • 默认情况下,容器运行时集成现在被禁用。只有当用户想要容器运行时标签以及 POD 标签来识别服务时,才需要启用它
  • 支持 Kubernetes 1.15
  • 删除运算符的依赖项以到达群集 DNS
  • 支持 ExternalIP 服务

Generic CNI chaining

  • 新的 CNI 链接插件体系结构
  • 内置链接支持 AWS-CNI-VPC、Calico、Portmap 和 Weave-net 
  • 通用 Veth 链接插件,运行在任何基于 Veth 的 CNI 插件之上

Resource consumption

  • 大量的代码优化,以减少具有大量 pod 的环境中的内存分配和内存占用 
  • 减少资源消耗的新的最小状态响应与 apiserver 的 Cilium 通信
  • 禁用 CiliumNetworkPolicy 状态以减少资源大小的新选项

Socket-level load-balancing

  • 套接字级 Kubernetes 服务的高效负载平衡 
  • 用于主机进程的 Kubernetes 服务的负载平衡

Datapath

  • 新的基于 TPROXY 的 L7 重定向数据路径不再需要重写任何数据包报头以透明地重定向到代理
  • 使用静态 IP 169.254.42.1 进行服务重定向回送 SNAT,而不是分配 IP
  • 新的 datapath 事件聚合现在默认为最大值
  • 新的数据路径模式(--enable-endpoint-routes),其中数据包通过每个端点路由而不是通过一个单独的 Veth 对路由到本地端点
  • 新的本机 AWS ENI 数据路径模式

NodePort Support:

  • NodePort 服务的本机 eBPF 实现(--enable-node-port)

CLI

  • 新命令 cilium identity list --endpoints
  • 新的 cilium policy selectors 列出策略选择器缓存的内容

其他内容见发布说明 

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:Cilium 1.6 发布,基于 BPF 用于容器的关键网络技术
加载中
返回顶部
顶部