我运行了Kubernetes的V1.9.2
自定义设置,并使用PrometheusV2.1.0
刮取各种度量。除其他外,我还收集了Kubelet
和Cadvisor
度量标准。
我想回答这样一个问题:“在我的部署中,有多少由请求
和限制
定义的CPU资源实际上被pod(及其容器)使用了(毫厘)核?”
有很多可用的量度,但没有这样的量度。也许它可以用秒的CPU使用时间来计算,但我不知道如何计算。
我一直在考虑这是不可能的--直到一个朋友告诉我,她在集群中运行Heapster,该集群在内置的Grafana中有一个图表,它确切地告诉我:它显示了一个豆荚及其容器在(毫米波)核心中的独立CPU使用情况。
如有任何帮助,不胜感激,谢谢!
我们使用container_cpu_usage_seconds_total
度量来计算Pod CPU的使用情况。这个度量包含容器和内核所消耗的CPU秒的总量(这很重要,因为一个Pod可能由多个容器组成,每个容器可以跨多个内核调度;但是,这个度量有一个pod_name
注释,我们可以用来聚合)。特别值得注意的是该度量的变化率(可以通过PROMQL的rate()
函数计算)。如果它在一秒内增加1,则该吊舱在该秒内消耗1个CPU核(或1000毫核)。
下面的PromQL查询就是这样做的:计算所有吊舱的CPU使用量(使用sum(...)by(pod_name)
操作),平均五分钟:
sum(rate(container_cpu_usage_seconds_total[5m])) by (pod_name)
我在Linux服务器的Kubernetes上安装了带有2或3个pod的Spring Boot应用程序。为了监控它,我也安装了普罗米修斯。目前,从应用程序到普罗米修斯的衡量标准进展顺利。 但我怀疑普罗米修斯只从一个豆荚中提取指标。对于普罗米修斯配置文件中的如下作业,普罗米修斯是否只从一个pod中获取指标?我怎样才能让普罗米修斯同时刮掉所有的豆荚呢?
我的kubernetes部署中有一个多容器吊舱: java redis nginx 对于每一个集装箱,普罗米修斯出口商也有一个集装箱。 问题是,如果annotations部分只支持每个pod一个端口,我如何向Prometheus公开这些端口? 但是我需要这样的东西: 也许还有其他方法可以从我的多容器pod中获取所有指标?提前感谢您的帮助。
正在等待,服务endpoint尚未就绪。 Minikube版本:V0.20.0 环境: minikube日志还报告了以下错误:..... 名称:kubernetes-dashboard-2039414953-czptd命名空间:kube-system节点:minikube/192.168.99.102开始时间:2017年7月14日星期五09:31:58+0530标签:k8s-app=kuberne
我正在评估Kubernetes作为我们新应用程序的平台。现在看来,这一切都非常令人兴奋!但是,我遇到了一个问题:我在GCE上托管集群,需要某种机制在两个POD(持续集成服务器和应用服务器)之间共享存储。对库伯内特斯来说,最好的方法是什么?所有的卷类型似乎都不适合我的需要,因为如果一个pod需要写入磁盘,GCE磁盘就不能共享。NFS将是完美的,但似乎需要kubernetes集群的特殊构建选项? 编辑
我有一个DigitalOcean Kubernetes集群。我已经通过Helm安装了NGINX入口控制器 我的入口位于默认命名空间中,我的监视位于监视命名空间中。 以下是我安装的图表版本。 我正在尝试获取一些NGINX指标,以便我可以在Grafana中进行监控。 然而,它们都没有出现在普罗米修斯用户界面中。我试着把普罗米修斯的旗帜添加到我所有的入口中,但仍然一无所获。例如 我使用了默认值。ngin
我有没有办法从kube-state-metrics中刮取这些指标,但在不覆盖它们的情况下将应用程序和团队标签放在一起? 编辑-我想通了