我有一个短暂的(从几秒钟到1-2分钟)k8s作业将根据用户请求创建的情况。我正在尝试检索作业运行时指标(如cpu和内存使用情况)。
我想到(并尝试过)的方法包括:
container_cpu_usage_seconds_total
一样,但是基于拉式的scape意味着许多短命的工作将不包括在内/api/v1/nodes/{nodeName}/proxy/metrics/cadvisor
。尽管几乎是实时的,但它会返回所有容器,因此我必须手动分析结果并找到所需的内容。 我正在考虑使用作业 worker 容器旁边的轻型监视器容器来检索 worker 的指标。但是我不知道这是否是一个好主意,即使这样,也不知道如何检索 worker 的指标。
所以我的问题是:
您建议使用哪种方法来检索大量短期作业的cpu和内存使用情况?
最佳答案
在编写时,您使用了普罗米修斯,pushgateway,metrics-server ns查询/ api / v1 / nodes / {nodeName} / proxy / metrics / cadvisor,如果它们不能满足您的要求,那么我建议您使用新的方法来监视和保存集群的度量表现是石蕊。
Prometheus是最常见,最复杂的工具,大多数工程师都可以使用,但是Litmus是一种新工具,专注于工作负载测试,可以保存指标并可以随时存储它们。
您可以在这里找到更多信息:litmus。
有用的文章:litmus-openebs,它描述的不仅是获取内存使用率,也不是获取指标。
然后,您可以在鸡蛋中生成图表。 gnuplot。
关于kubernetes - 如何获得一堆短暂的Kubernetes职位的指标,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57109777/