5.21 Kubernetes应用监控实战:ServiceMonitor和PodMonitor配置详解

引言

ServiceMonitor和PodMonitor是Prometheus Operator提供的CRD,用于自动发现和监控Kubernetes中的应用。本文将详细介绍这两个资源的配置方法。

一、Prometheus Operator

1.1 Operator作用

  • 管理Prometheus
  • 自动服务发现
  • CRD资源
  • 简化配置

1.2 安装Operator

kubectl apply -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/main/bundle.yaml

二、ServiceMonitor

2.1 ServiceMonitor定义

apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: myapp
  namespace: monitoring
spec:
  selector:
    matchLabels:
      app: myapp
  endpoints:
  - port: metrics
    interval: 30s
    path: /metrics

2.2 Service配置

apiVersion: v1
kind: Service
metadata:
  name: myapp
  labels:
    app: myapp
spec:
  ports:
  - name: metrics
    port: 9090
    targetPort: 8080
  selector:
    app: myapp

三、PodMonitor

3.1 PodMonitor定义

apiVersion: monitoring.coreos.com/v1
kind: PodMonitor
metadata:
  name: myapp
  namespace: monitoring
spec:
  selector:
    matchLabels:
      app: myapp
  podMetricsEndpoints:
  - port: metrics
    interval: 30s
    path: /metrics

3.2 Pod配置

apiVersion: v1
kind: Pod
metadata:
  labels:
    app: myapp
spec:
  containers:
  - name: app
    ports:
    - name: metrics
      containerPort: 8080

四、实战案例

4.1 完整配置

# Service
apiVersion: v1
kind: Service
metadata:
  name: myapp
  labels:
    app: myapp
spec:
  ports:
  - name: metrics
    port: 9090
    targetPort: 8080
  selector:
    app: myapp

---
# ServiceMonitor
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: myapp
spec:
  selector:
    matchLabels:
      app: myapp
  endpoints:
  - port: metrics
    interval: 30s
    path: /metrics

五、最佳实践

5.1 配置建议

  • 使用ServiceMonitor
  • 合理设置抓取间隔
  • 配置标签选择器
  • 监控ServiceMonitor状态

总结

通过本文,你学会了:

  1. Prometheus Operator:作用、安装
  2. ServiceMonitor:定义、配置
  3. PodMonitor:定义、配置
  4. 实战案例:完整配置

下一步学习

  • 5.22 生产级监控告警方案
  • 5.23 告警规则设计最佳实践

思考题

  1. ServiceMonitor和PodMonitor的区别是什么?
  2. 如何配置应用监控?
  3. 如何验证监控配置?

提示:ServiceMonitor和PodMonitor简化了应用监控配置。下一节我们将学习告警方案。

更多推荐