Mercurial > code > home > repos > victoriametrics
comparison create_k8s.py @ 78:a4767069d8b0
alertmanager-conf is now a cmap
author | drewp@bigasterisk.com |
---|---|
date | Wed, 26 Jun 2024 22:29:10 -0700 |
parents | 489c5d9a7dbc |
children | 4809a249d43f |
comparison
equal
deleted
inserted
replaced
77:489c5d9a7dbc | 78:a4767069d8b0 |
---|---|
252 "bigasterisk.com", | 252 "bigasterisk.com", |
253 ) # yapf: disable | 253 ) # yapf: disable |
254 | 254 |
255 | 255 |
256 def createAlertmanagerObjs(tzArg, objPrefix, webRoot, policy): | 256 def createAlertmanagerObjs(tzArg, objPrefix, webRoot, policy): |
257 confFilename = "alertmanager.yml" | |
258 | |
259 (build / f'{objPrefix}-5alertmanager_conf_cmap.yaml').write_text(toJson({ | |
260 "apiVersion": "v1", "kind": "ConfigMap", "metadata": { "name": "alertmanager-conf" }, | |
261 "data": { | |
262 confFilename: Path("./alertmanager.yaml").read_text(), | |
263 } | |
264 })) # yapf: disable | |
257 createPv(f'{objPrefix}-5alertmanager', "opt-alertmanager", '50Gi') | 265 createPv(f'{objPrefix}-5alertmanager', "opt-alertmanager", '50Gi') |
258 createPvc(f'{objPrefix}-5alertmanager', "opt-alertmanager", '50Gi') | 266 createPvc(f'{objPrefix}-5alertmanager', "opt-alertmanager", '50Gi') |
259 | 267 |
260 amName = f'{objPrefix}-alertmanager' | 268 amName = f'{objPrefix}-alertmanager' |
261 (build / f'{objPrefix}-5alertmanager_deploy.yaml').write_text( | 269 (build / f'{objPrefix}-5alertmanager_deploy.yaml').write_text( |
265 "replicas": 1, | 273 "replicas": 1, |
266 "selector": { "matchLabels": { "app": amName } }, | 274 "selector": { "matchLabels": { "app": amName } }, |
267 "template": { | 275 "template": { |
268 "metadata": { "labels": { "app": amName } }, | 276 "metadata": { "labels": { "app": amName } }, |
269 "spec": { | 277 "spec": { |
270 "volumes": [{ "name": "opt-alertmanager", "persistentVolumeClaim": { "claimName": "opt-alertmanager" } }], | 278 "volumes": [ |
279 { "name": "opt-alertmanager", "persistentVolumeClaim": { "claimName": "opt-alertmanager" } }, | |
280 { "name": "alertmanager-conf", "configMap": { "name": "alertmanager-conf" } } | |
281 ], | |
271 "serviceAccountName": "victoriametrics", | 282 "serviceAccountName": "victoriametrics", |
272 "containers": [{ | 283 "containers": [{ |
273 "name": "alertmanager", "image": "docker.io/prom/alertmanager:v0.27.0", "imagePullPolicy": "IfNotPresent", | 284 "name": "alertmanager", "image": "docker.io/prom/alertmanager:v0.27.0", "imagePullPolicy": "IfNotPresent", |
274 "args": [ | 285 "args": [ |
275 "--log.level=info", | 286 "--log.level=info", |
276 "--config.file=/alertmanager/alertmanager.yml", | 287 f"--config.file=/conf/{confFilename}", |
277 f"--web.external-url=https://bigasterisk.com{webRoot}/alertmanager/", | 288 f"--web.external-url=https://bigasterisk.com{webRoot}/alertmanager/", |
278 f"--web.route-prefix={webRoot}/alertmanager", | 289 f"--web.route-prefix={webRoot}/alertmanager", |
279 ], | 290 ], |
280 "ports": [{ "containerPort": 9093 }], | 291 "ports": [{ "containerPort": 9093 }], |
281 "volumeMounts": [{ "name": "opt-alertmanager", "mountPath": "/alertmanager" }] | 292 "volumeMounts": [ |
293 { "name": "opt-alertmanager", "mountPath": "/alertmanager" }, | |
294 { "name": "alertmanager-conf", "mountPath": "/conf" } | |
295 ] | |
282 }], | 296 }], |
283 "affinity": affinityToNode("ditto"), | 297 "affinity": affinityToNode("ditto"), |
284 } | 298 } |
285 } | 299 } |
286 } | 300 } |