config-map.yaml 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. apiVersion: v1
  2. kind: ConfigMap
  3. metadata:
  4. name: prometheus-server-conf
  5. labels:
  6. name: prometheus-server-conf
  7. namespace: monitoring
  8. data:
  9. prometheus.rules: |-
  10. groups:
  11. - name: devopscube demo alert
  12. rules:
  13. - alert: High Pod Memory
  14. expr: sum(container_memory_usage_bytes) > 1
  15. for: 1m
  16. labels:
  17. severity: slack
  18. annotations:
  19. summary: High Memory Usage
  20. prometheus.yml: |-
  21. global:
  22. scrape_interval: 5s
  23. evaluation_interval: 5s
  24. rule_files:
  25. - /etc/prometheus/prometheus.rules
  26. alerting:
  27. alertmanagers:
  28. - scheme: http
  29. static_configs:
  30. - targets:
  31. - "alertmanager.monitoring.svc:9093"
  32. scrape_configs:
  33. - job_name: 'node-exporter'
  34. kubernetes_sd_configs:
  35. - role: endpoints
  36. relabel_configs:
  37. - source_labels: [__meta_kubernetes_endpoints_name]
  38. regex: 'node-exporter'
  39. action: keep
  40. - job_name: 'kubernetes-apiservers'
  41. kubernetes_sd_configs:
  42. - role: endpoints
  43. scheme: https
  44. tls_config:
  45. ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
  46. bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
  47. relabel_configs:
  48. - source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
  49. action: keep
  50. regex: default;kubernetes;https
  51. - job_name: 'kubernetes-nodes'
  52. scheme: https
  53. tls_config:
  54. ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
  55. bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
  56. kubernetes_sd_configs:
  57. - role: node
  58. relabel_configs:
  59. - action: labelmap
  60. regex: __meta_kubernetes_node_label_(.+)
  61. - target_label: __address__
  62. replacement: kubernetes.default.svc:443
  63. - source_labels: [__meta_kubernetes_node_name]
  64. regex: (.+)
  65. target_label: __metrics_path__
  66. replacement: /api/v1/nodes/${1}/proxy/metrics
  67. - job_name: 'kubernetes-pods'
  68. kubernetes_sd_configs:
  69. - role: pod
  70. relabel_configs:
  71. - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]
  72. action: keep
  73. regex: true
  74. - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path]
  75. action: replace
  76. target_label: __metrics_path__
  77. regex: (.+)
  78. - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
  79. action: replace
  80. regex: ([^:]+)(?::\d+)?;(\d+)
  81. replacement: $1:$2
  82. target_label: __address__
  83. - action: labelmap
  84. regex: __meta_kubernetes_pod_label_(.+)
  85. - source_labels: [__meta_kubernetes_namespace]
  86. action: replace
  87. target_label: kubernetes_namespace
  88. - source_labels: [__meta_kubernetes_pod_name]
  89. action: replace
  90. target_label: kubernetes_pod_name
  91. - job_name: 'kube-state-metrics'
  92. static_configs:
  93. - targets: ['kube-state-metrics.kube-system.svc.cluster.local:8080']
  94. - job_name: 'kubernetes-cadvisor'
  95. scheme: https
  96. tls_config:
  97. ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
  98. bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
  99. kubernetes_sd_configs:
  100. - role: node
  101. relabel_configs:
  102. - action: labelmap
  103. regex: __meta_kubernetes_node_label_(.+)
  104. - target_label: __address__
  105. replacement: kubernetes.default.svc:443
  106. - source_labels: [__meta_kubernetes_node_name]
  107. regex: (.+)
  108. target_label: __metrics_path__
  109. replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor
  110. - job_name: 'kubernetes-service-endpoints'
  111. kubernetes_sd_configs:
  112. - role: endpoints
  113. relabel_configs:
  114. - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape]
  115. action: keep
  116. regex: true
  117. - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scheme]
  118. action: replace
  119. target_label: __scheme__
  120. regex: (https?)
  121. - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_path]
  122. action: replace
  123. target_label: __metrics_path__
  124. regex: (.+)
  125. - source_labels: [__address__, __meta_kubernetes_service_annotation_prometheus_io_port]
  126. action: replace
  127. target_label: __address__
  128. regex: ([^:]+)(?::\d+)?;(\d+)
  129. replacement: $1:$2
  130. - action: labelmap
  131. regex: __meta_kubernetes_service_label_(.+)
  132. - source_labels: [__meta_kubernetes_namespace]
  133. action: replace
  134. target_label: kubernetes_namespace
  135. - source_labels: [__meta_kubernetes_service_name]
  136. action: replace
  137. target_label: kubernetes_name