-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathprom-server.yaml
369 lines (363 loc) · 15.4 KB
/
prom-server.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
---
apiVersion: "rbac.authorization.k8s.io/v1"
kind: "ClusterRole"
rules:
- apiGroups:
- ""
nonResourceURLs: []
resourceNames: []
resources:
- "nodes"
- "nodes/proxy"
- "nodes/metrics"
- "services"
- "endpoints"
- "pods"
- "ingresses"
- "configmaps"
verbs:
- "get"
- "list"
- "watch"
- apiGroups:
- "extensions"
- "networking.k8s.io"
nonResourceURLs: []
resourceNames: []
resources:
- "ingresses/status"
- "ingresses"
verbs:
- "get"
- "list"
- "watch"
- apiGroups: []
nonResourceURLs:
- "/metrics"
resourceNames: []
resources: []
verbs:
- "get"
metadata:
annotations: {}
name: "my-prometheus-server"
labels:
app: "prometheus"
component: "server"
app.kubernetes.io/name: "test-metric-server"
release: "my-prometheus"
heritage: "Helm"
chart: "prometheus-19.0.1"
---
kind: "ConfigMap"
apiVersion: "v1"
data:
alerts: "{}\n"
prometheus.yml: "global:\n evaluation_interval: 1m\n scrape_interval: 1m\n scrape_timeout:\
\ 10s\nrule_files:\n- /etc/config/recording_rules.yml\n- /etc/config/alerting_rules.yml\n\
- /etc/config/rules\n- /etc/config/alerts\nscrape_configs:\n- job_name: prometheus\n\
\ static_configs:\n - targets:\n - localhost:9090\n- bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token\n\
\ job_name: kubernetes-apiservers\n kubernetes_sd_configs:\n - role: endpoints\n\
\ relabel_configs:\n - action: keep\n regex: default;kubernetes;https\n \
\ source_labels:\n - __meta_kubernetes_namespace\n - __meta_kubernetes_service_name\n\
\ - __meta_kubernetes_endpoint_port_name\n scheme: https\n tls_config:\n\
\ ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt\n insecure_skip_verify:\
\ true\n- bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token\n\
\ job_name: kubernetes-nodes\n kubernetes_sd_configs:\n - role: node\n relabel_configs:\n\
\ - action: labelmap\n regex: __meta_kubernetes_node_label_(.+)\n - replacement:\
\ kubernetes.default.svc:443\n target_label: __address__\n - regex: (.+)\n\
\ replacement: /api/v1/nodes/$1/proxy/metrics\n source_labels:\n - __meta_kubernetes_node_name\n\
\ target_label: __metrics_path__\n scheme: https\n tls_config:\n ca_file:\
\ /var/run/secrets/kubernetes.io/serviceaccount/ca.crt\n insecure_skip_verify:\
\ true\n- bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token\n\
\ job_name: kubernetes-nodes-cadvisor\n kubernetes_sd_configs:\n - role: node\n\
\ relabel_configs:\n - action: labelmap\n regex: __meta_kubernetes_node_label_(.+)\n\
\ - replacement: kubernetes.default.svc:443\n target_label: __address__\n\
\ - regex: (.+)\n replacement: /api/v1/nodes/$1/proxy/metrics/cadvisor\n \
\ source_labels:\n - __meta_kubernetes_node_name\n target_label: __metrics_path__\n\
\ scheme: https\n tls_config:\n ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt\n\
\ insecure_skip_verify: true\n- honor_labels: true\n job_name: kubernetes-service-endpoints\n\
\ kubernetes_sd_configs:\n - role: endpoints\n relabel_configs:\n - action:\
\ keep\n regex: true\n source_labels:\n - __meta_kubernetes_service_annotation_prometheus_io_scrape\n\
\ - action: drop\n regex: true\n source_labels:\n - __meta_kubernetes_service_annotation_prometheus_io_scrape_slow\n\
\ - action: replace\n regex: (https?)\n source_labels:\n - __meta_kubernetes_service_annotation_prometheus_io_scheme\n\
\ target_label: __scheme__\n - action: replace\n regex: (.+)\n source_labels:\n\
\ - __meta_kubernetes_service_annotation_prometheus_io_path\n target_label:\
\ __metrics_path__\n - action: replace\n regex: (.+?)(?::\\d+)?;(\\d+)\n \
\ replacement: $1:$2\n source_labels:\n - __address__\n - __meta_kubernetes_service_annotation_prometheus_io_port\n\
\ target_label: __address__\n - action: labelmap\n regex: __meta_kubernetes_service_annotation_prometheus_io_param_(.+)\n\
\ replacement: __param_$1\n - action: labelmap\n regex: __meta_kubernetes_service_label_(.+)\n\
\ - action: replace\n source_labels:\n - __meta_kubernetes_namespace\n\
\ target_label: namespace\n - action: replace\n source_labels:\n - __meta_kubernetes_service_name\n\
\ target_label: service\n - action: replace\n source_labels:\n - __meta_kubernetes_pod_node_name\n\
\ target_label: node\n- honor_labels: true\n job_name: kubernetes-service-endpoints-slow\n\
\ kubernetes_sd_configs:\n - role: endpoints\n relabel_configs:\n - action:\
\ keep\n regex: true\n source_labels:\n - __meta_kubernetes_service_annotation_prometheus_io_scrape_slow\n\
\ - action: replace\n regex: (https?)\n source_labels:\n - __meta_kubernetes_service_annotation_prometheus_io_scheme\n\
\ target_label: __scheme__\n - action: replace\n regex: (.+)\n source_labels:\n\
\ - __meta_kubernetes_service_annotation_prometheus_io_path\n target_label:\
\ __metrics_path__\n - action: replace\n regex: (.+?)(?::\\d+)?;(\\d+)\n \
\ replacement: $1:$2\n source_labels:\n - __address__\n - __meta_kubernetes_service_annotation_prometheus_io_port\n\
\ target_label: __address__\n - action: labelmap\n regex: __meta_kubernetes_service_annotation_prometheus_io_param_(.+)\n\
\ replacement: __param_$1\n - action: labelmap\n regex: __meta_kubernetes_service_label_(.+)\n\
\ - action: replace\n source_labels:\n - __meta_kubernetes_namespace\n\
\ target_label: namespace\n - action: replace\n source_labels:\n - __meta_kubernetes_service_name\n\
\ target_label: service\n - action: replace\n source_labels:\n - __meta_kubernetes_pod_node_name\n\
\ target_label: node\n scrape_interval: 5m\n scrape_timeout: 30s\n- honor_labels:\
\ true\n job_name: prometheus-pushgateway\n kubernetes_sd_configs:\n - role:\
\ service\n relabel_configs:\n - action: keep\n regex: pushgateway\n source_labels:\n\
\ - __meta_kubernetes_service_annotation_prometheus_io_probe\n- honor_labels:\
\ true\n job_name: kubernetes-services\n kubernetes_sd_configs:\n - role: service\n\
\ metrics_path: /probe\n params:\n module:\n - http_2xx\n relabel_configs:\n\
\ - action: keep\n regex: true\n source_labels:\n - __meta_kubernetes_service_annotation_prometheus_io_probe\n\
\ - source_labels:\n - __address__\n target_label: __param_target\n -\
\ replacement: blackbox\n target_label: __address__\n - source_labels:\n \
\ - __param_target\n target_label: instance\n - action: labelmap\n regex:\
\ __meta_kubernetes_service_label_(.+)\n - source_labels:\n - __meta_kubernetes_namespace\n\
\ target_label: namespace\n - source_labels:\n - __meta_kubernetes_service_name\n\
\ target_label: service\n- honor_labels: true\n job_name: kubernetes-pods\n\
\ kubernetes_sd_configs:\n - role: pod\n relabel_configs:\n - action: keep\n\
\ regex: true\n source_labels:\n - __meta_kubernetes_pod_annotation_prometheus_io_scrape\n\
\ - action: drop\n regex: true\n source_labels:\n - __meta_kubernetes_pod_annotation_prometheus_io_scrape_slow\n\
\ - action: replace\n regex: (https?)\n source_labels:\n - __meta_kubernetes_pod_annotation_prometheus_io_scheme\n\
\ target_label: __scheme__\n - action: replace\n regex: (.+)\n source_labels:\n\
\ - __meta_kubernetes_pod_annotation_prometheus_io_path\n target_label:\
\ __metrics_path__\n - action: replace\n regex: (.+?)(?::\\d+)?;(\\d+)\n \
\ replacement: $1:$2\n source_labels:\n - __address__\n - __meta_kubernetes_pod_annotation_prometheus_io_port\n\
\ target_label: __address__\n - action: labelmap\n regex: __meta_kubernetes_pod_annotation_prometheus_io_param_(.+)\n\
\ replacement: __param_$1\n - action: labelmap\n regex: __meta_kubernetes_pod_label_(.+)\n\
\ - action: replace\n source_labels:\n - __meta_kubernetes_namespace\n\
\ target_label: namespace\n - action: replace\n source_labels:\n - __meta_kubernetes_pod_name\n\
\ target_label: pod\n - action: drop\n regex: Pending|Succeeded|Failed|Completed\n\
\ source_labels:\n - __meta_kubernetes_pod_phase\n- honor_labels: true\n\
\ job_name: kubernetes-pods-slow\n kubernetes_sd_configs:\n - role: pod\n \
\ relabel_configs:\n - action: keep\n regex: true\n source_labels:\n \
\ - __meta_kubernetes_pod_annotation_prometheus_io_scrape_slow\n - action: replace\n\
\ regex: (https?)\n source_labels:\n - __meta_kubernetes_pod_annotation_prometheus_io_scheme\n\
\ target_label: __scheme__\n - action: replace\n regex: (.+)\n source_labels:\n\
\ - __meta_kubernetes_pod_annotation_prometheus_io_path\n target_label:\
\ __metrics_path__\n - action: replace\n regex: (.+?)(?::\\d+)?;(\\d+)\n \
\ replacement: $1:$2\n source_labels:\n - __address__\n - __meta_kubernetes_pod_annotation_prometheus_io_port\n\
\ target_label: __address__\n - action: labelmap\n regex: __meta_kubernetes_pod_annotation_prometheus_io_param_(.+)\n\
\ replacement: __param_$1\n - action: labelmap\n regex: __meta_kubernetes_pod_label_(.+)\n\
\ - action: replace\n source_labels:\n - __meta_kubernetes_namespace\n\
\ target_label: namespace\n - action: replace\n source_labels:\n - __meta_kubernetes_pod_name\n\
\ target_label: pod\n - action: drop\n regex: Pending|Succeeded|Failed|Completed\n\
\ source_labels:\n - __meta_kubernetes_pod_phase\n scrape_interval: 5m\n\
\ scrape_timeout: 30s\n- job_name: opencost\n honor_labels: true\n scrape_interval:\
\ 1m\n scrape_timeout: 10s\n metrics_path: /metrics\n scheme: http\n dns_sd_configs:\n\
\ - names:\n - opencost.opencost\n type: 'A'\n port: 9003\n"
recording_rules.yml: "{}\n"
allow-snippet-annotations: "false"
alerting_rules.yml: "{}\n"
rules: "{}\n"
binaryData: {}
metadata:
namespace: "nirmata-opencost"
annotations: {}
name: "my-prometheus-server"
labels:
app: "prometheus"
component: "server"
app.kubernetes.io/name: "test-metric-server"
release: "my-prometheus"
heritage: "Helm"
chart: "prometheus-19.0.1"
---
apiVersion: "rbac.authorization.k8s.io/v1"
kind: "ClusterRoleBinding"
metadata:
annotations: {}
name: "my-prometheus-server"
labels:
app: "prometheus"
component: "server"
app.kubernetes.io/name: "test-metric-server"
release: "my-prometheus"
heritage: "Helm"
chart: "prometheus-19.0.1"
subjects:
- kind: "ServiceAccount"
name: "my-prometheus-server"
namespace: "nirmata-opencost"
roleRef:
apiGroup: "rbac.authorization.k8s.io"
kind: "ClusterRole"
name: "my-prometheus-server"
---
kind: "Deployment"
apiVersion: "apps/v1"
metadata:
namespace: "nirmata-opencost"
annotations: {}
name: "my-prometheus-server"
labels:
app: "prometheus"
component: "server"
app.kubernetes.io/name: "test-metric-server"
release: "my-prometheus"
heritage: "Helm"
chart: "prometheus-19.0.1"
app.kubernetes.io/component: "deployment.my-prometheus-server"
spec:
replicas: 1
revisionHistoryLimit: 5
selector:
matchLabels:
app: "prometheus"
component: "server"
release: "my-prometheus"
matchExpressions: []
strategy:
type: "Recreate"
template:
metadata:
annotations: {}
labels:
app: "prometheus"
component: "server"
app.kubernetes.io/name: "test-metric-server"
release: "my-prometheus"
heritage: "Helm"
chart: "prometheus-19.0.1"
app.kubernetes.io/component: "deployment.my-prometheus-server"
spec:
terminationGracePeriodSeconds: 300
nodeSelector: {}
serviceAccountName: "my-prometheus-server"
dnsPolicy: "ClusterFirst"
enableServiceLinks: true
volumes:
- name: "config-volume"
configMap:
name: "my-prometheus-server"
- name: "storage-volume"
persistentVolumeClaim:
claimName: "my-prometheus-server"
containers:
- name: "prometheus-server-configmap-reload"
image: "jimmidyson/configmap-reload:v0.8.0"
command: []
args:
- "--volume-dir=/etc/config"
- "--webhook-url=http://127.0.0.1:9090/-/reload"
imagePullPolicy: "IfNotPresent"
volumeMounts:
- name: "config-volume"
readOnly: true
mountPath: "/etc/config"
resources:
limits: {}
requests: {}
- name: "prometheus-server"
image: "quay.io/prometheus/prometheus:v2.40.5"
command: []
args:
- "--storage.tsdb.retention.time=15d"
- "--config.file=/etc/config/prometheus.yml"
- "--storage.tsdb.path=/data"
- "--web.console.libraries=/etc/prometheus/console_libraries"
- "--web.console.templates=/etc/prometheus/consoles"
- "--web.enable-lifecycle"
imagePullPolicy: "IfNotPresent"
ports:
- containerPort: 9090
protocol: "TCP"
volumeMounts:
- name: "config-volume"
mountPath: "/etc/config"
- name: "storage-volume"
mountPath: "/data"
subPath: ""
livenessProbe:
initialDelaySeconds: 30
timeoutSeconds: 10
periodSeconds: 15
successThreshold: 1
failureThreshold: 3
httpGet:
path: "/-/healthy"
port: 9090
scheme: "HTTP"
readinessProbe:
initialDelaySeconds: 30
timeoutSeconds: 4
periodSeconds: 5
successThreshold: 1
failureThreshold: 3
httpGet:
path: "/-/ready"
port: 9090
scheme: "HTTP"
resources:
limits: {}
requests: {}
securityContext:
runAsUser: 65534
runAsNonRoot: true
fsGroup: 65534
runAsGroup: 65534
supplementalGroups: []
---
apiVersion: "v1"
kind: "Service"
metadata:
namespace: "nirmata-opencost"
annotations: {}
name: "my-prometheus-server"
labels:
app: "prometheus"
component: "server"
app.kubernetes.io/name: "test-metric-server"
release: "my-prometheus"
heritage: "Helm"
chart: "prometheus-19.0.1"
spec:
externalIPs: []
loadBalancerSourceRanges: []
sessionAffinity: "None"
type: "ClusterIP"
selector:
app: "prometheus"
component: "server"
release: "my-prometheus"
ports:
- name: "http"
port: 80
protocol: "TCP"
targetPort: 9090
---
apiVersion: "v1"
kind: "PersistentVolumeClaim"
metadata:
namespace: "nirmata-opencost"
annotations: {}
name: "my-prometheus-server"
labels:
app: "prometheus"
component: "server"
app.kubernetes.io/name: "test-metric-server"
release: "my-prometheus"
heritage: "Helm"
chart: "prometheus-19.0.1"
spec:
accessModes:
- "ReadWriteOnce"
resources:
limits: {}
requests:
storage: "8Gi"
---
apiVersion: "v1"
kind: "ServiceAccount"
metadata:
namespace: "nirmata-opencost"
annotations: {}
name: "my-prometheus-server"
labels:
app: "prometheus"
component: "server"
app.kubernetes.io/name: "test-metric-server"
release: "my-prometheus"
heritage: "Helm"
chart: "prometheus-19.0.1"