2.2.1通过Golang+eBPF实现无侵入应用可观测
etcd,api-server, coredns… 系统调用异常:网络请 求,内存申请,文件操 作,CGroup… 内核异常:进程调度, 内存管理,文件管理, 夯机宕机,资源异 常… 应用组件异常:线程池满,数据库连接无法获取, OOM,文件读取错误… 无法自顶向下端到端 串联导致棘手问题频 发。 Kubernetes下的可观测 Golang + eBPF实现数据采 集 第四部分 eBPF在可观测领域的优势0 码力 | 29 页 | 3.83 MB | 1 年前3Cilium的网络加速秘诀
XDP 处实现数据包的转发、负载均衡、过滤 • cgroup_sock_addr 。cilium在 cgroup 中实现对service解析 • sock_ops + sk_msg。记录本地应用之间通信的socket,实现本地数据包的加速转发 加速同节点pod间通信 cilium 使用 eBPF 程序,借助 bpf_redirect() 或 bpf_redirect_peer() 等 helper extracted from the IP header eBPF 加速本地通信 本地应用间的通信,需要经历冗长的内 核协议栈处理。尤其在 serviceMesh 流行趋 势下,sideCar 的重定向加速,成为重要话题。 cilium 利用 socket eBPF 程序,实现了对本 地应用通信间的加速转发。 相关测试表明: 在部分测试场景下,本地应用间的通信 TPS 性能,提升约 40-60% ���0 码力 | 14 页 | 11.97 MB | 1 年前3
共 2 条
- 1