使用helm部署kube-prometheus-stack
helm安装命令
# 添加helm仓库
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
# 安装、更新
helm install prometheus-stack prometheus-community/kube-prometheus-stack --version 75.15.0 -n monitoring -f values.yaml --create-namespace
helm upgrade prometheus-stack prometheus-community/kube-prometheus-stack --version 75.15.0 -n monitoring -f values.yaml
# 卸载
helm uninstall prometheus-stack -n monitoring
values.yaml文件
prometheus:
prometheusSpec:
# 允许prometheus-operator自动采集所有命名空间的PodMonitor
podMonitorSelectorNilUsesHelmValues: false
podMonitorSelector: {}
podMonitorNamespaceSelector: {}
# 允许prometheus-operator自动采集所有命名空间的ServiceMonitor
serviceMonitorSelectorNilUsesHelmValues: false
serviceMonitorSelector: {}
serviceMonitorNamespaceSelector: {}
# 指定prometheus的存储容量和指标保存天数,哪个指先触发都会清理指标
retentionSize: 40GiB
retention: 7d
# 指定pv存储容量,由于不需要在集群中长期存储指标,可以分配少一些
storageSpec:
volumeClaimTemplate:
spec:
resources:
requests:
storage: 50Gi
# 将数据同步到prometheus兼容的时序数据库中,例如victoriametrics
remoteWrite:
- url: "http://10.1.1.111:8480/insert/0/prometheus/api/v1/write"
# 给集群加上标签
scrapeClasses:
- default: true
name: cluster-relabeling
relabelings:
- sourceLabels: [ __name__ ]
regex: (.*)
targetLabel: cluster
replacement: eks-test
action: replace
grafana:
persistence:
enabled: true
type: pvc
accessModes:
- ReadWriteOnce
size: 10Gi
service:
port: 3000
type: NodePort
adminUser: admin
adminPassword: 123456