38个版本 (20个破坏性版本)

0.21.2 2024年4月26日
0.21.1 2023年12月11日
0.20.0 2023年12月4日
0.19.0 2023年11月3日
0.5.0 2022年3月20日

#85 in HTTP服务器

Download history • Rust 包仓库 709/week @ 2024-04-23 • Rust 包仓库 894/week @ 2024-04-30 • Rust 包仓库 784/week @ 2024-05-07 • Rust 包仓库 684/week @ 2024-05-14 • Rust 包仓库 679/week @ 2024-05-21 • Rust 包仓库 674/week @ 2024-05-28 • Rust 包仓库 468/week @ 2024-06-04 • Rust 包仓库 489/week @ 2024-06-11 • Rust 包仓库 406/week @ 2024-06-18 • Rust 包仓库 372/week @ 2024-06-25 • Rust 包仓库 309/week @ 2024-07-02 • Rust 包仓库 324/week @ 2024-07-09 • Rust 包仓库 525/week @ 2024-07-16 • Rust 包仓库 783/week @ 2024-07-23 • Rust 包仓库 567/week @ 2024-07-30 • Rust 包仓库 389/week @ 2024-08-06 • Rust 包仓库

每月下载量2,339

Apache-2.0

150KB
3K SLoC

kubert

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

kubert

/ˈkuː.bərt/

Crates.io Documentation License

功能

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

为什么不使用 kube-rs 呢?

kube Crate非常棒!实际上,kubert建立在kube的客户端和运行时模块之上。然而,这个crate捕获了我们构建Linkerd控制器时遇到的一些重复模式。它并不试图隐藏 kube -- 虽然它确实减少了初始化监视和缓存(反射器)周围的样板代码;并且它期望你通过tokio运行时来安排工作。

示例

此仓库包含一个简单的示例应用,演示了如何使用 kubert::Runtime

其他示例包括

kubert-prometheus-process

kubert-prometheus-process 库提供了对 进程指标 的支持,适用于 prometheus-client。它不依赖于 kubert,可以独立使用。

kubert-prometheus-tokio

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

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

状态

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

依赖项

~2–28MB
~399K SLoC