kube-prometheus: Convert to jsonnet
This commit is contained in:
25
jsonnet/alertmanager/alertmanager-main-secret.libsonnet
Normal file
25
jsonnet/alertmanager/alertmanager-main-secret.libsonnet
Normal file
@@ -0,0 +1,25 @@
|
||||
local k = import "ksonnet.beta.3/k.libsonnet";
|
||||
local secret = k.core.v1.secret;
|
||||
|
||||
local plainConfig = "global:
|
||||
resolve_timeout: 5m
|
||||
route:
|
||||
group_by: ['job']
|
||||
group_wait: 30s
|
||||
group_interval: 5m
|
||||
repeat_interval: 12h
|
||||
receiver: 'null'
|
||||
routes:
|
||||
- match:
|
||||
alertname: DeadMansSwitch
|
||||
receiver: 'null'
|
||||
receivers:
|
||||
- name: 'null'";
|
||||
|
||||
local config = std.base64(plainConfig);
|
||||
|
||||
{
|
||||
new(namespace)::
|
||||
secret.new("alertmanager-main", {"alertmanager.yaml": config}) +
|
||||
secret.mixin.metadata.withNamespace(namespace)
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
local k = import "ksonnet.beta.3/k.libsonnet";
|
||||
local serviceAccount = k.core.v1.serviceAccount;
|
||||
|
||||
{
|
||||
new(namespace)::
|
||||
serviceAccount.new("alertmanager-main") +
|
||||
serviceAccount.mixin.metadata.withNamespace(namespace)
|
||||
}
|
||||
12
jsonnet/alertmanager/alertmanager-main-service.libsonnet
Normal file
12
jsonnet/alertmanager/alertmanager-main-service.libsonnet
Normal file
@@ -0,0 +1,12 @@
|
||||
local k = import "ksonnet.beta.3/k.libsonnet";
|
||||
local service = k.core.v1.service;
|
||||
local servicePort = k.core.v1.service.mixin.spec.portsType;
|
||||
|
||||
local alertmanagerPort = servicePort.newNamed("web", 9093, "web");
|
||||
|
||||
{
|
||||
new(namespace)::
|
||||
service.new("alertmanager-main", {app: "alertmanager", alertmanager: "main"}, alertmanagerPort) +
|
||||
service.mixin.metadata.withNamespace(namespace) +
|
||||
service.mixin.metadata.withLabels({alertmanager: "main"})
|
||||
}
|
||||
19
jsonnet/alertmanager/alertmanager-main.libsonnet
Normal file
19
jsonnet/alertmanager/alertmanager-main.libsonnet
Normal file
@@ -0,0 +1,19 @@
|
||||
{
|
||||
new(namespace)::
|
||||
{
|
||||
apiVersion: "monitoring.coreos.com/v1",
|
||||
kind: "Alertmanager",
|
||||
metadata: {
|
||||
name: "main",
|
||||
namespace: namespace,
|
||||
labels: {
|
||||
alertmanager: "main",
|
||||
},
|
||||
},
|
||||
spec: {
|
||||
replicas: 3,
|
||||
version: "v0.14.0",
|
||||
serviceAccountName: "alertmanager-main",
|
||||
},
|
||||
}
|
||||
}
|
||||
6
jsonnet/alertmanager/alertmanager.libsonnet
Normal file
6
jsonnet/alertmanager/alertmanager.libsonnet
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
config:: import "alertmanager-main-secret.libsonnet",
|
||||
serviceAccount:: import "alertmanager-main-service-account.libsonnet",
|
||||
service:: import "alertmanager-main-service.libsonnet",
|
||||
alertmanager:: import "alertmanager-main.libsonnet",
|
||||
}
|
||||
Reference in New Issue
Block a user