Pixie 安装配置

Pixie 是一款专为 Kubernetes 设计的 开源全栈可观测性工具 。它最大的特色是利用 eBPF(extended Berkeley Packet Filter)技术,在不修改业务代码、不重启 Pod、不注入 Sidecar 的情况下,自动采集集群内的所有监控数据。Pixie 被称为 K8s 的分布式调试器

Pixie 的核心优势

  • 无侵入性 (Auto-telemetry) : 部署后,自动获取 HTTP/gRPC 请求、SQL 查询、系统调用和火焰图。

  • 边缘计算架构 : 数据存储在集群节点的内存中,查询时才进行分布式计算。这意味着:

  • 极速 : 查询结果近乎实时。

  • 省钱 : 不会有海量日志传输到云端产生的高额带宽和存储费。

  • 动态可编程 : 使用 PxL(基于 Python 的查询语言)编写脚本,可以像写脚本一样实时分析系统性能。

Pixie 核心组件

  • Vizier : 运行在 K8s 集群中的控制器,负责管理各个节点的边缘收集器。

  • PEM (Pixie Edge Module) : 以 DaemonSet 形式运行在每个节点,利用 eBPF 采集数据并存储在本地内存。

  • Cloud Add-on : 提供用户界面 (UI) 和 API 访问。

快速安装
Pixie 的安装非常简单,通常通过 CLI 完成。

确保 Linux 内核版本在 4.16+(推荐 5.10+,2026 年的主流系统如 Ubuntu 22.04+、AlmaLinux 9 等都完美支持)。如果在过旧的内核上强行运行 eBPF 程序,极少数情况下可能导致内核态的不稳定。

  1. 下载 Pixie CLI

    bash -c "$(curl -fsSL https://withpixie.ai/install.sh)"

    脚本会从 Pixie 的官方 GitHub Release 页面或 CDN 下载最新版本的 px 命令行工具,并将其安装到 /usr/local/bin 目录。
    px 是你后续与 Kubernetes 集群交互的唯一入口,所有的部署(deploy)、查询(collect)和脚本运行都通过它完成。
    它会检查你本地的 ~/.kube/config 文件,确保你当前有权限连接到一个 Kubernetes 集群。
    当你执行完这个脚本后,Pixie 还没有安装到你的 Kubernetes 集群里。它只是在你的跳板机或开发机上装好了“遥控器”。要真正让 Pixie 开始监控集群,你通常需要继续执行 px deploy 命令。

  2. 部署到 K8s 集群。这将自动安装 Vizier 和 PEM 到集群中

    px deploy

    这个命令会将 Vizier 和 PEM 部署到你的 Kubernetes 集群中。