看到cilium这个网络插件用的是ebpf,所以我对k8s网络的研究,就直接以cilium来入门了,这个门槛还是比较高的

在kind集群上,已经把整个虚拟网络给搭建了起来了,但是对组件之间的数据流还不是很清楚,cilium提供了一种简单而有效的方法来定义和执行给予容器/Pod身份的网络层和应用层安全策略。

在整个cilium架构中,除了key-value数据存储之外,主要组件包括cilium agent和cilium operator,还有一个客户端的工具叫cilium cli

通过插件和容器运行时和容器编排系统进行交互,进而为北极上的容器进行网络以及安全的配置。同时提供了开放的api接口,供其他的组件进行调用;

cilium在进行网络和安全的相关配置的时候,采用eBPF的程序实现,结合容器标志以及相关的策略,生成eBPF程序,比你更切讲ebPF程序编译成字节码,将他们传递到linux内核。