开源云原生应用可观测平台 Pixie

k8s技术圈

共 1826字,需浏览 4分钟

 · 2021-05-07

有了 Pixie,开发人员可以通过一个 shell 命令查看其所有应用程序的指标、事件、日志和跟踪。使用 Pixie,您无需添加检测代码,设置临时仪表板即可查看正在发生的情况,这将为你节省宝贵的时间。Pixie 是一个本地的 Kubernetes 程序,其 Pixie Edge 模块(PEM)部署为 DaemonSet。在您的群集中,PEM 利用 Pixie 的 eBPF 程序来收集网络事务和系统指标,而无需更改代码。

1功能

Pixie 有三个非常重要的功能:

自动测量

在现有的代码库中手动自动测量,对团队来说是一种负担。Pixie 为目标系统提供了实时的基线可见性,一旦部署,它就会自动收集来自各种协议、系统指标和网络级数据的所有应用请求。Pixie 的自动测量是由 eBPF 提供的,这是一项由 Brendan Gregg 推广的 Linux 内核技术。

完全可编写的脚本

作为开发者,我们希望 Pixie 是一个完全可编程的接口,以便它能更好地适应我们自己的工作负载。Pixie 使用一种名为 PxL 的 Pythonic 查询语言,基于 Pandas 语法。Pixie 的所有客户端(CLI、API 和 Web UI)都使用 PxL 脚本来分析数据。Pixie 开箱即有一套丰富的 PxL 脚本,但用户也可以编写自己的 PxL 脚本来执行自定义分析。PxL 也是将 Pixie 数据导入和导出到其他系统的接口。

集群内边缘计算

将大量的遥测数据发送到远程进行存储,往往会给网络带来很大的负担,而且当数据敏感时还会带来隐私问题。Pixie 完全在用户的 Kubernetes 集群上进行所有数据存储和计算。这种架构允许用户在他们的环境中隔离数据存储和计算,以获得更精细的上下文,更快的性能和更高的数据安全水平。

2开源

随着今天的发布,现在有可能运行一个完全自我托管的 Pixie 版本,没有第三方依赖或供应商绑定。

以下是我们提供的主要组成部分的简介:

  • Vizier:Pixie 的集群内数据收集和查询引擎,Vizier 在 Kubernetes 集群上运行、收集数据、在集群本地存储,并为 Pixie 客户端(CLI、API、Web UI)执行查询。
  • Pixie Cloud:Pixie 的 Cloud 负责管理用户、档案、项目和应用程序。
  • Pixie Docs:OSS(开源版本)项目的文档。
  • Pixie Website:OSS 项目网站。

用户可以选择完全自我托管 Pixie,或者将 Vizier 与 New Relic 托管的 Pixie Cloud 结合起来运行,以减少管理负担。New Relic 托管的 Pixie 将保持完全免费,用户可以选择将数据发送到 New Relic One。

  • Pixie 的托管版本的参考文档将继续在 pixielabs.ai 和 docs.pixielabs.ai 上发布。
  • 为了保持 OSS Pixie 的供应商中立性,OSS 版 Pixie 的参考文档将在 px.dev 和 docs.px.dev 中发布。

3架构

Pixie 平台的边缘机器智能系统 Pixie Platform 实现了 Pixie 神奇的功能,该系统旨在实现安全和可扩展的自动遥测。该平台主要的组件包括:

  • Pixie 命令驱动接口:面向终端用户的 Pixie CLI 和 Live UI,用于程序化数据和可视化访问
  • Pixie Vizier 模块:作为一组 K8s 服务部署在被监控的集群内,它们负责脚本执行、数据聚合、数据整合和数据备份
  • Pixie边缘模块(PEM):作为 DaemonSets 部署,PEM 利用 Pixie 的 eBPF 收集器来收集网络事务和系统指标,而无需修改任何代码。
  • Pixie 控制云:Pixie 托管和管理的控制平面,用于支持认证、元数据跟踪和"穿透"部署模式。

可以参考文档:https://docs.px.dev/installing-pixie/quick-start/ 快速开始体验 Pixie。

项目地址:https://github.com/pixie-labs/pixie

浏览 265
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报