1个不稳定版本
0.1.0 | 2023年12月10日 |
---|
#432 在 调试
4,354 每月下载次数
用于 2 crates
13KB
211 行
kubert
Rust Kubernetes运行时助手。基于 kube-rs
。
特性
clap
命令行界面支持;- 一个基本的具有
/ready
和/live
检测端点的管理服务器; - 可选的
prometheus-client
集成; - 默认的Kubernetes客户端;
- 在
SIGTERM
或SIGINT
信号上优雅地关闭; - 带证书重新加载的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,可以独立使用。
状态
虽然这个库仍然处于实验阶段,但它基于 Linkerd 的生产代码;我们计划在 Linkerd 中继续使用它。
依赖项
~1-11MB
~116K SLoC