init commit

This commit is contained in:
2026-04-25 14:43:45 +00:00
commit 30af3165e4
26 changed files with 16629 additions and 0 deletions
@@ -0,0 +1,14 @@
---
"kind": "Namespace"
"apiVersion": "v1"
"metadata":
"name": "kube-mon"
"labels":
"kubernetes.io/metadata.name": "kube-mon"
---
"kind": "Namespace"
"apiVersion": "v1"
"metadata":
"name": "loki"
"labels":
"kubernetes.io/metadata.name": "loki"
+31
View File
@@ -0,0 +1,31 @@
# Live Monitoring Deployment Export
Diese Manifeste wurden am 2026-04-25 14:31:07 UTC direkt aus den aktuell laufenden Instanzen im Cluster exportiert und von Laufzeitfeldern bereinigt.
## Enthalten
- `00-namespaces.yaml`: Namespaces `kube-mon` und `loki`
- `alertmanager/`: Alertmanager StatefulSet, Services, ServiceAccount und die aktuell genutzten Config-/TLS-Secrets
- `grafana/`: Grafana StatefulSet, Services, RBAC, Secret, Core-Config und alle aktuell gelabelten Grafana-Dashboard-/Datasource-ConfigMaps aus `kube-mon`
- `promtail/`: Promtail DaemonSet, ConfigMap, ServiceAccount und Cluster-RBAC aus `loki`
- `prometheus/`: Prometheus StatefulSet, Services, RBAC, Config-Secrets und das aktuell geladene Rulefile-ConfigMap
- `loki/`: Loki StatefulSet, Services, ServiceAccount, ConfigMap und PVC
## Wichtige Hinweise
- Der Export bildet die aktuell laufenden Instanzen moeglichst nah ab, aber nicht die urspruenglichen Helm-Releases oder Operator-CRDs.
- Grafana-Datasources werden unveraendert exportiert. Die aktuelle Prometheus-Datasource verweist zusaetzlich auf Alertmanager; der zugehoerige StatefulSet-/Service-/Secret-Stand ist in diesem Paket enthalten.
- Alertmanager- und Promtail-Konfigurationen werden inklusive der aktuell im Cluster hinterlegten Secrets bzw. Push-Ziele exportiert. Fuer andere Umgebungen muessen diese Werte ggf. angepasst oder vor einem Commit redigiert werden.
- Die Prometheus-Konfiguration ist als aktuell generiertes Secret exportiert. In einer anderen Umgebung koennen Scrape-Targets fehlen, wenn dort Cluster-Services, Endpoints oder Exporter anders heissen.
- Persistenz bleibt auf den aktuell genutzten StorageClasses (`nfs-csi`) und Groessen (`Grafana 20Gi`, `Prometheus 50Gi`, `Loki 20Gi`).
- Alertmanager ist wie im Live-Cluster als Operator-generiertes StatefulSet exportiert. Die zugehoerigen CRDs/CRs und der Prometheus-Operator selbst sind weiterhin nicht Teil dieses Pakets.
- NodePort-Services wurden mit den aktuell gesetzten Ports exportiert (`Grafana 30637`, `Prometheus 31595`, `Alertmanager 32626`, `Loki 31940/30320`).
## Reihenfolge
1. `00-namespaces.yaml`
2. `loki/01-core.yaml`, `loki/02-services.yaml`, `loki/03-statefulset.yaml`
3. `promtail/01-rbac.yaml`, `promtail/02-config.yaml`, `promtail/03-daemonset.yaml`
4. `alertmanager/01-core.yaml`, `alertmanager/02-services.yaml`, `alertmanager/03-statefulset.yaml`
5. `prometheus/01-rbac.yaml`, `prometheus/02-config.yaml`, `prometheus/03-services.yaml`, `prometheus/04-statefulset.yaml`
6. `grafana/01-rbac.yaml`, `grafana/02-core-config.yaml`, `grafana/03-services.yaml`, `grafana/04-statefulset.yaml`, `grafana/05-provisioning-configmaps.yaml`
@@ -0,0 +1,88 @@
---
"kind": "ServiceAccount"
"apiVersion": "v1"
"metadata":
"name": "kube-prometheus-stack-1761-alertmanager"
"namespace": "kube-mon"
"labels":
"app": "kube-prometheus-stack-alertmanager"
"app.kubernetes.io/component": "alertmanager"
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/name": "kube-prometheus-stack-alertmanager"
"app.kubernetes.io/part-of": "kube-prometheus-stack"
"app.kubernetes.io/version": "79.0.1"
"chart": "kube-prometheus-stack-79.0.1"
"heritage": "Helm"
"release": "kube-prometheus-stack-1761819498"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"automountServiceAccountToken": true
---
"kind": "Secret"
"apiVersion": "v1"
"metadata":
"name": "alertmanager-kube-prometheus-stack-1761-alertmanager"
"namespace": "kube-mon"
"labels":
"app": "kube-prometheus-stack-alertmanager"
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/part-of": "kube-prometheus-stack"
"app.kubernetes.io/version": "79.0.1"
"chart": "kube-prometheus-stack-79.0.1"
"heritage": "Helm"
"release": "kube-prometheus-stack-1761819498"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"data":
"alertmanager.yaml": "Z2xvYmFsOgogIHJlc29sdmVfdGltZW91dDogNW0KICBzbXRwX2F1dGhfcGFzc3dvcmQ6IFJzMjAxMjE5ODgKICBzbXRwX2F1dGhfdXNlcm5hbWU6IGFsZXJ0aW5nQHJzaXRzZXJ2aWNlLmRlCiAgc210cF9mcm9tOiBhbGVydGluZ0Byc2l0c2VydmljZS5kZQogIHNtdHBfcmVxdWlyZV90bHM6IHRydWUKICBzbXRwX3NtYXJ0aG9zdDogbWFpbGNvdy5yc2l0c2VydmljZS5kZTo1ODcKaW5oaWJpdF9ydWxlczoKLSBlcXVhbDoKICAtIG5hbWVzcGFjZQogIC0gYWxlcnRuYW1lCiAgc291cmNlX21hdGNoZXJzOgogIC0gc2V2ZXJpdHkgPSBjcml0aWNhbAogIHRhcmdldF9tYXRjaGVyczoKICAtIHNldmVyaXR5ID1+IHdhcm5pbmd8aW5mbwotIGVxdWFsOgogIC0gbmFtZXNwYWNlCiAgLSBhbGVydG5hbWUKICBzb3VyY2VfbWF0Y2hlcnM6CiAgLSBzZXZlcml0eSA9IHdhcm5pbmcKICB0YXJnZXRfbWF0Y2hlcnM6CiAgLSBzZXZlcml0eSA9IGluZm8KLSBlcXVhbDoKICAtIG5hbWVzcGFjZQogIHNvdXJjZV9tYXRjaGVyczoKICAtIGFsZXJ0bmFtZSA9IEluZm9JbmhpYml0b3IKICB0YXJnZXRfbWF0Y2hlcnM6CiAgLSBzZXZlcml0eSA9IGluZm8KLSB0YXJnZXRfbWF0Y2hlcnM6CiAgLSBhbGVydG5hbWUgPSBJbmZvSW5oaWJpdG9yCnJlY2VpdmVyczoKLSBuYW1lOiAibnVsbCIKcm91dGU6CiAgZ3JvdXBfYnk6CiAgLSBhbGVydG5hbWUKICAtIGNsdXN0ZXIKICAtIHNlcnZpY2UKICBncm91cF9pbnRlcnZhbDogNW0KICBncm91cF93YWl0OiAzMHMKICByZWNlaXZlcjogbWFpbC1hbGVydHMKICByZWNlaXZlcnM6CiAgLSBlbWFpbF9jb25maWdzOgogICAgLSBzZW5kX3Jlc29sdmVkOiB0cnVlCiAgICAgIHRvOiBpbmZvQHJzaXRzZXJ2aWNlLmRlCiAgICBuYW1lOiBtYWlsLWFsZXJ0cwogIHJlcGVhdF9pbnRlcnZhbDogMTJoCiAgcm91dGVzOgogIC0gbWF0Y2hlcnM6CiAgICAtIGFsZXJ0bmFtZSA9ICJXYXRjaGRvZyIKICAgIHJlY2VpdmVyOiAibnVsbCIKdGVtcGxhdGVzOgotIC9ldGMvYWxlcnRtYW5hZ2VyL2NvbmZpZy8qLnRtcGw="
"type": "Opaque"
---
"kind": "Secret"
"apiVersion": "v1"
"metadata":
"name": "alertmanager-kube-prometheus-stack-1761-alertmanager-generated"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/managed-by": "prometheus-operator"
"managed-by": "prometheus-operator"
"data":
"alertmanager.yaml.gz": "H4sIAAAAAAAA/7ySy2r0MAyF934KMcsf5k8vdBOYB5gn6DJoXMUR+JLKcoaB0mcvTtppCg3tqlvpWN+xjpxPJ/StARDKyU/UKQdKRVt4CEZSUVqalngiaWEXi/c7A+AklbE7XWp7DxED5REtVXF9lZf6Nw8BAqodSGZJFaEn0ToBDrB7rM2n5D4ZZ2Rt4f4mXysclWRCP5us7kZCXVVv7wbDceATayfFVzN7UBRH2q3he8g0kbBe4PAKZ5TI0b1w7JMByKmIpU09WGFli94A0HNZlvh1Eauf/cyHX2LfXf4FdZ3LMfbpuKw0yRZ8A7c95+M85oCq4nonSmH0qEt0Dalt5ikBIzqSxqbYs2v+/dcwevMWAAD//yheIjPGAgAA"
"type": "Opaque"
---
"kind": "Secret"
"apiVersion": "v1"
"metadata":
"name": "alertmanager-kube-prometheus-stack-1761-alertmanager-web-config"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/managed-by": "prometheus-operator"
"managed-by": "prometheus-operator"
"data":
"web-config.yaml": ""
"type": "Opaque"
---
"kind": "Secret"
"apiVersion": "v1"
"metadata":
"name": "alertmanager-kube-prometheus-stack-1761-alertmanager-tls-assets-0"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/managed-by": "prometheus-operator"
"managed-by": "prometheus-operator"
"type": "Opaque"
---
"kind": "Secret"
"apiVersion": "v1"
"metadata":
"name": "alertmanager-kube-prometheus-stack-1761-alertmanager-cluster-tls-config"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/managed-by": "prometheus-operator"
"managed-by": "prometheus-operator"
"data":
"cluster-tls-config.yaml": ""
"type": "Opaque"
@@ -0,0 +1,91 @@
---
"kind": "Service"
"apiVersion": "v1"
"metadata":
"name": "kube-prometheus-stack-1761-alertmanager"
"namespace": "kube-mon"
"labels":
"app": "kube-prometheus-stack-alertmanager"
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/part-of": "kube-prometheus-stack"
"app.kubernetes.io/version": "79.0.1"
"chart": "kube-prometheus-stack-79.0.1"
"heritage": "Helm"
"release": "kube-prometheus-stack-1761819498"
"self-monitor": "true"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"spec":
"ports":
-
"name": "http-web"
"protocol": "TCP"
"port": 9093
"targetPort": 9093
-
"name": "reloader-web"
"protocol": "TCP"
"appProtocol": "http"
"port": 8080
"targetPort": "reloader-web"
"selector":
"alertmanager": "kube-prometheus-stack-1761-alertmanager"
"app.kubernetes.io/name": "alertmanager"
"type": "ClusterIP"
"sessionAffinity": "None"
---
"kind": "Service"
"apiVersion": "v1"
"metadata":
"name": "alertmanager-operated"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/managed-by": "prometheus-operator"
"managed-by": "prometheus-operator"
"operated-alertmanager": "true"
"spec":
"ports":
-
"name": "http-web"
"protocol": "TCP"
"port": 9093
"targetPort": "http-web"
-
"name": "tcp-mesh"
"protocol": "TCP"
"port": 9094
"targetPort": "mesh-tcp"
-
"name": "udp-mesh"
"protocol": "UDP"
"port": 9094
"targetPort": "mesh-udp"
"selector":
"app.kubernetes.io/name": "alertmanager"
"clusterIP": "None"
"type": "ClusterIP"
"sessionAffinity": "None"
"publishNotReadyAddresses": true
---
"kind": "Service"
"apiVersion": "v1"
"metadata":
"name": "alertmanager-nodeport"
"namespace": "kube-mon"
"labels":
"k8slens-edit-resource-version": "v1"
"spec":
"ports":
-
"name": "http-web"
"protocol": "TCP"
"port": 9093
"targetPort": "http-web"
"nodePort": 32626
"selector":
"app.kubernetes.io/name": "alertmanager"
"type": "NodePort"
"sessionAffinity": "None"
"externalTrafficPolicy": "Cluster"
@@ -0,0 +1,317 @@
---
"kind": "StatefulSet"
"apiVersion": "apps/v1"
"metadata":
"name": "alertmanager-kube-prometheus-stack-1761-alertmanager"
"namespace": "kube-mon"
"labels":
"alertmanager": "kube-prometheus-stack-1761-alertmanager"
"app": "kube-prometheus-stack-alertmanager"
"app.kubernetes.io/instance": "kube-prometheus-stack-1761-alertmanager"
"app.kubernetes.io/managed-by": "prometheus-operator"
"app.kubernetes.io/name": "alertmanager"
"app.kubernetes.io/part-of": "kube-prometheus-stack"
"app.kubernetes.io/version": "79.0.1"
"chart": "kube-prometheus-stack-79.0.1"
"heritage": "Helm"
"managed-by": "prometheus-operator"
"release": "kube-prometheus-stack-1761819498"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"prometheus-operator-input-hash": "12770747348952997375"
"spec":
"replicas": 1
"selector":
"matchLabels":
"alertmanager": "kube-prometheus-stack-1761-alertmanager"
"app.kubernetes.io/instance": "kube-prometheus-stack-1761-alertmanager"
"app.kubernetes.io/managed-by": "prometheus-operator"
"app.kubernetes.io/name": "alertmanager"
"template":
"metadata":
"labels":
"alertmanager": "kube-prometheus-stack-1761-alertmanager"
"app.kubernetes.io/instance": "kube-prometheus-stack-1761-alertmanager"
"app.kubernetes.io/managed-by": "prometheus-operator"
"app.kubernetes.io/name": "alertmanager"
"app.kubernetes.io/version": "0.28.1"
"annotations":
"kubectl.kubernetes.io/default-container": "alertmanager"
"spec":
"volumes":
-
"name": "config-volume"
"secret":
"secretName": "alertmanager-kube-prometheus-stack-1761-alertmanager-generated"
"defaultMode": 420
-
"name": "tls-assets"
"projected":
"sources":
-
"secret":
"name": "alertmanager-kube-prometheus-stack-1761-alertmanager-tls-assets-0"
"defaultMode": 420
-
"name": "config-out"
"emptyDir":
"medium": "Memory"
-
"name": "web-config"
"secret":
"secretName": "alertmanager-kube-prometheus-stack-1761-alertmanager-web-config"
"defaultMode": 420
-
"name": "cluster-tls-config"
"secret":
"secretName": "alertmanager-kube-prometheus-stack-1761-alertmanager-cluster-tls-config"
"defaultMode": 420
"initContainers":
-
"name": "init-config-reloader"
"image": "quay.io/prometheus-operator/prometheus-config-reloader:v0.86.1"
"command":
- "/bin/prometheus-config-reloader"
"args":
- "--watch-interval=0"
- "--listen-address=:8081"
- "--config-file=/etc/alertmanager/config/alertmanager.yaml.gz"
- "--config-envsubst-file=/etc/alertmanager/config_out/alertmanager.env.yaml"
- "--watched-dir=/etc/alertmanager/config"
"ports":
-
"name": "reloader-init"
"containerPort": 8081
"protocol": "TCP"
"env":
-
"name": "POD_NAME"
"valueFrom":
"fieldRef":
"apiVersion": "v1"
"fieldPath": "metadata.name"
-
"name": "SHARD"
"value": "-1"
"resources": {}
"volumeMounts":
-
"name": "config-volume"
"readOnly": true
"mountPath": "/etc/alertmanager/config"
-
"name": "config-out"
"mountPath": "/etc/alertmanager/config_out"
-
"name": "web-config"
"readOnly": true
"mountPath": "/etc/alertmanager/web_config/web-config.yaml"
"subPath": "web-config.yaml"
"terminationMessagePath": "/dev/termination-log"
"terminationMessagePolicy": "FallbackToLogsOnError"
"imagePullPolicy": "IfNotPresent"
"securityContext":
"capabilities":
"drop":
- "ALL"
"readOnlyRootFilesystem": true
"allowPrivilegeEscalation": false
"containers":
-
"name": "alertmanager"
"image": "quay.io/prometheus/alertmanager:v0.28.1"
"args":
- "--config.file=/etc/alertmanager/config_out/alertmanager.env.yaml"
- "--storage.path=/alertmanager"
- "--data.retention=120h"
- "--cluster.listen-address="
- "--web.listen-address=:9093"
- "--web.external-url=http://kube-prometheus-stack-1761-alertmanager.kube-mon:9093"
- "--web.route-prefix=/"
- "--cluster.label=kube-mon/kube-prometheus-stack-1761-alertmanager"
- "--cluster.peer=alertmanager-kube-prometheus-stack-1761-alertmanager-0.alertmanager-operated:9094"
- "--cluster.reconnect-timeout=5m"
- "--web.config.file=/etc/alertmanager/web_config/web-config.yaml"
"ports":
-
"name": "http-web"
"containerPort": 9093
"protocol": "TCP"
-
"name": "mesh-tcp"
"containerPort": 9094
"protocol": "TCP"
-
"name": "mesh-udp"
"containerPort": 9094
"protocol": "UDP"
"env":
-
"name": "POD_IP"
"valueFrom":
"fieldRef":
"apiVersion": "v1"
"fieldPath": "status.podIP"
"resources":
"requests":
"memory": "200Mi"
"volumeMounts":
-
"name": "config-volume"
"mountPath": "/etc/alertmanager/config"
-
"name": "config-out"
"readOnly": true
"mountPath": "/etc/alertmanager/config_out"
-
"name": "tls-assets"
"readOnly": true
"mountPath": "/etc/alertmanager/certs"
-
"name": "alertmanager-kube-prometheus-stack-1761-alertmanager-db"
"mountPath": "/alertmanager"
"subPath": "alertmanager-db"
-
"name": "web-config"
"readOnly": true
"mountPath": "/etc/alertmanager/web_config/web-config.yaml"
"subPath": "web-config.yaml"
-
"name": "cluster-tls-config"
"readOnly": true
"mountPath": "/etc/alertmanager/cluster_tls_config/cluster-tls-config.yaml"
"subPath": "cluster-tls-config.yaml"
"livenessProbe":
"httpGet":
"path": "/-/healthy"
"port": "http-web"
"scheme": "HTTP"
"timeoutSeconds": 3
"periodSeconds": 10
"successThreshold": 1
"failureThreshold": 10
"readinessProbe":
"httpGet":
"path": "/-/ready"
"port": "http-web"
"scheme": "HTTP"
"initialDelaySeconds": 3
"timeoutSeconds": 3
"periodSeconds": 5
"successThreshold": 1
"failureThreshold": 10
"terminationMessagePath": "/dev/termination-log"
"terminationMessagePolicy": "FallbackToLogsOnError"
"imagePullPolicy": "IfNotPresent"
"securityContext":
"capabilities":
"drop":
- "ALL"
"readOnlyRootFilesystem": true
"allowPrivilegeEscalation": false
-
"name": "config-reloader"
"image": "quay.io/prometheus-operator/prometheus-config-reloader:v0.86.1"
"command":
- "/bin/prometheus-config-reloader"
"args":
- "--listen-address=:8080"
- "--web-config-file=/etc/alertmanager/web_config/web-config.yaml"
- "--reload-url=http://127.0.0.1:9093/-/reload"
- "--config-file=/etc/alertmanager/config/alertmanager.yaml.gz"
- "--config-envsubst-file=/etc/alertmanager/config_out/alertmanager.env.yaml"
- "--watched-dir=/etc/alertmanager/config"
"ports":
-
"name": "reloader-web"
"containerPort": 8080
"protocol": "TCP"
"env":
-
"name": "POD_NAME"
"valueFrom":
"fieldRef":
"apiVersion": "v1"
"fieldPath": "metadata.name"
-
"name": "SHARD"
"value": "-1"
"resources": {}
"volumeMounts":
-
"name": "config-volume"
"readOnly": true
"mountPath": "/etc/alertmanager/config"
-
"name": "config-out"
"mountPath": "/etc/alertmanager/config_out"
-
"name": "web-config"
"readOnly": true
"mountPath": "/etc/alertmanager/web_config/web-config.yaml"
"subPath": "web-config.yaml"
"terminationMessagePath": "/dev/termination-log"
"terminationMessagePolicy": "FallbackToLogsOnError"
"imagePullPolicy": "IfNotPresent"
"securityContext":
"capabilities":
"drop":
- "ALL"
"readOnlyRootFilesystem": true
"allowPrivilegeEscalation": false
"restartPolicy": "Always"
"terminationGracePeriodSeconds": 120
"dnsPolicy": "ClusterFirst"
"serviceAccountName": "kube-prometheus-stack-1761-alertmanager"
"serviceAccount": "kube-prometheus-stack-1761-alertmanager"
"automountServiceAccountToken": true
"securityContext":
"runAsUser": 1000
"runAsGroup": 2000
"runAsNonRoot": true
"fsGroup": 2000
"seccompProfile":
"type": "RuntimeDefault"
"affinity":
"podAntiAffinity":
"preferredDuringSchedulingIgnoredDuringExecution":
-
"weight": 100
"podAffinityTerm":
"labelSelector":
"matchExpressions":
-
"key": "app.kubernetes.io/name"
"operator": "In"
"values":
- "alertmanager"
-
"key": "alertmanager"
"operator": "In"
"values":
- "kube-prometheus-stack-1761-alertmanager"
"topologyKey": "kubernetes.io/hostname"
"schedulerName": "default-scheduler"
"volumeClaimTemplates":
-
"kind": "PersistentVolumeClaim"
"apiVersion": "v1"
"metadata":
"name": "alertmanager-kube-prometheus-stack-1761-alertmanager-db"
"spec":
"accessModes":
- "ReadWriteOnce"
"resources":
"requests":
"storage": "50Gi"
"storageClassName": "nfs-csi"
"volumeMode": "Filesystem"
"serviceName": "alertmanager-operated"
"podManagementPolicy": "Parallel"
"updateStrategy":
"type": "RollingUpdate"
"revisionHistoryLimit": 10
"persistentVolumeClaimRetentionPolicy":
"whenDeleted": "Retain"
"whenScaled": "Retain"
@@ -0,0 +1,104 @@
---
"kind": "ServiceAccount"
"apiVersion": "v1"
"metadata":
"name": "kube-prometheus-stack-1761819498-grafana"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/name": "grafana"
"app.kubernetes.io/version": "12.2.1"
"helm.sh/chart": "grafana-10.1.4"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"automountServiceAccountToken": true
---
"kind": "Role"
"apiVersion": "rbac.authorization.k8s.io/v1"
"metadata":
"name": "kube-prometheus-stack-1761819498-grafana"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/name": "grafana"
"app.kubernetes.io/version": "12.2.1"
"helm.sh/chart": "grafana-10.1.4"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"rules": []
---
"kind": "RoleBinding"
"apiVersion": "rbac.authorization.k8s.io/v1"
"metadata":
"name": "kube-prometheus-stack-1761819498-grafana"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/name": "grafana"
"app.kubernetes.io/version": "12.2.1"
"helm.sh/chart": "grafana-10.1.4"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"subjects":
-
"kind": "ServiceAccount"
"name": "kube-prometheus-stack-1761819498-grafana"
"namespace": "kube-mon"
"roleRef":
"apiGroup": "rbac.authorization.k8s.io"
"kind": "Role"
"name": "kube-prometheus-stack-1761819498-grafana"
---
"kind": "ClusterRole"
"apiVersion": "rbac.authorization.k8s.io/v1"
"metadata":
"name": "kube-prometheus-stack-1761819498-grafana-clusterrole"
"labels":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/name": "grafana"
"app.kubernetes.io/version": "12.2.1"
"helm.sh/chart": "grafana-10.1.4"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"rules":
-
"verbs":
- "get"
- "watch"
- "list"
"apiGroups":
- ""
"resources":
- "configmaps"
- "secrets"
---
"kind": "ClusterRoleBinding"
"apiVersion": "rbac.authorization.k8s.io/v1"
"metadata":
"name": "kube-prometheus-stack-1761819498-grafana-clusterrolebinding"
"labels":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/name": "grafana"
"app.kubernetes.io/version": "12.2.1"
"helm.sh/chart": "grafana-10.1.4"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"subjects":
-
"kind": "ServiceAccount"
"name": "kube-prometheus-stack-1761819498-grafana"
"namespace": "kube-mon"
"roleRef":
"apiGroup": "rbac.authorization.k8s.io"
"kind": "ClusterRole"
"name": "kube-prometheus-stack-1761819498-grafana-clusterrole"
@@ -0,0 +1,83 @@
---
"kind": "ConfigMap"
"apiVersion": "v1"
"metadata":
"name": "kube-prometheus-stack-1761819498-grafana"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/name": "grafana"
"app.kubernetes.io/version": "12.2.1"
"helm.sh/chart": "grafana-10.1.4"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"data":
"grafana.ini": |
[analytics]
check_for_updates = true
[grafana_net]
url = https://grafana.net
[log]
mode = console
[paths]
data = /var/lib/grafana/
logs = /var/log/grafana
plugins = /var/lib/grafana/plugins
provisioning = /etc/grafana/provisioning
[server]
domain = ''
---
"kind": "ConfigMap"
"apiVersion": "v1"
"metadata":
"name": "kube-prometheus-stack-1761819498-grafana-config-dashboards"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/name": "grafana"
"app.kubernetes.io/version": "12.2.1"
"helm.sh/chart": "grafana-10.1.4"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"data":
"provider.yaml": |
apiVersion: 1
providers:
- name: 'sidecarProvider'
orgId: 1
folder: ''
folderUid: ''
type: file
disableDeletion: true
allowUiUpdates: false
updateIntervalSeconds: 30
options:
foldersFromFilesStructure: false
path: /tmp/dashboards
---
"kind": "Secret"
"apiVersion": "v1"
"metadata":
"name": "kube-prometheus-stack-1761819498-grafana"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/component": "admin-secret"
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/name": "grafana"
"app.kubernetes.io/version": "12.2.1"
"helm.sh/chart": "grafana-10.1.4"
"k8slens-edit-resource-version": "v1"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"data":
"admin-password": "UnMyMDEyMTk4OCE="
"admin-user": "YWRtaW4="
"ldap-toml": ""
"type": "Opaque"
@@ -0,0 +1,78 @@
---
"kind": "Service"
"apiVersion": "v1"
"metadata":
"name": "kube-prometheus-stack-1761819498-grafana"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/name": "grafana"
"app.kubernetes.io/version": "12.2.1"
"helm.sh/chart": "grafana-10.1.4"
"k8slens-edit-resource-version": "v1"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"spec":
"ports":
-
"name": "http-web"
"protocol": "TCP"
"port": 80
"targetPort": "grafana"
"selector":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/name": "grafana"
"type": "ClusterIP"
"sessionAffinity": "None"
---
"kind": "Service"
"apiVersion": "v1"
"metadata":
"name": "kube-prometheus-stack-1761819498-grafana-headless"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/name": "grafana"
"app.kubernetes.io/version": "12.2.1"
"helm.sh/chart": "grafana-10.1.4"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"spec":
"ports":
-
"name": "gossip-tcp"
"protocol": "TCP"
"port": 9094
"targetPort": "gossip-tcp"
"selector":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/name": "grafana"
"type": "ClusterIP"
"sessionAffinity": "None"
"clusterIP": "None"
---
"kind": "Service"
"apiVersion": "v1"
"metadata":
"name": "grafana-nodeport"
"namespace": "kube-mon"
"labels":
"k8slens-edit-resource-version": "v1"
"spec":
"ports":
-
"name": "http-web"
"protocol": "TCP"
"port": 80
"targetPort": "grafana"
"nodePort": 30637
"selector":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/name": "grafana"
"type": "NodePort"
"sessionAffinity": "None"
"externalTrafficPolicy": "Cluster"
@@ -0,0 +1,333 @@
---
"kind": "StatefulSet"
"apiVersion": "apps/v1"
"metadata":
"name": "kube-prometheus-stack-1761819498-grafana"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/name": "grafana"
"app.kubernetes.io/version": "12.2.1"
"helm.sh/chart": "grafana-10.1.4"
"k8slens-edit-resource-version": "v1"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"spec":
"replicas": 1
"selector":
"matchLabels":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/name": "grafana"
"template":
"metadata":
"labels":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/name": "grafana"
"app.kubernetes.io/version": "12.2.1"
"helm.sh/chart": "grafana-10.1.4"
"annotations":
"checksum/config": "d4994ce00e7811465a2fa6543bf581120fee2eef2b029c1877d15c2a3886deae"
"checksum/dashboards-json-config": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b"
"checksum/sc-dashboard-provider-config": "77f303eadac6bf5e0f42c223d042ba2827635e029336a34ae30a97433b486bdb"
"checksum/secret": "68ab9c5d48640ff3232bd4e6b4f93001b47e8cc44ae8bbd347e5af4fa2bafa55"
"kubectl.kubernetes.io/default-container": "grafana"
"spec":
"volumes":
-
"name": "config"
"configMap":
"name": "kube-prometheus-stack-1761819498-grafana"
"defaultMode": 420
-
"name": "sc-dashboard-volume"
"emptyDir": {}
-
"name": "sc-dashboard-provider"
"configMap":
"name": "kube-prometheus-stack-1761819498-grafana-config-dashboards"
"defaultMode": 420
-
"name": "sc-datasources-volume"
"emptyDir": {}
"initContainers":
-
"name": "init-chown-data"
"image": "docker.io/library/busybox:1.31.1"
"command":
- "chown"
- "-R"
- "472:472"
- "/var/lib/grafana"
"resources": {}
"volumeMounts":
-
"name": "storage"
"mountPath": "/var/lib/grafana"
"terminationMessagePath": "/dev/termination-log"
"terminationMessagePolicy": "File"
"imagePullPolicy": "IfNotPresent"
"securityContext":
"capabilities":
"add":
- "CHOWN"
"drop":
- "ALL"
"runAsUser": 0
"runAsNonRoot": false
"readOnlyRootFilesystem": false
"seccompProfile":
"type": "RuntimeDefault"
"containers":
-
"name": "grafana-sc-dashboard"
"image": "quay.io/kiwigrid/k8s-sidecar:1.30.10"
"env":
-
"name": "METHOD"
"value": "WATCH"
-
"name": "LABEL"
"value": "grafana_dashboard"
-
"name": "LABEL_VALUE"
"value": "1"
-
"name": "FOLDER"
"value": "/tmp/dashboards"
-
"name": "RESOURCE"
"value": "both"
-
"name": "NAMESPACE"
"value": "ALL"
-
"name": "SKIP_TLS_VERIFY"
"value": "true"
-
"name": "REQ_USERNAME"
"valueFrom":
"secretKeyRef":
"name": "kube-prometheus-stack-1761819498-grafana"
"key": "admin-user"
-
"name": "REQ_PASSWORD"
"valueFrom":
"secretKeyRef":
"name": "kube-prometheus-stack-1761819498-grafana"
"key": "admin-password"
-
"name": "REQ_URL"
"value": "http://localhost:3000/api/admin/provisioning/dashboards/reload"
-
"name": "REQ_METHOD"
"value": "POST"
"resources": {}
"volumeMounts":
-
"name": "sc-dashboard-volume"
"mountPath": "/tmp/dashboards"
"terminationMessagePath": "/dev/termination-log"
"terminationMessagePolicy": "File"
"imagePullPolicy": "IfNotPresent"
"securityContext":
"capabilities":
"drop":
- "ALL"
"allowPrivilegeEscalation": false
"seccompProfile":
"type": "RuntimeDefault"
-
"name": "grafana-sc-datasources"
"image": "quay.io/kiwigrid/k8s-sidecar:1.30.10"
"env":
-
"name": "METHOD"
"value": "WATCH"
-
"name": "LABEL"
"value": "grafana_datasource"
-
"name": "LABEL_VALUE"
"value": "1"
-
"name": "FOLDER"
"value": "/etc/grafana/provisioning/datasources"
-
"name": "RESOURCE"
"value": "both"
-
"name": "SKIP_TLS_VERIFY"
"value": "true"
-
"name": "REQ_USERNAME"
"valueFrom":
"secretKeyRef":
"name": "kube-prometheus-stack-1761819498-grafana"
"key": "admin-user"
-
"name": "REQ_PASSWORD"
"valueFrom":
"secretKeyRef":
"name": "kube-prometheus-stack-1761819498-grafana"
"key": "admin-password"
-
"name": "REQ_URL"
"value": "http://localhost:3000/api/admin/provisioning/datasources/reload"
-
"name": "REQ_METHOD"
"value": "POST"
"resources": {}
"volumeMounts":
-
"name": "sc-datasources-volume"
"mountPath": "/etc/grafana/provisioning/datasources"
"terminationMessagePath": "/dev/termination-log"
"terminationMessagePolicy": "File"
"imagePullPolicy": "IfNotPresent"
"securityContext":
"capabilities":
"drop":
- "ALL"
"allowPrivilegeEscalation": false
"seccompProfile":
"type": "RuntimeDefault"
-
"name": "grafana"
"image": "docker.io/grafana/grafana:13.1.0-24485707904"
"ports":
-
"name": "grafana"
"containerPort": 3000
"protocol": "TCP"
-
"name": "gossip-tcp"
"containerPort": 9094
"protocol": "TCP"
-
"name": "gossip-udp"
"containerPort": 9094
"protocol": "UDP"
-
"name": "profiling"
"containerPort": 6060
"protocol": "TCP"
"env":
-
"name": "POD_IP"
"valueFrom":
"fieldRef":
"apiVersion": "v1"
"fieldPath": "status.podIP"
-
"name": "GF_SECURITY_ADMIN_USER"
"valueFrom":
"secretKeyRef":
"name": "kube-prometheus-stack-1761819498-grafana"
"key": "admin-user"
-
"name": "GF_SECURITY_ADMIN_PASSWORD"
"valueFrom":
"secretKeyRef":
"name": "kube-prometheus-stack-1761819498-grafana"
"key": "admin-password"
-
"name": "GF_PATHS_DATA"
"value": "/var/lib/grafana/"
-
"name": "GF_PATHS_LOGS"
"value": "/var/log/grafana"
-
"name": "GF_PATHS_PLUGINS"
"value": "/var/lib/grafana/plugins"
-
"name": "GF_PATHS_PROVISIONING"
"value": "/etc/grafana/provisioning"
"resources": {}
"volumeMounts":
-
"name": "config"
"mountPath": "/etc/grafana/grafana.ini"
"subPath": "grafana.ini"
-
"name": "storage"
"mountPath": "/var/lib/grafana"
-
"name": "sc-dashboard-volume"
"mountPath": "/tmp/dashboards"
-
"name": "sc-dashboard-provider"
"mountPath": "/etc/grafana/provisioning/dashboards/sc-dashboardproviders.yaml"
"subPath": "provider.yaml"
-
"name": "sc-datasources-volume"
"mountPath": "/etc/grafana/provisioning/datasources"
"livenessProbe":
"httpGet":
"path": "/api/health"
"port": 3000
"scheme": "HTTP"
"initialDelaySeconds": 60
"timeoutSeconds": 30
"periodSeconds": 10
"successThreshold": 1
"failureThreshold": 10
"readinessProbe":
"httpGet":
"path": "/api/health"
"port": 3000
"scheme": "HTTP"
"timeoutSeconds": 1
"periodSeconds": 10
"successThreshold": 1
"failureThreshold": 3
"terminationMessagePath": "/dev/termination-log"
"terminationMessagePolicy": "File"
"imagePullPolicy": "IfNotPresent"
"securityContext":
"capabilities":
"drop":
- "ALL"
"allowPrivilegeEscalation": false
"seccompProfile":
"type": "RuntimeDefault"
"restartPolicy": "Always"
"terminationGracePeriodSeconds": 30
"dnsPolicy": "ClusterFirst"
"serviceAccountName": "kube-prometheus-stack-1761819498-grafana"
"serviceAccount": "kube-prometheus-stack-1761819498-grafana"
"automountServiceAccountToken": true
"shareProcessNamespace": false
"securityContext":
"runAsUser": 472
"runAsGroup": 472
"runAsNonRoot": true
"fsGroup": 472
"schedulerName": "default-scheduler"
"enableServiceLinks": true
"volumeClaimTemplates":
-
"kind": "PersistentVolumeClaim"
"apiVersion": "v1"
"metadata":
"name": "storage"
"spec":
"accessModes":
- "ReadWriteOnce"
"resources":
"requests":
"storage": "20Gi"
"storageClassName": "nfs-csi"
"volumeMode": "Filesystem"
"serviceName": "kube-prometheus-stack-1761819498-grafana-headless"
"podManagementPolicy": "OrderedReady"
"updateStrategy":
"type": "RollingUpdate"
"rollingUpdate":
"partition": 0
"maxUnavailable": 1
"revisionHistoryLimit": 10
"persistentVolumeClaimRetentionPolicy":
"whenDeleted": "Retain"
"whenScaled": "Retain"
File diff suppressed because one or more lines are too long
@@ -0,0 +1,71 @@
---
"kind": "ServiceAccount"
"apiVersion": "v1"
"metadata":
"name": "loki"
"namespace": "loki"
---
"kind": "ConfigMap"
"apiVersion": "v1"
"metadata":
"name": "loki-config"
"namespace": "loki"
"data":
"loki.yaml": |
auth_enabled: false
server:
http_listen_port: 3100
grpc_listen_port: 9096
common:
instance_addr: 127.0.0.1
path_prefix: /loki
storage:
filesystem:
chunks_directory: /loki/chunks
rules_directory: /loki/rules
replication_factor: 1
ring:
kvstore:
store: inmemory
schema_config:
configs:
- from: "2024-04-01"
store: tsdb
object_store: filesystem
schema: v13
index:
prefix: index_
period: 24h
limits_config:
allow_structured_metadata: true
reject_old_samples: true
reject_old_samples_max_age: 168h
ingestion_rate_mb: 16
ingestion_burst_size_mb: 32
max_cache_freshness_per_query: 10m
storage_config:
filesystem:
directory: /loki/chunks
tsdb_shipper:
active_index_directory: /loki/index
cache_location: /loki/index_cache
---
"kind": "PersistentVolumeClaim"
"apiVersion": "v1"
"metadata":
"name": "loki-data"
"namespace": "loki"
"spec":
"accessModes":
- "ReadWriteOnce"
"resources":
"requests":
"storage": "20Gi"
"storageClassName": "nfs-csi"
"volumeMode": "Filesystem"
@@ -0,0 +1,50 @@
---
"kind": "Service"
"apiVersion": "v1"
"metadata":
"name": "loki"
"namespace": "loki"
"labels":
"k8slens-edit-resource-version": "v1"
"spec":
"ports":
-
"name": "http-metrics"
"protocol": "TCP"
"port": 3100
"targetPort": "http-metrics"
"nodePort": 31940
-
"name": "grpc"
"protocol": "TCP"
"port": 9096
"targetPort": "grpc"
"nodePort": 30320
"selector":
"app": "loki"
"type": "NodePort"
"sessionAffinity": "None"
"externalTrafficPolicy": "Cluster"
---
"kind": "Service"
"apiVersion": "v1"
"metadata":
"name": "loki-headless"
"namespace": "loki"
"spec":
"ports":
-
"name": "http-metrics"
"protocol": "TCP"
"port": 3100
"targetPort": "http-metrics"
-
"name": "grpc"
"protocol": "TCP"
"port": 9096
"targetPort": "grpc"
"selector":
"app": "loki"
"type": "ClusterIP"
"sessionAffinity": "None"
"clusterIP": "None"
@@ -0,0 +1,100 @@
---
"kind": "StatefulSet"
"apiVersion": "apps/v1"
"metadata":
"name": "loki"
"namespace": "loki"
"spec":
"replicas": 1
"selector":
"matchLabels":
"app": "loki"
"template":
"metadata":
"labels":
"app": "loki"
"spec":
"volumes":
-
"name": "config"
"configMap":
"name": "loki-config"
"defaultMode": 420
-
"name": "storage"
"persistentVolumeClaim":
"claimName": "loki-data"
"containers":
-
"name": "loki"
"image": "grafana/loki:3.4.2"
"args":
- "-config.file=/etc/loki/config/loki.yaml"
"ports":
-
"name": "http-metrics"
"containerPort": 3100
"protocol": "TCP"
-
"name": "grpc"
"containerPort": 9096
"protocol": "TCP"
"resources":
"limits":
"cpu": "1"
"memory": "1Gi"
"requests":
"cpu": "100m"
"memory": "256Mi"
"volumeMounts":
-
"name": "storage"
"mountPath": "/loki"
-
"name": "config"
"mountPath": "/etc/loki/config"
"livenessProbe":
"httpGet":
"path": "/ready"
"port": "http-metrics"
"scheme": "HTTP"
"initialDelaySeconds": 45
"timeoutSeconds": 1
"periodSeconds": 10
"successThreshold": 1
"failureThreshold": 3
"readinessProbe":
"httpGet":
"path": "/ready"
"port": "http-metrics"
"scheme": "HTTP"
"initialDelaySeconds": 45
"timeoutSeconds": 1
"periodSeconds": 10
"successThreshold": 1
"failureThreshold": 3
"terminationMessagePath": "/dev/termination-log"
"terminationMessagePolicy": "File"
"imagePullPolicy": "IfNotPresent"
"restartPolicy": "Always"
"terminationGracePeriodSeconds": 30
"dnsPolicy": "ClusterFirst"
"serviceAccountName": "loki"
"serviceAccount": "loki"
"securityContext":
"runAsUser": 10001
"runAsGroup": 10001
"runAsNonRoot": true
"fsGroup": 10001
"schedulerName": "default-scheduler"
"serviceName": "loki"
"podManagementPolicy": "OrderedReady"
"updateStrategy":
"type": "RollingUpdate"
"rollingUpdate":
"partition": 0
"maxUnavailable": 1
"revisionHistoryLimit": 10
"persistentVolumeClaimRetentionPolicy":
"whenDeleted": "Retain"
"whenScaled": "Retain"
@@ -0,0 +1,102 @@
---
"kind": "ServiceAccount"
"apiVersion": "v1"
"metadata":
"name": "kube-prometheus-stack-1761-prometheus"
"namespace": "kube-mon"
"labels":
"app": "kube-prometheus-stack-prometheus"
"app.kubernetes.io/component": "prometheus"
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/name": "kube-prometheus-stack-prometheus"
"app.kubernetes.io/part-of": "kube-prometheus-stack"
"app.kubernetes.io/version": "79.0.1"
"chart": "kube-prometheus-stack-79.0.1"
"heritage": "Helm"
"release": "kube-prometheus-stack-1761819498"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"automountServiceAccountToken": true
---
"kind": "ClusterRole"
"apiVersion": "rbac.authorization.k8s.io/v1"
"metadata":
"name": "kube-prometheus-stack-1761-prometheus"
"labels":
"app": "kube-prometheus-stack-prometheus"
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/part-of": "kube-prometheus-stack"
"app.kubernetes.io/version": "79.0.1"
"chart": "kube-prometheus-stack-79.0.1"
"heritage": "Helm"
"release": "kube-prometheus-stack-1761819498"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"rules":
-
"verbs":
- "get"
- "list"
- "watch"
"apiGroups":
- ""
"resources":
- "nodes"
- "nodes/metrics"
- "services"
- "endpoints"
- "pods"
-
"verbs":
- "get"
- "list"
- "watch"
"apiGroups":
- "discovery.k8s.io"
"resources":
- "endpointslices"
-
"verbs":
- "get"
- "list"
- "watch"
"apiGroups":
- "networking.k8s.io"
"resources":
- "ingresses"
-
"verbs":
- "get"
"nonResourceURLs":
- "/metrics"
- "/metrics/cadvisor"
---
"kind": "ClusterRoleBinding"
"apiVersion": "rbac.authorization.k8s.io/v1"
"metadata":
"name": "kube-prometheus-stack-1761-prometheus"
"labels":
"app": "kube-prometheus-stack-prometheus"
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/part-of": "kube-prometheus-stack"
"app.kubernetes.io/version": "79.0.1"
"chart": "kube-prometheus-stack-79.0.1"
"heritage": "Helm"
"release": "kube-prometheus-stack-1761819498"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"subjects":
-
"kind": "ServiceAccount"
"name": "kube-prometheus-stack-1761-prometheus"
"namespace": "kube-mon"
"roleRef":
"apiGroup": "rbac.authorization.k8s.io"
"kind": "ClusterRole"
"name": "kube-prometheus-stack-1761-prometheus"
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,80 @@
---
"kind": "Service"
"apiVersion": "v1"
"metadata":
"name": "kube-prometheus-stack-1761-prometheus"
"namespace": "kube-mon"
"labels":
"app": "kube-prometheus-stack-prometheus"
"app.kubernetes.io/instance": "kube-prometheus-stack-1761819498"
"app.kubernetes.io/managed-by": "Helm"
"app.kubernetes.io/part-of": "kube-prometheus-stack"
"app.kubernetes.io/version": "79.0.1"
"chart": "kube-prometheus-stack-79.0.1"
"heritage": "Helm"
"release": "kube-prometheus-stack-1761819498"
"self-monitor": "true"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"spec":
"ports":
-
"name": "http-web"
"protocol": "TCP"
"port": 9090
"targetPort": 9090
-
"name": "reloader-web"
"protocol": "TCP"
"appProtocol": "http"
"port": 8080
"targetPort": "reloader-web"
"selector":
"app.kubernetes.io/name": "prometheus"
"operator.prometheus.io/name": "kube-prometheus-stack-1761-prometheus"
"type": "ClusterIP"
"sessionAffinity": "None"
---
"kind": "Service"
"apiVersion": "v1"
"metadata":
"name": "prometheus-operated"
"namespace": "kube-mon"
"labels":
"app.kubernetes.io/managed-by": "prometheus-operator"
"managed-by": "prometheus-operator"
"operated-prometheus": "true"
"spec":
"ports":
-
"name": "http-web"
"protocol": "TCP"
"port": 9090
"targetPort": "http-web"
"selector":
"app.kubernetes.io/name": "prometheus"
"type": "ClusterIP"
"sessionAffinity": "None"
"clusterIP": "None"
---
"kind": "Service"
"apiVersion": "v1"
"metadata":
"name": "prometheus-operated-nodeport"
"namespace": "kube-mon"
"labels":
"k8slens-edit-resource-version": "v1"
"spec":
"ports":
-
"name": "http-web"
"protocol": "TCP"
"port": 9090
"targetPort": "http-web"
"nodePort": 31595
"selector":
"app.kubernetes.io/name": "prometheus"
"type": "NodePort"
"sessionAffinity": "None"
"externalTrafficPolicy": "Cluster"
@@ -0,0 +1,302 @@
---
"kind": "StatefulSet"
"apiVersion": "apps/v1"
"metadata":
"name": "prometheus-kube-prometheus-stack-1761-prometheus"
"namespace": "kube-mon"
"labels":
"app": "kube-prometheus-stack-prometheus"
"app.kubernetes.io/instance": "kube-prometheus-stack-1761-prometheus"
"app.kubernetes.io/managed-by": "prometheus-operator"
"app.kubernetes.io/name": "prometheus"
"app.kubernetes.io/part-of": "kube-prometheus-stack"
"app.kubernetes.io/version": "79.0.1"
"chart": "kube-prometheus-stack-79.0.1"
"heritage": "Helm"
"k8slens-edit-resource-version": "v1"
"managed-by": "prometheus-operator"
"operator.prometheus.io/mode": "server"
"operator.prometheus.io/name": "kube-prometheus-stack-1761-prometheus"
"operator.prometheus.io/shard": "0"
"prometheus": "kube-prometheus-stack-1761-prometheus"
"release": "kube-prometheus-stack-1761819498"
"annotations":
"meta.helm.sh/release-name": "kube-prometheus-stack-1761819498"
"meta.helm.sh/release-namespace": "kube-mon"
"prometheus-operator-input-hash": "5891682108210749018"
"spec":
"replicas": 1
"selector":
"matchLabels":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761-prometheus"
"app.kubernetes.io/managed-by": "prometheus-operator"
"app.kubernetes.io/name": "prometheus"
"operator.prometheus.io/name": "kube-prometheus-stack-1761-prometheus"
"operator.prometheus.io/shard": "0"
"prometheus": "kube-prometheus-stack-1761-prometheus"
"template":
"metadata":
"labels":
"app.kubernetes.io/instance": "kube-prometheus-stack-1761-prometheus"
"app.kubernetes.io/managed-by": "prometheus-operator"
"app.kubernetes.io/name": "prometheus"
"app.kubernetes.io/version": "3.7.2"
"operator.prometheus.io/name": "kube-prometheus-stack-1761-prometheus"
"operator.prometheus.io/shard": "0"
"prometheus": "kube-prometheus-stack-1761-prometheus"
"annotations":
"kubectl.kubernetes.io/default-container": "prometheus"
"spec":
"volumes":
-
"name": "config"
"secret":
"secretName": "prometheus-kube-prometheus-stack-1761-prometheus"
"defaultMode": 420
-
"name": "tls-assets"
"projected":
"sources":
-
"secret":
"name": "prometheus-kube-prometheus-stack-1761-prometheus-tls-assets-0"
"defaultMode": 420
-
"name": "config-out"
"emptyDir":
"medium": "Memory"
-
"name": "prometheus-kube-prometheus-stack-1761-prometheus-rulefiles-0"
"configMap":
"name": "prometheus-kube-prometheus-stack-1761-prometheus-rulefiles-0"
"defaultMode": 420
-
"name": "web-config"
"secret":
"secretName": "prometheus-kube-prometheus-stack-1761-prometheus-web-config"
"defaultMode": 420
"initContainers":
-
"name": "init-config-reloader"
"image": "quay.io/prometheus-operator/prometheus-config-reloader:v0.86.1"
"command":
- "/bin/prometheus-config-reloader"
"args":
- "--watch-interval=0"
- "--listen-address=:8081"
- "--config-file=/etc/prometheus/config/prometheus.yaml.gz"
- "--config-envsubst-file=/etc/prometheus/config_out/prometheus.env.yaml"
- "--watched-dir=/etc/prometheus/rules/prometheus-kube-prometheus-stack-1761-prometheus-rulefiles-0"
"ports":
-
"name": "reloader-init"
"containerPort": 8081
"protocol": "TCP"
"env":
-
"name": "POD_NAME"
"valueFrom":
"fieldRef":
"apiVersion": "v1"
"fieldPath": "metadata.name"
-
"name": "SHARD"
"value": "0"
"resources": {}
"volumeMounts":
-
"name": "config"
"mountPath": "/etc/prometheus/config"
-
"name": "config-out"
"mountPath": "/etc/prometheus/config_out"
-
"name": "prometheus-kube-prometheus-stack-1761-prometheus-rulefiles-0"
"mountPath": "/etc/prometheus/rules/prometheus-kube-prometheus-stack-1761-prometheus-rulefiles-0"
"terminationMessagePath": "/dev/termination-log"
"terminationMessagePolicy": "FallbackToLogsOnError"
"imagePullPolicy": "IfNotPresent"
"securityContext":
"capabilities":
"drop":
- "ALL"
"readOnlyRootFilesystem": true
"allowPrivilegeEscalation": false
"containers":
-
"name": "prometheus"
"image": "quay.io/prometheus/prometheus:v3.7.2"
"args":
- "--config.file=/etc/prometheus/config_out/prometheus.env.yaml"
- "--web.enable-lifecycle"
- "--web.external-url=http://kube-prometheus-stack-1761-prometheus.kube-mon:9090"
- "--web.route-prefix=/"
- "--storage.tsdb.retention.time=10d"
- "--storage.tsdb.path=/prometheus"
- "--storage.tsdb.wal-compression"
- "--web.config.file=/etc/prometheus/web_config/web-config.yaml"
"ports":
-
"name": "http-web"
"containerPort": 9090
"protocol": "TCP"
"resources": {}
"volumeMounts":
-
"name": "config-out"
"readOnly": true
"mountPath": "/etc/prometheus/config_out"
-
"name": "tls-assets"
"readOnly": true
"mountPath": "/etc/prometheus/certs"
-
"name": "prometheus-kube-prometheus-stack-1761-prometheus-db"
"mountPath": "/prometheus"
"subPath": "prometheus-db"
-
"name": "prometheus-kube-prometheus-stack-1761-prometheus-rulefiles-0"
"mountPath": "/etc/prometheus/rules/prometheus-kube-prometheus-stack-1761-prometheus-rulefiles-0"
-
"name": "web-config"
"readOnly": true
"mountPath": "/etc/prometheus/web_config/web-config.yaml"
"subPath": "web-config.yaml"
"livenessProbe":
"httpGet":
"path": "/-/healthy"
"port": "http-web"
"scheme": "HTTP"
"timeoutSeconds": 3
"periodSeconds": 5
"successThreshold": 1
"failureThreshold": 6
"readinessProbe":
"httpGet":
"path": "/-/ready"
"port": "http-web"
"scheme": "HTTP"
"timeoutSeconds": 3
"periodSeconds": 5
"successThreshold": 1
"failureThreshold": 3
"startupProbe":
"httpGet":
"path": "/-/ready"
"port": "http-web"
"scheme": "HTTP"
"timeoutSeconds": 3
"periodSeconds": 15
"successThreshold": 1
"failureThreshold": 60
"terminationMessagePath": "/dev/termination-log"
"terminationMessagePolicy": "FallbackToLogsOnError"
"imagePullPolicy": "IfNotPresent"
"securityContext":
"capabilities":
"drop":
- "ALL"
"readOnlyRootFilesystem": true
"allowPrivilegeEscalation": false
-
"name": "config-reloader"
"image": "quay.io/prometheus-operator/prometheus-config-reloader:v0.86.1"
"command":
- "/bin/prometheus-config-reloader"
"args":
- "--listen-address=:8080"
- "--reload-url=http://127.0.0.1:9090/-/reload"
- "--config-file=/etc/prometheus/config/prometheus.yaml.gz"
- "--config-envsubst-file=/etc/prometheus/config_out/prometheus.env.yaml"
- "--watched-dir=/etc/prometheus/rules/prometheus-kube-prometheus-stack-1761-prometheus-rulefiles-0"
"ports":
-
"name": "reloader-web"
"containerPort": 8080
"protocol": "TCP"
"env":
-
"name": "POD_NAME"
"valueFrom":
"fieldRef":
"apiVersion": "v1"
"fieldPath": "metadata.name"
-
"name": "SHARD"
"value": "0"
"resources": {}
"volumeMounts":
-
"name": "config"
"mountPath": "/etc/prometheus/config"
-
"name": "config-out"
"mountPath": "/etc/prometheus/config_out"
-
"name": "prometheus-kube-prometheus-stack-1761-prometheus-rulefiles-0"
"mountPath": "/etc/prometheus/rules/prometheus-kube-prometheus-stack-1761-prometheus-rulefiles-0"
"terminationMessagePath": "/dev/termination-log"
"terminationMessagePolicy": "FallbackToLogsOnError"
"imagePullPolicy": "IfNotPresent"
"securityContext":
"capabilities":
"drop":
- "ALL"
"readOnlyRootFilesystem": true
"allowPrivilegeEscalation": false
"restartPolicy": "Always"
"terminationGracePeriodSeconds": 600
"dnsPolicy": "ClusterFirst"
"serviceAccountName": "kube-prometheus-stack-1761-prometheus"
"serviceAccount": "kube-prometheus-stack-1761-prometheus"
"automountServiceAccountToken": true
"shareProcessNamespace": false
"securityContext":
"runAsUser": 1000
"runAsGroup": 2000
"runAsNonRoot": true
"fsGroup": 2000
"seccompProfile":
"type": "RuntimeDefault"
"affinity":
"podAntiAffinity":
"preferredDuringSchedulingIgnoredDuringExecution":
-
"weight": 100
"podAffinityTerm":
"labelSelector":
"matchExpressions":
-
"key": "app.kubernetes.io/name"
"operator": "In"
"values":
- "prometheus"
-
"key": "app.kubernetes.io/instance"
"operator": "In"
"values":
- "kube-prometheus-stack-1761-prometheus"
"topologyKey": "kubernetes.io/hostname"
"schedulerName": "default-scheduler"
"volumeClaimTemplates":
-
"kind": "PersistentVolumeClaim"
"apiVersion": "v1"
"metadata":
"name": "prometheus-kube-prometheus-stack-1761-prometheus-db"
"spec":
"accessModes":
- "ReadWriteOnce"
"resources":
"requests":
"storage": "50Gi"
"storageClassName": "nfs-csi"
"volumeMode": "Filesystem"
"serviceName": "prometheus-operated"
"podManagementPolicy": "Parallel"
"updateStrategy":
"type": "RollingUpdate"
"revisionHistoryLimit": 10
"persistentVolumeClaimRetentionPolicy":
"whenDeleted": "Retain"
"whenScaled": "Retain"
@@ -0,0 +1,39 @@
---
"kind": "ServiceAccount"
"apiVersion": "v1"
"metadata":
"name": "promtail"
"namespace": "loki"
---
"kind": "ClusterRole"
"apiVersion": "rbac.authorization.k8s.io/v1"
"metadata":
"name": "promtail"
"rules":
-
"verbs":
- "get"
- "list"
- "watch"
"apiGroups":
- ""
"resources":
- "nodes"
- "nodes/proxy"
- "services"
- "endpoints"
- "pods"
---
"kind": "ClusterRoleBinding"
"apiVersion": "rbac.authorization.k8s.io/v1"
"metadata":
"name": "promtail"
"subjects":
-
"kind": "ServiceAccount"
"name": "promtail"
"namespace": "loki"
"roleRef":
"apiGroup": "rbac.authorization.k8s.io"
"kind": "ClusterRole"
"name": "promtail"
@@ -0,0 +1,50 @@
---
"kind": "ConfigMap"
"apiVersion": "v1"
"metadata":
"name": "promtail-config"
"namespace": "loki"
"data":
"promtail.yaml": |
server:
http_listen_port: 9080
grpc_listen_port: 0
clients:
- url: http://loki.loki.svc.cluster.local:3100/loki/api/v1/push
positions:
filename: /run/promtail/positions.yaml
scrape_configs:
- job_name: kubernetes-pods
pipeline_stages:
- cri: {}
kubernetes_sd_configs:
- role: pod
relabel_configs:
- action: replace
source_labels: [__meta_kubernetes_pod_node_name]
target_label: __host__
- action: replace
source_labels: [__meta_kubernetes_pod_label_app_kubernetes_io_name]
regex: (.+)
target_label: app
- action: replace
source_labels: [__meta_kubernetes_pod_label_app]
regex: (.+)
target_label: app
- action: replace
source_labels: [__meta_kubernetes_namespace]
target_label: namespace
- action: replace
source_labels: [__meta_kubernetes_pod_name]
target_label: pod
- action: replace
source_labels: [__meta_kubernetes_pod_container_name]
target_label: container
- action: replace
source_labels: [__meta_kubernetes_pod_uid, __meta_kubernetes_pod_container_name]
separator: /
replacement: /var/log/pods/*$1/*.log
target_label: __path__
@@ -0,0 +1,84 @@
---
"kind": "DaemonSet"
"apiVersion": "apps/v1"
"metadata":
"name": "promtail"
"namespace": "loki"
"spec":
"selector":
"matchLabels":
"app": "promtail"
"template":
"metadata":
"labels":
"app": "promtail"
"spec":
"volumes":
-
"name": "config"
"configMap":
"name": "promtail-config"
"defaultMode": 420
-
"name": "run"
"hostPath":
"path": "/run/promtail"
"type": ""
-
"name": "pods"
"hostPath":
"path": "/var/log/pods"
"type": ""
"containers":
-
"name": "promtail"
"image": "grafana/promtail:3.4.2"
"args":
- "-config.file=/etc/promtail/promtail.yaml"
- "-config.expand-env=true"
"ports":
-
"name": "http-metrics"
"containerPort": 9080
"protocol": "TCP"
"env":
-
"name": "HOSTNAME"
"valueFrom":
"fieldRef":
"apiVersion": "v1"
"fieldPath": "spec.nodeName"
"resources": {}
"volumeMounts":
-
"name": "config"
"mountPath": "/etc/promtail"
-
"name": "run"
"mountPath": "/run/promtail"
-
"name": "pods"
"readOnly": true
"mountPath": "/var/log/pods"
"terminationMessagePath": "/dev/termination-log"
"terminationMessagePolicy": "File"
"imagePullPolicy": "IfNotPresent"
"securityContext":
"privileged": true
"runAsUser": 0
"restartPolicy": "Always"
"terminationGracePeriodSeconds": 30
"dnsPolicy": "ClusterFirst"
"serviceAccountName": "promtail"
"serviceAccount": "promtail"
"securityContext": {}
"schedulerName": "default-scheduler"
"tolerations":
-
"operator": "Exists"
"updateStrategy":
"type": "RollingUpdate"
"rollingUpdate":
"maxUnavailable": 1
"maxSurge": 0
"revisionHistoryLimit": 10