#metrics #monitoring #prometheus-metrics #prometheus #https-server #prometheus-client #rokio

kubert-prometheus-tokio

一个Prometheus-client tokio运行时指标收集器

1个不稳定版本

0.1.0 2023年12月11日

#696调试

Download history 336/week @ 2024-04-09 381/week @ 2024-04-16 405/week @ 2024-04-23 516/week @ 2024-04-30 600/week @ 2024-05-07 447/week @ 2024-05-14 379/week @ 2024-05-21 481/week @ 2024-05-28 286/week @ 2024-06-04 331/week @ 2024-06-11 204/week @ 2024-06-18 213/week @ 2024-06-25 146/week @ 2024-07-02 183/week @ 2024-07-09 306/week @ 2024-07-16 390/week @ 2024-07-23

1,102 每月下载量
kubert中使用

Apache-2.0

12KB
151

kubert

Rust Kubernetes运行时助手。基于kube-rs

kubert

/ˈkuː.bərt/

Crates.io Documentation License

功能

  • clap命令行界面支持;
  • 一个基本的admin服务器,包含/ready/live探测端点;
  • 可选的prometheus-client集成,包含进程和Tokio运行时指标;
  • 默认的Kubernetes客户端;
  • SIGTERMSIGINT信号下优雅关闭;
  • 一个HTTPS服务器(用于准入控制器和API扩展),支持证书重新加载;
  • 一个用于维护从监视一个或多个Kubernetes资源类型派生的索引的实用程序;
  • 一个支持延迟/重新安排更新的requeue通道(即,在写入失败的情况下);
  • 以及一个将所有这些结合在一起的Runtime类型!

为什么不使用kube-rs

kube代码库很棒!实际上,kubert基于kube的客户端和运行时模块构建。然而,该代码库捕获了我们构建Linkerd控制器时遇到的一些重复模式。它不会隐藏kube—尽管它减少了初始化监视和缓存(反射器)的样板代码;并且它期望你通过tokio运行时安排工作。

示例

此存储库包括一个简单的示例应用程序,演示了如何使用kubert::Runtime

其他示例包括

kubert-prometheus-process

《kubert-prometheus-process》库为`prometheus-client`提供进程指标。它不依赖于kubert,可以独立使用。

kubert-prometheus-tokio

《kubert-prometheus-tokio》库公开了Tokio运行时指标,用于`prometheus-client`。它也不依赖于kubert,可以独立使用。

请注意,Tokio运行时指标需要在编译时设置`RUSTFLAGS="--cfg tokio_unstable"`。

状态

尽管这个库基于Linkerd的生产代码,但仍然处于实验阶段;我们计划在Linkerd中继续使用它。

依赖项

约4-11MB
约99K SLoC