krs是什么文件
最近,我在纽约的O'Reilly Velocity上进行了有关Kubernetes应用程序故障排除的主题的演讲,并且由于对此主题的积极反馈和深入讨论,我决定重新考虑该领域的工具。 事实证明,除了kubernetes-incubator / spartakus和kubernetes / kube-state-metrics之外 ,我们实际上并没有太多轻量级的工具可用来收集资源统计信息(例如命名空间中pod或服务的数量)。 因此,我在回家的路上坐下来,开始使用一个名为krs的小工具进行编码,该工具是Kubernetes Resource Stats的缩写,它使您可以收集这些统计信息。
mhausenblas / krs有两种方式:- 直接从命令行获取(适用于Linux,Windows和MacOS的二进制文件); 和
- 在群集中,使用launch.sh脚本作为部署,该脚本可动态创建适当的基于角色的访问控制(RBAC)权限。
提醒您,这是非常早的日子,这很大程度上是一项正在进行的工作。 但是,0.1版本的krs提供以下功能:
- 在每个命名空间的基础上,它会定期收集资源统计信息(支持窗格,部署和服务)。
- 它以OpenMetrics格式将这些统计信息公开为度量。
- 它可以直接通过二进制文件使用,也可以在包含所有依赖项的容器化设置中使用。
在当前形式下,您需要安装和配置kubectl才能使krs工作,因为krs依赖kubectl get all命令来执行,以收集统计信息。 (另一方面,谁在使用Kubernetes 且未安装kubectl ?)
使用krs很简单; 下载适合您平台的二进制文件,并按以下方式执行:
$ krs thenamespacetowatch
# HELP pods Number of pods in any state, for example running
# TYPE pods gauge
pods{namespace="thenamespacetowatch"} 13
# HELP deployments Number of deployments
# TYPE deployments gauge
deployments{namespace="thenamespacetowatch"} 6
# HELP services Number of services
# TYPE services gauge
services{namespace="thenamespacetowatch"} 4
这将在前台启动krs ,从命名空间thenamespacetowatch收集资源统计信息,并分别在stdout上以OpenMetrics格式输出它们,以供您进一步处理。
![krs屏幕截图 krs screenshot](https://i-blog.csdnimg.cn/blog_migrate/8a5ba39abdcea9b132502138c523ec3e.png)
运行中的krs的屏幕截图。
但是迈克尔,您可能会问,为什么它不使用指标来做一些有用的事情(例如在S3中存储'em')? 因为Unix哲学 。
对于那些想知道他们是否可以直接使用Prometheus或kubernetes / kube-state-metrics进行此任务的人:好的,可以,为什么不呢? krs的重点是要成为现有工具的轻量级且易于使用的替代品,甚至在某些方面可能会稍作补充。
该文档最初发布在Medium的ITNext上,并经许可被重新印刷。
翻译自: https://opensource.com/article/18/11/kubernetes-resource-statistics
krs是什么文件