prometheus监控k8s关键指标?具体举例20个
时间: 2023-03-27 20:02:06 浏览: 168
我可以回答这个问题。Prometheus 监控 Kubernetes 的关键指标包括:
1. CPU 使用率
2. 内存使用率
3. 网络流量
4. 磁盘使用率
5. Pod 的状态
6. 节点的状态
7. 容器的状态
8. 容器的 CPU 使用率
9. 容器的内存使用率
10. 容器的网络流量
11. 容器的磁盘使用率
12. 容器的 CPU 限制
13. 容器的内存限制
14. 容器的网络限制
15. 容器的磁盘限制
16. 节点的 CPU 使用率
17. 节点的内存使用率
18. 节点的网络流量
19. 节点的磁盘使用率
20. 节点的负载均衡
以上是一些常见的指标,当然还有其他指标可以根据具体情况进行监控。
相关问题
ServiceMonitor是如何抓取k8s指标的
ServiceMonitor 是 Kubernetes 中的一个核心概念,它用于定义监控规则,指定哪些 Service 应该被哪个 Prometheus Exporter 或者 Metrics Server 监控。当创建了一个 ServiceMonitor,Prometheus 就会定期查询kube-state-metrics或其他支持的metrics server来收集关于 Deployment、StatefulSet、Service 和 Pod 的指标。
具体来说,ServiceMonitor通过定义`spec.service`来指定要监控的服务,如`Selector`字段指定了Pod标签的选择器,使得Prometheus可以根据这些标签选择要监控的Pod。此外,`spec.endpoints`定义了Prometheus连接到metrics服务器的方式,比如直接访问kube-state-metric API,或者是通过其他的代理。
举例来说,如果你想要监控名为my-service的Deployment及其对应的Pod,可以创建一个ServiceMonitor如下[^1]:
```yaml
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: my-service-monitor
spec:
selector:
matchLabels:
app: my-app
endpoints:
- port:
name: metrics
interval: 30s
path: /metrics
targetPort:
name: metrics-port
namespace: default
```
这表示Prometheus每30秒一次请求my-service上打上了'app: my-app'标签的Pod的/metrics路径,从而获取其相关的监控指标。
阅读全文