如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Cilium是一个基于eBPF的数据平面解决方案,提供网络、可观测性和安全功能。它实现了简单的扁平L3网络,支持跨多集群部署(原生路由或覆盖模式),具备L7协议感知能力,可基于身份安全模型在L3-L7层强制执行网络策略。Cilium还提供分布式负载均衡(可完全替代kube-proxy)、高级网络功能(如集成入口/出口网关、带宽管理、服务网格)以及深度网络和安全可见性与监控。
eBPF(扩展Berkeley Packet Filter)是Cilium的核心技术,支持在Linux内核的多个集成点(如网络IO、应用程序套接字、跟踪点)动态插入eBPF字节码,以实现安全、网络和可见性逻辑,具有高效和灵活的特点。
!Cilium功能概述
Cilium社区为最近三个主要版本维护次要稳定版本,更早的版本被视为EOL(生命周期结束)。升级到新主要版本请参考Cilium升级指南。
以下是当前维护的发布分支及其最新次要版本、镜像拉取标签和发布说明:
| 版本分支 | 发布日期 | 镜像标签 | 发布说明 |
|---|---|---|---|
| https://github.com/cilium/cilium/tree/v1.13 | 2023-02-15 | quay.io/cilium/cilium:v1.13.0 | https://github.com/cilium/cilium/releases/tag/v1.13.0 |
| https://github.com/cilium/cilium/tree/v1.12 | 2023-02-13 | quay.io/cilium/cilium:v1.12.7 | https://github.com/cilium/cilium/releases/tag/v1.12.7 |
| https://github.com/cilium/cilium/tree/v1.11 | 2023-02-13 | quay.io/cilium/cilium:v1.11.14 | https://github.com/cilium/cilium/releases/tag/v1.11.14 |
从Cilium 1.13.0版本开始,所有镜像均包含软件物料清单(SBOM),采用SPDX格式生成。更多信息请参见Cilium SBOM。
能够保护现代应用协议(如REST/HTTP、gRPC和Kafka)。传统防火墙仅在L3和L4层运行,而Cilium可过滤单个应用协议请求,例如:
GET且路径为/public/.*的HTTP请求,拒绝其他请求service1向Kafka主题topic1生产消息,service2从topic1消费消息,拒绝其他Kafka消息X-Token: [0-9]+支持的协议和使用示例详见文档中的L7策略部分。
现代分布式应用依赖容器等技术实现敏捷部署和按需扩展,导致短时间内启动大量容器。传统容器防火墙通过源IP和目标端口过滤工作负载,需要在集群中任何容器启动时更新所有服务器的防火墙规则,限制了扩展性。
Cilium为共享相同安全策略的应用容器组分配安全身份,该身份与应用容器发出的所有网络数据包关联,可在接收节点验证身份。安全身份管理通过键值存储执行。
标签-based安全是集群内部访问控制的首选工具。为保护与外部服务的进出访问,Cilium支持基于CIDR的传统安全策略(入口和出口),可限制应用容器与特定IP范围的访问。
连接所有应用容器的扁平L3网络,支持跨多集群部署。IP分配通过主机范围分配器实现,每个主机可独立分配IP,无需主机间协调。支持以下多节点网络模型:
覆盖网络(Overlay):基于封装的虚拟网络,覆盖所有主机。目前内置支持VXLAN和Geneve,可启用Linux支持的所有封装格式。适用于基础设施和集成要求最低的场景,仅需主机间IP连接。
原生路由(Native Routing):使用Linux主机的常规路由表。要求网络能够路由应用容器的IP地址。适用于高级用户,需了解底层网络基础设施,如原生IPv6网络、云网络路由器或已运行路由守护进程的环境。
Cilium为应用容器间流量和外部服务流量实现分布式负载均衡,可完全替代kube-proxy等组件。负载均衡通过eBPF中的高效哈希表实现,支持近乎无限的扩展。
南北向负载均衡:eBPF实现针对高性能优化,可附加到XDP(快速数据路径),支持直接服务器返回(DSR)和Maglev一致性哈希(当负载均衡不在源主机执行时)。
东西向负载均衡:在Linux内核套接字层(如TCP连接时)执行高效的服务到后端转换,避免低层每包NAT操作开销。
Cilium通过基于EDT(最早 departure 时间)的eBPF速率限制实现容器出口流量的带宽管理,相比传统方法(如HTB、TBF)可显著降低应用传输尾延迟,避免多队列NIC下的锁定问题。
提供超越传统工具(如tcpdump、ping)的高级故障排除能力:
带元数据的事件监控:丢包时不仅报告源和目的IP,还提供发送方和接收方的完整标签信息及其他元数据。
Prometheus指标导出:关键指标通过Prometheus导出,可集成到现有仪表板。
Hubble:专为Cilium设计的可观测性平台,提供服务依赖图、操作监控和告警,以及基于流日志的应用和安全可见性。
Cilium需要Linux内核版本4.8.0或更高(推荐4.9.x及以上),支持eBPF功能。可通过uname -a检查内核版本。
Cilium主要通过Kubernetes部署,推荐使用Helm或官方安装脚本:
使用Helm安装(默认配置):
bashhelm repo add cilium https://helm.cilium.io/ helm install cilium cilium/cilium --version 1.13.0 --namespace kube-system
使用官方安装脚本:
bashcurl -fsSL https://raw.githubusercontent.com/cilium/cilium/v1.13.0/install/kubernetes/install.sh | bash
详细安装指南请参见安装Cilium。
| 参数 | 描述 | 默认值 |
|---|---|---|
--network | 网络模式,可选overlay或native | overlay |
--tunnel | 覆盖网络隧道类型,可选vxlan或geneve | vxlan |
--kube-proxy-replacement | kube-proxy替换模式,可选strict、partial或disabled | partial |
--enable-hubble | 启用Hubble可观测性 | false |
部署完成后,可通过以下命令验证Cilium状态:
bashkubectl -n kube-system get pods -l k8s-app=cilium
查看Cilium代理状态:
bashcilium status
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务