diff --git a/attic/.helmignore b/attic/.helmignore
deleted file mode 100644
index a03bb3bc..00000000
--- a/attic/.helmignore
+++ /dev/null
@@ -1,26 +0,0 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*.orig
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
-.vscode/
-*.nix
-old/
-nix/
diff --git a/attic/Chart.yaml b/attic/Chart.yaml
deleted file mode 100644
index 142f6713..00000000
--- a/attic/Chart.yaml
+++ /dev/null
@@ -1,27 +0,0 @@
-apiVersion: v2
-name: sys
-description: A Helm chart for Kubernetes
-
-# A chart can be either an 'application' or a 'library' chart.
-#
-# Application charts are a collection of templates that can be packaged into versioned archives
-# to be deployed.
-#
-# Library charts provide useful utilities or functions for the chart developer. They're included as
-# a dependency of application charts to inject those utilities and functions into the rendering
-# pipeline. Library charts do not define any templates and therefore cannot be deployed.
-type: application
-
-# This is the chart version. This version number should be incremented each time you make changes
-# to the chart and its templates, including the app version.
-# Versions are expected to follow Semantic Versioning (https://semver.org/)
-version: 0.1.0
-
-# This is the version number of the application being deployed. This version number should be
-# incremented each time you make changes to the application. Versions are not expected to
-# follow Semantic Versioning. They should reflect the version the application is using.
-# It is recommended to use it with quotes.
-appVersion: "1.16.0"
-dependencies: # A list of the chart requirements (optional)
- - name: sys-cilium-policies
- condition: cilium.enabled
diff --git a/attic/charts/cilium/.helmignore b/attic/charts/cilium/.helmignore
deleted file mode 100644
index 0e8a0eb3..00000000
--- a/attic/charts/cilium/.helmignore
+++ /dev/null
@@ -1,23 +0,0 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*.orig
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
-.vscode/
diff --git a/attic/charts/cilium/Chart.yaml b/attic/charts/cilium/Chart.yaml
deleted file mode 100644
index 68b10e69..00000000
--- a/attic/charts/cilium/Chart.yaml
+++ /dev/null
@@ -1,24 +0,0 @@
-apiVersion: v2
-name: cilium
-description: A Helm chart for Kubernetes
-
-# A chart can be either an 'application' or a 'library' chart.
-#
-# Application charts are a collection of templates that can be packaged into versioned archives
-# to be deployed.
-#
-# Library charts provide useful utilities or functions for the chart developer. They're included as
-# a dependency of application charts to inject those utilities and functions into the rendering
-# pipeline. Library charts do not define any templates and therefore cannot be deployed.
-type: application
-
-# This is the chart version. This version number should be incremented each time you make changes
-# to the chart and its templates, including the app version.
-# Versions are expected to follow Semantic Versioning (https://semver.org/)
-version: 0.1.0
-
-# This is the version number of the application being deployed. This version number should be
-# incremented each time you make changes to the application. Versions are not expected to
-# follow Semantic Versioning. They should reflect the version the application is using.
-# It is recommended to use it with quotes.
-appVersion: "1.16.0"
diff --git a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-applicationset-ingress.yaml b/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-applicationset-ingress.yaml
deleted file mode 100644
index 1678e7a3..00000000
--- a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-applicationset-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-applicationset-ingress
- namespace: argocd
-spec:
- description: Allow access from the ingress controller
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: applicationset-controller
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-argo-notifications.yaml b/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-argo-notifications.yaml
deleted file mode 100644
index 045dbc56..00000000
--- a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-argo-notifications.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-argo-notifications
- namespace: argocd
-spec:
- description: Allow access to the ArgoCD Notifications
- egress:
- - toFQDNs:
- - matchName: slack.com
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: notifications-controller
diff --git a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-argo-repo-access-applicationset.yaml b/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-argo-repo-access-applicationset.yaml
deleted file mode 100644
index 0af071b5..00000000
--- a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-argo-repo-access-applicationset.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-argo-repo-access-applicationset
- namespace: argocd
-spec:
- description: Allow access to the ArgoCD repo Applicationset
- egress:
- - toEntities:
- - world
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: applicationset-controller
diff --git a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-argo-repo-access.yaml b/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-argo-repo-access.yaml
deleted file mode 100644
index 6e2b7e04..00000000
--- a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-argo-repo-access.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-argo-repo-access
- namespace: argocd
-spec:
- description: Allow access to the ArgoCD repo server
- egress:
- - toEntities:
- - world
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: repo-server
diff --git a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-chartmuseum-ingress.yaml b/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-chartmuseum-ingress.yaml
deleted file mode 100644
index 5f030377..00000000
--- a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-chartmuseum-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-chartmuseum-ingress
- namespace: argocd
-spec:
- description: Allow access to the chartmuseum ingress
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: chartmuseum
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-image-updater-repo-access.yaml b/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-image-updater-repo-access.yaml
deleted file mode 100644
index 1534b3c8..00000000
--- a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-image-updater-repo-access.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-image-updater-repo-access
- namespace: argocd
-spec:
- description: Allow argoCD image updater to access github container registry
- egress:
- - toFQDNs:
- - matchName: ghcr.io
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: argocd-image-updater
diff --git a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-ingress.yaml b/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-ingress.yaml
deleted file mode 100644
index 2096eaae..00000000
--- a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-ingress
- namespace: argocd
-spec:
- description: Allow access from the ingress controller
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: server
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index 40045bb8..00000000
--- a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: argocd
-spec:
- description: Allow access to the Kube API server
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-microsoft-sso.yaml b/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-microsoft-sso.yaml
deleted file mode 100644
index e68b04d2..00000000
--- a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-microsoft-sso.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-microsoft-sso
- namespace: argocd
-spec:
- description: Allow argoCD dex server to authenticate to microsoft online azure oatuh
- egress:
- - toFQDNs:
- - matchName: login.microsoftonline.com
- - matchPattern: '*.microsoftonline.com'
- - matchName: github.com
- - matchName: api.github.com
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: argocd-dex-server
diff --git a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics-rollout.yaml b/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics-rollout.yaml
deleted file mode 100644
index ebfed5bd..00000000
--- a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics-rollout.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics-rollout
- namespace: argocd
-spec:
- description: Allow access to the Prometheus metrics
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: argo-rollouts
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- toPorts:
- - ports:
- - port: "8090"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics-workflows.yaml b/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics-workflows.yaml
deleted file mode 100644
index f8f81286..00000000
--- a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics-workflows.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics-workflows
- namespace: argocd
-spec:
- description: Allow access to the Prometheus metrics
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: argo-workflows
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- toPorts:
- - ports:
- - port: "9090"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index a1b0f86f..00000000
--- a/attic/charts/cilium/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,30 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: argocd
-spec:
- description: Allow access to the Prometheus metrics
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: argocd
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- toPorts:
- - ports:
- - port: "8082"
- protocol: TCP
- - port: "8080"
- protocol: TCP
- - port: "9001"
- protocol: TCP
- - port: "9121"
- protocol: TCP
- - port: "8084"
- protocol: TCP
- - port: "8083"
- protocol: TCP
- - port: "5558"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/cert-manager/CiliumNetworkPolicy-allow-api-server-to-cert-manager.yaml b/attic/charts/cilium/templates/cert-manager/CiliumNetworkPolicy-allow-api-server-to-cert-manager.yaml
deleted file mode 100644
index 7ff9859e..00000000
--- a/attic/charts/cilium/templates/cert-manager/CiliumNetworkPolicy-allow-api-server-to-cert-manager.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server-to-cert-manager
- namespace: cert-manager
-spec:
- description: Allow the API server to communicate with the cert-manager pods
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: cert-manager
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/cilium/templates/cert-manager/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/cilium/templates/cert-manager/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index 49e026d4..00000000
--- a/attic/charts/cilium/templates/cert-manager/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: cert-manager
-spec:
- description: Allow the Kube API server to communicate with cert-manager
- egress:
- - toEntities:
- - kube-apiserver
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/cert-manager/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/cilium/templates/cert-manager/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index d64ede50..00000000
--- a/attic/charts/cilium/templates/cert-manager/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: cert-manager
-spec:
- description: Allow Prometheus metrics
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: cert-manager
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "9402"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/cert-manager/CiliumNetworkPolicy-allow-world-traffic.yaml b/attic/charts/cilium/templates/cert-manager/CiliumNetworkPolicy-allow-world-traffic.yaml
deleted file mode 100644
index a3d26127..00000000
--- a/attic/charts/cilium/templates/cert-manager/CiliumNetworkPolicy-allow-world-traffic.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-world-traffic
- namespace: cert-manager
-spec:
- description: Allow the world to communicate with cert-manager
- egress:
- - toEntities:
- - world
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/cilium-spire/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/cilium/templates/cilium-spire/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index ca0bd2c4..00000000
--- a/attic/charts/cilium/templates/cilium-spire/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: cilium-spire
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/cilium-spire/CiliumNetworkPolicy-allow-remote-node-to-server.yaml b/attic/charts/cilium/templates/cilium-spire/CiliumNetworkPolicy-allow-remote-node-to-server.yaml
deleted file mode 100644
index 013a84f9..00000000
--- a/attic/charts/cilium/templates/cilium-spire/CiliumNetworkPolicy-allow-remote-node-to-server.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-server
- namespace: cilium-spire
-spec:
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEntities:
- - remote-node
- toPorts:
- - ports:
- - port: "8081"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/cilium-test/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/cilium/templates/cilium-test/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index 28045ea2..00000000
--- a/attic/charts/cilium/templates/cilium-test/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,22 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: cilium-test
-spec:
- egress:
- - toEndpoints:
- - {}
- - toEntities:
- - cluster
- - toEntities:
- - remote-node
- - toEntities:
- - world
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEntities:
- - cluster
- - fromEntities:
- - world
diff --git a/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-allow-acme-solvers.yaml b/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-allow-acme-solvers.yaml
deleted file mode 100644
index 214dade6..00000000
--- a/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-allow-acme-solvers.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: allow-acme-solvers
-spec:
- description: Policy for ingress for Acme Solvers.
- endpointSelector:
- matchLabels:
- acme.cert-manager.io/http01-solver: "true"
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-allow-dns.yaml b/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-allow-dns.yaml
deleted file mode 100644
index 0a7f77b3..00000000
--- a/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-allow-dns.yaml
+++ /dev/null
@@ -1,24 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: allow-dns
-spec:
- description: 'description: Allow only dns traffic by default. Also acts as a deny-all policy'
- egress:
- - toEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: kube-system
- k8s-app: kube-dns
- toPorts:
- - ports:
- - port: "53"
- protocol: UDP
- - rules:
- dns:
- - matchPattern: '*'
- endpointSelector:
- matchExpressions:
- - key: io.kubernetes.pod.namespace
- operator: NotIn
- values:
- - kube-system
diff --git a/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-allow-mariadb-operator.yaml b/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-allow-mariadb-operator.yaml
deleted file mode 100644
index a0a41bcc..00000000
--- a/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-allow-mariadb-operator.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: allow-mariadb-operator
-spec:
- description: allow mariadb instances to be reached by operator
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: mariadb
- ingress:
- - fromEndpoints:
- - matchLabels:
- app.kubernetes.io/name: mariadb-operator
- io.kubernetes.pod.namespace: mariadb-operator
- toPorts:
- - ports:
- - port: "3306"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-allow-s3.yaml b/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-allow-s3.yaml
deleted file mode 100644
index 43fed561..00000000
--- a/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-allow-s3.yaml
+++ /dev/null
@@ -1,20 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: allow-s3-traffic
-spec:
- description: Policy for egress for CNPG Backups.
- egress:
- - toFQDNs:
- {{- range .Values.s3.hosts }}
- - matchName: {{ . | quote }}
- {{- end }}
- {{- range .Values.s3.patterns }}
- - matchPattern: {{ . | quote }}
- {{- end }}
- - toCIDR:
- {{- range .Values.s3.cidr }}
- - {{ . | quote }}
- {{- end }}
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-cilium-health-checks.yaml b/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-cilium-health-checks.yaml
deleted file mode 100644
index 9fc9bb26..00000000
--- a/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-cilium-health-checks.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: cilium-health-checks
-spec:
- description: Health checks
- egress:
- - toEntities:
- - remote-node
- endpointSelector:
- matchLabels:
- reserved:health: ""
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-deny-all.yaml b/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-deny-all.yaml
deleted file mode 100644
index 7ba45d08..00000000
--- a/attic/charts/cilium/templates/clusterwide/CiliumClusterwideNetworkPolicy-deny-all.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: deny-all
-spec:
- description: Deny all
- egress: []
- endpointSelector: {}
- ingress: []
diff --git a/attic/charts/cilium/templates/cnpg/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/cilium/templates/cnpg/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index d32ac553..00000000
--- a/attic/charts/cilium/templates/cnpg/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: cnpg
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: postgres-operator
diff --git a/attic/charts/cilium/templates/cnpg/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml b/attic/charts/cilium/templates/cnpg/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
deleted file mode 100644
index 6c04cc22..00000000
--- a/attic/charts/cilium/templates/cnpg/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-webhooks
- namespace: cnpg
-spec:
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "9443"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/downscaler/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/cilium/templates/downscaler/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index 7c7345ec..00000000
--- a/attic/charts/cilium/templates/downscaler/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: kube-downscaler
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- application: downscaler-py-kube-downscaler
diff --git a/attic/charts/cilium/templates/downscaler/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml b/attic/charts/cilium/templates/downscaler/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
deleted file mode 100644
index e99b9eec..00000000
--- a/attic/charts/cilium/templates/downscaler/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-webhooks
- namespace: kube-downscaler
-spec:
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "9443"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-host-traffic.yaml b/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-host-traffic.yaml
deleted file mode 100644
index 4ffbbd8c..00000000
--- a/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-host-traffic.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-host-traffic
- namespace: ingress-nginx
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- - host
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: ingress-nginx
diff --git a/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-hubble-traffic.yaml b/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-hubble-traffic.yaml
deleted file mode 100644
index fa9ee953..00000000
--- a/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-hubble-traffic.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-hubble-traffic
- namespace: ingress-nginx
-spec:
- egress:
- - toFQDNs:
- - matchPattern: hubble.*.*.*
- - matchPattern: hubble.*.*.*.*
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: ingress-nginx
diff --git a/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index 98bbc402..00000000
--- a/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: ingress-nginx
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: ingress-nginx
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "9913"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-s3-traffic.yaml b/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-s3-traffic.yaml
deleted file mode 100644
index b3bcc3d3..00000000
--- a/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-s3-traffic.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-s3-traffic
- namespace: ingress-nginx
-spec:
- egress:
- - toCIDR:
- - 10.139.2.10/32
- - toCIDR:
- - 10.139.2.11/32
- - toCIDR:
- - 10.139.2.20/32
- - toCIDR:
- - 10.139.2.21/32
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: ingress-nginx
diff --git a/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-world-to-ingress-nginx.yaml b/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-world-to-ingress-nginx.yaml
deleted file mode 100644
index 4ecbe4fa..00000000
--- a/attic/charts/cilium/templates/ingress-nginx/CiliumNetworkPolicy-allow-world-to-ingress-nginx.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-world-to-ingress-nginx
- namespace: ingress-nginx
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: ingress-nginx
- ingress:
- - fromEntities:
- - world
- - toPorts:
- - ports:
- - port: "80"
- protocol: TCP
- - port: "443"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/jaeger/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/cilium/templates/jaeger/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index 29cd1826..00000000
--- a/attic/charts/cilium/templates/jaeger/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: jaeger
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/jaeger/CiliumNetworkPolicy-allow-remote-node-to-jaeger.yaml b/attic/charts/cilium/templates/jaeger/CiliumNetworkPolicy-allow-remote-node-to-jaeger.yaml
deleted file mode 100644
index 3d1bddcd..00000000
--- a/attic/charts/cilium/templates/jaeger/CiliumNetworkPolicy-allow-remote-node-to-jaeger.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-jaeger
- namespace: jaeger
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: jaeger-operator
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/cilium/templates/kafka/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/cilium/templates/kafka/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index 1e35e6ad..00000000
--- a/attic/charts/cilium/templates/kafka/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: kafka
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: kafka-operator
diff --git a/attic/charts/cilium/templates/kafka/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml b/attic/charts/cilium/templates/kafka/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
deleted file mode 100644
index cbf9ee6b..00000000
--- a/attic/charts/cilium/templates/kafka/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-webhooks
- namespace: kafka
-spec:
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "9443"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-controller-metrics.yaml b/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-controller-metrics.yaml
deleted file mode 100644
index 31b7dacc..00000000
--- a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-controller-metrics.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-controller-metrics
- namespace: kube-system
-spec:
- description: Allow Controller Metrics
- endpointSelector:
- matchLabels:
- k8s-app: kube-controller-manager
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "10257"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-csi-webhook.yaml b/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-csi-webhook.yaml
deleted file mode 100644
index 9e8e47fe..00000000
--- a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-csi-webhook.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-csi-webhook
- namespace: kube-system
-spec:
- endpointSelector:
- matchLabels:
- app: csi-snapshot-webhook
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-dns-metrics.yaml b/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-dns-metrics.yaml
deleted file mode 100644
index b4c33ac7..00000000
--- a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-dns-metrics.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-dns-metrics
- namespace: kube-system
-spec:
- description: Allow DNS metrics
- endpointSelector:
- matchLabels:
- k8s-app: kube-dns
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "9153"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-dns-world.yaml b/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-dns-world.yaml
deleted file mode 100644
index b69f15f6..00000000
--- a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-dns-world.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-dns-world
- namespace: kube-system
-spec:
- description: Allow DNS World
- egress:
- - toCIDR:
- - 8.8.8.8/32
- - 172.31.254.11/32
- - 1.1.1.1/32
- toPorts:
- - ports:
- - port: "53"
- protocol: UDP
- rules:
- dns:
- - matchPattern: '*'
- - toEntities:
- - world
- toPorts:
- - ports:
- - port: "53"
- protocol: UDP
- rules:
- dns:
- - matchPattern: '*'
- endpointSelector:
- matchLabels:
- k8s-app: kube-dns
diff --git a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-dns.yaml b/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-dns.yaml
deleted file mode 100644
index 7d19e1de..00000000
--- a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-dns.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-dns
- namespace: kube-system
-spec:
- description: Allow DNS
- endpointSelector:
- matchLabels:
- k8s-app: kube-dns
- ingress:
- - fromEndpoints:
- - matchExpressions:
- - key: io.kubernetes.pod.namespace
- operator: Exists
- toPorts:
- - ports:
- - port: "53"
- protocol: UDP
diff --git a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-host-traffic.yaml b/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-host-traffic.yaml
deleted file mode 100644
index 08710d89..00000000
--- a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-host-traffic.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-host-traffic
- namespace: kube-system
-spec:
- description: Allow Host Traffic
- egress:
- - toEntities:
- - remote-node
- - host
- - kube-apiserver
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-hubble-ingress.yaml b/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-hubble-ingress.yaml
deleted file mode 100644
index ec1c6cf8..00000000
--- a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-hubble-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-hubble-ingress
- namespace: kube-system
-spec:
- description: Allow Hubble ingress
- endpointSelector:
- matchLabels:
- k8s-app: hubble-ui
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-hubble-oauth2-ingress.yaml b/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-hubble-oauth2-ingress.yaml
deleted file mode 100644
index 7e31779e..00000000
--- a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-hubble-oauth2-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-hubble-oauth2-ingress
- namespace: kube-system
-spec:
- description: Allow Hubble OAuth2 ingress
- endpointSelector:
- matchLabels:
- k8s-app: oauth2-proxy
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-hubble-relay-metrics.yaml b/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-hubble-relay-metrics.yaml
deleted file mode 100644
index 676dddde..00000000
--- a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-hubble-relay-metrics.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-hubble-relay-metrics
- namespace: kube-system
-spec:
- description: Allow Hubble Relay Metrics
- endpointSelector:
- matchLabels:
- k8s-app: hubble-relay
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "9966"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-microsoft-sso.yaml b/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-microsoft-sso.yaml
deleted file mode 100644
index 71769867..00000000
--- a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-microsoft-sso.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-microsoft-sso
- namespace: kube-system
-spec:
- description: Allow Microsoft SSO
- egress:
- - toFQDNs:
- - matchName: login.microsoftonline.com
- - matchPattern: '*.microsoftonline.com'
- - matchName: graph.microsoft.com
- endpointSelector:
- matchLabels:
- k8s-app: oauth2-proxy
diff --git a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-namespace-traffic.yaml b/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-namespace-traffic.yaml
deleted file mode 100644
index 9b20afc2..00000000
--- a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-namespace-traffic.yaml
+++ /dev/null
@@ -1,26 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-namespace-traffic
- namespace: kube-system
-spec:
- description: Allow Namespace Traffic
- egress:
- - toEndpoints:
- - {}
- - toEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: kube-system
- k8s-app: kube-dns
- toPorts:
- - ports:
- - port: "53"
- protocol: UDP
- rules:
- dns:
- - matchPattern: '*'
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEndpoints:
- - {}
diff --git a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-proxy-metrics.yaml b/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-proxy-metrics.yaml
deleted file mode 100644
index 0d99e202..00000000
--- a/attic/charts/cilium/templates/kube-system/CiliumNetworkPolicy-allow-proxy-metrics.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-proxy-metrics
- namespace: kube-system
-spec:
- description: Allow Proxy metrics
- endpointSelector:
- matchLabels:
- k8s-app: kube-proxy
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "10249"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/kubelet-serving/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/cilium/templates/kubelet-serving/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index 59732e3a..00000000
--- a/attic/charts/cilium/templates/kubelet-serving/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: kubelet-serving-cert-approver
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/kyverno/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/cilium/templates/kyverno/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index d52ee5c9..00000000
--- a/attic/charts/cilium/templates/kyverno/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: kyverno
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/kyverno/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/cilium/templates/kyverno/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index f547d4a5..00000000
--- a/attic/charts/cilium/templates/kyverno/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: kyverno
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: kyverno
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "8000"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/kyverno/CiliumNetworkPolicy-allow-remote-node-to-kyverno.yaml b/attic/charts/cilium/templates/kyverno/CiliumNetworkPolicy-allow-remote-node-to-kyverno.yaml
deleted file mode 100644
index 5087fa86..00000000
--- a/attic/charts/cilium/templates/kyverno/CiliumNetworkPolicy-allow-remote-node-to-kyverno.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-kyverno
- namespace: kyverno
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: kyverno
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/cilium/templates/loki/CiliumNetworkPolicy-allow-loki-backend-to-api-server.yaml b/attic/charts/cilium/templates/loki/CiliumNetworkPolicy-allow-loki-backend-to-api-server.yaml
deleted file mode 100644
index 7e43aeb7..00000000
--- a/attic/charts/cilium/templates/loki/CiliumNetworkPolicy-allow-loki-backend-to-api-server.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-loki-backend-to-api-server
- namespace: loki
-spec:
- description: Promtail needs to reach kube-apiserver
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: backend
- app.kubernetes.io/instance: loki
diff --git a/attic/charts/cilium/templates/loki/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/cilium/templates/loki/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index e3161e8b..00000000
--- a/attic/charts/cilium/templates/loki/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,20 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: loki
-spec:
- description: Allow Prometheus read and write
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: loki
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- toPorts:
- - ports:
- - port: "3100"
- protocol: TCP
- - port: "3500"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/loki/CiliumNetworkPolicy-allow-promtail-to-api-server.yaml b/attic/charts/cilium/templates/loki/CiliumNetworkPolicy-allow-promtail-to-api-server.yaml
deleted file mode 100644
index 5d7cd58a..00000000
--- a/attic/charts/cilium/templates/loki/CiliumNetworkPolicy-allow-promtail-to-api-server.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-promtail-to-api-server
- namespace: loki
-spec:
- description: Promtail needs to reach kube-apiserver
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: promtail
diff --git a/attic/charts/cilium/templates/loki/CiliumNetworkPolicy-allow-stats-grafana.yaml b/attic/charts/cilium/templates/loki/CiliumNetworkPolicy-allow-stats-grafana.yaml
deleted file mode 100644
index 47a8be11..00000000
--- a/attic/charts/cilium/templates/loki/CiliumNetworkPolicy-allow-stats-grafana.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-stats-grafana
- namespace: loki
-spec:
- description: Allow stats
- egress:
- - toFQDNs:
- - matchName: stats.grafana.org
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: loki
diff --git a/attic/charts/cilium/templates/mariadb-operator/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/cilium/templates/mariadb-operator/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index f90d4d76..00000000
--- a/attic/charts/cilium/templates/mariadb-operator/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: mariadb-operator
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: mariadb-operator
diff --git a/attic/charts/cilium/templates/mariadb-operator/CiliumNetworkPolicy-allow-host-to-mariadb.yaml b/attic/charts/cilium/templates/mariadb-operator/CiliumNetworkPolicy-allow-host-to-mariadb.yaml
deleted file mode 100644
index 5da9d113..00000000
--- a/attic/charts/cilium/templates/mariadb-operator/CiliumNetworkPolicy-allow-host-to-mariadb.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-host-to-mariadb
- namespace: mariadb-operator
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: mariadb-operator
- ingress:
- - fromEntities:
- - host
diff --git a/attic/charts/cilium/templates/mariadb-operator/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/cilium/templates/mariadb-operator/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index 726e1b72..00000000
--- a/attic/charts/cilium/templates/mariadb-operator/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: mariadb-operator
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: mariadb-operator
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- toPorts:
- - ports:
- - port: "8080"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/mariadb-operator/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml b/attic/charts/cilium/templates/mariadb-operator/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
deleted file mode 100644
index 43e812ad..00000000
--- a/attic/charts/cilium/templates/mariadb-operator/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-webhooks
- namespace: mariadb-operator
-spec:
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEntities:
- - kube-apiserver
- - remote-node
- toPorts:
- - ports:
- - port: "443"
- protocol: TCP
- - port: "9443"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/mayastor/CiliumNetworkPolicy-allow-host-traffic.yaml b/attic/charts/cilium/templates/mayastor/CiliumNetworkPolicy-allow-host-traffic.yaml
deleted file mode 100644
index 7d296c8e..00000000
--- a/attic/charts/cilium/templates/mayastor/CiliumNetworkPolicy-allow-host-traffic.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-host-traffic
- namespace: mayastor
-spec:
- description: Allow Host Traffic
- egress:
- - toEntities:
- - remote-node
- - host
- - kube-apiserver
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-agent-core.yaml b/attic/charts/cilium/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-agent-core.yaml
deleted file mode 100644
index 00e783d1..00000000
--- a/attic/charts/cilium/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-agent-core.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-agent-core
- namespace: mayastor
-spec:
- description: Allow Remote to Agent Core
- endpointSelector:
- matchLabels:
- app: agent-core
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/cilium/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-etcd.yaml b/attic/charts/cilium/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-etcd.yaml
deleted file mode 100644
index 10464d0e..00000000
--- a/attic/charts/cilium/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-etcd.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-etcd
- namespace: mayastor
-spec:
- description: Allow Remote to Etcd
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: etcd
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/cilium/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-maya.yaml b/attic/charts/cilium/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-maya.yaml
deleted file mode 100644
index 1de55fac..00000000
--- a/attic/charts/cilium/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-maya.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-maya
- namespace: mayastor
-spec:
- description: Allow Remote to Mayastor
- endpointSelector:
- matchLabels:
- app: api-rest
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/cilium/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-kube-api.yaml b/attic/charts/cilium/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index 6c53acf9..00000000
--- a/attic/charts/cilium/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: allow-kube-api
-spec:
- description: Allow access to the Kube API server
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app: minio
diff --git a/attic/charts/cilium/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-minio-operator.yaml b/attic/charts/cilium/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-minio-operator.yaml
deleted file mode 100644
index f5ad26b5..00000000
--- a/attic/charts/cilium/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-minio-operator.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: allow-minio-operator
-spec:
- description: Allow access to the Kube API server
- endpointSelector:
- matchLabels:
- app: minio
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: minio-operator
- toPorts:
- - ports:
- - port: "9000"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-nodeport-ingress.yaml b/attic/charts/cilium/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-nodeport-ingress.yaml
deleted file mode 100644
index 83985384..00000000
--- a/attic/charts/cilium/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-nodeport-ingress.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: allow-nodeport-ingress
-spec:
- description: Allow access to the Kube API server
- endpointSelector:
- matchLabels:
- app: minio
- ingress:
- - fromEntities:
- - world
- toPorts:
- - ports:
- - port: "9000"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/minio-operator/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/cilium/templates/minio-operator/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index 83a6d612..00000000
--- a/attic/charts/cilium/templates/minio-operator/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: minio-operator
-spec:
- description: Allow access to the Kube API server
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/odigos-system/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/cilium/templates/odigos-system/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index cb20793f..00000000
--- a/attic/charts/cilium/templates/odigos-system/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: odigos-system
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/odigos-system/CiliumNetworkPolicy-allow-port-4317.yaml b/attic/charts/cilium/templates/odigos-system/CiliumNetworkPolicy-allow-port-4317.yaml
deleted file mode 100644
index f1b59b9e..00000000
--- a/attic/charts/cilium/templates/odigos-system/CiliumNetworkPolicy-allow-port-4317.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-port-4317
- namespace: odigos-system
-spec:
- egress:
- - toPorts:
- - ports:
- - port: "4317"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/cilium/templates/one-password-operator/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/cilium/templates/one-password-operator/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index 23c8a706..00000000
--- a/attic/charts/cilium/templates/one-password-operator/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: one-password
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: one-password-operator
diff --git a/attic/charts/cilium/templates/one-password-operator/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml b/attic/charts/cilium/templates/one-password-operator/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
deleted file mode 100644
index 9a4a6c4b..00000000
--- a/attic/charts/cilium/templates/one-password-operator/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-webhooks
- namespace: one-password
-spec:
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "9443"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/opencost/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/cilium/templates/opencost/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index 99971950..00000000
--- a/attic/charts/cilium/templates/opencost/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: opencost
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: opencost
diff --git a/attic/charts/cilium/templates/otel/CiliumNetworkPolicy-allow-otel-collector-loadbalancer-ingress.yaml b/attic/charts/cilium/templates/otel/CiliumNetworkPolicy-allow-otel-collector-loadbalancer-ingress.yaml
deleted file mode 100644
index 80f83639..00000000
--- a/attic/charts/cilium/templates/otel/CiliumNetworkPolicy-allow-otel-collector-loadbalancer-ingress.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-otel-collector-loadbalancer-ingress
- namespace: otel
-spec:
- description: Allow ingress from world
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: opentelemetry-collector
- ingress:
- - fromEntities:
- - world
diff --git a/attic/charts/cilium/templates/postfix/CiliumNetworkPolicy-allow-mail-egress.yaml b/attic/charts/cilium/templates/postfix/CiliumNetworkPolicy-allow-mail-egress.yaml
deleted file mode 100644
index 0691f418..00000000
--- a/attic/charts/cilium/templates/postfix/CiliumNetworkPolicy-allow-mail-egress.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-mail-egress
- namespace: postfix
-spec:
- description: Allow mailserver to send mails to world
- egress:
- - toEntities:
- - world
- endpointSelector:
- matchLabels:
- app: smtp-relay
diff --git a/attic/charts/cilium/templates/postfix/CiliumNetworkPolicy-allow-mail-ingress.yaml b/attic/charts/cilium/templates/postfix/CiliumNetworkPolicy-allow-mail-ingress.yaml
deleted file mode 100644
index a8a2d699..00000000
--- a/attic/charts/cilium/templates/postfix/CiliumNetworkPolicy-allow-mail-ingress.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-mail-ingress
- namespace: postfix
-spec:
- description: Allow all services in cluster to send mail
- endpointSelector:
- matchLabels:
- app: smtp-relay
- ingress:
- - fromEndpoints:
- - matchExpressions:
- - key: io.kubernetes.pod.namespace
- operator: Exists
- toPorts:
- - ports:
- - port: "25"
- protocol: TCP
- - port: "587"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/postfix/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/cilium/templates/postfix/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index 0bac3318..00000000
--- a/attic/charts/cilium/templates/postfix/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: postfix
-spec:
- description: 'Allow prometheus metrics '
- endpointSelector:
- matchLabels:
- app: smtp-relay
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- toPorts:
- - ports:
- - port: "9154"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-alerting.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-alerting.yaml
deleted file mode 100644
index e092cb26..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-alerting.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-alerting
- namespace: prometheus
-spec:
- description: Allow alerting
- egress:
- - toEntities:
- - world
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: prom-alertmanager
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-alertmanager-ingress.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-alertmanager-ingress.yaml
deleted file mode 100644
index b6f96e64..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-alertmanager-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-alertmanager-ingress
- namespace: prometheus
-spec:
- description: Allow Nginx ingress
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: alertmanager
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-dns-metrics.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-dns-metrics.yaml
deleted file mode 100644
index 0ee91e6e..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-dns-metrics.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-dns-metrics
- namespace: prometheus
-spec:
- description: Allow DNS metrics
- egress:
- - toPorts:
- - ports:
- - port: "9153"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: prometheus
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-etcd-metrics.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-etcd-metrics.yaml
deleted file mode 100644
index 90ac789e..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-etcd-metrics.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-etcd-metrics
- namespace: prometheus
-spec:
- description: Allow ETCD metrics
- egress:
- - toPorts:
- - ports:
- - port: "2379"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: prometheus
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-grafana-ingress.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-grafana-ingress.yaml
deleted file mode 100644
index fca3baf2..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-grafana-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-grafana-ingress
- namespace: prometheus
-spec:
- description: Allow Grafana ingress
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: grafana
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-grafana-oidc-login.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-grafana-oidc-login.yaml
deleted file mode 100644
index ed2084fe..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-grafana-oidc-login.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-grafana-oidc-login
- namespace: prometheus
-spec:
- description: Allow Grafana OIDC login
- egress:
- - toFQDNs:
- - matchName: login.microsoftonline.com
- - matchPattern: '*.microsoftonline.com'
- - matchName: api.github.com
- - matchName: github.com
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: grafana
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-grafana-plugins.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-grafana-plugins.yaml
deleted file mode 100644
index 60721c6a..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-grafana-plugins.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-grafana-plugins
- namespace: prometheus
-spec:
- description: Allow Grafana Plugins
- egress:
- - toFQDNs:
- - matchName: grafana.com
- - matchName: storage.googleapis.com
- - matchName: raw.githubusercontent.com
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: grafana
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-grafana-secure-gravatar.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-grafana-secure-gravatar.yaml
deleted file mode 100644
index 453c2330..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-grafana-secure-gravatar.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-grafana-secure-gravatar
- namespace: prometheus
-spec:
- description: Allow Grafana Secure Gravatar
- egress:
- - toFQDNs:
- - matchName: secure.grafana.com
- - matchName: secure.gravatar.com
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: grafana
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-host-traffic.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-host-traffic.yaml
deleted file mode 100644
index bb3a591a..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-host-traffic.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-host-traffic
- namespace: prometheus
-spec:
- description: Allow Host Traffic
- egress:
- - toEntities:
- - remote-node
- - host
- - kube-apiserver
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-nginx-ingress.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-nginx-ingress.yaml
deleted file mode 100644
index ac650e55..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-nginx-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-nginx-ingress
- namespace: prometheus
-spec:
- description: Allow Nginx ingress
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: prometheus
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-opencost-scrape.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-opencost-scrape.yaml
deleted file mode 100644
index 4b7bd679..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-opencost-scrape.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-opencost-scrape
- namespace: prometheus
-spec:
- description: Allow OpenCost scrape
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: prometheus
- ingress:
- - fromEndpoints:
- - matchLabels:
- app.kubernetes.io/name: opencost
- io.kubernetes.pod.namespace: opencost
- - toPorts:
- - ports:
- - port: "9090"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-remote-node-to-metrics-server.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-remote-node-to-metrics-server.yaml
deleted file mode 100644
index 0603da13..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-remote-node-to-metrics-server.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-metrics-server
- namespace: prometheus
-spec:
- description: Allow Remote Metrics Server
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: metrics-server
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-remote-node-to-webhook.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-remote-node-to-webhook.yaml
deleted file mode 100644
index eeabfcbd..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-remote-node-to-webhook.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-webhook
- namespace: prometheus
-spec:
- description: Allow Remote Web Hook
- endpointSelector:
- matchLabels:
- app: kube-prometheus-stack-operator
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-robusta-ingress.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-robusta-ingress.yaml
deleted file mode 100644
index c1856c3f..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-robusta-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-robusta-ingress
- namespace: prometheus
-spec:
- description: Allow Robusta ingress
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: prom-prometheus
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: robusta
diff --git a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-stats-grafana.yaml b/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-stats-grafana.yaml
deleted file mode 100644
index 5d1ed102..00000000
--- a/attic/charts/cilium/templates/prometheus/CiliumNetworkPolicy-allow-stats-grafana.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-stats-grafana
- namespace: prometheus
-spec:
- description: Allow stats
- egress:
- - toFQDNs:
- - matchName: stats.grafana.org
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: grafana
diff --git a/attic/charts/cilium/templates/rabbitmq/CiliumNetworkPolicy-allow-inter-node-traffic.yaml b/attic/charts/cilium/templates/rabbitmq/CiliumNetworkPolicy-allow-inter-node-traffic.yaml
deleted file mode 100644
index d06ad626..00000000
--- a/attic/charts/cilium/templates/rabbitmq/CiliumNetworkPolicy-allow-inter-node-traffic.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-inter-node-traffic
- namespace: rabbitmq
-spec:
- description: Allow communication between nodes int the RabbitMQ cluster
- egress:
- - toEndpoints:
- - matchLabels:
- app.kubernetes.io/component: rabbitmq
- toPorts:
- - ports:
- - port: "4369"
- - endPort: 6500
- port: "6000"
- - port: "25672"
- - port: "35672"
- - port: "35673"
- - port: "35674"
- - port: "35675"
- - port: "35676"
- - port: "35677"
- - port: "35678"
- - port: "35679"
- - port: "35680"
- - port: "35681"
- - port: "35682"
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: rabbitmq
- ingress:
- - fromEndpoints:
- - matchLabels:
- app.kubernetes.io/component: rabbitmq
- toPorts:
- - ports:
- - port: "4369"
- - endPort: 6500
- port: "6000"
- - port: "25672"
- - port: "35672"
- - port: "35673"
- - port: "35674"
- - port: "35675"
- - port: "35676"
- - port: "35677"
- - port: "35678"
- - port: "35679"
- - port: "35680"
- - port: "35681"
- - port: "35682"
diff --git a/attic/charts/cilium/templates/rabbitmq/CiliumNetworkPolicy-allow-operator-traffic.yaml b/attic/charts/cilium/templates/rabbitmq/CiliumNetworkPolicy-allow-operator-traffic.yaml
deleted file mode 100644
index b7deeb34..00000000
--- a/attic/charts/cilium/templates/rabbitmq/CiliumNetworkPolicy-allow-operator-traffic.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-operator-traffic
- namespace: rabbitmq
-spec:
- description: Allow access to the RabbitMQ operator
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: rabbitmq
- ingress:
- - fromEndpoints:
- - matchLabels:
- app.kubernetes.io/component: rabbitmq-operator
- toPorts:
- - ports:
- - port: "15672"
- - port: "15671"
diff --git a/attic/charts/cilium/templates/rabbitmq/CiliumNetworkPolicy-allow-rabbitmq-traffic.yaml b/attic/charts/cilium/templates/rabbitmq/CiliumNetworkPolicy-allow-rabbitmq-traffic.yaml
deleted file mode 100644
index f57cd209..00000000
--- a/attic/charts/cilium/templates/rabbitmq/CiliumNetworkPolicy-allow-rabbitmq-traffic.yaml
+++ /dev/null
@@ -1,27 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-rabbitmq-traffic
- namespace: rabbitmq
-spec:
- description: Allow access to the RabbitMQ cluster
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: rabbitmq
- ingress:
- - toPorts:
- - ports:
- - port: "5672"
- - port: "5671"
- - port: "5552"
- - port: "5551"
- - port: "15672"
- - port: "15671"
- - port: "61613"
- - port: "61614"
- - port: "1883"
- - port: "8883"
- - port: "15674"
- - port: "15675"
- - port: "15692"
- - port: "15691"
diff --git a/attic/charts/cilium/templates/robusta/CiliumNetworkPolicy-allow-ingress.yaml b/attic/charts/cilium/templates/robusta/CiliumNetworkPolicy-allow-ingress.yaml
deleted file mode 100644
index 5e8415c3..00000000
--- a/attic/charts/cilium/templates/robusta/CiliumNetworkPolicy-allow-ingress.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-ingress
- namespace: robusta
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: server
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/cilium/templates/robusta/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/cilium/templates/robusta/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index f91eed07..00000000
--- a/attic/charts/cilium/templates/robusta/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: robusta
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/robusta/CiliumNetworkPolicy-allow-slack.yaml b/attic/charts/cilium/templates/robusta/CiliumNetworkPolicy-allow-slack.yaml
deleted file mode 100644
index c38a398a..00000000
--- a/attic/charts/cilium/templates/robusta/CiliumNetworkPolicy-allow-slack.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-slack
- namespace: robusta
-spec:
- egress:
- - toFQDNs:
- - matchPattern: slack.com
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/rook-ceph/CiliumNetworkPolicy-allow-oceanbox-subnet.yaml b/attic/charts/cilium/templates/rook-ceph/CiliumNetworkPolicy-allow-oceanbox-subnet.yaml
deleted file mode 100644
index 960eac40..00000000
--- a/attic/charts/cilium/templates/rook-ceph/CiliumNetworkPolicy-allow-oceanbox-subnet.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-oceanbox-subnet
- namespace: rook-ceph
-spec:
- description: Allow oceanbox traffic
- egress:
- - toCIDR:
- - 10.255.241.0/24
- - toCIDR:
- - 10.255.244.0/24
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromCIDR:
- - 10.255.241.0/24
- - fromCIDR:
- - 10.255.244.0/24
diff --git a/attic/charts/cilium/templates/s3-sync/CiliumNetworkPolicy-allow-s3-internal.yaml b/attic/charts/cilium/templates/s3-sync/CiliumNetworkPolicy-allow-s3-internal.yaml
deleted file mode 100644
index cd00612d..00000000
--- a/attic/charts/cilium/templates/s3-sync/CiliumNetworkPolicy-allow-s3-internal.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-s3-internal
- namespace: s3-sync
-spec:
- description: Allow s3 traffic internal
- egress:
- - toCIDR:
- - 10.139.2.20/32
- - toCIDR:
- - 10.139.2.21/32
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/s3-sync/CiliumNetworkPolicy-allow-s3-sync.yaml b/attic/charts/cilium/templates/s3-sync/CiliumNetworkPolicy-allow-s3-sync.yaml
deleted file mode 100644
index 58b8e709..00000000
--- a/attic/charts/cilium/templates/s3-sync/CiliumNetworkPolicy-allow-s3-sync.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-s3-sync
- namespace: s3-sync
-spec:
- description: Allow sync to safespring
- egress:
- - toFQDNs:
- - matchName: s3.osl2.safedc.net
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/cilium/templates/sealed-secrets/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/cilium/templates/sealed-secrets/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index d56b8d90..00000000
--- a/attic/charts/cilium/templates/sealed-secrets/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: sealed-secrets
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: sealed-secrets
diff --git a/attic/charts/cilium/templates/tempo/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/cilium/templates/tempo/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index aa3ddd8c..00000000
--- a/attic/charts/cilium/templates/tempo/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: tempo
-spec:
- egress:
- - toPorts:
- - ports:
- - port: "7946"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: tempo
diff --git a/attic/charts/cilium/templates/velero/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/cilium/templates/velero/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index cb01381b..00000000
--- a/attic/charts/cilium/templates/velero/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: velero
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: velero
diff --git a/attic/charts/cilium/templates/velero/CiliumNetworkPolicy-allow-job-api-server.yaml b/attic/charts/cilium/templates/velero/CiliumNetworkPolicy-allow-job-api-server.yaml
deleted file mode 100644
index 21c8e2ff..00000000
--- a/attic/charts/cilium/templates/velero/CiliumNetworkPolicy-allow-job-api-server.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-job-api-server
- namespace: velero
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- batch.kubernetes.io/job-name: velero-upgrade-crds
diff --git a/attic/charts/cilium/templates/velero/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/cilium/templates/velero/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index 1631d4bf..00000000
--- a/attic/charts/cilium/templates/velero/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: velero
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: velero
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "8085"
- protocol: TCP
diff --git a/attic/charts/cilium/templates/x509-exporter/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/cilium/templates/x509-exporter/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index 7742a0fe..00000000
--- a/attic/charts/cilium/templates/x509-exporter/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: x509-exporter
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: x509-exporter
diff --git a/attic/charts/cilium/templates/x509-exporter/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/cilium/templates/x509-exporter/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index cc040dd9..00000000
--- a/attic/charts/cilium/templates/x509-exporter/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: x509-exporter
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: x509-exporter
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "9793"
- protocol: TCP
diff --git a/attic/charts/cilium/values.yaml b/attic/charts/cilium/values.yaml
deleted file mode 100644
index 3964005c..00000000
--- a/attic/charts/cilium/values.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-s3:
- hosts:
- patterns:
- cidr:
- - 10.255.241.30/32
diff --git a/attic/charts/sys-cilium-policies/.helmignore b/attic/charts/sys-cilium-policies/.helmignore
deleted file mode 100644
index 0e8a0eb3..00000000
--- a/attic/charts/sys-cilium-policies/.helmignore
+++ /dev/null
@@ -1,23 +0,0 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*.orig
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
-.vscode/
diff --git a/attic/charts/sys-cilium-policies/Chart.yaml b/attic/charts/sys-cilium-policies/Chart.yaml
deleted file mode 100644
index efa9ccd5..00000000
--- a/attic/charts/sys-cilium-policies/Chart.yaml
+++ /dev/null
@@ -1,24 +0,0 @@
-apiVersion: v2
-name: sys-cilium-policies
-description: A Helm chart for Kubernetes
-
-# A chart can be either an 'application' or a 'library' chart.
-#
-# Application charts are a collection of templates that can be packaged into versioned archives
-# to be deployed.
-#
-# Library charts provide useful utilities or functions for the chart developer. They're included as
-# a dependency of application charts to inject those utilities and functions into the rendering
-# pipeline. Library charts do not define any templates and therefore cannot be deployed.
-type: application
-
-# This is the chart version. This version number should be incremented each time you make changes
-# to the chart and its templates, including the app version.
-# Versions are expected to follow Semantic Versioning (https://semver.org/)
-version: 0.1.0
-
-# This is the version number of the application being deployed. This version number should be
-# incremented each time you make changes to the application. Versions are not expected to
-# follow Semantic Versioning. They should reflect the version the application is using.
-# It is recommended to use it with quotes.
-appVersion: "1.16.0"
diff --git a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-applicationset-ingress.yaml b/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-applicationset-ingress.yaml
deleted file mode 100644
index 1678e7a3..00000000
--- a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-applicationset-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-applicationset-ingress
- namespace: argocd
-spec:
- description: Allow access from the ingress controller
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: applicationset-controller
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-argo-notifications.yaml b/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-argo-notifications.yaml
deleted file mode 100644
index 045dbc56..00000000
--- a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-argo-notifications.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-argo-notifications
- namespace: argocd
-spec:
- description: Allow access to the ArgoCD Notifications
- egress:
- - toFQDNs:
- - matchName: slack.com
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: notifications-controller
diff --git a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-argo-repo-access-applicationset.yaml b/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-argo-repo-access-applicationset.yaml
deleted file mode 100644
index 0af071b5..00000000
--- a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-argo-repo-access-applicationset.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-argo-repo-access-applicationset
- namespace: argocd
-spec:
- description: Allow access to the ArgoCD repo Applicationset
- egress:
- - toEntities:
- - world
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: applicationset-controller
diff --git a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-argo-repo-access.yaml b/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-argo-repo-access.yaml
deleted file mode 100644
index 6e2b7e04..00000000
--- a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-argo-repo-access.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-argo-repo-access
- namespace: argocd
-spec:
- description: Allow access to the ArgoCD repo server
- egress:
- - toEntities:
- - world
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: repo-server
diff --git a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-chartmuseum-ingress.yaml b/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-chartmuseum-ingress.yaml
deleted file mode 100644
index 5f030377..00000000
--- a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-chartmuseum-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-chartmuseum-ingress
- namespace: argocd
-spec:
- description: Allow access to the chartmuseum ingress
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: chartmuseum
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-image-updater-repo-access.yaml b/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-image-updater-repo-access.yaml
deleted file mode 100644
index 1534b3c8..00000000
--- a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-image-updater-repo-access.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-image-updater-repo-access
- namespace: argocd
-spec:
- description: Allow argoCD image updater to access github container registry
- egress:
- - toFQDNs:
- - matchName: ghcr.io
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: argocd-image-updater
diff --git a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-ingress.yaml b/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-ingress.yaml
deleted file mode 100644
index 2096eaae..00000000
--- a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-ingress
- namespace: argocd
-spec:
- description: Allow access from the ingress controller
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: server
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index 40045bb8..00000000
--- a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: argocd
-spec:
- description: Allow access to the Kube API server
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-microsoft-sso.yaml b/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-microsoft-sso.yaml
deleted file mode 100644
index e68b04d2..00000000
--- a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-microsoft-sso.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-microsoft-sso
- namespace: argocd
-spec:
- description: Allow argoCD dex server to authenticate to microsoft online azure oatuh
- egress:
- - toFQDNs:
- - matchName: login.microsoftonline.com
- - matchPattern: '*.microsoftonline.com'
- - matchName: github.com
- - matchName: api.github.com
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: argocd-dex-server
diff --git a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics-rollout.yaml b/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics-rollout.yaml
deleted file mode 100644
index ebfed5bd..00000000
--- a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics-rollout.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics-rollout
- namespace: argocd
-spec:
- description: Allow access to the Prometheus metrics
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: argo-rollouts
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- toPorts:
- - ports:
- - port: "8090"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics-workflows.yaml b/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics-workflows.yaml
deleted file mode 100644
index f8f81286..00000000
--- a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics-workflows.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics-workflows
- namespace: argocd
-spec:
- description: Allow access to the Prometheus metrics
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: argo-workflows
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- toPorts:
- - ports:
- - port: "9090"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index a1b0f86f..00000000
--- a/attic/charts/sys-cilium-policies/templates/argocd/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,30 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: argocd
-spec:
- description: Allow access to the Prometheus metrics
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: argocd
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- toPorts:
- - ports:
- - port: "8082"
- protocol: TCP
- - port: "8080"
- protocol: TCP
- - port: "9001"
- protocol: TCP
- - port: "9121"
- protocol: TCP
- - port: "8084"
- protocol: TCP
- - port: "8083"
- protocol: TCP
- - port: "5558"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/cilium/CiliumClusterwideNetworkPolicy-allow-acme-solvers.yaml b/attic/charts/sys-cilium-policies/templates/cilium/CiliumClusterwideNetworkPolicy-allow-acme-solvers.yaml
deleted file mode 100644
index 214dade6..00000000
--- a/attic/charts/sys-cilium-policies/templates/cilium/CiliumClusterwideNetworkPolicy-allow-acme-solvers.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: allow-acme-solvers
-spec:
- description: Policy for ingress for Acme Solvers.
- endpointSelector:
- matchLabels:
- acme.cert-manager.io/http01-solver: "true"
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/sys-cilium-policies/templates/cilium/CiliumClusterwideNetworkPolicy-allow-dns.yaml b/attic/charts/sys-cilium-policies/templates/cilium/CiliumClusterwideNetworkPolicy-allow-dns.yaml
deleted file mode 100644
index 0a7f77b3..00000000
--- a/attic/charts/sys-cilium-policies/templates/cilium/CiliumClusterwideNetworkPolicy-allow-dns.yaml
+++ /dev/null
@@ -1,24 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: allow-dns
-spec:
- description: 'description: Allow only dns traffic by default. Also acts as a deny-all policy'
- egress:
- - toEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: kube-system
- k8s-app: kube-dns
- toPorts:
- - ports:
- - port: "53"
- protocol: UDP
- - rules:
- dns:
- - matchPattern: '*'
- endpointSelector:
- matchExpressions:
- - key: io.kubernetes.pod.namespace
- operator: NotIn
- values:
- - kube-system
diff --git a/attic/charts/sys-cilium-policies/templates/cilium/CiliumClusterwideNetworkPolicy-allow-mariadb-operator.yaml b/attic/charts/sys-cilium-policies/templates/cilium/CiliumClusterwideNetworkPolicy-allow-mariadb-operator.yaml
deleted file mode 100644
index a0a41bcc..00000000
--- a/attic/charts/sys-cilium-policies/templates/cilium/CiliumClusterwideNetworkPolicy-allow-mariadb-operator.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: allow-mariadb-operator
-spec:
- description: allow mariadb instances to be reached by operator
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: mariadb
- ingress:
- - fromEndpoints:
- - matchLabels:
- app.kubernetes.io/name: mariadb-operator
- io.kubernetes.pod.namespace: mariadb-operator
- toPorts:
- - ports:
- - port: "3306"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/cilium/CiliumClusterwideNetworkPolicy-deny-all.yaml b/attic/charts/sys-cilium-policies/templates/cilium/CiliumClusterwideNetworkPolicy-deny-all.yaml
deleted file mode 100644
index 7ba45d08..00000000
--- a/attic/charts/sys-cilium-policies/templates/cilium/CiliumClusterwideNetworkPolicy-deny-all.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: deny-all
-spec:
- description: Deny all
- egress: []
- endpointSelector: {}
- ingress: []
diff --git a/attic/charts/sys-cilium-policies/templates/cnpg/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/sys-cilium-policies/templates/cnpg/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index d32ac553..00000000
--- a/attic/charts/sys-cilium-policies/templates/cnpg/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: cnpg
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: postgres-operator
diff --git a/attic/charts/sys-cilium-policies/templates/cnpg/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml b/attic/charts/sys-cilium-policies/templates/cnpg/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
deleted file mode 100644
index 6c04cc22..00000000
--- a/attic/charts/sys-cilium-policies/templates/cnpg/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-webhooks
- namespace: cnpg
-spec:
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "9443"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/downscaler/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/sys-cilium-policies/templates/downscaler/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index 7c7345ec..00000000
--- a/attic/charts/sys-cilium-policies/templates/downscaler/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: kube-downscaler
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- application: downscaler-py-kube-downscaler
diff --git a/attic/charts/sys-cilium-policies/templates/downscaler/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml b/attic/charts/sys-cilium-policies/templates/downscaler/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
deleted file mode 100644
index e99b9eec..00000000
--- a/attic/charts/sys-cilium-policies/templates/downscaler/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-webhooks
- namespace: kube-downscaler
-spec:
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "9443"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-host-traffic.yaml b/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-host-traffic.yaml
deleted file mode 100644
index 4ffbbd8c..00000000
--- a/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-host-traffic.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-host-traffic
- namespace: ingress-nginx
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- - host
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: ingress-nginx
diff --git a/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-hubble-traffic.yaml b/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-hubble-traffic.yaml
deleted file mode 100644
index fa9ee953..00000000
--- a/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-hubble-traffic.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-hubble-traffic
- namespace: ingress-nginx
-spec:
- egress:
- - toFQDNs:
- - matchPattern: hubble.*.*.*
- - matchPattern: hubble.*.*.*.*
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: ingress-nginx
diff --git a/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index 98bbc402..00000000
--- a/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: ingress-nginx
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: ingress-nginx
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "9913"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-s3-traffic.yaml b/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-s3-traffic.yaml
deleted file mode 100644
index b3bcc3d3..00000000
--- a/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-s3-traffic.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-s3-traffic
- namespace: ingress-nginx
-spec:
- egress:
- - toCIDR:
- - 10.139.2.10/32
- - toCIDR:
- - 10.139.2.11/32
- - toCIDR:
- - 10.139.2.20/32
- - toCIDR:
- - 10.139.2.21/32
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: ingress-nginx
diff --git a/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-world-to-ingress-nginx.yaml b/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-world-to-ingress-nginx.yaml
deleted file mode 100644
index 4ecbe4fa..00000000
--- a/attic/charts/sys-cilium-policies/templates/ingress-nginx/CiliumNetworkPolicy-allow-world-to-ingress-nginx.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-world-to-ingress-nginx
- namespace: ingress-nginx
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: ingress-nginx
- ingress:
- - fromEntities:
- - world
- - toPorts:
- - ports:
- - port: "80"
- protocol: TCP
- - port: "443"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/jaeger/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/sys-cilium-policies/templates/jaeger/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index 29cd1826..00000000
--- a/attic/charts/sys-cilium-policies/templates/jaeger/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: jaeger
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/sys-cilium-policies/templates/jaeger/CiliumNetworkPolicy-allow-remote-node-to-jaeger.yaml b/attic/charts/sys-cilium-policies/templates/jaeger/CiliumNetworkPolicy-allow-remote-node-to-jaeger.yaml
deleted file mode 100644
index 3d1bddcd..00000000
--- a/attic/charts/sys-cilium-policies/templates/jaeger/CiliumNetworkPolicy-allow-remote-node-to-jaeger.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-jaeger
- namespace: jaeger
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: jaeger-operator
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/sys-cilium-policies/templates/kafka/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/sys-cilium-policies/templates/kafka/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index 1e35e6ad..00000000
--- a/attic/charts/sys-cilium-policies/templates/kafka/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: kafka
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: kafka-operator
diff --git a/attic/charts/sys-cilium-policies/templates/kafka/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml b/attic/charts/sys-cilium-policies/templates/kafka/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
deleted file mode 100644
index cbf9ee6b..00000000
--- a/attic/charts/sys-cilium-policies/templates/kafka/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-webhooks
- namespace: kafka
-spec:
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "9443"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-controller-metrics.yaml b/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-controller-metrics.yaml
deleted file mode 100644
index 31b7dacc..00000000
--- a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-controller-metrics.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-controller-metrics
- namespace: kube-system
-spec:
- description: Allow Controller Metrics
- endpointSelector:
- matchLabels:
- k8s-app: kube-controller-manager
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "10257"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-csi-webhook.yaml b/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-csi-webhook.yaml
deleted file mode 100644
index 9e8e47fe..00000000
--- a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-csi-webhook.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-csi-webhook
- namespace: kube-system
-spec:
- endpointSelector:
- matchLabels:
- app: csi-snapshot-webhook
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-dns-metrics.yaml b/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-dns-metrics.yaml
deleted file mode 100644
index b4c33ac7..00000000
--- a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-dns-metrics.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-dns-metrics
- namespace: kube-system
-spec:
- description: Allow DNS metrics
- endpointSelector:
- matchLabels:
- k8s-app: kube-dns
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "9153"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-dns-world.yaml b/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-dns-world.yaml
deleted file mode 100644
index b69f15f6..00000000
--- a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-dns-world.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-dns-world
- namespace: kube-system
-spec:
- description: Allow DNS World
- egress:
- - toCIDR:
- - 8.8.8.8/32
- - 172.31.254.11/32
- - 1.1.1.1/32
- toPorts:
- - ports:
- - port: "53"
- protocol: UDP
- rules:
- dns:
- - matchPattern: '*'
- - toEntities:
- - world
- toPorts:
- - ports:
- - port: "53"
- protocol: UDP
- rules:
- dns:
- - matchPattern: '*'
- endpointSelector:
- matchLabels:
- k8s-app: kube-dns
diff --git a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-dns.yaml b/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-dns.yaml
deleted file mode 100644
index 7d19e1de..00000000
--- a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-dns.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-dns
- namespace: kube-system
-spec:
- description: Allow DNS
- endpointSelector:
- matchLabels:
- k8s-app: kube-dns
- ingress:
- - fromEndpoints:
- - matchExpressions:
- - key: io.kubernetes.pod.namespace
- operator: Exists
- toPorts:
- - ports:
- - port: "53"
- protocol: UDP
diff --git a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-host-traffic.yaml b/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-host-traffic.yaml
deleted file mode 100644
index 08710d89..00000000
--- a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-host-traffic.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-host-traffic
- namespace: kube-system
-spec:
- description: Allow Host Traffic
- egress:
- - toEntities:
- - remote-node
- - host
- - kube-apiserver
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-hubble-ingress.yaml b/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-hubble-ingress.yaml
deleted file mode 100644
index ec1c6cf8..00000000
--- a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-hubble-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-hubble-ingress
- namespace: kube-system
-spec:
- description: Allow Hubble ingress
- endpointSelector:
- matchLabels:
- k8s-app: hubble-ui
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-hubble-oauth2-ingress.yaml b/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-hubble-oauth2-ingress.yaml
deleted file mode 100644
index 7e31779e..00000000
--- a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-hubble-oauth2-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-hubble-oauth2-ingress
- namespace: kube-system
-spec:
- description: Allow Hubble OAuth2 ingress
- endpointSelector:
- matchLabels:
- k8s-app: oauth2-proxy
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-hubble-relay-metrics.yaml b/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-hubble-relay-metrics.yaml
deleted file mode 100644
index 676dddde..00000000
--- a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-hubble-relay-metrics.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-hubble-relay-metrics
- namespace: kube-system
-spec:
- description: Allow Hubble Relay Metrics
- endpointSelector:
- matchLabels:
- k8s-app: hubble-relay
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "9966"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-microsoft-sso.yaml b/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-microsoft-sso.yaml
deleted file mode 100644
index 71769867..00000000
--- a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-microsoft-sso.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-microsoft-sso
- namespace: kube-system
-spec:
- description: Allow Microsoft SSO
- egress:
- - toFQDNs:
- - matchName: login.microsoftonline.com
- - matchPattern: '*.microsoftonline.com'
- - matchName: graph.microsoft.com
- endpointSelector:
- matchLabels:
- k8s-app: oauth2-proxy
diff --git a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-namespace-traffic.yaml b/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-namespace-traffic.yaml
deleted file mode 100644
index 9b20afc2..00000000
--- a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-namespace-traffic.yaml
+++ /dev/null
@@ -1,26 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-namespace-traffic
- namespace: kube-system
-spec:
- description: Allow Namespace Traffic
- egress:
- - toEndpoints:
- - {}
- - toEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: kube-system
- k8s-app: kube-dns
- toPorts:
- - ports:
- - port: "53"
- protocol: UDP
- rules:
- dns:
- - matchPattern: '*'
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEndpoints:
- - {}
diff --git a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-proxy-metrics.yaml b/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-proxy-metrics.yaml
deleted file mode 100644
index 0d99e202..00000000
--- a/attic/charts/sys-cilium-policies/templates/kube-system/CiliumNetworkPolicy-allow-proxy-metrics.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-proxy-metrics
- namespace: kube-system
-spec:
- description: Allow Proxy metrics
- endpointSelector:
- matchLabels:
- k8s-app: kube-proxy
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "10249"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/kubelet-serving/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/sys-cilium-policies/templates/kubelet-serving/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index 59732e3a..00000000
--- a/attic/charts/sys-cilium-policies/templates/kubelet-serving/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: kubelet-serving-cert-approver
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/sys-cilium-policies/templates/kyverno/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/sys-cilium-policies/templates/kyverno/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index d52ee5c9..00000000
--- a/attic/charts/sys-cilium-policies/templates/kyverno/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: kyverno
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/sys-cilium-policies/templates/kyverno/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/sys-cilium-policies/templates/kyverno/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index f547d4a5..00000000
--- a/attic/charts/sys-cilium-policies/templates/kyverno/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: kyverno
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: kyverno
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "8000"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/kyverno/CiliumNetworkPolicy-allow-remote-node-to-kyverno.yaml b/attic/charts/sys-cilium-policies/templates/kyverno/CiliumNetworkPolicy-allow-remote-node-to-kyverno.yaml
deleted file mode 100644
index 5087fa86..00000000
--- a/attic/charts/sys-cilium-policies/templates/kyverno/CiliumNetworkPolicy-allow-remote-node-to-kyverno.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-kyverno
- namespace: kyverno
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: kyverno
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/sys-cilium-policies/templates/loki/CiliumNetworkPolicy-allow-loki-backend-to-api-server.yaml b/attic/charts/sys-cilium-policies/templates/loki/CiliumNetworkPolicy-allow-loki-backend-to-api-server.yaml
deleted file mode 100644
index 7e43aeb7..00000000
--- a/attic/charts/sys-cilium-policies/templates/loki/CiliumNetworkPolicy-allow-loki-backend-to-api-server.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-loki-backend-to-api-server
- namespace: loki
-spec:
- description: Promtail needs to reach kube-apiserver
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: backend
- app.kubernetes.io/instance: loki
diff --git a/attic/charts/sys-cilium-policies/templates/loki/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/sys-cilium-policies/templates/loki/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index e3161e8b..00000000
--- a/attic/charts/sys-cilium-policies/templates/loki/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,20 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: loki
-spec:
- description: Allow Prometheus read and write
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: loki
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- toPorts:
- - ports:
- - port: "3100"
- protocol: TCP
- - port: "3500"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/loki/CiliumNetworkPolicy-allow-promtail-to-api-server.yaml b/attic/charts/sys-cilium-policies/templates/loki/CiliumNetworkPolicy-allow-promtail-to-api-server.yaml
deleted file mode 100644
index 5d7cd58a..00000000
--- a/attic/charts/sys-cilium-policies/templates/loki/CiliumNetworkPolicy-allow-promtail-to-api-server.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-promtail-to-api-server
- namespace: loki
-spec:
- description: Promtail needs to reach kube-apiserver
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: promtail
diff --git a/attic/charts/sys-cilium-policies/templates/loki/CiliumNetworkPolicy-allow-stats-grafana.yaml b/attic/charts/sys-cilium-policies/templates/loki/CiliumNetworkPolicy-allow-stats-grafana.yaml
deleted file mode 100644
index 47a8be11..00000000
--- a/attic/charts/sys-cilium-policies/templates/loki/CiliumNetworkPolicy-allow-stats-grafana.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-stats-grafana
- namespace: loki
-spec:
- description: Allow stats
- egress:
- - toFQDNs:
- - matchName: stats.grafana.org
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: loki
diff --git a/attic/charts/sys-cilium-policies/templates/mariadb-operator/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/sys-cilium-policies/templates/mariadb-operator/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index f90d4d76..00000000
--- a/attic/charts/sys-cilium-policies/templates/mariadb-operator/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: mariadb-operator
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: mariadb-operator
diff --git a/attic/charts/sys-cilium-policies/templates/mariadb-operator/CiliumNetworkPolicy-allow-host-to-mariadb.yaml b/attic/charts/sys-cilium-policies/templates/mariadb-operator/CiliumNetworkPolicy-allow-host-to-mariadb.yaml
deleted file mode 100644
index 5da9d113..00000000
--- a/attic/charts/sys-cilium-policies/templates/mariadb-operator/CiliumNetworkPolicy-allow-host-to-mariadb.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-host-to-mariadb
- namespace: mariadb-operator
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: mariadb-operator
- ingress:
- - fromEntities:
- - host
diff --git a/attic/charts/sys-cilium-policies/templates/mariadb-operator/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/sys-cilium-policies/templates/mariadb-operator/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index 726e1b72..00000000
--- a/attic/charts/sys-cilium-policies/templates/mariadb-operator/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: mariadb-operator
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: mariadb-operator
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- toPorts:
- - ports:
- - port: "8080"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/mariadb-operator/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml b/attic/charts/sys-cilium-policies/templates/mariadb-operator/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
deleted file mode 100644
index 43e812ad..00000000
--- a/attic/charts/sys-cilium-policies/templates/mariadb-operator/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-webhooks
- namespace: mariadb-operator
-spec:
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEntities:
- - kube-apiserver
- - remote-node
- toPorts:
- - ports:
- - port: "443"
- protocol: TCP
- - port: "9443"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/mayastor/CiliumNetworkPolicy-allow-host-traffic.yaml b/attic/charts/sys-cilium-policies/templates/mayastor/CiliumNetworkPolicy-allow-host-traffic.yaml
deleted file mode 100644
index 7d296c8e..00000000
--- a/attic/charts/sys-cilium-policies/templates/mayastor/CiliumNetworkPolicy-allow-host-traffic.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-host-traffic
- namespace: mayastor
-spec:
- description: Allow Host Traffic
- egress:
- - toEntities:
- - remote-node
- - host
- - kube-apiserver
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/sys-cilium-policies/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-agent-core.yaml b/attic/charts/sys-cilium-policies/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-agent-core.yaml
deleted file mode 100644
index 00e783d1..00000000
--- a/attic/charts/sys-cilium-policies/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-agent-core.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-agent-core
- namespace: mayastor
-spec:
- description: Allow Remote to Agent Core
- endpointSelector:
- matchLabels:
- app: agent-core
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/sys-cilium-policies/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-etcd.yaml b/attic/charts/sys-cilium-policies/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-etcd.yaml
deleted file mode 100644
index 10464d0e..00000000
--- a/attic/charts/sys-cilium-policies/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-etcd.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-etcd
- namespace: mayastor
-spec:
- description: Allow Remote to Etcd
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: etcd
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/sys-cilium-policies/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-maya.yaml b/attic/charts/sys-cilium-policies/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-maya.yaml
deleted file mode 100644
index 1de55fac..00000000
--- a/attic/charts/sys-cilium-policies/templates/mayastor/CiliumNetworkPolicy-allow-remote-node-to-maya.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-maya
- namespace: mayastor
-spec:
- description: Allow Remote to Mayastor
- endpointSelector:
- matchLabels:
- app: api-rest
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/sys-cilium-policies/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-kube-api.yaml b/attic/charts/sys-cilium-policies/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index 6c53acf9..00000000
--- a/attic/charts/sys-cilium-policies/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: allow-kube-api
-spec:
- description: Allow access to the Kube API server
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app: minio
diff --git a/attic/charts/sys-cilium-policies/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-minio-operator.yaml b/attic/charts/sys-cilium-policies/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-minio-operator.yaml
deleted file mode 100644
index f5ad26b5..00000000
--- a/attic/charts/sys-cilium-policies/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-minio-operator.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: allow-minio-operator
-spec:
- description: Allow access to the Kube API server
- endpointSelector:
- matchLabels:
- app: minio
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: minio-operator
- toPorts:
- - ports:
- - port: "9000"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-nodeport-ingress.yaml b/attic/charts/sys-cilium-policies/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-nodeport-ingress.yaml
deleted file mode 100644
index 83985384..00000000
--- a/attic/charts/sys-cilium-policies/templates/minio-operator/CiliumClusterwideNetworkPolicy-allow-nodeport-ingress.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumClusterwideNetworkPolicy
-metadata:
- name: allow-nodeport-ingress
-spec:
- description: Allow access to the Kube API server
- endpointSelector:
- matchLabels:
- app: minio
- ingress:
- - fromEntities:
- - world
- toPorts:
- - ports:
- - port: "9000"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/minio-operator/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/sys-cilium-policies/templates/minio-operator/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index 83a6d612..00000000
--- a/attic/charts/sys-cilium-policies/templates/minio-operator/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: minio-operator
-spec:
- description: Allow access to the Kube API server
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/sys-cilium-policies/templates/odigos-system/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/sys-cilium-policies/templates/odigos-system/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index cb20793f..00000000
--- a/attic/charts/sys-cilium-policies/templates/odigos-system/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: odigos-system
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/sys-cilium-policies/templates/odigos-system/CiliumNetworkPolicy-allow-port-4317.yaml b/attic/charts/sys-cilium-policies/templates/odigos-system/CiliumNetworkPolicy-allow-port-4317.yaml
deleted file mode 100644
index f1b59b9e..00000000
--- a/attic/charts/sys-cilium-policies/templates/odigos-system/CiliumNetworkPolicy-allow-port-4317.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-port-4317
- namespace: odigos-system
-spec:
- egress:
- - toPorts:
- - ports:
- - port: "4317"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/sys-cilium-policies/templates/one-password-operator/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/sys-cilium-policies/templates/one-password-operator/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index 23c8a706..00000000
--- a/attic/charts/sys-cilium-policies/templates/one-password-operator/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: one-password
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: one-password-operator
diff --git a/attic/charts/sys-cilium-policies/templates/one-password-operator/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml b/attic/charts/sys-cilium-policies/templates/one-password-operator/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
deleted file mode 100644
index 9a4a6c4b..00000000
--- a/attic/charts/sys-cilium-policies/templates/one-password-operator/CiliumNetworkPolicy-allow-remote-node-webhooks.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-webhooks
- namespace: one-password
-spec:
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "9443"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/opencost/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/sys-cilium-policies/templates/opencost/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index 99971950..00000000
--- a/attic/charts/sys-cilium-policies/templates/opencost/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: opencost
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: opencost
diff --git a/attic/charts/sys-cilium-policies/templates/otel/CiliumNetworkPolicy-allow-otel-collector-loadbalancer-ingress.yaml b/attic/charts/sys-cilium-policies/templates/otel/CiliumNetworkPolicy-allow-otel-collector-loadbalancer-ingress.yaml
deleted file mode 100644
index 80f83639..00000000
--- a/attic/charts/sys-cilium-policies/templates/otel/CiliumNetworkPolicy-allow-otel-collector-loadbalancer-ingress.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-otel-collector-loadbalancer-ingress
- namespace: otel
-spec:
- description: Allow ingress from world
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: opentelemetry-collector
- ingress:
- - fromEntities:
- - world
diff --git a/attic/charts/sys-cilium-policies/templates/plausible/CiliumNetworkPolicy-allow-ext.yaml b/attic/charts/sys-cilium-policies/templates/plausible/CiliumNetworkPolicy-allow-ext.yaml
deleted file mode 100644
index 806e00dd..00000000
--- a/attic/charts/sys-cilium-policies/templates/plausible/CiliumNetworkPolicy-allow-ext.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-plausible-secure-external
- namespace: plausible
-spec:
- description: Allow Plausible External
- egress:
- - toFQDNs:
- - matchName: data.iana.org
- - matchName: raw.githubusercontent.com
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: plausible-analytics
\ No newline at end of file
diff --git a/attic/charts/sys-cilium-policies/templates/plausible/CiliumNetworkPolicy-allow-gravatar.yaml b/attic/charts/sys-cilium-policies/templates/plausible/CiliumNetworkPolicy-allow-gravatar.yaml
deleted file mode 100644
index 645da60f..00000000
--- a/attic/charts/sys-cilium-policies/templates/plausible/CiliumNetworkPolicy-allow-gravatar.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-plausible-secure-gravatar
- namespace: plausible
-spec:
- description: Allow Plausible Gravatar
- egress:
- - toFQDNs:
- - matchName: secure.gravatar.com
- - matchName: gravatar.com
- - matchName: www.gravatar.com
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: plausible-analytics
\ No newline at end of file
diff --git a/attic/charts/sys-cilium-policies/templates/postfix/CiliumNetworkPolicy-allow-mail-egress.yaml b/attic/charts/sys-cilium-policies/templates/postfix/CiliumNetworkPolicy-allow-mail-egress.yaml
deleted file mode 100644
index 0691f418..00000000
--- a/attic/charts/sys-cilium-policies/templates/postfix/CiliumNetworkPolicy-allow-mail-egress.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-mail-egress
- namespace: postfix
-spec:
- description: Allow mailserver to send mails to world
- egress:
- - toEntities:
- - world
- endpointSelector:
- matchLabels:
- app: smtp-relay
diff --git a/attic/charts/sys-cilium-policies/templates/postfix/CiliumNetworkPolicy-allow-mail-ingress.yaml b/attic/charts/sys-cilium-policies/templates/postfix/CiliumNetworkPolicy-allow-mail-ingress.yaml
deleted file mode 100644
index a8a2d699..00000000
--- a/attic/charts/sys-cilium-policies/templates/postfix/CiliumNetworkPolicy-allow-mail-ingress.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-mail-ingress
- namespace: postfix
-spec:
- description: Allow all services in cluster to send mail
- endpointSelector:
- matchLabels:
- app: smtp-relay
- ingress:
- - fromEndpoints:
- - matchExpressions:
- - key: io.kubernetes.pod.namespace
- operator: Exists
- toPorts:
- - ports:
- - port: "25"
- protocol: TCP
- - port: "587"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/postfix/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/sys-cilium-policies/templates/postfix/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index 0bac3318..00000000
--- a/attic/charts/sys-cilium-policies/templates/postfix/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: postfix
-spec:
- description: 'Allow prometheus metrics '
- endpointSelector:
- matchLabels:
- app: smtp-relay
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- toPorts:
- - ports:
- - port: "9154"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-alerting.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-alerting.yaml
deleted file mode 100644
index e092cb26..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-alerting.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-alerting
- namespace: prometheus
-spec:
- description: Allow alerting
- egress:
- - toEntities:
- - world
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: prom-alertmanager
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-alertmanager-ingress.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-alertmanager-ingress.yaml
deleted file mode 100644
index b6f96e64..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-alertmanager-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-alertmanager-ingress
- namespace: prometheus
-spec:
- description: Allow Nginx ingress
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: alertmanager
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-dns-metrics.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-dns-metrics.yaml
deleted file mode 100644
index 0ee91e6e..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-dns-metrics.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-dns-metrics
- namespace: prometheus
-spec:
- description: Allow DNS metrics
- egress:
- - toPorts:
- - ports:
- - port: "9153"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: prometheus
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-etcd-metrics.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-etcd-metrics.yaml
deleted file mode 100644
index 90ac789e..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-etcd-metrics.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-etcd-metrics
- namespace: prometheus
-spec:
- description: Allow ETCD metrics
- egress:
- - toPorts:
- - ports:
- - port: "2379"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: prometheus
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-grafana-ingress.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-grafana-ingress.yaml
deleted file mode 100644
index fca3baf2..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-grafana-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-grafana-ingress
- namespace: prometheus
-spec:
- description: Allow Grafana ingress
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: grafana
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-grafana-oidc-login.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-grafana-oidc-login.yaml
deleted file mode 100644
index ed2084fe..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-grafana-oidc-login.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-grafana-oidc-login
- namespace: prometheus
-spec:
- description: Allow Grafana OIDC login
- egress:
- - toFQDNs:
- - matchName: login.microsoftonline.com
- - matchPattern: '*.microsoftonline.com'
- - matchName: api.github.com
- - matchName: github.com
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: grafana
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-grafana-plugins.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-grafana-plugins.yaml
deleted file mode 100644
index 60721c6a..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-grafana-plugins.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-grafana-plugins
- namespace: prometheus
-spec:
- description: Allow Grafana Plugins
- egress:
- - toFQDNs:
- - matchName: grafana.com
- - matchName: storage.googleapis.com
- - matchName: raw.githubusercontent.com
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: grafana
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-grafana-secure-gravatar.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-grafana-secure-gravatar.yaml
deleted file mode 100644
index 453c2330..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-grafana-secure-gravatar.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-grafana-secure-gravatar
- namespace: prometheus
-spec:
- description: Allow Grafana Secure Gravatar
- egress:
- - toFQDNs:
- - matchName: secure.grafana.com
- - matchName: secure.gravatar.com
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: grafana
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-host-traffic.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-host-traffic.yaml
deleted file mode 100644
index bb3a591a..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-host-traffic.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-host-traffic
- namespace: prometheus
-spec:
- description: Allow Host Traffic
- egress:
- - toEntities:
- - remote-node
- - host
- - kube-apiserver
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-nginx-ingress.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-nginx-ingress.yaml
deleted file mode 100644
index ac650e55..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-nginx-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-nginx-ingress
- namespace: prometheus
-spec:
- description: Allow Nginx ingress
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: prometheus
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-opencost-scrape.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-opencost-scrape.yaml
deleted file mode 100644
index 4b7bd679..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-opencost-scrape.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-opencost-scrape
- namespace: prometheus
-spec:
- description: Allow OpenCost scrape
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: prometheus
- ingress:
- - fromEndpoints:
- - matchLabels:
- app.kubernetes.io/name: opencost
- io.kubernetes.pod.namespace: opencost
- - toPorts:
- - ports:
- - port: "9090"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-remote-node-to-metrics-server.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-remote-node-to-metrics-server.yaml
deleted file mode 100644
index 0603da13..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-remote-node-to-metrics-server.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-metrics-server
- namespace: prometheus
-spec:
- description: Allow Remote Metrics Server
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: metrics-server
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-remote-node-to-webhook.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-remote-node-to-webhook.yaml
deleted file mode 100644
index eeabfcbd..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-remote-node-to-webhook.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-remote-node-to-webhook
- namespace: prometheus
-spec:
- description: Allow Remote Web Hook
- endpointSelector:
- matchLabels:
- app: kube-prometheus-stack-operator
- ingress:
- - fromEntities:
- - remote-node
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-robusta-ingress.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-robusta-ingress.yaml
deleted file mode 100644
index c1856c3f..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-robusta-ingress.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-robusta-ingress
- namespace: prometheus
-spec:
- description: Allow Robusta ingress
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: prom-prometheus
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: robusta
diff --git a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-stats-grafana.yaml b/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-stats-grafana.yaml
deleted file mode 100644
index 5d1ed102..00000000
--- a/attic/charts/sys-cilium-policies/templates/prometheus/CiliumNetworkPolicy-allow-stats-grafana.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-stats-grafana
- namespace: prometheus
-spec:
- description: Allow stats
- egress:
- - toFQDNs:
- - matchName: stats.grafana.org
- endpointSelector:
- matchLabels:
- app.kubernetes.io/name: grafana
diff --git a/attic/charts/sys-cilium-policies/templates/rabbitmq/CiliumNetworkPolicy-allow-inter-node-traffic.yaml b/attic/charts/sys-cilium-policies/templates/rabbitmq/CiliumNetworkPolicy-allow-inter-node-traffic.yaml
deleted file mode 100644
index d06ad626..00000000
--- a/attic/charts/sys-cilium-policies/templates/rabbitmq/CiliumNetworkPolicy-allow-inter-node-traffic.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-inter-node-traffic
- namespace: rabbitmq
-spec:
- description: Allow communication between nodes int the RabbitMQ cluster
- egress:
- - toEndpoints:
- - matchLabels:
- app.kubernetes.io/component: rabbitmq
- toPorts:
- - ports:
- - port: "4369"
- - endPort: 6500
- port: "6000"
- - port: "25672"
- - port: "35672"
- - port: "35673"
- - port: "35674"
- - port: "35675"
- - port: "35676"
- - port: "35677"
- - port: "35678"
- - port: "35679"
- - port: "35680"
- - port: "35681"
- - port: "35682"
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: rabbitmq
- ingress:
- - fromEndpoints:
- - matchLabels:
- app.kubernetes.io/component: rabbitmq
- toPorts:
- - ports:
- - port: "4369"
- - endPort: 6500
- port: "6000"
- - port: "25672"
- - port: "35672"
- - port: "35673"
- - port: "35674"
- - port: "35675"
- - port: "35676"
- - port: "35677"
- - port: "35678"
- - port: "35679"
- - port: "35680"
- - port: "35681"
- - port: "35682"
diff --git a/attic/charts/sys-cilium-policies/templates/rabbitmq/CiliumNetworkPolicy-allow-operator-traffic.yaml b/attic/charts/sys-cilium-policies/templates/rabbitmq/CiliumNetworkPolicy-allow-operator-traffic.yaml
deleted file mode 100644
index b7deeb34..00000000
--- a/attic/charts/sys-cilium-policies/templates/rabbitmq/CiliumNetworkPolicy-allow-operator-traffic.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-operator-traffic
- namespace: rabbitmq
-spec:
- description: Allow access to the RabbitMQ operator
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: rabbitmq
- ingress:
- - fromEndpoints:
- - matchLabels:
- app.kubernetes.io/component: rabbitmq-operator
- toPorts:
- - ports:
- - port: "15672"
- - port: "15671"
diff --git a/attic/charts/sys-cilium-policies/templates/rabbitmq/CiliumNetworkPolicy-allow-rabbitmq-traffic.yaml b/attic/charts/sys-cilium-policies/templates/rabbitmq/CiliumNetworkPolicy-allow-rabbitmq-traffic.yaml
deleted file mode 100644
index f57cd209..00000000
--- a/attic/charts/sys-cilium-policies/templates/rabbitmq/CiliumNetworkPolicy-allow-rabbitmq-traffic.yaml
+++ /dev/null
@@ -1,27 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-rabbitmq-traffic
- namespace: rabbitmq
-spec:
- description: Allow access to the RabbitMQ cluster
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: rabbitmq
- ingress:
- - toPorts:
- - ports:
- - port: "5672"
- - port: "5671"
- - port: "5552"
- - port: "5551"
- - port: "15672"
- - port: "15671"
- - port: "61613"
- - port: "61614"
- - port: "1883"
- - port: "8883"
- - port: "15674"
- - port: "15675"
- - port: "15692"
- - port: "15691"
diff --git a/attic/charts/sys-cilium-policies/templates/robusta/CiliumNetworkPolicy-allow-ingress.yaml b/attic/charts/sys-cilium-policies/templates/robusta/CiliumNetworkPolicy-allow-ingress.yaml
deleted file mode 100644
index 5e8415c3..00000000
--- a/attic/charts/sys-cilium-policies/templates/robusta/CiliumNetworkPolicy-allow-ingress.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-ingress
- namespace: robusta
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/component: server
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: ingress-nginx
diff --git a/attic/charts/sys-cilium-policies/templates/robusta/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/sys-cilium-policies/templates/robusta/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index f91eed07..00000000
--- a/attic/charts/sys-cilium-policies/templates/robusta/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: robusta
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/sys-cilium-policies/templates/robusta/CiliumNetworkPolicy-allow-slack.yaml b/attic/charts/sys-cilium-policies/templates/robusta/CiliumNetworkPolicy-allow-slack.yaml
deleted file mode 100644
index 86f00f44..00000000
--- a/attic/charts/sys-cilium-policies/templates/robusta/CiliumNetworkPolicy-allow-slack.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-slack
- namespace: prometheus
-spec:
- egress:
- - toFQDNs:
- - matchPattern: slack.com
- - matchName: hooks.slack.com
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/sys-cilium-policies/templates/rook-ceph/CiliumNetworkPolicy-allow-oceanbox-subnet.yaml b/attic/charts/sys-cilium-policies/templates/rook-ceph/CiliumNetworkPolicy-allow-oceanbox-subnet.yaml
deleted file mode 100644
index 960eac40..00000000
--- a/attic/charts/sys-cilium-policies/templates/rook-ceph/CiliumNetworkPolicy-allow-oceanbox-subnet.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-oceanbox-subnet
- namespace: rook-ceph
-spec:
- description: Allow oceanbox traffic
- egress:
- - toCIDR:
- - 10.255.241.0/24
- - toCIDR:
- - 10.255.244.0/24
- endpointSelector:
- matchLabels: {}
- ingress:
- - fromCIDR:
- - 10.255.241.0/24
- - fromCIDR:
- - 10.255.244.0/24
diff --git a/attic/charts/sys-cilium-policies/templates/s3-sync/CiliumNetworkPolicy-allow-s3-internal.yaml b/attic/charts/sys-cilium-policies/templates/s3-sync/CiliumNetworkPolicy-allow-s3-internal.yaml
deleted file mode 100644
index cd00612d..00000000
--- a/attic/charts/sys-cilium-policies/templates/s3-sync/CiliumNetworkPolicy-allow-s3-internal.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-s3-internal
- namespace: s3-sync
-spec:
- description: Allow s3 traffic internal
- egress:
- - toCIDR:
- - 10.139.2.20/32
- - toCIDR:
- - 10.139.2.21/32
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/sys-cilium-policies/templates/s3-sync/CiliumNetworkPolicy-allow-s3-sync.yaml b/attic/charts/sys-cilium-policies/templates/s3-sync/CiliumNetworkPolicy-allow-s3-sync.yaml
deleted file mode 100644
index 58b8e709..00000000
--- a/attic/charts/sys-cilium-policies/templates/s3-sync/CiliumNetworkPolicy-allow-s3-sync.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-s3-sync
- namespace: s3-sync
-spec:
- description: Allow sync to safespring
- egress:
- - toFQDNs:
- - matchName: s3.osl2.safedc.net
- endpointSelector:
- matchLabels: {}
diff --git a/attic/charts/sys-cilium-policies/templates/sealed-secrets/CiliumNetworkPolicy-allow-kube-api.yaml b/attic/charts/sys-cilium-policies/templates/sealed-secrets/CiliumNetworkPolicy-allow-kube-api.yaml
deleted file mode 100644
index d56b8d90..00000000
--- a/attic/charts/sys-cilium-policies/templates/sealed-secrets/CiliumNetworkPolicy-allow-kube-api.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-kube-api
- namespace: sealed-secrets
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- - toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: sealed-secrets
diff --git a/attic/charts/sys-cilium-policies/templates/tempo/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/sys-cilium-policies/templates/tempo/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index aa3ddd8c..00000000
--- a/attic/charts/sys-cilium-policies/templates/tempo/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: tempo
-spec:
- egress:
- - toPorts:
- - ports:
- - port: "7946"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: tempo
diff --git a/attic/charts/sys-cilium-policies/templates/velero/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/sys-cilium-policies/templates/velero/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index cb01381b..00000000
--- a/attic/charts/sys-cilium-policies/templates/velero/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: velero
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: velero
diff --git a/attic/charts/sys-cilium-policies/templates/velero/CiliumNetworkPolicy-allow-job-api-server.yaml b/attic/charts/sys-cilium-policies/templates/velero/CiliumNetworkPolicy-allow-job-api-server.yaml
deleted file mode 100644
index 21c8e2ff..00000000
--- a/attic/charts/sys-cilium-policies/templates/velero/CiliumNetworkPolicy-allow-job-api-server.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-job-api-server
- namespace: velero
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- batch.kubernetes.io/job-name: velero-upgrade-crds
diff --git a/attic/charts/sys-cilium-policies/templates/velero/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/sys-cilium-policies/templates/velero/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index 1631d4bf..00000000
--- a/attic/charts/sys-cilium-policies/templates/velero/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: velero
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: velero
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "8085"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/templates/x509-exporter/CiliumNetworkPolicy-allow-api-server.yaml b/attic/charts/sys-cilium-policies/templates/x509-exporter/CiliumNetworkPolicy-allow-api-server.yaml
deleted file mode 100644
index 7742a0fe..00000000
--- a/attic/charts/sys-cilium-policies/templates/x509-exporter/CiliumNetworkPolicy-allow-api-server.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-api-server
- namespace: x509-exporter
-spec:
- egress:
- - toEntities:
- - kube-apiserver
- toPorts:
- - ports:
- - port: "6443"
- protocol: TCP
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: x509-exporter
diff --git a/attic/charts/sys-cilium-policies/templates/x509-exporter/CiliumNetworkPolicy-allow-prometheus-metrics.yaml b/attic/charts/sys-cilium-policies/templates/x509-exporter/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
deleted file mode 100644
index cc040dd9..00000000
--- a/attic/charts/sys-cilium-policies/templates/x509-exporter/CiliumNetworkPolicy-allow-prometheus-metrics.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: cilium.io/v2
-kind: CiliumNetworkPolicy
-metadata:
- name: allow-prometheus-metrics
- namespace: x509-exporter
-spec:
- endpointSelector:
- matchLabels:
- app.kubernetes.io/instance: x509-exporter
- ingress:
- - fromEndpoints:
- - matchLabels:
- io.kubernetes.pod.namespace: prometheus
- - toPorts:
- - ports:
- - port: "9793"
- protocol: TCP
diff --git a/attic/charts/sys-cilium-policies/values.yaml b/attic/charts/sys-cilium-policies/values.yaml
deleted file mode 100644
index 3964005c..00000000
--- a/attic/charts/sys-cilium-policies/values.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-s3:
- hosts:
- patterns:
- cidr:
- - 10.255.241.30/32
diff --git a/attic/nix/atlantis.nix b/attic/nix/atlantis.nix
deleted file mode 100644
index bff50005..00000000
--- a/attic/nix/atlantis.nix
+++ /dev/null
@@ -1,58 +0,0 @@
-{ lib, config, ... }:
-let
- cfg = config.apps.atlantis;
- env = config.apps.env;
-
- values = lib.apps.appValues {
- inherit env;
- base = ../values/atlantis;
- extraValues = { };
- };
-
- kustomize =
- r:
- if r.kind == "Deployment" then
- lib.attrsets.recursiveUpdate r {
- spec.template.spec.containers = builtins.map (
- x:
- x
- // {
- livenessProbe.httpGet.path = "/healthz";
- readinessProble.httpGet.path = "/healthz";
- env = x.env ++ [
- {
- name = "INERNAL_PORT";
- value = 8000;
- }
- ];
- }
- ) r.spec.template.spec.containers;
- }
- else if r.kind == "Service" then
- { }
- else
- r;
-in
-{
- options.apps.atlantis = lib.apps.appOptions {
- revision = lib.mkOption {
- type = lib.types.str;
- default = "main";
- description = "Revision";
- };
-
- hostname = lib.mkOption {
- type = lib.types.str;
- default = if env == "prod" then "maps.oceanbox.io" else "atlantis.beta.oceanbox.io";
- description = "Revision";
- };
- };
-
- config = lib.apps.appConfig cfg "${env}-atlantis" {
- helm.releases."${env}-atlantis" = {
- inherit values;
- chart = ../charts/atlantis;
- transformer = rs: builtins.map (x: kustomize x) rs;
- };
- };
-}
diff --git a/attic/nix/default.nix b/attic/nix/default.nix
deleted file mode 100644
index 6277483d..00000000
--- a/attic/nix/default.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ ... }:
-{
- imports = [
- ./atlantis.nix
- ./openfga.nix
- ];
-}
diff --git a/attic/nix/openfga.nix b/attic/nix/openfga.nix
deleted file mode 100644
index 9145bfc7..00000000
--- a/attic/nix/openfga.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib, config, ... }:
-let
- cfg = config.apps.openfga;
- env = config.apps.env;
-
- values = lib.apps.appValues {
- inherit env;
- base = ../values/openfga;
- extraValues = { };
- };
-
- kustomize =
- r: if r.kind == "Job" then lib.attrsets.recursiveUpdate r { spec.backoffLimit = 2; } else r;
-
-in
-{
- options.apps.openfga = lib.apps.appOptions { };
-
- config = lib.apps.appConfig cfg "${env}-openfga" {
- helm.releases."${env}-openfga" = {
- inherit values;
- chart = lib.helm.downloadHelmChart {
- repo = "https://openfga.github.io/helm-charts";
- chart = "openfga";
- version = "0.2.12";
- chartHash = "sha256-7yLcw9/oNPvCePrtTJwKAG88t0Ym5Dl/S83Gz+gQdDU=";
- };
- transformer = rs: builtins.map (x: kustomize x) rs;
- };
-
- annotations = { };
- resources = {
- services.poop.spec = {
- };
- };
- };
-}
diff --git a/attic/old/jaeger-operator.yaml b/attic/old/jaeger-operator.yaml
deleted file mode 100644
index 31848608..00000000
--- a/attic/old/jaeger-operator.yaml
+++ /dev/null
@@ -1,24 +0,0 @@
-{{- if .Values.jaeger-operator.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: jaeger
- namespace: argocd
-spec:
- project: atlantis
- destination:
- server: https://kubernetes.default.svc
- namespace: jaeger
- sources:
- - repoURL: https://jaegertracing.github.io/helm-charts
- targetRevision: 2.54.0
- chart: jaeger-operator
- helm:
- valueFiles:
- - $values/values/jaeger/values.yaml
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- # path: values/jaeger/manifests
- ref: values
-
-{{- end }}
diff --git a/attic/old/loki.yaml b/attic/old/loki.yaml
deleted file mode 100644
index 2e46746d..00000000
--- a/attic/old/loki.yaml
+++ /dev/null
@@ -1,152 +0,0 @@
-{{- if .Values.loki.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: loki
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: loki
- server: 'https://kubernetes.default.svc'
- project: aux
- ignoreDifferences:
- - group: apps
- kind: StatefulSet
- jsonPointers:
- - /spec/persistentVolumeClaimRetentionPolicy
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: aux
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- automated:
- prune: true
- selfHeal: true
- sources:
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- path: policies/oceanbox/network/loki
- targetRevision: HEAD
- - repoURL: 'https://grafana.github.io/helm-charts'
- targetRevision: 6.12.0
- chart: loki
- helm:
- values: |
- loki:
- auth_enabled: false
- storage:
- bucketNames:
- chunks: loki-chunks
- ruler: loki-chunks
- admin: loki-chunks
- s3:
- endpoint: http://10.255.241.30:30080
- region: tos
- accessKeyId: ${S3KEY}
- secretAccessKey: ${S3SECRET}
- s3ForcePathStyle: true
- http_config:
- insecure_skip_verify: true
- schemaConfig:
- configs:
- - from: "2024-04-01"
- index:
- period: 24h
- prefix: loki_index_
- object_store: s3
- schema: v13
- store: tsdb
- compactor:
- compaction_interval: 10m
- working_directory: /tmp/loki/compactor
- retention_enabled: true
- retention_delete_delay: 2h
- retention_delete_worker_count: 150
- delete_request_store: s3
- limits_config:
- retention_period: 744h
- write:
- extraArgs:
- - -config.expand-env=true
- extraEnv:
- - name: S3KEY
- valueFrom:
- secretKeyRef:
- name: loki-s3
- key: AWS_ACCESS_KEY_ID
- - name: S3SECRET
- valueFrom:
- secretKeyRef:
- name: loki-s3
- key: AWS_ACCESS_KEY_SECRET
- tolerations:
- - effect: "NoSchedule"
- operator: "Equal"
- key: "unschedulable"
- value: "true"
- read:
- extraArgs:
- - -config.expand-env=true
- extraEnv:
- - name: S3KEY
- valueFrom:
- secretKeyRef:
- name: loki-s3
- key: AWS_ACCESS_KEY_ID
- - name: S3SECRET
- valueFrom:
- secretKeyRef:
- name: loki-s3
- key: AWS_ACCESS_KEY_SECRET
- tolerations:
- - effect: "NoSchedule"
- operator: "Equal"
- key: "unschedulable"
- value: "true"
- ingress:
- enabled: true
- ingressClassName: nginx
- annotations:
- cert-manager.io/cluster-issuer: letsencrypt-staging
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- oceanbox.io/expose: internal
- hosts:
- - loki.adm.oceanbox.io
- tls:
- - hosts:
- - loki.adm.oceanbox.io
- secretName: loki-distributed-tls
- compactor:
- extraArgs:
- - -config.expand-env=true
- extraEnv:
- - name: S3KEY
- valueFrom:
- secretKeyRef:
- name: loki-s3
- key: AWS_ACCESS_KEY_ID
- - name: S3SECRET
- valueFrom:
- secretKeyRef:
- name: loki-s3
- key: AWS_ACCESS_KEY_SECRET
- backend:
- extraArgs:
- - -config.expand-env=true
- extraEnv:
- - name: S3KEY
- valueFrom:
- secretKeyRef:
- name: loki-s3
- key: AWS_ACCESS_KEY_ID
- - name: S3SECRET
- valueFrom:
- secretKeyRef:
- name: loki-s3
- key: AWS_ACCESS_KEY_SECRET
-{{- end }}
diff --git a/attic/old/opentelemetry-collector.yaml b/attic/old/opentelemetry-collector.yaml
deleted file mode 100644
index 1714c341..00000000
--- a/attic/old/opentelemetry-collector.yaml
+++ /dev/null
@@ -1,111 +0,0 @@
-{{- if .Values.opentelemetry-collector.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: opentelemetry-collector
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: otel
- server: 'https://kubernetes.default.svc'
- project: aux
- syncPolicy:
- # managedNamespaceMetadata:
- # labels:
- # component: aux
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- automated:
- prune: true
- selfHeal: true
- sources:
- - repoURL: 'https://open-telemetry.github.io/opentelemetry-helm-charts'
- targetRevision: 0.107.0
- chart: opentelemetry-collector
- helm:
- values: |
- mode: deployment
- image:
- repository: otel/opentelemetry-collector-k8s
- service:
- type: LoadBalancer
- loadBalancerIP: 10.255.241.12
- config:
- receivers:
- prometheus/collector:
- config:
- scrape_configs:
- - job_name: 'opentelemetry-collector'
- static_configs:
- - targets:
- - ${env:MY_POD_IP}:8888
- zipkin:
- endpoint: ${env:MY_POD_IP}:9411
- exporters:
- otlp:
- endpoint: "tempo.tempo.svc:4317"
- tls:
- insecure: true
- otlphttp/metrics:
- endpoint: http://prom-prometheus.prometheus:9090/api/v1/otlp
- tls:
- insecure: true
- otlphttp/logs:
- endpoint: http://loki-write-headless.loki:3100/otlp
- tls:
- insecure: true
- debug/metrics:
- verbosity: detailed
- debug/traces:
- verbosity: detailed
- debug/logs:
- verbosity: detailed
- service:
- telemetry:
- logs:
- level: "info"
- pipelines:
- traces:
- receivers: [otlp,zipkin]
- processors: [batch]
- exporters: [otlp]
- # exporters: [otlphttp/traces,debug/traces]
- metrics:
- receivers: [otlp,prometheus/collector]
- processors: [batch]
- exporters: [otlphttp/metrics]
- # exporters: [otlphttp/metrics,debug/metrics]
- logs:
- receivers: [otlp]
- processors: [batch]
- exporters: [otlphttp/logs]
- # exporters: [otlphttp/logs,debug/logs]
- ports:
- metrics:
- enabled: true
- # presets:
- # logsCollection:
- # enabled: true
- ingress:
- enabled: false
- annotations:
- cert-manager.io/cluster-issuer: letsencrypt-production
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- oceanbox.io/expose: internal
- ingressClassName: nginx
- hosts:
- - host: opentelemetry-collector.adm.oceanbox.io
- paths:
- - path: /
- pathType: Prefix
- port: 4318
- tls:
- - secretName: collector-tls
- hosts:
- - opentelemetry-collector.adm.oceanbox.io
-{{- end }}
diff --git a/attic/old/tempo.yaml b/attic/old/tempo.yaml
deleted file mode 100644
index 80e97ff9..00000000
--- a/attic/old/tempo.yaml
+++ /dev/null
@@ -1,78 +0,0 @@
-{{- if .Values.tempo.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: tempo
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: tempo
- server: 'https://kubernetes.default.svc'
- project: aux
- syncPolicy:
- # managedNamespaceMetadata:
- # labels:
- # component: aux
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- automated:
- prune: true
- selfHeal: true
- sources:
- - repoURL: 'https://grafana.github.io/helm-charts'
- targetRevision: 1.10.3
- chart: tempo
- helm:
- values: |
- tempo:
- storage:
- trace:
- backend: s3
- s3:
- bucket: tempo-traces
- endpoint: 10.255.241.30:30080
- access_key: ${S3KEY}
- secret_key: ${S3SECRET}
- forcepathstyle: true
- insecure: true
- local:
- path: /var/tempo/traces
- wal:
- path: /var/tempo/wal
- metricsGenerator:
- enabled: true
- remoteWriteUrl: "http://prom-prometheus.prometheus:9090/api/v1/write"
- extraArgs: { config.expand-env=true }
- extraEnv:
- - name: S3KEY
- valueFrom:
- secretKeyRef:
- name: tempo-s3
- key: AWS_ACCESS_KEY_ID
- - name: S3SECRET
- valueFrom:
- secretKeyRef:
- name: tempo-s3
- key: AWS_ACCESS_KEY_SECRET
- tempoQuery:
- ingress:
- enabled: true
- ingressClassName: nginx
- annotations:
- cert-manager.io/cluster-issuer: letsencrypt-staging
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- oceanbox.io/expose: internal
- path: /
- pathType: Prefix
- hosts:
- - query.tempo.adm.oceanbox.io
- tls:
- - secretName: tempo-query-tls
- hosts:
- - query.tempo.adm.oceanbox.io
-{{- end }}
diff --git a/attic/policy.hujson b/attic/policy.hujson
deleted file mode 100644
index 7ebb297a..00000000
--- a/attic/policy.hujson
+++ /dev/null
@@ -1,148 +0,0 @@
-{
- // groups are collections of users having a common scope. A user can be in multiple groups
- // groups cannot be composed of groups
- "groups": {
- "group:admin": [
- "jonas.juselius@oceanbox.io",
- "Moritz.Jorg@oceanbox.io",
- "simen.kirkvik@oceanbox.io",
- "stig.r.jensen@oceanbox.io",
- "system-tos",
- ],
- "group:devops": [
- "jonas.juselius@oceanbox.io",
- "Moritz.Jorg@oceanbox.io",
- "stig.r.jensen@oceanbox.io",
- "radovan.bast@oceanbox.io",
- "simen.kirkvik@oceanbox.io",
- "Ole.Tytlandsvik@tromso.serit.no",
- ],
- "group:oceanographer": [
- "frank.gaardsted@oceanbox.io",
- "ole.anders.nost@oceanbox.io",
- "helge.avlesen@oceanbox.io",
- "isa.rosso@oceanbox.io",
- "jonathan.lilly@oceanbox.io",
- ],
- "group:manager": [
- "svenn.hanssen@oceanbox.io",
- "hilde.iversen@oceanbox.io",
- ],
- "group:dev": [],
- "group:intern": [],
- },
- // tagOwners in tailscale is an association between a TAG and the people allowed to set this TAG on a server.
- // This is documented [here](https://tailscale.com/kb/1068/acl-tags#defining-a-tag)
- // and explained [here](https://tailscale.com/blog/rbac-like-it-was-meant-to-be/)
- "tagOwners": {
- "tag:k8s": [ "group:admin" ],
- "tag:hpc": [ "group:admin" ],
- },
- // hosts should be defined using its IP addresses and a subnet mask.
- // to define a single host, use a /32 mask. You cannot use DNS entries here,
- // as they're prone to be hijacked by replacing their IP addresses.
- // see https://github.com/tailscale/tailscale/issues/3800 for more information.
- "hosts": {
- "ingress.ekman.tos": "10.255.241.99/32",
- "ingress.ceph.tos": "10.255.241.10/32",
- "ingress.ceph.vtn": "172.16.239.50/32",
- "ingress.adm.ceph.vtn": "172.16.239.51/32",
- "ingress.oceanbox.tos": "10.255.241.11/32",
- "manage.ekman.tos": "10.255.241.99/32",
- "k8s.oceanbox.tos": "10.255.241.200/32",
- "k8s.ekman.tos": "10.255.241.99/32",
- "k8s.ceph.tos": "10.255.241.29/32",
- "printer.office.tos": "10.132.46.108/32",
- "net.office.tos": "10.132.46.0/24",
- "net.dc.tos": "10.255.241.0/24",
- "net.100gbe.tos": "10.255.244.0/24",
- "net.mgmt.tos": "10.255.240.0/24",
- "net.dc.vtn": "172.16.239.0/24",
- "net.mgmt.vtn": "172.16.238.0/24",
- },
- "acls": [
- {
- "action": "accept",
- "src": [
- "group:admin",
- "group:devops",
- "group:oceanographer",
- "group:manager",
- "group:dev",
- ],
- "dst": [
- "100.64.0.0/24:0",
- "100.64.0.0/24:22",
- ]
- },
- {
- "action": "accept",
- "src": [ "ekman", "net.dc.tos" ],
- "dst": [
- "net.dc.vtn:*",
- "100.64.0.0/24:0",
- "100.64.0.0/24:22",
- ]
- },
- {
- "action": "accept",
- "src": [ "rossby", "net.dc.vtn" ],
- "dst": [
- "net.dc.tos:*",
- "100.64.0.0/24:0",
- "100.64.0.0/24:22",
- ]
- },
- {
- "action": "accept",
- "src": [ "group:admin" ],
- "dst": [
- "net.dc.tos:*",
- "net.mgmt.tos:*",
- "net.100gbe.tos:*",
- "net.office.tos:*",
- "net.dc.vtn:*",
- "net.mgmt.vtn:*",
- ]
- },
- {
- "action": "accept",
- "src": [ "group:devops" ],
- "dst": [
- "k8s.oceanbox.tos:6443",
- "k8s.ekman.tos:4443",
- ]
- },
- {
- "action": "accept",
- "src": [
- "group:admin",
- "group:devops",
- "group:oceanographer",
- "group:manager",
- "group:dev",
- ],
- "dst": [
- "ingress.oceanbox.tos:443",
- "ingress.ekman.tos:443",
- "printer.office.tos:631",
- "10.255.241.99/32:22",
- "10.255.241.100/32:22",
- ]
- },
- {
- "action": "accept",
- "src": [
- "group:admin",
- "group:devops",
- "group:oceanographer",
- "group:manager",
- "group:dev",
- ],
- "dst": [
- "100.64.0.0/24:*",
- "autogroup:internet:*",
- ]
- },
- ]
-}
diff --git a/attic/templates/actions-runner-controller.yaml b/attic/templates/actions-runner-controller.yaml
deleted file mode 100644
index b3f34e57..00000000
--- a/attic/templates/actions-runner-controller.yaml
+++ /dev/null
@@ -1,42 +0,0 @@
-{{ if .Values.actions_runner_controller.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: actions-runner-controller
- namespace: argocd #TODO move arc to isolated project
-spec:
- destination:
- namespace: actions-runner-controller
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: 'https://actions-runner-controller.github.io/actions-runner-controller'
- targetRevision: {{ .Values.actions_runner_controller.version }}
- chart: actions-runner-controller
- helm:
- values: |
- replicaCount: 1
- # Webhook
- webhookPort: 9443
- syncPeriod: 1m
- defaultScaleDownDelay: 10m
- # Authentication
- authSecret:
- enabled: true
- create: false
- name: arc-gh-token
- annotations: {}
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- - ServerSideApply=true
- {{- if .Values.actions_runner_controller.version }}
- automated:
- # selfHeal: false
- prune: true
- {{- end }}
-{{ end }}
diff --git a/attic/templates/argo-rollouts.yaml b/attic/templates/argo-rollouts.yaml
deleted file mode 100644
index 136bced8..00000000
--- a/attic/templates/argo-rollouts.yaml
+++ /dev/null
@@ -1,37 +0,0 @@
-{{- if .Values.argo_rollouts.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: argo-rollouts
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-wave: "-1"
-spec:
- destination:
- namespace: argocd
- server: 'https://kubernetes.default.svc'
- sources:
- #- repoURL: {{ .Values.cluster_config.manifests }}
- # path: {{ .Values.cluster_config.policies }}/argo-rollouts
- # targetRevision: HEAD
- - repoURL: 'https://argoproj.github.io/argo-helm'
- targetRevision: {{ .Values.argo_rollouts.version }}
- chart: argo-rollouts
- helm:
- values: |
- dashboard:
- enabled: {{ .Values.argo_rollouts.dashboard_enabled }}
- {{- with .Values.argo_rollouts.metrics.enabled }}
- controller:
- metrics:
- enabled: true
- serviceMonitor:
- enabled: true
- {{- end }}
- project: sys
- {{- if .Values.argo_rollouts.autosync }}
- syncPolicy:
- automated:
- prune: true
- {{- end }}
-{{- end }}
diff --git a/attic/templates/argo-workflows.yaml b/attic/templates/argo-workflows.yaml
deleted file mode 100644
index b7515f71..00000000
--- a/attic/templates/argo-workflows.yaml
+++ /dev/null
@@ -1,43 +0,0 @@
-{{- if .Values.argo_workflows.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: argo-workflows
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-wave: "-1"
-spec:
- destination:
- namespace: argocd
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: 'https://argoproj.github.io/argo-helm'
- targetRevision: {{ .Values.argo_workflows.version }}
- chart: argo-workflows
- helm:
- values: |
- controller:
- workflowNamespaces:
- {{- .Values.argo_workflows.allowed_namespaces | toYaml | nindent 10 }}
- {{- with .Values.argo_workflows.metrics.enabled }}
- metricsConfig:
- enabled: true
- serviceMonitor:
- enabled: true
- {{- end }}
- server:
- extraArgs:
- - --auth-mode=server
- workflow:
- rbac:
- create: true
- serviceAccount:
- create: true
- name: argo-workflow
- project: argo-workflows
- {{- if .Values.argo_workflows.autosync }}
- syncPolicy:
- automated:
- prune: true
- {{- end }}
-{{- end }}
diff --git a/attic/templates/argocd-apps.yaml b/attic/templates/argocd-apps.yaml
deleted file mode 100644
index 7447c5fd..00000000
--- a/attic/templates/argocd-apps.yaml
+++ /dev/null
@@ -1,154 +0,0 @@
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: argocd-apps
- namespace: argocd
-spec:
- destination:
- namespace: argocd
- server: 'https://kubernetes.default.svc'
- source:
- repoURL: 'https://argoproj.github.io/argo-helm'
- targetRevision: {{ .Values.argocd_apps.version }}
- chart: argocd-apps
- helm:
- values: |
- projects:
- # System component project
- - name: sys
- namespace: argocd
- description: sys components project
- sourceRepos:
- - '{{ .Values.cluster_config.manifests }}'
- - 'https://argoproj.github.io/argo-helm'
- - 'https://gitlab.com/oceanbox/manifests.git'
- - 'https://kubernetes-sigs.github.io/metrics-server/'
- - 'https://kubernetes.github.io/ingress-nginx'
- - 'https://cloudnative-pg.github.io/charts'
- - 'https://charts.jetstack.io'
- - 'https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/'
- - 'https://github.com/kubernetes/dashboard'
- - 'https://bitnami-labs.github.io/sealed-secrets'
- - 'https://prometheus-community.github.io/helm-charts'
- - 'https://github.com/prometheus-community/helm-charts.git'
- - 'https://charts.gitlab.io/'
- - 'https://charts.bitnami.com/bitnami'
- - 'https://helm.linkerd.io/stable'
- - 'https://github.com/jaegertracing/jaeger-operator'
- - 'https://kyverno.github.io/kyverno/'
- - 'https://vmware-tanzu.github.io/helm-charts'
- - 'https://grafana.github.io/helm-charts'
- - 'https://charts.enix.io'
- - 'https://helm.mariadb.com/mariadb-operator'
- - 'https://helm.cilium.io'
- - 'https://chartmuseum.github.io/charts'
- - 'https://open-telemetry.github.io/opentelemetry-helm-charts'
- - 'https://strimzi.io/charts'
- - 'https://helm.elastic.co'
- - 'https://1password.github.io/connect-helm-charts'
- - 'https://actions-runner-controller.github.io/actions-runner-controller'
- - 'https://imio.github.io/helm-charts'
- - 'https://docs.altinity.com/clickhouse-operator'
-
- destinations:
- - namespace: argocd
- server: https://kubernetes.default.svc
- - namespace: kube-system
- server: https://kubernetes.default.svc
- - namespace: ingress-nginx
- server: https://kubernetes.default.svc
- - namespace: prometheus
- server: https://kubernetes.default.svc
- - namespace: cnpg
- server: https://kubernetes.default.svc
- - namespace: cert-manager
- server: https://kubernetes.default.svc
- - namespace: kubernetes-dashboard
- server: https://kubernetes.default.svc
- - namespace: rabbitmq
- server: https://kubernetes.default.svc
- - namespace: sealed-secrets
- server: https://kubernetes.default.svc
- - namespace: gitlab
- server: https://kubernetes.default.svc
- - namespace: thanos
- server: https://kubernetes.default.svc
- - namespace: linkerd
- server: https://kubernetes.default.svc
- - namespace: linkerd-multicluster
- server: https://kubernetes.default.svc
- - namespace: observability
- server: https://kubernetes.default.svc
- - namespace: kyverno
- server: https://kubernetes.default.svc
- - namespace: velero
- server: https://kubernetes.default.svc
- - namespace: loki
- server: https://kubernetes.default.svc
- - namespace: tempo
- server: https://kubernetes.default.svc
- - namespace: otel
- server: https://kubernetes.default.svc
- - namespace: x509-exporter
- server: https://kubernetes.default.svc
- - namespace: mariadb-operator
- server: https://kubernetes.default.svc
- - namespace: cilium-spire
- server: https://kubernetes.default.svc
- - namespace: cilium-secrets
- server: https://kubernetes.default.svc
- - namespace: actions-runner-controller
- server: https://kubernetes.default.svc
- - namespace: analytics
- server: https://kubernetes.default.svc
- - namespace: clickhouse
- server: https://kubernetes.default.svc
- clusterResourceWhitelist:
- - group: '*'
- kind: '*'
-
- {{- if .Values.argo_workflows.enabled }}
- - name: argo-workflows
- namespace: argocd
- description: argo-workflows resources
- sourceRepos:
- - 'https://argoproj.github.io/argo-helm'
- destinations:
- - namespace: argocd
- server: https://kubernetes.default.svc
- {{- range .Values.argo_workflows.allowed_namespaces }}
- - namespace: {{.}}
- server: https://kubernetes.default.svc
- {{- end }}
- namespaceResourceWhitelist:
- - group: "rbac.authorization.k8s.io"
- kind: Role
- - group: "rbac.authorization.k8s.io"
- kind: RoleBinding
- - group: ""
- kind: ConfigMap
- - group: ""
- kind: Secret
- - group: ""
- kind: Service
- - group: ""
- kind: ServiceAccount
- - group: apps
- kind: Deployment
- - group: "monitoring.coreos.com"
- kind: ServiceMonitor
- clusterResourceWhitelist:
- - group: rbac.authorization.k8s.io
- kind: ClusterRole
- - group: rbac.authorization.k8s.io
- kind: ClusterRoleBinding
- - group: apiextensions.k8s.io
- kind: CustomResourceDefinition
- {{- end }}
- project: sys
- syncPolicy:
- automated: {}
- syncOptions:
- - ServerSideApply=true
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
diff --git a/attic/templates/busynix.yaml b/attic/templates/busynix.yaml
deleted file mode 100644
index d232531e..00000000
--- a/attic/templates/busynix.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
-{{- if .Values.busynix.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: busynix
- namespace: argocd
-spec:
- project: aux
- destination:
- namespace: default
- server: https://kubernetes.default.svc
- source:
- repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- path: values/busynix
- plugin:
- name: kustomize-helm-with-rewrite
- parameters:
- - name: env
- string: staging
- - name: hostname
- string: busynix.beta.oceanbox.io
-{{- end }}
diff --git a/attic/templates/cert-manager.yaml b/attic/templates/cert-manager.yaml
deleted file mode 100644
index c510a4f8..00000000
--- a/attic/templates/cert-manager.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: cert-manager
- namespace: argocd
-spec:
- destination:
- namespace: cert-manager
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: {{ .Values.cluster_config.manifests }}
- path: {{ .Values.cluster_config.policies }}/cert-manager
- targetRevision: HEAD
- - repoURL: 'https://charts.jetstack.io'
- targetRevision: {{ .Values.cert_manager.version }}
- chart: cert-manager
- helm:
- values: |
- installCRDs: true
- enableCertificateOwnerRef: true
- startupapicheck:
- podAnnotations:
- linkerd.io/inject: disabled
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.cert_manager.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
diff --git a/attic/templates/chartmuseum.yaml b/attic/templates/chartmuseum.yaml
deleted file mode 100644
index 22a8bbfc..00000000
--- a/attic/templates/chartmuseum.yaml
+++ /dev/null
@@ -1,60 +0,0 @@
-{{- if .Values.chartmuseum.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: chartmuseum
- namespace: argocd
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: argocd
- server: 'https://kubernetes.default.svc'
- source:
- repoURL: 'https://chartmuseum.github.io/charts'
- targetRevision: {{ .Values.chartmuseum.version }}
- chart: chartmuseum
- helm:
- values: |
- env:
- open:
- ENABLE_METRICS: true
- DISABLE_API: false
- ALLOW_OVERWRITE: false
- CHART_URL: ""
- AUTH_ANONYMOUS_GET: true
- existingSecret: chartmuseum-basic-auth
- existingSecretMappings:
- BASIC_AUTH_USER: user
- BASIC_AUTH_PASS: password
- extraArgs:
- - --web-template-path=/storage/web
- serviceMonitor:
- enabled: false
- persistence:
- enabled: true
- accessMode: ReadWriteOnce
- size: {{ .Values.chartmuseum.storage.size }}
- path: /storage
- storageClass: ""
- ingress:
- enabled: {{ .Values.chartmuseum.ingress.enabled }}
- annotations:
- {{- with .Values.cluster_config.ingress_whitelist_ips}}
- nginx.ingress.kubernetes.io/whitelist-source-range: {{ join "," . }}
- {{- end }}
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- ingressClassName: nginx
- hosts:
- - name: charts.{{ .Values.cluster_config.domain }}
- path: /
- tls: true
- tlsSecret: chartmuseum-tls
- project: sys
- {{- if .Values.chartmuseum.autosync }}
- syncPolicy:
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
-{{- end }}
diff --git a/attic/templates/clickhouse.yaml b/attic/templates/clickhouse.yaml
deleted file mode 100644
index af8799cc..00000000
--- a/attic/templates/clickhouse.yaml
+++ /dev/null
@@ -1,45 +0,0 @@
-{{ if .Values.clickhouse_operator.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: clickhouse-operator
- namespace: argocd
-spec:
- destination:
- namespace: clickhouse
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: {{ .Values.cluster_config.manifests }}
- path: {{ .Values.cluster_config.policies }}/clickhouse
- targetRevision: HEAD
- - repoURL: 'https://docs.altinity.com/clickhouse-operator'
- targetRevision: {{ .Values.clickhouse_operator.version }}
- chart: altinity-clickhouse-operator
- helm:
- values: |
- configs:
- files:
- config.yaml:
- watch:
- namespaces: ["analytics", "analytics-production"]
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- - ServerSideApply=true
- {{- if .Values.clickhouse_operator.version }}
- automated:
- # selfHeal: false
- prune: true
- {{- end }}
- ignoreDifferences:
- - group: apps
- kind: Deployment
- jqPathExpressions:
- - .spec.template.spec.containers[].env[].valueFrom.resourceFieldRef.divisor
- - .spec.template.spec.initContainers[].env[].valueFrom.resourceFieldRef.divisor
-{{ end }}
diff --git a/attic/templates/dapr.yaml b/attic/templates/dapr.yaml
deleted file mode 100644
index dc686c68..00000000
--- a/attic/templates/dapr.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-{{- if .Values.dapr.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: dapr
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: dapr-system
- server: https://kubernetes.default.svc
- project: default
- syncPolicy:
- # managedNamespaceMetadata:
- # labels:
- # component: aux
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- automated:
- prune: true
- selfHeal: true
- sources:
- - repoURL: https://dapr.github.io/helm-charts/
- targetRevision: 1.14.4
- chart: dapr
- helm:
- values: |
- global:
- ha:
- enabled: true
-{{- end }}
diff --git a/attic/templates/dex.yaml b/attic/templates/dex.yaml
deleted file mode 100644
index fa8289e0..00000000
--- a/attic/templates/dex.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-{{ if .Values.dex.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: prod-dex
- namespace: argocd
-spec:
- project: aux
- destination:
- server: https://kubernetes.default.svc
- namespace: dex
- sources:
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- path: 'values/dex/prod'
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- path: values/dex/resources
- - repoURL: https://charts.dexidp.io
- targetRevision: 0.19.1
- chart: dex
- helm:
- valueFiles:
- - $values/values/dex/values.yaml
- - $values/values/dex/values-prod.yaml
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- ref: values
-{{- end }}
diff --git a/attic/templates/downscaler.yaml b/attic/templates/downscaler.yaml
deleted file mode 100644
index 54910d53..00000000
--- a/attic/templates/downscaler.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
-{{ if .Values.downscaler.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: downscaler
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: kube-downscaler
- server: 'https://kubernetes.default.svc'
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.downscaler.autosync }}
- automated:
- prune: true
- # selfHeal: true
- {{- end }}
- sources:
- - repoURL: '{{ .Values.cluster_config.manifests }}'
- path: {{ .Values.cluster_config.policies }}/downscaler
- targetRevision: HEAD
- - repoURL: 'https://caas-team.github.io/helm-charts/'
- targetRevision: {{ .Values.downscaler.version }}
- chart: py-kube-downscaler
- helm:
- values: |
- arguments:
- - --interval=60
- - --include-resources=deployments,statefulsets,scaledobjects,cronjobs
- # Namespaces being excluded from the 'downscale for non-work hours'
- # DEFAULT_UPTIME: "Mon-Fri 07:30-20:30 CET"
- {{- with .Values.downscaler.excludedNamespaces }}
- excludedNamespaces: {{ join "," . }}
- {{- end }}
- extraConfig: {{- toYaml .Values.downscaler.extraConfig | nindent 8 }}
-{{ end }}
-
diff --git a/attic/templates/geoserver.yaml b/attic/templates/geoserver.yaml
deleted file mode 100644
index f5c3b589..00000000
--- a/attic/templates/geoserver.yaml
+++ /dev/null
@@ -1,27 +0,0 @@
-{{ if .Values.geoserver.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: prod-geoserver
- namespace: argocd
-spec:
- project: aux
- destination:
- server: https://kubernetes.default.svc
- namespace: geoserver
- sources:
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- path: values/geoserver
- plugin:
- name: kustomize-helm-with-rewrite
- parameters:
- - name: env
- string: prod
- - name: hostname
- string: geoserver.srv.oceanbox.io
- - name: flags
- string: "--skip-tests"
- - name: chart
- string: ncsa/geoserver
-{{- end }}
diff --git a/attic/templates/gitlab-runner.yaml b/attic/templates/gitlab-runner.yaml
deleted file mode 100644
index b8e1ad9a..00000000
--- a/attic/templates/gitlab-runner.yaml
+++ /dev/null
@@ -1,78 +0,0 @@
-{{ if .Values.gitlab_runner.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: gitlab-runner
- namespace: argocd
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: gitlab
- server: 'https://kubernetes.default.svc'
- source:
- repoURL: 'https://charts.gitlab.io/'
- targetRevision: {{ .Values.gitlab_runner.version }}
- chart: gitlab-runner
- helm:
- releaseName: runner-gitlab-runner
- values: |
- gitlabUrl: https://gitlab.com/
- # certsSecretName: cluster-ca
- # sentryDsn: https://cb9cbeb704c4454fadf0d231602b7abc@o990465.ingest.sentry.io/5996879
-
- checkInterval: 15
-
- rbac:
- create: true
- clusterWideAccess: true
-
- service:
- enabled: true
-
- metrics:
- enabled: true
- serviceMonitor:
- enabled: true
-
- runners:
- tags: kubernetes, {{ .Values.gitlab_runner.tag }}, {{ .Values.cluster_config.cluster }}, {{ .Values.cluster_config.env}}
- executor: kubernetes
- cache:
- secretName: s3access
- secret: runner-token
-
- # tpl: https://helm.sh/docs/howto/charts_tips_and_tricks/#using-the-tpl-function
- # runner configuration: https://docs.gitlab.com/runner/configuration/advanced-configurati>
- config: |
- [[runners]]
- [runners.kubernetes]
- pull_policy = "always"
- namespace = "gitlab"
- image = "ubuntu:24.04"
- [runners.cache]
- Path = ""
- Shared = true
- Type = "s3"
- [runners.cache.s3]
- BucketLocation = "us-east-1"
- AuthenticationType = "access-key"
- AccessKey = {{ .Values.gitlab_runner.s3.access_key }}
- SecretKey = {{ .Values.gitlab_runner.s3.secret_key }}
- ServerAddress = {{ .Values.gitlab_runner.s3.server }}
- BucketName = "gitlab-runner"
- Insecure = false
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.gitlab_runner.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
-{{ end }}
diff --git a/attic/templates/headscale.yaml b/attic/templates/headscale.yaml
deleted file mode 100644
index f2392c5a..00000000
--- a/attic/templates/headscale.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
-{{- if .Values.headscale.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: headscale
- namespace: argocd
-spec:
- project: default
- destination:
- server: https://kubernetes.default.svc
- namespace: headscale
- sources:
- - repoURL: https://charts.gabe565.com
- targetRevision: 0.16.0
- chart: headscale
- helm:
- valueFiles:
- - $values/values/headscale/values.yaml
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- ref: values
-
-{{- end }}
diff --git a/attic/templates/ingress-nginx.yaml b/attic/templates/ingress-nginx.yaml
deleted file mode 100644
index 0e37dfa2..00000000
--- a/attic/templates/ingress-nginx.yaml
+++ /dev/null
@@ -1,132 +0,0 @@
-{{- if .Values.nginx.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: ingress-nginx
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
-spec:
- destination:
- namespace: ingress-nginx
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: {{ .Values.cluster_config.manifests }}
- path: {{ .Values.cluster_config.policies }}/ingress-nginx
- targetRevision: HEAD
- - repoURL: 'https://kubernetes.github.io/ingress-nginx'
- targetRevision: {{ .Values.nginx.version }}
- chart: ingress-nginx
- helm:
- values: |
- ## nginx configuration
- ## Ref: https://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/nginx-configuration/index.md
- ##
- ## Overrides for generated resource names
- # See templates/_helpers.tpl
- # nameOverride:
- fullnameOverride: main-ingress-nginx
- controller:
- resources:
- limits:
- memory: {{ .Values.nginx.resources.controller.memory }}
- requests:
- cpu: {{ .Values.nginx.resources.controller.cpu }}
- memory: {{ .Values.nginx.resources.controller.memory }}
-
- ingressClassResource:
- default: true
-
- tolerations:
- - key: unschedulable
- operator: Exists
- effect: NoSchedule
- - key: node-role.kubernetes.io/control-plane
- operator: Exists
- effect: NoSchedule
-
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: kubernetes.io/hostname
- operator: In
- values: {{ .Values.cluster_config.ingress_nodes }}
-
- podAntiAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- - labelSelector:
- matchExpressions:
- - key: app.kubernetes.io/instance
- operator: In
- values:
- - ingress-nginx
- - key: app.kubernetes.io/component
- operator: In
- values:
- - controller
- topologyKey: "kubernetes.io/hostname"
-
- podAnnotations:
- config.linkerd.io/skip-inbound-ports: 80,443
-
- replicaCount: {{ .Values.cluster_config.ingress_replica_count }}
-
- minAvailable: {{ .Values.nginx.pdb.minAvailable }}
-
- service:
- externalTrafficPolicy: Local
- # type: ClusterIP
- type: NodePort
- # nodePorts:
- # http: 32080
- # https: 32443
- # tcp:
- # 8080: 32808
- nodePorts:
- http: 30080
- https: 30443
- tcp: {}
- udp: {}
-
- metrics:
- enabled: true
-
- service:
- annotations:
- prometheus.io/scrape: "true"
- prometheus.io/port: "10254"
-
- servicePort: 9913
- type: ClusterIP
-
- serviceMonitor:
- enabled: true
-
- admissionWebhooks:
- enabled: false
-
- ## Default 404 backend
- ##
- defaultBackend:
- enabled: true
-
- tolerations:
- - key: unschedulable
- operator: Exists
- effect: NoSchedule
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.nginx.autosync}}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
-{{- end }}
diff --git a/attic/templates/jaeger-operator.yaml b/attic/templates/jaeger-operator.yaml
deleted file mode 100644
index fd309841..00000000
--- a/attic/templates/jaeger-operator.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-{{ if .Values.jaeger_operator.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: jaeger-operator
- namespace: argocd
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: observability
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: {{ .Values.cluster_config.manifests }}
- path: {{ .Values.cluster_config.policies }}/jaeger-operator
- targetRevision: HEAD
- - repoURL: "https://github.com/jaegertracing/jaeger-operator"
- targetRevision: v{{ .Values.jaeger_operator.version }}
- path: bundle/manifests
- directory:
- # Exclude jaeger-operator clusterserviceversion, as we don't have operator lifecycle manager installed
- exclude: jaeger-operator.clusterserviceversion.yaml
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.jaeger_operator.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
-{{ end }}
diff --git a/attic/templates/keycloak.yaml b/attic/templates/keycloak.yaml
deleted file mode 100644
index e3425eab..00000000
--- a/attic/templates/keycloak.yaml
+++ /dev/null
@@ -1,39 +0,0 @@
-{{ if .Values.keycloak.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: prod-keycloak
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- project: aux
- destination:
- server: https://kubernetes.default.svc
- namespace: keycloak
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: aux
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- automated:
- prune: true
- selfHeal: true
- sources:
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- path: values/keycloak/prod
- - repoURL: https://charts.bitnami.com/bitnami
- targetRevision: 24.0.2
- chart: keycloak
- helm:
- valueFiles:
- - $values/values/keycloak/values-prod.yaml
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- ref: values
-{{- end }}
diff --git a/attic/templates/kubernetes-dashboard.yaml b/attic/templates/kubernetes-dashboard.yaml
deleted file mode 100644
index 1b2efa19..00000000
--- a/attic/templates/kubernetes-dashboard.yaml
+++ /dev/null
@@ -1,30 +0,0 @@
-{{ if .Values.kubernetes_dashboard.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: kubernetes-dashboard
- namespace: argocd
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: kubernetes-dashboard
- server: 'https://kubernetes.default.svc'
- source:
- path: aio/deploy/recommended
- repoURL: https://github.com/kubernetes/dashboard
- targetRevision: {{ .Values.kubernetes_dashboard.version }}
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.kubernetes_dashboard.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{ end }}
-{{ end }}
diff --git a/attic/templates/kyverno.yaml b/attic/templates/kyverno.yaml
deleted file mode 100644
index d9ff0aed..00000000
--- a/attic/templates/kyverno.yaml
+++ /dev/null
@@ -1,84 +0,0 @@
-{{ if .Values.kyverno.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: kyverno
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: kyverno
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: {{ .Values.cluster_config.manifests }}
- path: {{ .Values.cluster_config.policies }}/kyverno
- targetRevision: HEAD
- - repoURL: 'https://kyverno.github.io/kyverno/'
- targetRevision: {{ .Values.kyverno.version }}
- chart: kyverno
- helm:
- values: |
- replicaCount: 3
- {{ if .Values.kyverno.metrics }}
- admissionController:
- serviceMonitor:
- enabled: true
- metricsService:
- create: true
- backgroundController:
- serviceMonitor:
- enabled: true
- metricsService:
- create: true
- cleanupController:
- serviceMonitor:
- enabled: true
- metricsService:
- create: true
- reportsController:
- serviceMonitor:
- enabled: true
- metricsService:
- create: true
- {{ end }}
- cleanupController:
- resources:
- limits:
- memory: {{ .Values.kyverno.resources.cleanupController.memory }}
- requests:
- memory: {{ .Values.kyverno.resources.cleanupController.memory }}
- reportsController:
- resources:
- limits:
- memory: {{ .Values.kyverno.resources.reportsController.memory }}
- requests:
- memory: {{ .Values.kyverno.resources.reportsController.memory }}
- backgroundController:
- resources:
- limits:
- memory: {{ .Values.kyverno.resources.backgroundController.memory }}
- requests:
- memory: {{ .Values.kyverno.resources.backgroundController.memory }}
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- - ServerSideApply=true
- {{- if .Values.kyverno.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
- ignoreDifferences:
- - group: batch
- kind: CronJob
- jqPathExpressions:
- - '.spec.jobTemplate.spec.template.spec.containers[]?.resources'
-{{ end }}
diff --git a/attic/templates/linkerd-crds.yaml b/attic/templates/linkerd-crds.yaml
deleted file mode 100644
index 5bceb653..00000000
--- a/attic/templates/linkerd-crds.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-{{ if .Values.linkerd.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: linkerd-crds
- namespace: argocd
- #finalizers:
- #- resources-finalizer.argocd.argoproj.io
-spec:
- ignoreDifferences:
- - group: apiextensions.k8s.io
- kind: CustomResourceDefinition
- jsonPointers:
- - /spec/names/shortNames
- destination:
- namespace: linkerd
- server: 'https://kubernetes.default.svc'
- source:
- repoURL: 'https://helm.linkerd.io/stable'
- targetRevision: {{ .Values.linkerd.crds.version }}
- chart: linkerd-crds
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.linkerd.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
-{{ end }}
diff --git a/attic/templates/linkerd-multicluster.yaml b/attic/templates/linkerd-multicluster.yaml
deleted file mode 100644
index c7ad1afc..00000000
--- a/attic/templates/linkerd-multicluster.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-{{ if .Values.linkerd.multicluster.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: linkerd-multicluster
- namespace: argocd
- finalizers:
- - resources-finalizer.argocd.argoproj.io
- annotations:
- # Should sync after linkerd (which is wave 0)
- argocd.argoproj.io/sync-wave: "1"
-spec:
- destination:
- namespace: linkerd-multicluster
- server: 'https://kubernetes.default.svc'
- source:
- repoURL: 'https://helm.linkerd.io/stable'
- targetRevision: {{ .Values.linkerd.multicluster.version }}
- chart: linkerd-multicluster
- helm:
- values: |
- gateway:
- serviceType: "NodePort"
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- automated:
- prune: true
- # selfHeal: false
-{{ end }}
diff --git a/attic/templates/linkerd.yaml b/attic/templates/linkerd.yaml
deleted file mode 100644
index 0883b036..00000000
--- a/attic/templates/linkerd.yaml
+++ /dev/null
@@ -1,100 +0,0 @@
-{{ if .Values.linkerd.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: linkerd
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-wave: "5"
- #finalizers:
- #- resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: linkerd
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: {{ .Values.cluster_config.manifests }}
- path: {{ .Values.cluster_config.policies }}/linkerd
- targetRevision: HEAD
- - repoURL: 'https://helm.linkerd.io/stable'
- targetRevision: {{ .Values.linkerd.version }}
- chart: linkerd-control-plane
- helm:
- values: |
- identityTrustAnchorsPEM: {{- .Values.linkerd.trustAnchorPEM | toYaml | indent 7 }}
- identity:
- issuer:
- scheme: {{ .Values.linkerd.secretScheme }}
- {{- if .Values.linkerd.identityIssuerPEM }}
- tls:
- crtPEM: {{- .Values.linkerd.identityIssuerPEM | toYaml | indent 14 }}
- {{- end }}
- policyValidator:
- externalSecret: true
- caBundle: {{- .Values.linkerd.webhookPEM | toYaml | indent 9 }}
- proxyInjector:
- externalSecret: true
- caBundle: {{- .Values.linkerd.webhookPEM | toYaml | indent 9 }}
- profileValidator:
- externalSecret: true
- caBundle: {{- .Values.linkerd.webhookPEM | toYaml | indent 9 }}
-
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.linkerd.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
- ignoreDifferences:
- - group: batch
- kind: CronJob
- jsonPointers:
- - /spec/schedule
- - kind: Secret
- name: linkerd-proxy-injector-k8s-tls
- jsonPointers:
- - /data/tls.crt
- - /data/tls.key
- - kind: Secret
- name: linkerd-sp-validator-k8s-tls
- jsonPointers:
- - /data/tls.crt
- - /data/tls.key
- - kind: Secret
- name: linkerd-tap-k8s-tls
- jsonPointers:
- - /data/tls.crt
- - /data/tls.key
- - kind: Secret
- name: linkerd-policy-validator-k8s-tls
- jsonPointers:
- - /data/tls.crt
- - /data/tls.key
- - group: admissionregistration.k8s.io
- kind: MutatingWebhookConfiguration
- name: linkerd-proxy-injector-webhook-config
- jqPathExpressions:
- - '.webhooks[0].clientConfig.caBundle'
- - group: admissionregistration.k8s.io
- kind: ValidatingWebhookConfiguration
- name: linkerd-sp-validator-webhook-config
- jqPathExpressions:
- - '.webhooks[0].clientConfig.caBundle'
- - group: admissionregistration.k8s.io
- kind: ValidatingWebhookConfiguration
- name: linkerd-policy-validator-webhook-config
- jqPathExpressions:
- - '.webhooks[0].clientConfig.caBundle'
- - group: apiregistration.k8s.io/v1
- kind: APIService
- name: v1alpha1.tap.linkerd.io
- jsonPointers:
- - /spec/caBundle
-{{ end }}
diff --git a/attic/templates/loki.yaml b/attic/templates/loki.yaml
deleted file mode 100644
index d11ad705..00000000
--- a/attic/templates/loki.yaml
+++ /dev/null
@@ -1,145 +0,0 @@
-{{ if .Values.loki.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: loki
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: loki
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: {{ .Values.cluster_config.manifests }}
- path: {{ .Values.cluster_config.policies }}/loki
- targetRevision: HEAD
- - repoURL: 'https://grafana.github.io/helm-charts'
- targetRevision: {{ .Values.loki.version }}
- chart: loki
- helm:
- values: |
- loki:
- auth_enabled: false
- storage:
- bucketNames:
- chunks: {{ .Values.loki.buckets.chunks }}
- ruler: {{ .Values.loki.buckets.ruler }}
- admin: {{ .Values.loki.buckets.admin }}
- s3:
- endpoint: {{ .Values.loki.s3.endpoint | default "https://s3.production.itpartner.no" }}
- region: {{ .Values.loki.s3.region | default "us-east-1" }}
- secretAccessKey: ${S3SECRET}
- accessKeyId: ${S3KEY}
- s3ForcePathStyle: true
- {{- if .Values.loki.s3.insecure_skip_verify }}
- http_config:
- insecure_skip_verify: true
- {{- end }}
- schemaConfig:
- configs:
- - from: "2022-09-28"
- index:
- period: 24h
- prefix: loki_index_
- object_store: s3
- schema: v13
- store: tsdb
- {{- if .Values.loki.compactor }}
- compactor:
- compaction_interval: 10m
- working_directory: /tmp/loki/compactor
- retention_enabled: true
- retention_delete_delay: 2h
- retention_delete_worker_count: 150
- delete_request_store: s3
- {{- end }}
- write:
- extraArgs:
- - -config.expand-env=true
- extraEnv:
- - name: S3KEY
- valueFrom:
- secretKeyRef:
- name: {{ .Values.loki.secret.name | default "s3-credentials"}}
- key: {{ .Values.loki.secret.access_key | default "access_key" }}
- - name: S3SECRET
- valueFrom:
- secretKeyRef:
- name: {{ .Values.loki.secret.name | default "s3-credentials"}}
- key: {{ .Values.loki.secret.access_key | default "access_secret" }}
- tolerations:
- - effect: "NoSchedule"
- operator: "Equal"
- key: "unschedulable"
- value: "true"
- read:
- extraArgs:
- - -config.expand-env=true
- extraEnv:
- - name: S3KEY
- valueFrom:
- secretKeyRef:
- name: {{ .Values.loki.secret.name | default "s3-credentials"}}
- key: {{ .Values.loki.secret.access_key | default "access_key" }}
- - name: S3SECRET
- valueFrom:
- secretKeyRef:
- name: {{ .Values.loki.secret.name | default "s3-credentials"}}
- key: {{ .Values.loki.secret.access_key | default "access_secret" }}
- tolerations:
- - effect: "NoSchedule"
- operator: "Equal"
- key: "unschedulable"
- value: "true"
- {{- if .Values.loki.compactor }}
- compactor:
- extraArgs:
- - -config.expand-env=true
- extraEnv:
- - name: S3KEY
- valueFrom:
- secretKeyRef:
- name: {{ .Values.loki.secret.name | default "s3-credentials"}}
- key: {{ .Values.loki.secret.access_key | default "access_key" }}
- - name: S3SECRET
- valueFrom:
- secretKeyRef:
- name: {{ .Values.loki.secret.name | default "s3-credentials"}}
- key: {{ .Values.loki.secret.access_key | default "access_secret" }}
- {{- end }}
- backend:
- extraArgs:
- - -config.expand-env=true
- extraEnv:
- - name: S3KEY
- valueFrom:
- secretKeyRef:
- name: {{ .Values.loki.secret.name | default "s3-credentials"}}
- key: {{ .Values.loki.secret.access_key | default "access_key" }}
- - name: S3SECRET
- valueFrom:
- secretKeyRef:
- name: {{ .Values.loki.secret.name | default "s3-credentials"}}
- key: {{ .Values.loki.secret.access_key | default "access_secret" }}
- project: sys
- ignoreDifferences:
- - group: apps
- kind: StatefulSet
- jsonPointers:
- - /spec/persistentVolumeClaimRetentionPolicy
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.loki.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
-{{ end }}
diff --git a/attic/templates/mariadb-operator.yaml b/attic/templates/mariadb-operator.yaml
deleted file mode 100644
index a91f4a83..00000000
--- a/attic/templates/mariadb-operator.yaml
+++ /dev/null
@@ -1,46 +0,0 @@
-{{- if .Values.mariadb_operator.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: mariadb-operator
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-wave: "-1"
-spec:
- destination:
- namespace: mariadb-operator
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: {{ .Values.cluster_config.manifests }}
- path: {{ .Values.cluster_config.policies }}/mariadb-operator
- targetRevision: HEAD
- - repoURL: 'https://helm.mariadb.com/mariadb-operator'
- targetRevision: {{ .Values.mariadb_operator.version }}
- chart: mariadb-operator
- helm:
- values: |
- ha:
- enabled: false
- metrics:
- enabled: true
- serviceMonitor:
- additionalLabels:
- release: prometheus
- enabled: true
- webhook:
- certificate:
- certManager: false
- serviceMonitor:
- additionalLabels:
- release: prometehus
- project: sys
- syncPolicy:
- syncOptions:
- - CreateNamespace=true
- - ServerSideApply=true
- {{- if .Values.mariadb_operator.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
-{{- end }}
diff --git a/attic/templates/metricserver.yaml b/attic/templates/metricserver.yaml
deleted file mode 100644
index 6c8e55e5..00000000
--- a/attic/templates/metricserver.yaml
+++ /dev/null
@@ -1,39 +0,0 @@
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: metrics-server
- namespace: argocd
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: kube-system
- server: 'https://kubernetes.default.svc'
- source:
- repoURL: 'https://kubernetes-sigs.github.io/metrics-server/'
- targetRevision: {{ .Values.metrics_server.version }}
- chart: metrics-server
- helm:
- values: |
- containerPort: 10250
- resources:
- requests:
- cpu: 100m
- memory: 200Mi
- {{- if .Values.metrics_server.ignoreTLS }}
- args:
- - "--kubelet-insecure-tls"
- {{- end }}
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.metrics_server.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
diff --git a/attic/templates/nfs-provisioner.yaml b/attic/templates/nfs-provisioner.yaml
deleted file mode 100644
index 7866b236..00000000
--- a/attic/templates/nfs-provisioner.yaml
+++ /dev/null
@@ -1,46 +0,0 @@
-{{- if .Values.nfs_provisioner.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: nfs-provisioner
- namespace: argocd
-spec:
- destination:
- namespace: kube-system
- server: 'https://kubernetes.default.svc'
- source:
- #- repoURL: {{ .Values.cluster_config.manifests }}
- # path: {{ .Values.cluster_config.policies }}/nfs-provisioner
- # targetRevision: HEAD
- repoURL: 'https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/'
- targetRevision: {{ .Values.nfs_provisioner.version }}
- chart: nfs-subdir-external-provisioner
- helm:
- values: |
- nfs:
- server: {{ .Values.cluster_config.fileserver }}
- path: /{{ default (.Values.cluster_config.cluster) .Values.nfs_provisioner.path }}
- mountOptions:
- - nfsvers=4.2
- {{- range .Values.nfs_provisioner.extraMountOpts }}
- - {{ . }}
- {{- end }}
- storageClass:
- defaultClass: {{ .Values.nfs_provisioner.defaultClass}}
- name: managed-nfs-storage
- archiveOnDelete: {{ .Values.nfs_provisioner.archiveOnDelete }}
- tolerations:
- - key: unschedulable
- operator: Exists
- effect: NoSchedule
- project: sys
- syncPolicy:
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.nfs_provisioner.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
-{{- end }}
diff --git a/attic/templates/oncall.yaml b/attic/templates/oncall.yaml
deleted file mode 100644
index 8b7f3287..00000000
--- a/attic/templates/oncall.yaml
+++ /dev/null
@@ -1,104 +0,0 @@
-{{ if .Values.oncall.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: oncall
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: prometheus
- server: 'https://kubernetes.default.svc'
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{ if .Values.oncall.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{ end }}
- sources:
-# - repoURL: {{ .Values.cluster_config.manifests }}
-# path: {{ .Values.cluster_config.policies }}/oncall
-# targetRevision: HEAD
- - repoURL: 'https://grafana.github.io/helm-charts'
- targetRevision: '{{ .Values.oncall.version }}'
- chart: oncall
- helm:
- values: |
- base_url: oncall.{{ .Values.cluster_config.domain }}
- base_url_protocol: https
- image:
- repository: grafana/oncall
- pullPolicy: IfNotPresent
- ingress-nginx:
- enabled: false
- cert-manager:
- enabled: false
- installCRDs: false
- ingress:
- enabled: true
- ingressClassName: nginx
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- {{- with .Values.cluster_config.ingress_whitelist_ips }}
- nginx.ingress.kubernetes.io/whitelist-source-range: {{ join "," . }}
- {{- end }}
- path: /
- pathType: Prefix
- hosts:
- - oncall.{{ .Values.cluster_config.domain }}
- tls:
- - secretName: oncall-tls
- hosts:
- - oncall.{{ .Values.cluster_config.domain }}
-
- {{- if .Values.oncall.slack }}
- oncall:
- slack:
- enabled: true
- clientId: {{ .Values.oncall.slack.clientId }}
- clientSecret: {{ .Values.oncall.slack.clientSecret }}
- signingSecret: {{ .Values.oncall.slack.signingSecret }}
- redirectHost: https://oncall.{{ .Values.cluster_config.domain }}
- {{- end }}
-
- {{- if .Values.oncall.smtp }}
- oncall:
- smtp:
- enabled: true
- host: {{ .Values.oncall.smtp.host }}
- port: {{ .Values.oncall.smtp.port }}
- username: {{ .Values.oncall.smtp.username }}
- password: {{ .Values.oncall.smtp.password }}
- tls: {{ .Values.oncall.smtp.tls }}
- fromEmail: {{ .Values.oncall.smtp.fromEmail }}
- {{- end }}
- database:
- type: postgresql
- postgresql:
- enabled: true
- auth:
- database: oncall
- mariadb:
- enabled: false
- redis:
- enabled: true
- broker:
- type: rabbitmq
- rabbitmq:
- enabled: true
- grafana:
- enabled: false
- externalGrafana:
- url: {{ .Values.oncall.externalGrafana.url }}
-{{- end }}
diff --git a/attic/templates/openfga.yaml b/attic/templates/openfga.yaml
deleted file mode 100644
index 7c83f346..00000000
--- a/attic/templates/openfga.yaml
+++ /dev/null
@@ -1,43 +0,0 @@
-{{ if .Values.openfga.enabled }}
-{{- range .Values.atlantis.envs }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: prod-openfga
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: openfga
- server: https://kubernetes.default.svc
- project: aux
- # ignoreDifferences:
- # - group: apps
- # kind: StatefulSet
- # jsonPointers:
- # - /spec/persistentVolumeClaimRetentionPolicy
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: aux
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- automated:
- prune: true
- selfHeal: true
- sources:
- - repoURL: https://openfga.github.io/helm-charts
- targetRevision: 0.2.21
- chart: openfga
- helm:
- valueFiles:
- - $values/values/openfga/values-prod.yaml
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- ref: values
-{{- end }}
-{{- end }}
diff --git a/attic/templates/osm-tile-server.yaml b/attic/templates/osm-tile-server.yaml
deleted file mode 100644
index c5a4753c..00000000
--- a/attic/templates/osm-tile-server.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-{{- if .Values.osm-tile-server.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: ApplicationSet
-metadata:
- name: osm-tile-server
- namespace: argocd
-spec:
- generators:
- - list:
- elements:
- - cluster: https://kubernetes.default.svc
- env: prod
- hostname: osm.srv.oceanbox.io
- - cluster: https://staging-vcluster.staging-vcluster
- env: staging
- hostname: osm.beta.oceanbox.io
- template:
- metadata:
- name: '{{- env }}-osm-tile-server'
- spec:
- project: aux
- destination:
- namespace: oceanbox
- server: '{{- cluster }}'
- source:
- repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: HEAD
- path: values/osm-tile-server
- plugin:
- name: kustomize-helm-with-rewrite
- parameters:
- - name: env
- string: '{{- env }}'
- - name: hostname
- string: '{{- hostname }}'
-{{- end }}
diff --git a/attic/templates/otel-collector.yaml b/attic/templates/otel-collector.yaml
deleted file mode 100644
index a3279bc8..00000000
--- a/attic/templates/otel-collector.yaml
+++ /dev/null
@@ -1,117 +0,0 @@
-{{ if .Values.otel.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: opentelemetry-collector
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: otel
- server: 'https://kubernetes.default.svc'
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.otel.autosync }}
- automated:
- prune: true
- # selfHeal: true
- {{- end }}
- sources:
- - repoURL: '{{ .Values.cluster_config.manifests }}'
- path: {{ .Values.cluster_config.policies }}/otel
- targetRevision: HEAD
- - repoURL: 'https://open-telemetry.github.io/opentelemetry-helm-charts'
- targetRevision: {{ .Values.otel.version }}
- chart: opentelemetry-collector
- helm:
- values: |
- mode: deployment
- image:
- repository: otel/opentelemetry-collector-k8s
- config:
- receivers:
- prometheus/collector:
- config:
- scrape_configs:
- - job_name: 'opentelemetry-collector'
- static_configs:
- - targets:
- - ${env:MY_POD_IP}:8888
- zipkin:
- endpoint: ${env:MY_POD_IP}:9411
- exporters:
- otlp:
- endpoint: "tempo.tempo.svc:4317"
- tls:
- insecure: true
- ##
- otlphttp/metrics:
- endpoint: http://prom-prometheus.prometheus:9090/api/v1/otlp
- tls:
- insecure: true
- otlphttp/logs:
- endpoint: http://loki-write-headless.loki:3100/otlp
- tls:
- insecure: true
- ## Detailed? make toggleable with values
- debug/metrics:
- verbosity: detailed
- debug/traces:
- verbosity: detailed
- debug/logs:
- verbosity: detailed
- service:
- telemetry:
- logs:
- level: "info"
- pipelines:
- traces:
- receivers: [otlp,zipkin]
- processors: [batch]
- exporters: [otlp]
- # exporters: [otlphttp/traces,debug/traces]
- metrics:
- receivers: [otlp,prometheus/collector]
- processors: [batch]
- exporters: [otlphttp/metrics]
- # exporters: [otlphttp/metrics,debug/metrics]
- logs:
- receivers: [otlp]
- processors: [batch]
- exporters: [otlphttp/logs]
- # exporters: [otlphttp/logs,debug/logs]
- ports:
- metrics:
- enabled: true
- # presets:
- # logsCollection:
- # enabled: true
- ingress:
- enabled: true
- ingressClassName: nginx
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- {{- with .Values.cluster_config.ingress_whitelist_ips }}
- nginx.ingress.kubernetes.io/whitelist-source-range: {{ join "," . }}
- {{- end }}
- hosts:
- - host: opentelemetry-collector.{{ .Values.cluster_config.domain }}
- paths:
- - path: /
- pathType: Prefix
- port: 4318
- tls:
- - secretName: collector-tls
- hosts:
- - opentelemetry-collector.{{ .Values.cluster_config.domain }}
-{{ end }}
diff --git a/attic/templates/plausible.yaml b/attic/templates/plausible.yaml
deleted file mode 100644
index 1a10dcba..00000000
--- a/attic/templates/plausible.yaml
+++ /dev/null
@@ -1,75 +0,0 @@
-{{- if .Values.plausible.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: plausible-analytics
- namespace: argocd
-spec:
- destination:
- namespace: plausible
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: 'https://imio.github.io/helm-charts'
- targetRevision: 0.4.0
- chart: plausible-analytics
- helm:
- values: |
- baseURL: https://plausible.adm.oceanbox.io
- databaseURL: postgres://app:password@plausible-db-rw:5432/app
- clickhouse:
- resources:
- requests:
- cpu: 500m
- ephemeral-storage: 50Mi
- memory: 512Mi
- postgresql:
- enabled: false
- ingress:
- enabled: true
- ingressClassName: nginx
- annotations:
- cert-manager.io/cluster-issuer: letsencrypt-production
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,172.19.255.0/24,148.122.135.23
- hosts:
- - plausible.adm.oceanbox.io
- paths:
- - /
- pathType: ImplementationSpecific
- tls:
- - secretName: plausible-tls
- hosts:
- - plausible.adm.oceanbox.io
- project: aux
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: aux
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- automated:
- prune: true
- selfHeal: true
- ignoreDifferences:
- - kind: Secret
- name: plausible-analytics
- jqPathExpressions:
- - '.data'
- - '.metadata.labels'
- - '.metadata.annotations'
----
-apiVersion: postgresql.cnpg.io/v1
-kind: Cluster
-metadata:
- name: plausible-db
- namespace: plausible
-spec:
- imageName: ghcr.io/cloudnative-pg/postgresql:16.3
- primaryUpdateStrategy: unsupervised
- instances: 1
- monitoring:
- enablePodMonitor: true
- storage:
- size: 10Gi
-{{- end }}
diff --git a/attic/templates/policies/cnpg-add-backup-section.yaml b/attic/templates/policies/cnpg-add-backup-section.yaml
deleted file mode 100644
index cf9efe69..00000000
--- a/attic/templates/policies/cnpg-add-backup-section.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-{{- if and (.Values.kyverno.enabled) (.Values.postgres_operator.enabled) (.Values.velero.enabled) }}
-apiVersion : kyverno.io/v1
-kind: ClusterPolicy
-metadata:
- name: cnpg-add-backup-section
- annotations:
- policies.kyverno.io/title: add backup section to cnpg cluster spec
- policies.kyverno.io/category: Other
- policies.kyverno.io/severity: medium
- kyverno.io/kyverno-version: 1.6.0
- policies.kyverno.io/minversion: 1.6.0
- kyverno.io/kubernetes-version: "1.23"
- policies.kyverno.io/subject: Cluster
- policies.kyverno.io/description: >-
- When a CNPG cluster is created, a backup section should be added.
- The user can then create their own backup or backup schedule.
-spec:
- background: false
- rules:
- - name: cnpg-add-backup-section
- match:
- any:
- - resources:
- kinds:
- - Cluster
- exclude:
- any:
- - resources:
- kinds:
- - Cluster
- names:
- - "review-*"
- mutate:
- patchStrategicMerge:
- spec:
- backup:
- barmanObjectStore:
- destinationPath: s3://{{ .Values.velero.bucket }}/{{ .Values.cluster_config.cluster }}/cnpg-backup
- serverName: {{` "{{ request.object.metadata.name }}"`}}
- endpointURL: https://s3.production.itpartner.no
- s3Credentials:
- accessKeyId:
- key: access_key
- name: s3-credentials
- inheritFromIAMRole: false
- secretAccessKey:
- key: access_secret
- name: s3-credentials
- wal:
- compression: snappy
-{{- end }}
-
diff --git a/attic/templates/policies/cnpg-clone-secrets.yaml b/attic/templates/policies/cnpg-clone-secrets.yaml
deleted file mode 100644
index 89176fcd..00000000
--- a/attic/templates/policies/cnpg-clone-secrets.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-{{- if and (.Values.kyverno.enabled) (.Values.postgres_operator.enabled) (.Values.velero.enabled) }}
-apiVersion : kyverno.io/v1
-kind: ClusterPolicy
-metadata:
- name: cnpg-clone-s3-credentials
- annotations:
- policies.kyverno.io/title: add backup section to cnpg cluster spec
- policies.kyverno.io/category: Other
- policies.kyverno.io/severity: medium
- kyverno.io/kyverno-version: 1.6.0
- policies.kyverno.io/minversion: 1.6.0
- kyverno.io/kubernetes-version: "1.23"
- policies.kyverno.io/subject: Cluster
- policies.kyverno.io/description: >-
- When a CNPG cluster is created, s3 credentials and CA secrets
- should be synced from the velero namespace
-spec:
- background: false
- rules:
- - name: clone-s3-credentials
- match:
- any:
- - resources:
- kinds:
- - Cluster
- generate:
- apiVersion: v1
- kind: Secret
- name: s3-credentials
- namespace: {{` "{{request.object.metadata.namespace}}" `}}
- synchronize: true
- clone:
- namespace: velero
- name: s3-credentials
-{{- end }}
-
diff --git a/attic/templates/policies/generate-external-admin-rolebinding.yaml b/attic/templates/policies/generate-external-admin-rolebinding.yaml
deleted file mode 100644
index 347ad848..00000000
--- a/attic/templates/policies/generate-external-admin-rolebinding.yaml
+++ /dev/null
@@ -1,55 +0,0 @@
-{{- if and (.Values.cluster_config.external_kubectl_access.enabled) (.Values.kyverno.enabled) }}
-apiVersion: kyverno.io/v1
-kind: ClusterPolicy
-metadata:
- name: generate-external-admin-rolebinding
- annotations:
- policies.kyverno.io/title: Generate cluster-Admin rolebinding customer namespaces
- policies.kyverno.io/category: other
- policies.kyverno.io/severity: medium
- policies.kyverno.io/subject: Namespace, RoleBinding
- kyverno.io/kyverno-version: 1.7.0
- policies.kyverno.io/minversion: 1.7.0
- kyverno.io/kubernetes-version: "1.23"
- policies.kyverno.io/description: >-
- Customers should not have full admin permissions on their own namespaces.
- This policy will generate a RoleBinding, binding their group_id to
- the Cluster-Admin clusterrole. This will still only apply to the namespace as
- the resource is a rolebinding, not clusterrolebinding.
- This policy should not trigger on any namespaces with label component=sys
-spec:
- generateExistingOnPolicyUpdate: true
- rules:
- - name: generate-rolebinding
- match:
- any:
- - resources:
- kinds:
- - Namespace
- exclude:
- any:
- - resources:
- kinds:
- - Namespace
- selector:
- matchLabels:
- component: sys
- generate:
- apiVersion: rbac.authorization.k8s.io/v1
- kind: RoleBinding
- name: external-ns-admin
- namespace: {{` "{{request.object.metadata.name}}" `}}
- synchronize: true
- data:
- metadata:
- labels:
- created-by: kyverno
- roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: cluster-admin
- subjects:
- - apiGroup: rbac.authorization.k8s.io
- kind: Group
- name: {{ .Values.cluster_config.external_kubectl_access.admin_group }}
-{{- end }}
diff --git a/attic/templates/policies/prometheus-add-folder-to-default-dashboards.yaml b/attic/templates/policies/prometheus-add-folder-to-default-dashboards.yaml
deleted file mode 100644
index c2be4190..00000000
--- a/attic/templates/policies/prometheus-add-folder-to-default-dashboards.yaml
+++ /dev/null
@@ -1,32 +0,0 @@
-{{- if and (.Values.kyverno.enabled) (.Values.prometheus.enabled) }}
-apiVersion: kyverno.io/v1
-kind: Policy
-metadata:
- name: prometheus-stack-default-dashboard-folder
- namespace: prometheus
-spec:
- admission: true
- background: true
- mutateExistingOnPolicyUpdate: true
- rules:
- - match:
- any:
- - resources:
- kinds:
- - ConfigMap
- selector:
- matchLabels:
- app.kubernetes.io/part-of: kube-prometheus-stack
- mutate:
- patchStrategicMerge:
- metadata:
- annotations:
- grafana_folder: Prometheus-stack
- targets:
- - apiVersion: v1
- kind: ConfigMap
- name: "{{`{{ request.object.metadata.name }}`}}"
- name: generate-dashboard-folder-annotation
- skipBackgroundRequests: true
- validationFailureAction: Audit
-{{- end }}
diff --git a/attic/templates/policies/sync-gitlab.yaml b/attic/templates/policies/sync-gitlab.yaml
deleted file mode 100644
index 35f7304f..00000000
--- a/attic/templates/policies/sync-gitlab.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-apiVersion: kyverno.io/v1
-kind: ClusterPolicy
-metadata:
- name: sync-gitlab-secret
- annotations:
- policies.kyverno.io/title: Sync Secrets
- policies.kyverno.io/category: Sample
- policies.kyverno.io/subject: Secret
- policies.kyverno.io/description: >-
- Secrets like registry credentials often need to exist in multiple
- Namespaces so Pods there have access. Manually duplicating those Secrets
- is time consuming and error prone. This policy will copy a
- Secret called `regcred` which exists in the `default` Namespace to
- new Namespaces when they are created. It will also push updates to
- the copied Secrets should the source Secret be changed.
-spec:
- rules:
- - name: sync-image-pull-secret
- match:
- resources:
- kinds:
- - Namespace
- generate:
- apiVersion: v1
- kind: Secret
- name: regcred
- namespace: "{{`{{request.object.metadata.name}}`}}"
- synchronize: true
- clone:
- namespace: default
- name: gitlab-pull-secret
diff --git a/attic/templates/policies/sync-regcred.yaml b/attic/templates/policies/sync-regcred.yaml
deleted file mode 100644
index 759f0365..00000000
--- a/attic/templates/policies/sync-regcred.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-{{- if .Values.kyverno.enabled }}
-apiVersion: kyverno.io/v1
-kind: ClusterPolicy
-metadata:
- name: sync-regcred-secret
- annotations:
- policies.kyverno.io/title: Sync Secrets
- policies.kyverno.io/category: Sample
- policies.kyverno.io/subject: Secret
- policies.kyverno.io/description: >-
- Secrets like registry credentials often need to exist in multiple
- Namespaces so Pods there have access. Manually duplicating those Secrets
- is time consuming and error prone. This policy will copy a
- Secret called `regcred` which exists in the `default` Namespace to
- new Namespaces when they are created. It will also push updates to
- the copied Secrets should the source Secret be changed.
-spec:
- rules:
- - name: sync-image-pull-secret
- match:
- resources:
- kinds:
- - Namespace
- generate:
- apiVersion: v1
- kind: Secret
- name: regcred
- namespace: "{{`{{request.object.metadata.name}}`}}"
- synchronize: true
- clone:
- namespace: default
- name: regcred
-{{- end }}
diff --git a/attic/templates/policies/sync-s3-secret.yaml b/attic/templates/policies/sync-s3-secret.yaml
deleted file mode 100644
index b1f1ea03..00000000
--- a/attic/templates/policies/sync-s3-secret.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-{{- if .Values.kyverno.enabled }}
-apiVersion: kyverno.io/v1
-kind: ClusterPolicy
-metadata:
- annotations:
- policies.kyverno.io/description: 'This policy will sync the s3 secret in kube-system namespace across namespaces'
- policies.kyverno.io/subject: Secret
- policies.kyverno.io/title: Sync s3 Secrets
- name: sync-s3-credentials
-spec:
- generateExistingOnPolicyUpdate: true
- background: true
- rules:
- - generate:
- apiVersion: v1
- clone:
- name: s3-credentials
- namespace: kube-system
- kind: Secret
- name: s3-credentials
- namespace: '{{`{{request.object.metadata.name}}`}}'
- synchronize: true
- match:
- resources:
- kinds:
- - Namespace
- names:
- - "velero"
- - "loki"
- - "tempo"
- name: sync-s3-secret
- validationFailureAction: audit
-{{- end }}
diff --git a/attic/templates/policies/whitelist-internal-ingresses.yaml b/attic/templates/policies/whitelist-internal-ingresses.yaml
deleted file mode 100644
index f9a687f9..00000000
--- a/attic/templates/policies/whitelist-internal-ingresses.yaml
+++ /dev/null
@@ -1,73 +0,0 @@
-{{- if .Values.kyverno.enabled }}
-apiVersion: kyverno.io/v1
-kind: ClusterPolicy
-metadata:
- name: whitelist-internal-ingresses
- annotations:
- policies.kyverno.io/title: Concatenate Ingresss
- policies.kyverno.io/category: Other
- policies.kyverno.io/severity: medium
- policies.kyverno.io/subject: Ingress
- policies.kyverno.io/description: >-
- Ingresses with the label "internal=true" should be whitelisted.
- If no whitelist exists, add the default values, otherwise append
- whitelist to the already existing ones
-spec:
- mutateExistingOnPolicyUpdate: false
- #precondition: has whitelist annotation or
- rules:
- - name: ensure-nginx-whitelist-exists
- match:
- resources:
- kinds:
- - Ingress
- selector:
- matchLabels:
- internal: "true"
- mutate:
- patchStrategicMerge:
- metadata:
- annotations:
- +(nginx.ingress.kubernetes.io/whitelist-source-range): ""
- - name: append-existing-whitelist
- match:
- resources:
- kinds:
- - Ingress
- selector:
- matchLabels:
- internal: "true"
- preconditions:
- any:
- - key: "{{`{{request.object.metadata.annotations.\"nginx.ingress.kubernetes.io/whitelist-source-range\"}}`}}"
- operator: NotEquals
- value: ""
- mutate:
- patchStrategicMerge:
- metadata:
- annotations:
- {{- with .Values.cluster_config.ingress_whitelist_ips }}
- nginx.ingress.kubernetes.io/whitelist-source-range: "{{`{{ @ }}`}},{{ join "," . }}"
- {{- end }}
- - name: add-nginx-whitelist
- match:
- resources:
- kinds:
- - Ingress
- selector:
- matchLabels:
- internal: "true"
- preconditions:
- any:
- - key: "{{`{{request.object.metadata.annotations.\"nginx.ingress.kubernetes.io/whitelist-source-range\"}}`}}"
- operator: Equals
- value: ""
- mutate:
- patchStrategicMerge:
- metadata:
- annotations:
- {{- with .Values.cluster_config.ingress_whitelist_ips }}
- nginx.ingress.kubernetes.io/whitelist-source-range: "{{ join "," . }}"
- {{- end }}
-{{- end }}
-
diff --git a/attic/templates/postgres-operator.yaml b/attic/templates/postgres-operator.yaml
deleted file mode 100644
index 9abdd60d..00000000
--- a/attic/templates/postgres-operator.yaml
+++ /dev/null
@@ -1,39 +0,0 @@
-{{ if .Values.postgres_operator.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: postgres-operator
- namespace: argocd
-spec:
- destination:
- namespace: cnpg
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: {{ .Values.cluster_config.manifests }}
- path: {{ .Values.cluster_config.policies }}/cnpg
- targetRevision: HEAD
- - repoURL: 'https://cloudnative-pg.github.io/charts'
- targetRevision: {{ .Values.postgres_operator.version }}
- chart: cloudnative-pg
- helm:
- values: |
- additionalArgs: []
- config:
- data:
- INHERITED_ANNOTATIONS: "linkerd.io/*"
- INHERITED_LABELS: "velero.io/*"
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- - ServerSideApply=true
- {{- if .Values.postgres_operator.version }}
- automated:
- # selfHeal: false
- prune: true
- {{- end }}
-{{ end }}
diff --git a/attic/templates/prometheus-thanos.yaml b/attic/templates/prometheus-thanos.yaml
deleted file mode 100644
index b1b4f3f6..00000000
--- a/attic/templates/prometheus-thanos.yaml
+++ /dev/null
@@ -1,342 +0,0 @@
-{{ if .Values.thanos.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: thanos
- namespace: argocd
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: thanos
- server: 'https://kubernetes.default.svc'
- source:
- repoURL: 'https://charts.bitnami.com/bitnami'
- targetRevision: {{ .Values.thanos.version }}
- chart: thanos
- helm:
- values: |
- ## Handled by sealed secret now, and uses minio root user
- #objstoreConfig: |-
- # type: s3
- # config:
- # bucket: thanos
- # endpoint: thanos-minio.thanos.svc.cluster.local:9000
- # access_key: "thanos"
- # secret_key: "en to tre fire"
- # insecure: true
-
- ## @param indexCacheConfig The [index cache configuration](https://thanos.io/components/store.md/)
- ## Specify content for index-cache.yml
- indexCacheConfig: ""
- ## @param bucketCacheConfig The [bucket cache configuration](https://thanos.io/components/store.md/)
- ## Specify content for bucket-cache.yml
- ##
- bucketCacheConfig: ""
- ## @param existingObjstoreSecret Secret with Objstore Configuration
- ## Note: This will override objstoreConfig
- ##
- existingObjstoreSecret: "thanos-objstore-secret"
- existingObjstoreSecretItems: []
- existingServiceAccount: ""
-
- query:
- enabled: true
- stores:
- - {{ .Values.prometheus.fullname | default "prometheus-kube-prometheus" }}-prometheus.prometheus.svc:10901
- - thanos-envoy:10000
- - thanos-envoy:10002
- - thanos-envoy:11000
- ingress:
- enabled: true
- certManager: false
- hostname: thanos.{{ .Values.cluster_config.domain }}
- ingressClassName: "nginx"
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/backend-protocol: HTTP
- nginx.ingress.kubernetes.io/proxy-body-size: 1024m
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,172.19.255.0/24
- ## extraHosts:
- ## - name: thanos.local
- ## path: /
- ## pathType: ImplementationSpecific
- ##
- extraHosts: []
- extraTls:
- - hosts:
- - thanos.{{ .Values.cluster_config.domain }}
- secretName: thanos-tls
-
- ## @section Thanos Query Frontend parameters
-
- queryFrontend:
- enabled: true
- ingress:
- enabled: true
- certManager: false
- hostname: thanos-query.{{ .Values.cluster_config.domain }}
- ingressClassName: "nginx"
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/backend-protocol: HTTP
- nginx.ingress.kubernetes.io/proxy-body-size: 1024m
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,172.19.255.0/24
- ## extraHosts:
- ## - name: thanos.local
- ## path: /
- ## pathType: ImplementationSpecific
- ##
- extraHosts: []
- extraTls:
- - hosts:
- - thanos-query.{{ .Values.cluster_config.domain }}
- secretName: thanos-query-tls
-
- ## @section Thanos Bucket Web parameters
-
- bucketweb:
- enabled: true
- ingress:
- enabled: true
- certManager: false
- hostname: thanos-bucketweb.{{ .Values.cluster_config.domain }}
- ingressClassName: "nginx"
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/backend-protocol: HTTP
- nginx.ingress.kubernetes.io/proxy-body-size: 1024m
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,172.19.255.0/24
- ## extraHosts:
- ## - name: thanos-bucketweb.local
- ## path: /
- ## pathType: ImplementationSpecific
- ##
- extraHosts: []
- extraTls:
- - hosts:
- - thanos-bucketweb.{{ .Values.cluster_config.domain }}
- secretName: thanos-bucketweb-tls
-
- ## @section Thanos Compactor parameters
-
- compactor:
- enabled: true
- ingress:
- enabled: true
- certManager: false
- hostname: thanos-compactor.{{ .Values.cluster_config.domain }}
- ingressClassName: "nginx"
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/backend-protocol: HTTP
- nginx.ingress.kubernetes.io/proxy-body-size: 1024m
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,172.19.255.0/24
- ## extraHosts:
- ## - name: thanos.local
- ## path: /
- ## pathType: ImplementationSpecific
- ##
- extraHosts: []
- extraTls:
- - hosts:
- - thanos-compactor.{{ .Values.cluster_config.domain }}
- secretName: thanos-compactor-tls
- persistence:
- enabled: true
- storageClass: "local-storage"
- accessModes:
- - ReadWriteOnce
- size: 8Gi
-
- ## @section Thanos Store Gateway parameters
-
- storegateway:
- enabled: true
-
- ingress:
- enabled: true
- certManager: false
- hostname: thanos-storage.{{ .Values.cluster_config.domain }}
- ingressClassName: "nginx"
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/backend-protocol: HTTP
- nginx.ingress.kubernetes.io/proxy-body-size: 1024m
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,172.19.255.0/24
- ## extraHosts:
- ## - name: thanos.local
- ## path: /
- ## pathType: ImplementationSpecific
- ##
- extraHosts: []
- extraTls:
- - hosts:
- - thanos-storage.{{ .Values.cluster_config.domain }}
- secretName: thanos-storage-tls
- persistence:
- enabled: true
- storageClass: "local-storage"
- accessModes:
- - ReadWriteOnce
- size: 8Gi
-
- ## @section Thanos Ruler parameters
-
- ruler:
- enabled: true
- alertmanagers:
- - https://alertmanager.k1.itpartner.no
- - https://alertmanager.k2.itpartner.no
- - https://alertmanager.k0.itpartner.no
- config: |-
- groups:
- - name: "metamonitoring"
- rules:
- - alert: "PrometheusDown"
- expr: absent(up{container="prometheus",job="prometheus-kube-prometheus-prometheus",namespace="prometheus"})
- global:
- resolve_timeout: 5m
- route:
- receiver: pagerduty
- group_by:
- - alertname
- routes:
- - receiver: snitch
- match:
- alertname: Watchdog
- group_wait: 0s
- group_interval: 1m
- repeat_interval: 50s
- group_wait: 60s
- group_interval: 15m
- repeat_interval: 24h
- receivers:
- - name: pagerduty
- pagerduty_configs:
- - routing_key: e67f3a24f11c450ad060128f20ffa5d1
- url: https://events.pagerduty.com/v2/enqueue
-
- ingress:
- enabled: true
- certManager: false
- hostname: thanos-ruler.{{ .Values.cluster_config.domain }}
- ingressClassName: "nginx"
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/backend-protocol: HTTP
- nginx.ingress.kubernetes.io/proxy-body-size: 1024m
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,172.19.255.0/24
- ## extraHosts:
- ## - name: thanos.local
- ## path: /
- ## pathType: ImplementationSpecific
- ##
- extraHosts: []
- extraTls:
- - hosts:
- - thanos-ruler.{{ .Values.cluster_config.domain }}
- secretName: thanos-ruler-tls
- persistence:
- enabled: true
- storageClass: "local-storage"
- accessModes:
- - ReadWriteOnce
- size: 8Gi
-
- ## @section Thanos Receive parameters
-
- receive:
- enabled: false
- mode: standalone
- replicationFactor: 1
- replicaLabel: replica
- tsdbRetention: 15d
- config:
- - endpoints:
- - "127.0.0.1:10901"
- ingress:
- enabled: true
- certManager: false
- hostname: thanos-receive.{{ .Values.cluster_config.domain }}
- ingressClassName: "nginx"
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/backend-protocol: HTTP
- nginx.ingress.kubernetes.io/proxy-body-size: 1024m
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,172.19.255.0/24
- ## extraHosts:
- ## - name: thanos.local
- ## path: /
- ## pathType: ImplementationSpecific
- ##
- extraHosts: []
- extraTls:
- - hosts:
- - thanos-receive.{{ .Values.cluster_config.domain }}
- secretName: thanos-receive-tls
- persistence:
- enabled: true
- storageClass: "local-storage"
- accessModes:
- - ReadWriteOnce
- size: 8Gi
-
- ## @section Metrics parameters
-
- metrics:
- enabled: true
- serviceMonitor:
- enabled: true
-
- ## @section MinIO® chart parameters
-
- minio:
- enabled: true
- accessKey:
- password: "thanos"
- secretKey:
- password: "en to tre fire"
- defaultBuckets: thanos
- ingress:
- enabled: true
- certManager: false
- hostname: thanos-minio.{{ .Values.cluster_config.domain }}
- ingressClassName: "nginx"
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/backend-protocol: HTTP
- nginx.ingress.kubernetes.io/proxy-body-size: 1024m
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,172.19.255.0/24
- ## extraHosts:
- ## - name: thanos.local
- ## path: /
- ## pathType: ImplementationSpecific
- ##
- extraHosts: []
- extraTls:
- - hosts:
- - thanos-minio.{{ .Values.cluster_config.domain }}
- secretName: thanos-minio-tls
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.prometheus.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
-{{ end }}
diff --git a/attic/templates/prometheus.yaml b/attic/templates/prometheus.yaml
deleted file mode 100644
index 3b4ad8d7..00000000
--- a/attic/templates/prometheus.yaml
+++ /dev/null
@@ -1,625 +0,0 @@
-{{- if .Values.prometheus.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: prometheus
- namespace: argocd
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: prometheus
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: {{ .Values.cluster_config.manifests }}
- path: {{ .Values.cluster_config.policies }}/prometheus
- targetRevision: HEAD
- - repoURL: 'https://prometheus-community.github.io/helm-charts'
- targetRevision: '{{ .Values.prometheus.version }}'
- chart: kube-prometheus-stack
- helm:
- skipCrds: true
- values: |
- crds:
- enabled: false
-
- fullnameOverride: {{ .Values.prometheus.fullname | default "prometheus-kube-prometheus" }}
-
- {{- with .Values.prometheus.defaultRules }}
- defaultRules:
- {{- . | toYaml | nindent 10 }}
- {{- end}}
-
- ## Configuration for alertmanager
- ## ref: https://prometheus.io/docs/alerting/alertmanager/
- ##
- alertmanager:
- config:
- route:
- {{- if .Values.prometheus.alert_group_by }}
- group_by:
- {{- range .Values.prometheus.alert_group_by }}
- - {{ . | quote }}
- {{- end }}
- {{- else }}
- group_by: ["alertname"]
- {{- end }}
- group_wait: 60s
- group_interval: 15m
- repeat_interval: 24h
- receiver: {{ .Values.prometheus.alert_receiver | default "pagerduty" }}
- routes:
- - match:
- alertname: Watchdog
- group_wait: 0s
- group_interval: 1m
- repeat_interval: 50s
- receiver: snitch
- {{- if .Values.prometheus.oncallUrl}}
- - match:
- alertname: .*
- receiver: oncall
- continue: true
- {{- end }}
- receivers:
- - name: pagerduty
- pagerduty_configs:
- - routing_key: {{ default "key" .Values.prometheus.pagerdutyRoutingKey }}
- url: "https://events.pagerduty.com/v2/enqueue"
- severity: {{`'{{ if .CommonLabels.severity }}{{ .CommonLabels.severity | toLower }}{{ else }}critical{{ end }}'`}}
- {{- if .Values.prometheus.snitchUrl}}
- - name: snitch
- webhook_configs:
- - url: "{{ .Values.prometheus.snitchUrl }}"
- send_resolved: false
- {{- end }}
- - name: teams
- webhook_configs:
- - url: "https://prometheus-msteams.{{ .Values.cluster_config.domain }}/{{ .Values.cluster_config.cluster }}"
- http_config:
- tls_config:
- insecure_skip_verify: true
- {{- if .Values.prometheus.oncallUrl}}
- - name: oncall
- webhook_configs:
- - url: "{{ .Values.prometheus.oncallUrl }}"
- send_resolved: true
- {{- end }}
-
- storage: {}
-
- ingress:
- enabled: true
- ingressClassName: nginx
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- {{- with .Values.cluster_config.ingress_whitelist_ips }}
- nginx.ingress.kubernetes.io/whitelist-source-range: {{ join "," . }}
- {{- end }}
- hosts:
- - alertmanager.{{ .Values.cluster_config.domain }}
- paths:
- - /
- pathType: ImplementationSpecific
- tls:
- - secretName: alertmanager-general-tls
- hosts:
- - alertmanager.{{ .Values.cluster_config.domain }}
-
- ingressPerReplica:
- pathType: ImplementationSpecific
-
- alertmanagerSpec:
- affinity: {}
- # nodeAffinity:
- # requiredDuringSchedulingIgnoredDuringExecution:
- # nodeSelectorTerms:
- # - matchExpressions:
- # - key: kubernetes.io/hostname
- # operator: In
- # values:
- # - {{ .Values.cluster_config.cluster }}-0.itpartner.intern
-
- tolerations: []
- # - key: unschedulable
- # operator: Exists
- # effect: NoSchedule
-
- grafana:
- defaultDashboardsEnabled: {{ .Values.prometheus.grafana.defaultDashboardsEnabled }}
- {{- if .Values.prometheus.grafana.plugins }}
- plugins:
- {{- range .Values.prometheus.grafana.plugins }}
- - {{ . }}
- {{- end }}
- {{- end }}
- grafana.ini:
- server:
- root_url: "https://grafana.{{.Values.cluster_config.domain}}:443"
- security:
- allow_embedding: "true"
- auth:
- disable_login_form: "{{ .Values.prometheus.grafana.disable_login_form }}"
- users:
- auto_assign_org_role: "Admin"
- {{- range .Values.cluster_config.oidc }}
- {{- if eq .provider "azuread" }}
- auth.{{ .provider }}:
- enabled: true
- name: {{ .name }}
- client_id: $__file{/etc/secrets/oauth/{{ .name }}/client_id}
- client_secret: $__file{/etc/secrets/oauth/{{ .name }}/client_secret}
- scopes: openid email profile
- auth_url: https://login.microsoftonline.com/{{ .tenant }}/oauth2/v2.0/authorize
- token_url: https://login.microsoftonline.com/{{ .tenant }}/oauth2/v2.0/token
- allowed_groups: {{ .group_id }}
- allow_sign_up: true
- role_attribute_strict: false
- allow_assign_grafana_admin: true
- {{- else if eq .provider "github" }}
- auth.{{ .provider }}:
- name: {{ .name }}
- enabled: true
- client_id: $__file{/etc/secrets/oauth/{{ .name }}/client_id}
- client_secret: $__file{/etc/secrets/oauth/{{ .name }}/client_secret}
- allowed_organizations: {{ .allowed_organizations }}
- {{- if .allowed_teams }}
- allowed_teams: "{{ .allowed_teams }}"
- {{- end }}
- scopes: user:email,read:org
- auth_url: https://github.com/login/oauth/authorize
- token_url: https://github.com/login/oauth/access_token
- allow_sign_up: true
- role_attribute_strict: false
- allow_assign_grafana_admin: true
- {{- end }}
- {{- end }}
- extraSecretMounts:
- {{- range .Values.cluster_config.oidc }}
- - name: {{ .name }}
- secretName: {{ .secret_ref.name }}
- defaultMode: 0440
- mountPath: /etc/secrets/oauth/{{ .name }}
- readOnly: true
- {{- end }}
-
- {{- if .Values.prometheus.grafana.persistence }}
- persistence:
- enabled: true
- size: 10Gi
- {{- end }}
- ingress:
- enabled: true
- ingressClassName: nginx
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- {{- with .Values.cluster_config.ingress_whitelist_ips}}
- nginx.ingress.kubernetes.io/whitelist-source-range: {{ join "," . }}
- {{- end }}
- hosts:
- - grafana.{{ .Values.cluster_config.domain }}
- path: /
- tls:
- - secretName: grafana-general-tls
- hosts:
- - grafana.{{ .Values.cluster_config.domain }}
- sidecar:
- dashboards:
- enabled: true
- label: grafana_dashboard
- folderAnnotation: grafana_folder
- annotations: {}
- multicluster:
- global:
- enabled: true
- etcd:
- enabled: false
- provider:
- allowUiUpdates: false
- foldersFromFilesStructure: true
- {{- if .Values.prometheus.thanos.datasource.enabled }}
- datasources:
- enabled: true
- defaultDatasourceEnabled: true
- url: http://thanos-query-frontend.thanos.svc:9090/
- # defaultDatasourceScrapeInterval: 15s
- annotations: {}
-
- ## Create datasource for each Pod of Prometheus StatefulSet;
- ## this uses headless service `prometheus-operated` which is
- ## created by Prometheus Operator
- ## ref: https://git.io/fjaBS
- createPrometheusReplicasDatasources: false
- label: grafana_datasource
- {{ end }}
- {{- if or .Values.loki.enabled .Values.prometheus.additionalDataSources }}
- additionalDataSources:
- {{- end }}
- {{- if .Values.tempo.enabled }}
- - name: Tempo
- type: tempo
- uid: tempo
- orgId: 1
- url: http://tempo.tempo:3100
- isDefault: false
- version: 1
- access: proxy
- jsonData:
- nodeGraph:
- enabled: true
- serviceMap:
- datasourceUid: 'Prometheus'
- tracesToLogs:
- datasourceUid: loki
- filterByTraceID: false
- spanEndTimeShift: "500ms"
- spanStartTimeShift: "-500ms"
- timeInterval: 30s
- {{- end }}
- {{- if .Values.loki.enabled }}
- - name: loki
- type: loki
- uid: loki
- access: proxy
- basicAuth: false
- editable: false
- jsonData:
- tlsSkipVerify: false
- {{- if .Values.tempo.enabled }}
- derivedFields:
- - datasourceUid: tempo
- matcherRegex: trace_id
- matcherType: label
- name: Trace ID
- url: $${__value.raw}
- urlDisplayLabel: 'Trace ID: $${__value.raw}'
- {{- end }}
- orgId: 1
- url: http://loki-read-headless.loki:3100
- version: 1
- {{- end }}
- {{- with .Values.prometheus.additionalDataSources }}
- {{- toYaml . | nindent 10 }}
- {{- end }}
-
- kubeApiServer:
- tlsConfig:
- serverName: kubernetes
- insecureSkipVerify: true
-
- kubelet:
- serviceMonitor:
- https: {{ .Values.prometheus.kubelet.https }}
- cAdvisor: true
-
- # NOTE(simkir): Including throttling seconds by setting this. We use that in some dashboards, and could be useful
- ## MetricRelabelConfigs to apply to samples after scraping, but before ingestion.
- ## ref: https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api-reference/api.md#relabelconfig
- ##
- cAdvisorMetricRelabelings:
- # Drop less useful container CPU metrics.
- - sourceLabels: [__name__]
- action: drop
- regex: 'container_cpu_(load_average_10s|system_seconds_total|user_seconds_total)'
- # Drop less useful container / always zero filesystem metrics.
- - sourceLabels: [__name__]
- action: drop
- regex: 'container_fs_(io_current|io_time_seconds_total|io_time_weighted_seconds_total|reads_merged_total|sector_reads_total|sector_writes_total|writes_merged_total)'
- # Drop less useful / always zero container memory metrics.
- - sourceLabels: [__name__]
- action: drop
- regex: 'container_memory_(mapped_file|swap)'
- # Drop less useful container process metrics.
- - sourceLabels: [__name__]
- action: drop
- regex: 'container_(file_descriptors|tasks_state|threads_max)'
- # Drop container_memory_failures_total{scope="hierarchy"} metrics,
- # we only need the container scope.
- - sourceLabels: [__name__, scope]
- action: drop
- regex: 'container_memory_failures_total;hierarchy'
- # Drop container_network_... metrics that match various interfaces that
- # correspond to CNI and similar interfaces. This avoids capturing network
- # metrics for host network containers.
- - sourceLabels: [__name__, interface]
- action: drop
- regex: 'container_network_.*;(cali|cilium|cni|lxc|nodelocaldns|tunl).*'
- # Drop container spec metrics that overlap with kube-state-metrics.
- - sourceLabels: [__name__]
- action: drop
- regex: 'container_spec.*'
- # Drop cgroup metrics with no pod.
- - sourceLabels: [id, pod]
- action: drop
- regex: '.+;'
- # - sourceLabels: [__name__, image]
- # separator: ;
- # regex: container_([a-z_]+);
- # replacement: $1
- # action: drop
- # - sourceLabels: [__name__]
- # separator: ;
- # regex: container_(network_tcp_usage_total|network_udp_usage_total|tasks_state|cpu_load_average_10s)
- # replacement: $1
- # action: drop
-
- kubeControllerManager:
- enabled: false
- {{- if .Values.cluster_config.apiserverip }}
- endpoints:
- - {{ .Values.cluster_config.apiserverip }}
- {{- end }}
- service:
- port: 10252
- selector:
- k8s-app: kube-controller-manager
- serviceMonitor:
- enabled: true
- https: true
- insecureSkipVerify: true
-
- coreDns:
- enabled: true
- service:
- targetPort: {{ .Values.prometheus.coredns.targetPort | default 10055 }}
- selector:
- k8s-app: kube-dns
-
- kubeEtcd:
- enabled: true
- {{- if .Values.cluster_config.etcd_nodes }}
- endpoints: {{ .Values.cluster_config.etcd_nodes }}
- {{- end }}
- service:
- port: {{ .Values.prometheus.etcd.targetPort | default 2379 }}
- targetPort: {{ .Values.prometheus.etcd.targetPort | default 2379 }}
- serviceMonitor:
- enabled: true
- scheme: https
- insecureSkipVerify: true
- caFile: /etc/prometheus/secrets/etcd-client-cert/ca.pem
- certFile: /etc/prometheus/secrets/etcd-client-cert/etcd.pem
- keyFile: /etc/prometheus/secrets/etcd-client-cert/etcd-key.pem
-
- kubeScheduler:
- enabled: false
- {{- if .Values.cluster_config.apiserverip }}
- endpoints:
- - {{ .Values.cluster_config.apiserverip }}
- {{- end }}
- service:
- port: {{ .Values.prometheus.scheduler.targetPort | default 10251 }}
- targetPort: {{ .Values.prometheus.scheduler.targetPort | default 10251 }}
- selector:
- k8s-app: kube-scheduler
-
- kubeProxy:
- enabled: false
- {{- if .Values.cluster_config.k8s_nodes }}
- endpoints: {{ .Values.cluster_config.k8s_nodes }}
- {{- else }}
- service:
- selector:
- k8s-app: kube-proxy
- {{- end }}
-
- prometheusOperator:
- enabled: true
-
- admissionWebhooks:
- certManager:
- enabled: true
- issuerRef:
- name: "ca-issuer"
- kind: "ClusterIssuer"
-
- kubeletService:
- enabled: {{ .Values.prometheus.kubelet.enabled }}
-
- prometheus:
- enabled: true
- {{- if .Values.otel.enabled }}
- enableRemoteWriteReceiver: true
- {{- end }}
-
- thanosService:
- enabled: false
- type: ClusterIP
-
- ## gRPC port config
- portName: grpc
- port: 10901
- targetPort: "grpc"
-
- ## HTTP port config (for metrics)
- httpPortName: http
- httpPort: 10902
- targetHttpPort: "http"
-
- # Default is to make this a headless service ("None")
- # clusterIP: "None"
-
- ## Port to expose on each node, if service type is NodePort
- ##
- nodePort: 30901
- httpNodePort: 30902
-
- {{- if .Values.prometheus.thanos.enabled }}
- # ServiceMonitor to scrape Sidecar metrics
- # Needs thanosService to be enabled as well
- thanosServiceMonitor:
- enabled: true
- interval: ""
-
- thanosIngress:
- enabled: true
- servicePort: 10901
- ingressClassName: nginx
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- nginx.ingress.kubernetes.io/backend-protocol: "GRPC"
- {{- with .Values.cluster_config.ingress_whitelist_ips }}
- nginx.ingress.kubernetes.io/whitelist-source-range: {{ join "," . }}
- {{- end }}
- kubernetes.io/ingress.allow-http: "false"
- hosts:
- - thanos-gateway.{{ .Values.cluster_config.domain }}
- paths:
- - /
- pathType: ImplementationSpecific
- tls:
- - secretName: thanos-gateway-tls
- hosts:
- - thanos-gateway.{{ .Values.cluster_config.domain }}
- {{- end }}
-
- ingress:
- enabled: true
- ingressClassName: nginx
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- {{- with .Values.cluster_config.ingress_whitelist_ips }}
- nginx.ingress.kubernetes.io/whitelist-source-range: {{ join "," . }}
- {{- end }}
- hosts:
- - prometheus.{{ .Values.cluster_config.domain }}
- paths:
- - /
- pathType: ImplementationSpecific
- tls:
- - secretName: prometheus-general-tls
- hosts:
- - prometheus.{{ .Values.cluster_config.domain }}
-
- ingressPerReplica:
- enabled: false
- pathType: ImplementationSpecific
-
- prometheusSpec:
- tolerations: []
- # - key: unschedulable
- # operator: Exists
- # effect: NoSchedule
- secrets:
- - etcd-client-cert
- storageSpec:
- volumeClaimTemplate:
- spec:
- accessModes: ["ReadWriteOnce"]
- resources:
- requests:
- storage: {{ .Values.prometheus.storage.size }}
- {{- with .Values.prometheus.enableFeatures}}
- enableFeatures:
- {{- range . }}
- - {{ . }}
- {{- end }}
- {{- end }}
-
- ## External labels to add to any time series or alerts when communicating with external systems
- ##
- externalLabels:
- cluster: {{ .Values.cluster_config.cluster }}
-
- ## Name of the external label used to denote replica name
- ##
- replicaExternalLabelName: ""
-
- ## If true, the Operator won't add the external label used to denote replica name
- ##
- replicaExternalLabelNameClear: true
-
- ## Name of the external label used to denote Prometheus instance name
- ##
- prometheusExternalLabelName: ""
-
- ## If true, the Operator won't add the external label used to denote Prometheus instance name
- ##
- prometheusExternalLabelNameClear: true
-
- serviceMonitorSelectorNilUsesHelmValues: false
- podMonitorSelectorNilUsesHelmValues: false
- ruleSelectorNilUsesHelmValues: false
-
- ## Thanos configuration allows configuring various aspects of a Prometheus server in a Thanos environment.
- ## This section is experimental, it may change significantly without deprecation notice in any release.
- ## This is experimental and may change significantly without backward compatibility in any release.
- ## ref: https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/api.md#thanosspec
- ##
- {{- if .Values.prometheus.thanos.enabled }}
- thanos:
- objectStorageConfig:
- key: thanos.yaml
- name: thanos-objstore-config
- {{- end }}
- # remoteWrite:
- # - url: https://thanos-receive.k1.itpartner.no/api/v1/receive
- # name: {{ .Values.cluster_config.cluster }}
- {{- with .Values.prometheus.additionalScrapeConfigs}}
- additionalScrapeConfigs:
- {{- toYaml . | nindent 12 }}
- {{- end }}
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - ServerSideApply=true
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.prometheus.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
- ignoreDifferences:
- - group: apps
- kind: Deployment
- jqPathExpressions:
- - '.spec.template.spec.containers[]?.resources'
- - group: monitoring.coreos.com
- kind: ServiceMonitor
- jqPathExpressions:
- - '.spec.endpoints[]?.relabelings'
- - group: admissionregistration.k8s.io
- kind: MutatingWebhookConfiguration
- jqPathExpressions:
- - '.webhooks[]?.clientConfig.caBundle'
- - group: admissionregistration.k8s.io
- kind: ValidatingWebhookConfiguration
- jqPathExpressions:
- - '.webhooks[]?.clientConfig.caBundle'
----
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: prometheus-crd
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-wave: "-1"
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: prometheus
- server: 'https://kubernetes.default.svc'
- source:
- repoURL: 'https://prometheus-community.github.io/helm-charts'
- targetRevision: '{{ .Values.prometheus.crd_version }}'
- chart: prometheus-operator-crds
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- automated: {}
- syncOptions:
- - ServerSideApply=true
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
-{{- end }}
diff --git a/attic/templates/promtail.yaml b/attic/templates/promtail.yaml
deleted file mode 100644
index c2602d57..00000000
--- a/attic/templates/promtail.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-{{ if .Values.promtail.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: promtail
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: loki
- server: 'https://kubernetes.default.svc'
- sources:
- #- repoURL: {{ .Values.cluster_config.manifests }}
- # path: {{ .Values.cluster_config.policies }}/promtail
- # targetRevision: HEAD
- - repoURL: 'https://grafana.github.io/helm-charts'
- targetRevision: {{ .Values.promtail.version }}
- chart: promtail
- helm:
- values: |
- config:
- snippets:
- pipelineStages:
- - labelallow:
- - app
- - app_kubernetes_io_component
- - app_kubernetes_io_instance
- - app_kubernetes_io_version
- - container
- - instance
- - namespace
- - pod
- - stream
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.promtail.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
-{{ end }}
diff --git a/attic/templates/rabbitmq-operator.yaml b/attic/templates/rabbitmq-operator.yaml
deleted file mode 100644
index 1b39a4c0..00000000
--- a/attic/templates/rabbitmq-operator.yaml
+++ /dev/null
@@ -1,60 +0,0 @@
-{{ if .Values.rabbitmq_operator.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: rabbitmq-operator
- namespace: argocd
-spec:
- destination:
- namespace: rabbitmq
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: {{ .Values.cluster_config.manifests }}
- path: {{ .Values.cluster_config.policies }}/rabbitmq
- targetRevision: HEAD
- - repoURL: 'https://charts.bitnami.com/bitnami'
- targetRevision: {{ .Values.rabbitmq_operator.version }}
- chart: rabbitmq-cluster-operator
- helm:
- # NOTE(mrtz): Also add metrics for topology operator?
- values: |
- fullnameOverride: rabbitmq-operator
- additionalArgs: []
- useCertManager: true
- {{ if .Values.rabbitmq_operator.metrics }}
- clusterOperator:
- metrics:
- service:
- enabled: true
- serviceMonitor:
- enabled: true
- podMonitor:
- enabled: true
- {{ end }}
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- - ServerSideApply=true
- {{- if .Values.rabbitmq_operator.version }}
- automated:
- prune: true
- # selfHeal: false
- ignoreDifferences:
- - group: ""
- kind: Secret
- name: rabbitmq-operator-messaging-topology-operator-webhook
- jsonPointers:
- - /data/ca.crt
- - /data/tls.crt
- - /data/tls.key
- - group: admissionregistration.k8s.io
- kind: ValidatingWebhookConfiguration
- jqPathExpressions:
- - '.webhooks[]?.clientConfig.caBundle'
- {{- end }}
-{{ end }}
diff --git a/attic/templates/rabbitmq.yaml b/attic/templates/rabbitmq.yaml
deleted file mode 100644
index 418dbd50..00000000
--- a/attic/templates/rabbitmq.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-{{- if .Values.rabbitmq.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: ApplicationSet
-metadata:
- name: rabbitmq
- namespace: argocd
-spec:
- generators:
- - list:
- elements:
- - cluster: https://kubernetes.default.svc
- env: prod
- hostname: rabbitmq.srv.oceanbox.io
- - cluster: https://kubernetes.default.svc
- env: staging
- hostname: rabbitmq.beta.oceanbox.io
- template:
- metadata:
- name: '{{- env }}-rabbitmq'
- spec:
- project: aux
- destination:
- server: https://kubernetes.default.svc
- namespace: rabbitmq
- sources:
- - repoURL: https://charts.bitnami.com/bitnami
- targetRevision: 12.9.0
- chart: rabbitmq
- helm:
- valueFiles:
- - $values/values/rabbitmq/values-{{- env }}.yaml
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- path: values/rabbitmq/{{- env }}
- ref: values
-{{- end }}
diff --git a/attic/templates/redis.yaml b/attic/templates/redis.yaml
deleted file mode 100644
index 83eccd76..00000000
--- a/attic/templates/redis.yaml
+++ /dev/null
@@ -1,30 +0,0 @@
-{{- if .Values.redis.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: prod-redis
- namespace: argocd
-spec:
- project: aux
- destination:
- server: https://kubernetes.default.svc
- namespace: redis
- sources:
- - repoURL: https://charts.bitnami.com/bitnami
- targetRevision: 19.5.2
- chart: redis
- helm:
- valueFiles:
- - $values/values/redis/values-prod.yaml
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: HEAD
- ref: values
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- path: values/redis/prod
- ignoreDifferences:
- - group: apps
- kind: StatefulSet
- jqPathExpressions:
- - '.spec.template.spec.containers[].resources.limits.cpu'
-{{- end }}
diff --git a/attic/templates/resources/cluster-auth-rbac.yaml b/attic/templates/resources/cluster-auth-rbac.yaml
deleted file mode 100644
index ee655308..00000000
--- a/attic/templates/resources/cluster-auth-rbac.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: cluster-admin
- namespace: kube-system
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: cluster-admin
-roleRef:
- kind: ClusterRole
- name: cluster-admin
- apiGroup: rbac.authorization.k8s.io
-subjects:
-- kind: ServiceAccount
- namespace: kube-system
- name: cluster-admin
-- apiGroup: rbac.authorization.k8s.io
- kind: Group
- name: 'system:masters'
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: system-default
-roleRef:
- kind: ClusterRole
- name: cluster-admin
- apiGroup: rbac.authorization.k8s.io
-subjects:
-- kind: ServiceAccount
- namespace: kube-system
- name: default
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kubernetes
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: cluster-admin
-subjects:
-- apiGroup: rbac.authorization.k8s.io
- kind: User
- name: kubernetes
diff --git a/attic/templates/resources/dashboards/argocd.yaml b/attic/templates/resources/dashboards/argocd.yaml
deleted file mode 100644
index ffdb9ae5..00000000
--- a/attic/templates/resources/dashboards/argocd.yaml
+++ /dev/null
@@ -1,4260 +0,0 @@
-apiVersion: v1
-data:
- argocd.json: |-
- {
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "target": {
- "limit": 100,
- "matchAny": false,
- "tags": [],
- "type": "dashboard"
- },
- "type": "dashboard"
- }
- ]
- },
- "editable": true,
- "fiscalYearStartMonth": 0,
- "graphTooltip": 0,
- "links": [],
- "liveNow": false,
- "panels": [
- {
- "collapsed": false,
- "datasource": {
- "uid": "$datasource"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 68,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "refId": "A"
- }
- ],
- "title": "Overview",
- "type": "row"
- },
- {
- "datasource": {
- "uid": "$datasource"
- },
- "gridPos": {
- "h": 4,
- "w": 2,
- "x": 0,
- "y": 1
- },
- "id": 26,
- "links": [],
- "options": {
- "code": {
- "language": "plaintext",
- "showLineNumbers": false,
- "showMiniMap": false
- },
- "content": "",
- "mode": "markdown"
- },
- "pluginVersion": "9.2.4",
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "refId": "A"
- }
- ],
- "transparent": true,
- "type": "text"
- },
- {
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "N/A"
- }
- },
- "type": "special"
- }
- ],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "dtdurations"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 3,
- "x": 2,
- "y": 1
- },
- "id": 32,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "textMode": "auto"
- },
- "pluginVersion": "9.2.4",
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "time() - max(process_start_time_seconds{job=\"argocd-server-metrics\",namespace=~\"$namespace\"})",
- "format": "time_series",
- "intervalFactor": 1,
- "refId": "A"
- }
- ],
- "title": "Uptime",
- "type": "stat"
- },
- {
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "fixedColor": "rgb(31, 120, 193)",
- "mode": "fixed"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "0"
- }
- },
- "type": "special"
- }
- ],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 3,
- "x": 5,
- "y": 1
- },
- "id": 94,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "colorMode": "none",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "textMode": "auto"
- },
- "pluginVersion": "9.2.4",
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "count(count by (server) (argocd_cluster_info{namespace=~\"$namespace\"}))",
- "format": "time_series",
- "instant": false,
- "intervalFactor": 1,
- "refId": "A"
- }
- ],
- "title": "Clusters",
- "type": "stat"
- },
- {
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "fixedColor": "rgb(31, 120, 193)",
- "mode": "fixed"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "N/A"
- }
- },
- "type": "special"
- }
- ],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 3,
- "x": 8,
- "y": 1
- },
- "id": 75,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "colorMode": "none",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "textMode": "auto"
- },
- "pluginVersion": "9.2.4",
- "repeatDirection": "h",
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(argocd_app_info{namespace=~\"$namespace\",dest_server=~\"$cluster\",health_status=~\"$health_status\",sync_status=~\"$sync_status\"})",
- "format": "time_series",
- "instant": false,
- "intervalFactor": 1,
- "refId": "A"
- }
- ],
- "title": "Applications",
- "type": "stat"
- },
- {
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "fixedColor": "rgb(31, 120, 193)",
- "mode": "fixed"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "0"
- }
- },
- "type": "special"
- }
- ],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 3,
- "x": 11,
- "y": 1
- },
- "id": 107,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "colorMode": "none",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "textMode": "auto"
- },
- "pluginVersion": "9.2.4",
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "count(count by (repo) (argocd_app_info{namespace=~\"$namespace\"}))",
- "format": "time_series",
- "instant": false,
- "intervalFactor": 1,
- "refId": "A"
- }
- ],
- "title": "Repositories",
- "type": "stat"
- },
- {
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "id": 0,
- "op": "=",
- "text": "0",
- "type": 1,
- "value": "null"
- }
- ],
- "max": 100,
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 3,
- "x": 14,
- "y": 1
- },
- "id": 100,
- "links": [],
- "options": {
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true
- },
- "pluginVersion": "9.2.4",
- "repeatDirection": "h",
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(argocd_app_info{namespace=~\"$namespace\",dest_server=~\"$cluster\",operation!=\"\"})",
- "format": "time_series",
- "instant": true,
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Operations",
- "type": "gauge"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 4,
- "w": 7,
- "x": 17,
- "y": 1
- },
- "hiddenSeries": false,
- "id": 28,
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": true,
- "hideEmpty": true,
- "hideZero": true,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "current",
- "sortDesc": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "connected",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": true,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(argocd_app_info{namespace=~\"$namespace\",dest_server=~\"$cluster\",health_status=~\"$health_status\",sync_status=~\"$sync_status\"}) by (namespace)",
- "format": "time_series",
- "instant": false,
- "intervalFactor": 1,
- "legendFormat": "{{`{{namespace}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Applications",
- "tooltip": {
- "shared": false,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "decimals": 0,
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "collapsed": false,
- "datasource": {
- "uid": "$datasource"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 5
- },
- "id": 77,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "refId": "A"
- }
- ],
- "title": "Application Status",
- "type": "row"
- },
- {
- "aliasColors": {
- "Degraded": "semi-dark-red",
- "Healthy": "green",
- "Missing": "semi-dark-purple",
- "Progressing": "semi-dark-blue",
- "Suspended": "semi-dark-orange",
- "Unknown": "rgb(255, 255, 255)"
- },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 0,
- "y": 6
- },
- "hiddenSeries": false,
- "id": 105,
- "interval": "",
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": true,
- "hideEmpty": false,
- "hideZero": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "current",
- "sortDesc": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(argocd_app_info{namespace=~\"$namespace\",dest_server=~\"$cluster\",health_status=~\"$health_status\",sync_status=~\"$sync_status\",health_status!=\"\"}) by (health_status)",
- "format": "time_series",
- "instant": false,
- "intervalFactor": 1,
- "legendFormat": "{{`{{health_status}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Health Status",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 2,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {
- "Degraded": "semi-dark-red",
- "Healthy": "green",
- "Missing": "semi-dark-purple",
- "OutOfSync": "semi-dark-yellow",
- "Progressing": "semi-dark-blue",
- "Suspended": "semi-dark-orange",
- "Synced": "semi-dark-green",
- "Unknown": "rgb(255, 255, 255)"
- },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 12,
- "y": 6
- },
- "hiddenSeries": false,
- "id": 106,
- "interval": "",
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": true,
- "hideEmpty": false,
- "hideZero": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "current",
- "sortDesc": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(argocd_app_info{namespace=~\"$namespace\",dest_server=~\"$cluster\",health_status=~\"$health_status\",sync_status=~\"$sync_status\",health_status!=\"\"}) by (sync_status)",
- "format": "time_series",
- "instant": false,
- "intervalFactor": 1,
- "legendFormat": "{{`{{sync_status}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Sync Status",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 2,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "collapsed": false,
- "datasource": {
- "uid": "$datasource"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 12
- },
- "id": 104,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "refId": "A"
- }
- ],
- "title": "Sync Stats",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 24,
- "x": 0,
- "y": 13
- },
- "hiddenSeries": false,
- "id": 56,
- "interval": "",
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": true,
- "hideEmpty": true,
- "hideZero": true,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "total",
- "sortDesc": true,
- "total": true,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 1,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": true,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(round(increase(argocd_app_sync_total{namespace=~\"$namespace\",dest_server=~\"$cluster\"}[$interval]))) by ($grouping)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{$grouping}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Sync Activity",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "decimals": 0,
- "format": "short",
- "label": "",
- "logBase": 1,
- "min": "0",
- "show": true
- },
- {
- "decimals": -12,
- "format": "short",
- "label": "",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 5,
- "w": 24,
- "x": 0,
- "y": 19
- },
- "hiddenSeries": false,
- "id": 73,
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "hideZero": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "total",
- "sortDesc": true,
- "total": true,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": true,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(round(increase(argocd_app_sync_total{namespace=~\"$namespace\",phase=~\"Error|Failed\",dest_server=~\"$cluster\"}[$interval]))) by ($grouping, phase)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{phase}}`}}: {{`{{$grouping}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Sync Failures",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "decimals": 0,
- "format": "none",
- "label": "",
- "logBase": 1,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": "",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "collapsed": false,
- "datasource": {
- "uid": "$datasource"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 24
- },
- "id": 64,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "refId": "A"
- }
- ],
- "title": "Controller Stats",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 24,
- "x": 0,
- "y": 25
- },
- "hiddenSeries": false,
- "id": 58,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "max": true,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "total",
- "sortDesc": true,
- "total": true,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(argocd_app_reconcile_count{namespace=~\"$namespace\",dest_server=~\"$cluster\"}[$interval])) by ($grouping)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{$grouping}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Reconciliation Activity",
- "tooltip": {
- "shared": false,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "cards": {},
- "color": {
- "cardColor": "#b4ff00",
- "colorScale": "sqrt",
- "colorScheme": "interpolateSpectral",
- "exponent": 0.5,
- "mode": "spectrum"
- },
- "dataFormat": "tsbuckets",
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "custom": {
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "scaleDistribution": {
- "type": "linear"
- }
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 7,
- "w": 24,
- "x": 0,
- "y": 31
- },
- "heatmap": {},
- "hideZeroBuckets": false,
- "highlightCards": true,
- "id": 60,
- "legend": {
- "show": true
- },
- "links": [],
- "options": {
- "calculate": false,
- "calculation": {},
- "cellGap": 2,
- "cellValues": {
- "decimals": 0
- },
- "color": {
- "exponent": 0.5,
- "fill": "#b4ff00",
- "mode": "scheme",
- "reverse": false,
- "scale": "exponential",
- "scheme": "Spectral",
- "steps": 128
- },
- "exemplars": {
- "color": "rgba(255,0,255,0.7)"
- },
- "filterValues": {
- "le": 1e-9
- },
- "legend": {
- "show": true
- },
- "rowsFrame": {
- "layout": "auto"
- },
- "showValue": "never",
- "tooltip": {
- "show": true,
- "yHistogram": true
- },
- "yAxis": {
- "axisPlacement": "left",
- "reverse": false,
- "unit": "short"
- }
- },
- "pluginVersion": "9.2.4",
- "reverseYBuckets": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(argocd_app_reconcile_bucket{namespace=~\"$namespace\"}[$interval])) by (le)",
- "format": "heatmap",
- "instant": false,
- "intervalFactor": 10,
- "legendFormat": "{{`{{le}}`}}",
- "refId": "A"
- }
- ],
- "title": "Reconciliation Performance",
- "tooltip": {
- "show": true,
- "showHistogram": true
- },
- "tooltipDecimals": 0,
- "type": "heatmap",
- "xAxis": {
- "show": true
- },
- "yAxis": {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- "yBucketBound": "auto"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 24,
- "x": 0,
- "y": 38
- },
- "hiddenSeries": false,
- "id": 80,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "hideEmpty": true,
- "hideZero": true,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "current",
- "sortDesc": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(argocd_app_k8s_request_total{namespace=~\"$namespace\",server=~\"$cluster\"}[$interval])) by (verb, resource_kind)",
- "format": "time_series",
- "instant": false,
- "intervalFactor": 1,
- "legendFormat": "{{`{{verb}}`}} {{`{{resource_kind}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "K8s API Activity",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 12,
- "x": 0,
- "y": 44
- },
- "hiddenSeries": false,
- "id": 96,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "hideZero": true,
- "max": true,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(workqueue_depth{namespace=~\"$namespace\",name=~\"app_.*\"}) by (name)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{name}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Workqueue Depth",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "min": "0",
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 12,
- "x": 12,
- "y": 44
- },
- "hiddenSeries": false,
- "id": 98,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "hideZero": false,
- "max": true,
- "min": false,
- "show": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(argocd_kubectl_exec_pending{namespace=~\"$namespace\"}) by (command)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{command}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Pending kubectl run",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "decimals": 0,
- "format": "short",
- "label": "",
- "logBase": 1,
- "min": "0",
- "show": true
- },
- {
- "decimals": 0,
- "format": "short",
- "label": "",
- "logBase": 1,
- "min": "0",
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "collapsed": false,
- "datasource": {
- "uid": "$datasource"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 51
- },
- "id": 102,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "refId": "A"
- }
- ],
- "title": "Controller Telemetry",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 24,
- "x": 0,
- "y": 52
- },
- "hiddenSeries": false,
- "id": 34,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "max": true,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "current",
- "sortDesc": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "connected",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "editorMode": "code",
- "expr": "go_memstats_heap_alloc_bytes{job=~\"argocd-application-controller-metrics|argocd-applicationset-controller-metrics\",namespace=\"$namespace\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{namespace}}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Memory Usage",
- "tooltip": {
- "shared": false,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "bytes",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 24,
- "x": 0,
- "y": 59
- },
- "hiddenSeries": false,
- "id": 108,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "hideEmpty": true,
- "hideZero": true,
- "max": true,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "avg",
- "sortDesc": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "connected",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "editorMode": "code",
- "expr": "irate(process_cpu_seconds_total{job=~\"argocd-notifications-controller-metrics|argocd-applicationset-controller-metrics\",namespace=~\"$namespace\"}[1m])",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{namespace}}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "CPU Usage",
- "tooltip": {
- "shared": false,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "decimals": 1,
- "format": "none",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 24,
- "x": 0,
- "y": 66
- },
- "hiddenSeries": false,
- "id": 62,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "hideEmpty": false,
- "hideZero": false,
- "max": true,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "current",
- "sortDesc": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "editorMode": "code",
- "expr": "go_goroutines{job=~\"argocd-application-controller-metrics|argocd-applicationset-controller-metrics\",namespace=~\"$namespace\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{namespace}}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Goroutines",
- "tooltip": {
- "shared": false,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "collapsed": false,
- "datasource": {
- "uid": "$datasource"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 73
- },
- "id": 88,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "refId": "A"
- }
- ],
- "title": "Cluster Stats",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 24,
- "x": 0,
- "y": 74
- },
- "hiddenSeries": false,
- "id": 90,
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": true,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "current",
- "sortDesc": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(argocd_cluster_api_resource_objects{namespace=~\"$namespace\",server=~\"$cluster\"}) by (server)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{server}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Resource Objects Count",
- "tooltip": {
- "shared": false,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 24,
- "x": 0,
- "y": 81
- },
- "hiddenSeries": false,
- "id": 92,
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": true,
- "hideEmpty": true,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "current",
- "sortDesc": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": " sum(argocd_cluster_api_resources{namespace=~\"$namespace\",server=~\"$cluster\"}) by (server)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{server}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "API Resources Count",
- "tooltip": {
- "shared": false,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 24,
- "x": 0,
- "y": 87
- },
- "hiddenSeries": false,
- "id": 86,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "current",
- "sortDesc": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(argocd_cluster_events_total{namespace=~\"$namespace\",server=~\"$cluster\"}[$interval])) by (server)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{server}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Cluster Events Count",
- "tooltip": {
- "shared": false,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "collapsed": false,
- "datasource": {
- "uid": "$datasource"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 94
- },
- "id": 70,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "refId": "A"
- }
- ],
- "title": "Repo Server Stats",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 95
- },
- "hiddenSeries": false,
- "id": 82,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(argocd_git_request_total{request_type=\"ls-remote\", namespace=~\"$namespace\"}[10m])) by (namespace)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{namespace}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Git Requests (ls-remote)",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 95
- },
- "hiddenSeries": false,
- "id": 84,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(argocd_git_request_total{request_type=\"fetch\", namespace=~\"$namespace\"}[10m])) by (namespace)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{namespace}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Git Requests (checkout)",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": "",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "cards": {},
- "color": {
- "cardColor": "#b4ff00",
- "colorScale": "sqrt",
- "colorScheme": "interpolateSpectral",
- "exponent": 0.5,
- "mode": "spectrum"
- },
- "dataFormat": "tsbuckets",
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "custom": {
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "scaleDistribution": {
- "type": "linear"
- }
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 103
- },
- "heatmap": {},
- "hideZeroBuckets": false,
- "highlightCards": true,
- "id": 114,
- "legend": {
- "show": false
- },
- "options": {
- "calculate": false,
- "calculation": {},
- "cellGap": 2,
- "cellValues": {},
- "color": {
- "exponent": 0.5,
- "fill": "#b4ff00",
- "mode": "scheme",
- "reverse": false,
- "scale": "exponential",
- "scheme": "Spectral",
- "steps": 128
- },
- "exemplars": {
- "color": "rgba(255,0,255,0.7)"
- },
- "filterValues": {
- "le": 1e-9
- },
- "legend": {
- "show": false
- },
- "rowsFrame": {
- "layout": "auto"
- },
- "showValue": "never",
- "tooltip": {
- "show": true,
- "yHistogram": false
- },
- "yAxis": {
- "axisPlacement": "left",
- "reverse": false,
- "unit": "short"
- }
- },
- "pluginVersion": "9.2.4",
- "reverseYBuckets": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(argocd_git_request_duration_seconds_bucket{request_type=\"fetch\", namespace=~\"$namespace\"}[$interval])) by (le)",
- "format": "heatmap",
- "intervalFactor": 10,
- "legendFormat": "{{`{{le}}`}}",
- "refId": "A"
- }
- ],
- "title": "Git Fetch Performance",
- "tooltip": {
- "show": true,
- "showHistogram": false
- },
- "type": "heatmap",
- "xAxis": {
- "show": true
- },
- "yAxis": {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- "yBucketBound": "auto"
- },
- {
- "cards": {},
- "color": {
- "cardColor": "#b4ff00",
- "colorScale": "sqrt",
- "colorScheme": "interpolateSpectral",
- "exponent": 0.5,
- "mode": "spectrum"
- },
- "dataFormat": "tsbuckets",
- "datasource": {
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "custom": {
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "scaleDistribution": {
- "type": "linear"
- }
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 103
- },
- "heatmap": {},
- "hideZeroBuckets": false,
- "highlightCards": true,
- "id": 116,
- "legend": {
- "show": false
- },
- "options": {
- "calculate": false,
- "calculation": {},
- "cellGap": 2,
- "cellValues": {},
- "color": {
- "exponent": 0.5,
- "fill": "#b4ff00",
- "mode": "scheme",
- "reverse": false,
- "scale": "exponential",
- "scheme": "Spectral",
- "steps": 128
- },
- "exemplars": {
- "color": "rgba(255,0,255,0.7)"
- },
- "filterValues": {
- "le": 1e-9
- },
- "legend": {
- "show": false
- },
- "rowsFrame": {
- "layout": "auto"
- },
- "showValue": "never",
- "tooltip": {
- "show": true,
- "yHistogram": false
- },
- "yAxis": {
- "axisPlacement": "left",
- "reverse": false,
- "unit": "short"
- }
- },
- "pluginVersion": "9.2.4",
- "reverseYBuckets": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(argocd_git_request_duration_seconds_bucket{request_type=\"ls-remote\", namespace=~\"$namespace\"}[$interval])) by (le)",
- "format": "heatmap",
- "intervalFactor": 10,
- "legendFormat": "{{`{{le}}`}}",
- "refId": "A"
- }
- ],
- "title": "Git Ls-Remote Performance",
- "tooltip": {
- "show": true,
- "showHistogram": false
- },
- "type": "heatmap",
- "xAxis": {
- "show": true
- },
- "yAxis": {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- "yBucketBound": "auto"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 8,
- "w": 24,
- "x": 0,
- "y": 111
- },
- "hiddenSeries": false,
- "id": 71,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "connected",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "editorMode": "code",
- "expr": "go_memstats_heap_alloc_bytes{job=\"argocd-repo-server-metrics\",namespace=~\"$namespace\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{pod}}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Memory Used",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "bytes",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 24,
- "x": 0,
- "y": 119
- },
- "hiddenSeries": false,
- "id": 72,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "editorMode": "code",
- "expr": "go_goroutines{job=\"argocd-repo-server-metrics\",namespace=~\"$namespace\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{pod}}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Goroutines",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "collapsed": false,
- "datasource": {
- "uid": "$datasource"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 126
- },
- "id": 66,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "refId": "A"
- }
- ],
- "title": "Server Stats",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 8,
- "w": 24,
- "x": 0,
- "y": 127
- },
- "hiddenSeries": false,
- "id": 61,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "connected",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "go_memstats_heap_alloc_bytes{job=\"argocd-server-metrics\",namespace=~\"$namespace\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Memory Used",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "bytes",
- "logBase": 1,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 24,
- "x": 0,
- "y": 135
- },
- "hiddenSeries": false,
- "id": 36,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "go_goroutines{job=\"argocd-server-metrics\",namespace=~\"$namespace\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Goroutines",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 24,
- "x": 0,
- "y": 144
- },
- "hiddenSeries": false,
- "id": 38,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "connected",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "go_gc_duration_seconds{job=\"argocd-server-metrics\", quantile=\"1\", namespace=~\"$namespace\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "GC Time Quantiles",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "gridPos": {
- "h": 2,
- "w": 24,
- "x": 0,
- "y": 153
- },
- "id": 54,
- "links": [],
- "options": {
- "code": {
- "language": "plaintext",
- "showLineNumbers": false,
- "showMiniMap": false
- },
- "content": "#### gRPC Services:",
- "mode": "markdown"
- },
- "pluginVersion": "9.2.4",
- "transparent": true,
- "type": "text"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 155
- },
- "hiddenSeries": false,
- "id": 40,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "hideEmpty": true,
- "hideZero": true,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "sort": "total",
- "sortDesc": true,
- "total": true,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(grpc_server_handled_total{job=\"argocd-server-metrics\",grpc_service=\"application.ApplicationService\",namespace=~\"$namespace\"}[$interval])) by (grpc_code, grpc_method)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{grpc_code}}`}},{{`{{grpc_method}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "ApplicationService Requests",
- "tooltip": {
- "shared": false,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 155
- },
- "hiddenSeries": false,
- "id": 42,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "hideEmpty": true,
- "hideZero": true,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": true,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(grpc_server_handled_total{job=\"argocd-server-metrics\",grpc_service=\"cluster.ClusterService\",namespace=~\"$namespace\"}[$interval])) by (grpc_code, grpc_method)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{grpc_code}}`}},{{`{{grpc_method}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "ClusterService Requests",
- "tooltip": {
- "shared": false,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 164
- },
- "hiddenSeries": false,
- "id": 44,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "hideEmpty": true,
- "hideZero": true,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": true,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(grpc_server_handled_total{job=\"argocd-server-metrics\",grpc_service=\"project.ProjectService\",namespace=~\"$namespace\"}[$interval])) by (grpc_code, grpc_method)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{grpc_code}}`}},{{`{{grpc_method}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "ProjectService Requests",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 164
- },
- "hiddenSeries": false,
- "id": 46,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "hideEmpty": true,
- "hideZero": true,
- "max": false,
- "min": false,
- "show": true,
- "total": true,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(grpc_server_handled_total{job=\"argocd-server-metrics\",grpc_service=\"repository.RepositoryService\",namespace=~\"$namespace\"}[$interval])) by (grpc_code, grpc_method)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{grpc_code}}`}},{{`{{grpc_method}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [
- {
- "colorMode": "critical",
- "fill": true,
- "line": true,
- "op": "gt",
- "yaxis": "left"
- }
- ],
- "timeRegions": [],
- "title": "RepositoryService Requests",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 173
- },
- "hiddenSeries": false,
- "id": 48,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "hideEmpty": true,
- "hideZero": true,
- "max": false,
- "min": false,
- "show": true,
- "total": true,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(grpc_server_handled_total{job=\"argocd-server-metrics\",grpc_service=\"session.SessionService\",namespace=~\"$namespace\"}[$interval])) by (grpc_code, grpc_method)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{grpc_code}}`}},{{`{{grpc_method}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "SessionService Requests",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 173
- },
- "hiddenSeries": false,
- "id": 49,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "hideEmpty": true,
- "hideZero": true,
- "max": false,
- "min": false,
- "show": true,
- "total": true,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(grpc_server_handled_total{job=\"argocd-server-metrics\",grpc_service=\"version.VersionService\",namespace=~\"$namespace\"}[$interval])) by (grpc_code, grpc_method)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{grpc_code}}`}},{{`{{grpc_method}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "VersionService Requests",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 182
- },
- "hiddenSeries": false,
- "id": 50,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "hideEmpty": true,
- "hideZero": true,
- "max": false,
- "min": false,
- "show": true,
- "total": true,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(grpc_server_handled_total{job=\"argocd-server-metrics\",grpc_service=\"account.AccountService\",namespace=~\"$namespace\"}[$interval])) by (grpc_code, grpc_method)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{grpc_code}}`}},{{`{{grpc_method}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "AccountService Requests",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "$datasource"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 182
- },
- "hiddenSeries": false,
- "id": 99,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": true,
- "hideEmpty": true,
- "hideZero": true,
- "max": false,
- "min": false,
- "show": true,
- "total": true,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "paceLength": 10,
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "uid": "$datasource"
- },
- "expr": "sum(increase(grpc_server_handled_total{job=\"argocd-server-metrics\",grpc_service=\"settings.SettingsService\",namespace=~\"$namespace\"}[$interval])) by (grpc_code, grpc_method)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{`{{grpc_code}}`}},{{`{{grpc_method}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "SettingsService Requests",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 191
- },
- "id": 110,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "refId": "A"
- }
- ],
- "title": "Redis Stats",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 24,
- "x": 0,
- "y": 192
- },
- "hiddenSeries": false,
- "id": 112,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "9.2.4",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "sum(increase(argocd_redis_request_total{namespace=~\"$namespace\"}[$interval])) by (failed)",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Requests by result",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- }
- ],
- "refresh": false,
- "schemaVersion": 37,
- "style": "dark",
- "tags": [],
- "templating": {
- "list": [
- {
- "current": {
- "selected": false,
- "text": "Prometheus",
- "value": "Prometheus"
- },
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "datasource",
- "options": [],
- "query": "prometheus",
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "type": "datasource"
- },
- {
- "allValue": ".*",
- "current": {
- "selected": true,
- "text": "argocd",
- "value": "argocd"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "definition": "label_values(kube_pod_info, namespace)",
- "hide": 0,
- "includeAll": true,
- "multi": false,
- "name": "namespace",
- "options": [],
- "query": {
- "query": "label_values(kube_pod_info, namespace)",
- "refId": "Prometheus-namespace-Variable-Query"
- },
- "refresh": 1,
- "regex": ".*argocd.*",
- "skipUrlSync": false,
- "sort": 0,
- "tagValuesQuery": "",
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "auto": true,
- "auto_count": 30,
- "auto_min": "1m",
- "current": {
- "selected": false,
- "text": "auto",
- "value": "$__auto_interval_interval"
- },
- "hide": 0,
- "name": "interval",
- "options": [
- {
- "selected": true,
- "text": "auto",
- "value": "$__auto_interval_interval"
- },
- {
- "selected": false,
- "text": "1m",
- "value": "1m"
- },
- {
- "selected": false,
- "text": "5m",
- "value": "5m"
- },
- {
- "selected": false,
- "text": "10m",
- "value": "10m"
- },
- {
- "selected": false,
- "text": "30m",
- "value": "30m"
- },
- {
- "selected": false,
- "text": "1h",
- "value": "1h"
- },
- {
- "selected": false,
- "text": "2h",
- "value": "2h"
- },
- {
- "selected": false,
- "text": "4h",
- "value": "4h"
- },
- {
- "selected": false,
- "text": "8h",
- "value": "8h"
- }
- ],
- "query": "1m,5m,10m,30m,1h,2h,4h,8h",
- "refresh": 2,
- "skipUrlSync": false,
- "type": "interval"
- },
- {
- "allValue": "",
- "current": {
- "selected": true,
- "text": "namespace",
- "value": "namespace"
- },
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "grouping",
- "options": [
- {
- "selected": true,
- "text": "namespace",
- "value": "namespace"
- },
- {
- "selected": false,
- "text": "name",
- "value": "name"
- },
- {
- "selected": false,
- "text": "project",
- "value": "project"
- }
- ],
- "query": "namespace,name,project",
- "queryValue": "",
- "skipUrlSync": false,
- "type": "custom"
- },
- {
- "allValue": ".*",
- "current": {
- "selected": false,
- "text": "All",
- "value": "$__all"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "definition": "label_values(argocd_cluster_info, server)",
- "hide": 0,
- "includeAll": true,
- "multi": false,
- "name": "cluster",
- "options": [],
- "query": {
- "query": "label_values(argocd_cluster_info, server)",
- "refId": "Prometheus-cluster-Variable-Query"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "tagValuesQuery": "",
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "allValue": ".*",
- "current": {
- "selected": true,
- "text": "All",
- "value": "$__all"
- },
- "hide": 0,
- "includeAll": true,
- "multi": false,
- "name": "health_status",
- "options": [
- {
- "selected": true,
- "text": "All",
- "value": "$__all"
- },
- {
- "selected": false,
- "text": "Healthy",
- "value": "Healthy"
- },
- {
- "selected": false,
- "text": "Progressing",
- "value": "Progressing"
- },
- {
- "selected": false,
- "text": "Suspended",
- "value": "Suspended"
- },
- {
- "selected": false,
- "text": "Missing",
- "value": "Missing"
- },
- {
- "selected": false,
- "text": "Degraded",
- "value": "Degraded"
- },
- {
- "selected": false,
- "text": "Unknown",
- "value": "Unknown"
- }
- ],
- "query": "Healthy,Progressing,Suspended,Missing,Degraded,Unknown",
- "skipUrlSync": false,
- "type": "custom"
- },
- {
- "allValue": ".*",
- "current": {
- "selected": true,
- "text": "All",
- "value": "$__all"
- },
- "hide": 0,
- "includeAll": true,
- "multi": false,
- "name": "sync_status",
- "options": [
- {
- "selected": true,
- "text": "All",
- "value": "$__all"
- },
- {
- "selected": false,
- "text": "Synced",
- "value": "Synced"
- },
- {
- "selected": false,
- "text": "OutOfSync",
- "value": "OutOfSync"
- },
- {
- "selected": false,
- "text": "Unknown",
- "value": "Unknown"
- }
- ],
- "query": "Synced,OutOfSync,Unknown",
- "skipUrlSync": false,
- "type": "custom"
- }
- ]
- },
- "time": {
- "from": "now-30m",
- "to": "now"
- },
- "timepicker": {
- "refresh_intervals": [
- "5s",
- "10s",
- "30s",
- "1m",
- "5m",
- "15m",
- "30m",
- "1h",
- "2h",
- "1d"
- ],
- "time_options": [
- "5m",
- "15m",
- "1h",
- "6h",
- "12h",
- "24h",
- "2d",
- "7d",
- "30d"
- ]
- },
- "timezone": "",
- "title": "ArgoCD",
- "uid": "LCAgc9rWz",
- "version": 1,
- "weekStart": ""
- }
-kind: ConfigMap
-metadata:
- name: argocd-dashboard
- namespace: prometheus
- labels:
- grafana_dashboard: "1"
diff --git a/attic/templates/resources/dashboards/cnpg-postgres.yaml b/attic/templates/resources/dashboards/cnpg-postgres.yaml
deleted file mode 100644
index 0b2b5007..00000000
--- a/attic/templates/resources/dashboards/cnpg-postgres.yaml
+++ /dev/null
@@ -1,3908 +0,0 @@
-{{- if .Values.postgres_operator.enabled }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: cnpg-dashboard
- namespace: prometheus
- labels:
- grafana_dashboard: "1"
- app.kubernetes.io/instance: prometheus-community
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: grafana
- app.kubernetes.io/version: 9.1.7
- helm.sh/chart: grafana-6.40.4
-data:
- cnp.json: |-
- {
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": "-- Grafana --",
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "target": {
- "limit": 100,
- "matchAny": false,
- "tags": [],
- "type": "dashboard"
- },
- "type": "dashboard"
- }
- ]
- },
- "editable": true,
- "fiscalYearStartMonth": 0,
- "gnetId": null,
- "graphTooltip": 0,
- "iteration": 1637064390546,
- "links": [],
- "liveNow": false,
- "panels": [
- {
- "collapsed": false,
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 12,
- "panels": [],
- "title": "Server Health",
- "type": "row"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 3,
- "x": 0,
- "y": 1
- },
- "id": 191,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Instance",
- "transparent": true,
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 2,
- "x": 3,
- "y": 1
- },
- "id": 192,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Status",
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 4,
- "x": 5,
- "y": 1
- },
- "id": 193,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Clustering / replicas",
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 5,
- "x": 9,
- "y": 1
- },
- "id": 195,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Connections",
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 3,
- "x": 14,
- "y": 1
- },
- "id": 196,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Max Connections",
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "gridPos": {
- "h": 1,
- "w": 3,
- "x": 17,
- "y": 1
- },
- "id": 197,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Wraparound",
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 2,
- "x": 20,
- "y": 1
- },
- "id": 313,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Started",
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 2,
- "x": 22,
- "y": 1
- },
- "id": 198,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Server Version",
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 3,
- "w": 3,
- "x": 0,
- "y": 2
- },
- "id": 61,
- "options": {
- "content": "
",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "0": {
- "index": 0,
- "text": "Down"
- },
- "1": {
- "index": 1,
- "text": "Up"
- }
- },
- "type": "value"
- }
- ],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "dark-red",
- "value": null
- },
- {
- "color": "green",
- "value": 1
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 2,
- "x": 3,
- "y": 2
- },
- "id": 33,
- "options": {
- "colorMode": "background",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "type": "stat"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "0": {
- "color": "red",
- "index": 1,
- "text": "No"
- },
- "1": {
- "color": "green",
- "index": 0,
- "text": "Yes"
- }
- },
- "type": "value"
- }
- ],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 2,
- "x": 5,
- "y": 2
- },
- "id": 60,
- "options": {
- "colorMode": "background",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "1 - cnpg_pg_replication_in_recovery{namespace=~\"$namespace\",pod=~\"$instances\"} + cnpg_pg_replication_is_wal_receiver_up{namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "transformations": [],
- "type": "stat"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 2,
- "x": 7,
- "y": 2
- },
- "id": 229,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_replication_streaming_replicas{namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "transformations": [],
- "type": "stat"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 5,
- "x": 9,
- "y": 2
- },
- "id": 58,
- "options": {
- "legend": {
- "calcs": [
- "last",
- "mean"
- ],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "sum by (pod) (cnpg_backends_total{namespace=~\"$namespace\",pod=~\"$instances\"})",
- "instant": false,
- "interval": "",
- "legendFormat": "-",
- "refId": "A"
- }
- ],
- "type": "timeseries"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "decimals": 0,
- "mappings": [],
- "max": 100,
- "noValue": "<1%",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "#EAB839",
- "value": 75
- },
- {
- "color": "red",
- "value": 90
- }
- ]
- },
- "unit": "percent"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 3,
- "x": 14,
- "y": 2
- },
- "id": 32,
- "options": {
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true,
- "text": {}
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "100 * sum by (pod) (cnpg_backends_total{namespace=~\"$namespace\",pod=~\"$instances\"}) / sum by (pod) (cnpg_pg_settings_setting{name=\"max_connections\",namespace=~\"$namespace\",pod=~\"$instances\"})",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "type": "gauge"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "max": 2147483647,
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "#EAB839",
- "value": 200000000
- },
- {
- "color": "red",
- "value": 1000000000
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 3,
- "x": 17,
- "y": 2
- },
- "id": 8,
- "options": {
- "displayMode": "lcd",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showUnfilled": true,
- "text": {}
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "max by (pod) (cnpg_pg_database_xid_age{namespace=~\"$namespace\",pod=~\"$instances\"})",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "type": "bargauge"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "dark-blue",
- "value": null
- }
- ]
- },
- "unit": "dateTimeFromNow"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 2,
- "x": 20,
- "y": 2
- },
- "id": 314,
- "options": {
- "colorMode": "background",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": false,
- "expr": "cnpg_pg_postmaster_start_time{namespace=~\"$namespace\",pod=~\"$instances\"}*1000",
- "format": "time_series",
- "hide": false,
- "instant": true,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "transformations": [],
- "type": "stat"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "dark-blue",
- "value": null
- }
- ]
- },
- "unit": "string"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 2,
- "x": 22,
- "y": 2
- },
- "id": 42,
- "options": {
- "colorMode": "background",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": false,
- "expr": "cnpg_collector_postgres_version{namespace=~\"$namespace\",pod=~\"$instances\"}",
- "format": "time_series",
- "hide": false,
- "instant": true,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "transformations": [],
- "type": "stat"
- },
- {
- "collapsed": true,
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 11
- },
- "id": 41,
- "panels": [
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 3,
- "x": 0,
- "y": 6
- },
- "id": 187,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Instance",
- "transparent": true,
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 3,
- "x": 3,
- "y": 6
- },
- "id": 183,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Max Connections",
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 3,
- "x": 6,
- "y": 6
- },
- "id": 184,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Shared Buffers",
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 3,
- "x": 9,
- "y": 6
- },
- "id": 185,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Effective Cache Size",
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 3,
- "x": 12,
- "y": 6
- },
- "id": 186,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Work Mem",
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 3,
- "x": 15,
- "y": 6
- },
- "id": 188,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Maintenance Work Mem",
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 3,
- "x": 18,
- "y": 6
- },
- "id": 189,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Random Page Cost",
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 3,
- "x": 21,
- "y": 6
- },
- "id": 190,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Sequential Page Cost",
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 3,
- "w": 3,
- "x": 0,
- "y": 7
- },
- "id": 86,
- "options": {
- "content": "",
- "mode": "html"
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "kube_pod_container_status_ready{container=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "type": "text"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "dark-purple",
- "value": null
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 3,
- "x": 3,
- "y": 7
- },
- "id": 30,
- "options": {
- "colorMode": "background",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_settings_setting{name=\"max_connections\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "type": "stat"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "dark-purple",
- "value": null
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 3,
- "x": 6,
- "y": 7
- },
- "id": 24,
- "options": {
- "colorMode": "background",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "max by (pod) (cnpg_pg_settings_setting{name=\"shared_buffers\",namespace=~\"$namespace\",pod=~\"$instances\"}) * max by (pod) (cnpg_pg_settings_setting{name=\"block_size\",namespace=~\"$namespace\",pod=~\"$instances\"})",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "type": "stat"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "dark-purple",
- "value": null
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 3,
- "x": 9,
- "y": 7
- },
- "id": 57,
- "options": {
- "colorMode": "background",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_settings_setting{name=\"effective_cache_size\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "type": "stat"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "dark-purple",
- "value": null
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 3,
- "x": 12,
- "y": 7
- },
- "id": 26,
- "options": {
- "colorMode": "background",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_settings_setting{name=\"work_mem\",namespace=~\"$namespace\",pod=~\"$instances\"} * 1024",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "type": "stat"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "dark-purple",
- "value": null
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 3,
- "x": 15,
- "y": 7
- },
- "id": 47,
- "options": {
- "colorMode": "background",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_settings_setting{name=\"maintenance_work_mem\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "type": "stat"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "dark-purple",
- "value": null
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 3,
- "x": 18,
- "y": 7
- },
- "id": 48,
- "options": {
- "colorMode": "background",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_settings_setting{name=\"random_page_cost\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "type": "stat"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "dark-purple",
- "value": null
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 3,
- "x": 21,
- "y": 7
- },
- "id": 56,
- "options": {
- "colorMode": "background",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.2.1",
- "repeat": "instances",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_settings_setting{name=\"seq_page_cost\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "type": "stat"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "custom": {
- "align": "auto",
- "displayMode": "auto",
- "filterable": true
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "dark-purple",
- "value": null
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 24,
- "x": 0,
- "y": 10
- },
- "id": 150,
- "options": {
- "showHeader": true,
- "sortBy": [
- {
- "desc": true,
- "displayName": "parameter"
- }
- ]
- },
- "pluginVersion": "8.2.1",
- "repeatDirection": "v",
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_settings_setting{namespace=~\"$namespace\",pod=~\"$instances\"}",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Configurations",
- "transformations": [
- {
- "id": "organize",
- "options": {
- "excludeByName": {
- "Time": true,
- "__name__": true,
- "container": true,
- "endpoint": true,
- "instance": true,
- "job": true,
- "name": false,
- "namespace": true,
- "pod": false
- },
- "indexByName": {
- "Time": 0,
- "Value": 9,
- "__name__": 1,
- "container": 2,
- "endpoint": 3,
- "instance": 4,
- "job": 5,
- "name": 7,
- "namespace": 8,
- "pod": 6
- },
- "renameByName": {
- "__name__": "",
- "name": "parameter"
- }
- }
- }
- ],
- "type": "table"
- }
- ],
- "title": "Configuration",
- "type": "row"
- },
- {
- "collapsed": true,
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 12
- },
- "id": 10,
- "panels": [
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "${DataSource}",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 12,
- "x": 0,
- "y": 7
- },
- "hiddenSeries": false,
- "id": 273,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 2,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "8.2.1",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "exemplar": true,
- "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{pod=~\"$instances\", namespace=~\"$namespace\"}) by (pod)",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 2,
- "legendFormat": "{{`{{pod}}`}}",
- "legendLink": null,
- "refId": "A",
- "step": 10
- },
- {
- "exemplar": true,
- "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{pod=~\"$instances\", namespace=~\"$namespace\"})",
- "hide": false,
- "interval": "",
- "legendFormat": "total",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "CPU Usage",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "$$hashKey": "object:189",
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": 0,
- "show": true
- },
- {
- "$$hashKey": "object:190",
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "${DataSource}",
- "fill": 2,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 12,
- "x": 12,
- "y": 7
- },
- "hiddenSeries": false,
- "id": 275,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 2,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "8.2.1",
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [
- {
- "alias": "quota - requests",
- "color": "#F2495C",
- "dashes": true,
- "fill": 0,
- "hiddenSeries": true,
- "hideTooltip": true,
- "legend": true,
- "linewidth": 2,
- "stack": false
- },
- {
- "alias": "quota - limits",
- "color": "#FF9830",
- "dashes": true,
- "fill": 0,
- "hiddenSeries": true,
- "hideTooltip": true,
- "legend": true,
- "linewidth": 2,
- "stack": false
- }
- ],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "exemplar": true,
- "expr": "sum(container_memory_working_set_bytes{pod=~\"$instances\", namespace=\"$namespace\", container!=\"\", image!=\"\"}) by (pod)",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 2,
- "legendFormat": "{{`{{pod}}`}}",
- "legendLink": null,
- "refId": "A",
- "step": 10
- },
- {
- "exemplar": true,
- "expr": "sum(container_memory_working_set_bytes{pod=~\"$instances\", namespace=\"$namespace\", container!=\"\", image!=\"\"})",
- "hide": false,
- "interval": "",
- "legendFormat": "total",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Memory Usage (w/o cache)",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "$$hashKey": "object:246",
- "format": "bytes",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": 0,
- "show": true
- },
- {
- "$$hashKey": "object:247",
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 24,
- "x": 0,
- "y": 14
- },
- "id": 39,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "sum(cnpg_backends_total{namespace=~\"$namespace\",pod=~\"$instances\"}) by (pod)",
- "hide": false,
- "interval": "",
- "legendFormat": "total ({{`{{pod}}`}})",
- "refId": "B"
- },
- {
- "exemplar": true,
- "expr": "sum(cnpg_backends_total{namespace=~\"$namespace\",pod=~\"$instances\"}) by (state, pod)",
- "interval": "",
- "legendFormat": "{{`{{state}}`}} ({{`{{pod}}`}})",
- "refId": "A"
- }
- ],
- "title": "Session States",
- "type": "timeseries"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 22
- },
- "id": 50,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "sum(rate(cnpg_pg_stat_database_xact_commit{namespace=~\"$namespace\",pod=~\"$instances\"}[5m])) by (pod)",
- "interval": "",
- "legendFormat": "committed ({{`{{pod}}`}})",
- "refId": "A"
- },
- {
- "exemplar": true,
- "expr": "sum(rate(cnpg_pg_stat_database_xact_rollback{namespace=~\"$namespace\",pod=~\"$instances\"}[5m])) by (pod)",
- "hide": false,
- "interval": "",
- "legendFormat": "rolled back ({{`{{pod}}`}})",
- "refId": "B"
- }
- ],
- "title": "Transactions [5m]",
- "type": "timeseries"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 22
- },
- "id": 4,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "max by (pod) (cnpg_backends_max_tx_duration_seconds{namespace=~\"$namespace\",pod=~\"$instances\"})",
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Longest Transaction",
- "type": "timeseries"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 30
- },
- "id": 55,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "rate(cnpg_pg_stat_database_deadlocks{datname=\"\",namespace=~\"$namespace\",pod=~\"$instances\"}[5m])",
- "hide": false,
- "instant": false,
- "interval": "",
- "legendFormat": "count ({{`{{pod}}`}})",
- "refId": "B"
- }
- ],
- "title": "Deadlocks [5m]",
- "type": "timeseries"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 30
- },
- "id": 54,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_backends_waiting_total{namespace=~\"$namespace\",pod=~\"$instances\"}",
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Blocked Queries",
- "type": "timeseries"
- }
- ],
- "title": "Operational Stats",
- "type": "row"
- },
- {
- "collapsed": true,
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 13
- },
- "id": 35,
- "panels": [
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 35
- },
- "id": 44,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "rate(cnpg_pg_stat_database_tup_deleted{datname=\"\",namespace=~\"$namespace\",pod=~\"$instances\"}[5m])",
- "interval": "",
- "legendFormat": "deleted ({{`{{pod}}`}})",
- "refId": "A"
- },
- {
- "exemplar": true,
- "expr": "rate(cnpg_pg_stat_database_tup_inserted{datname=\"\",namespace=~\"$namespace\",pod=~\"$instances\"}[5m])",
- "hide": false,
- "interval": "",
- "legendFormat": "inserted ({{`{{pod}}`}})",
- "refId": "B"
- },
- {
- "exemplar": true,
- "expr": "rate(cnpg_pg_stat_database_tup_fetched{datname=\"\",namespace=~\"$namespace\",pod=~\"$instances\"}[5m])",
- "hide": false,
- "interval": "",
- "legendFormat": "fetched ({{`{{pod}}`}})",
- "refId": "C"
- },
- {
- "exemplar": true,
- "expr": "rate(cnpg_pg_stat_database_tup_returned{datname=\"\",namespace=~\"$namespace\",pod=~\"$instances\"}[5m])",
- "hide": false,
- "interval": "",
- "legendFormat": "returned ({{`{{pod}}`}})",
- "refId": "D"
- },
- {
- "exemplar": true,
- "expr": "rate(cnpg_pg_stat_database_tup_updated{datname=\"\",namespace=~\"$namespace\",pod=~\"$instances\"}[5m])",
- "hide": false,
- "interval": "",
- "legendFormat": "updated ({{`{{pod}}`}})",
- "refId": "E"
- }
- ],
- "title": "Tuple I/O [5m]",
- "type": "timeseries"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 35
- },
- "id": 46,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "rate(cnpg_pg_stat_database_blks_hit{datname=\"\",namespace=~\"$namespace\",pod=~\"$instances\"}[5m])",
- "interval": "",
- "legendFormat": "hit ({{`{{pod}}`}})",
- "refId": "A"
- },
- {
- "exemplar": true,
- "expr": "rate(cnpg_pg_stat_database_blks_read{datname=\"\",namespace=~\"$namespace\",pod=~\"$instances\"}[5m])",
- "hide": false,
- "interval": "",
- "legendFormat": "read ({{`{{pod}}`}})",
- "refId": "B"
- }
- ],
- "title": "Block I/O [5m]",
- "type": "timeseries"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- }
- ]
- },
- "unit": "decbytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 43
- },
- "id": 22,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "pluginVersion": "8.0.5",
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_database_size_bytes{datname!~\"template.*\",datname!=\"postgres\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "interval": "",
- "legendFormat": " {{`{{pod}}`}}: {{`{{datname}}`}}",
- "refId": "A"
- }
- ],
- "title": "Database Size",
- "type": "timeseries"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "decbytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 43
- },
- "id": 2,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "rate(cnpg_pg_stat_database_temp_bytes{datname=\"\",namespace=~\"$namespace\",pod=~\"$instances\"}[5m])",
- "instant": false,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Temp Bytes [5m]",
- "type": "timeseries"
- }
- ],
- "title": "Storage & I/O",
- "type": "row"
- },
- {
- "collapsed": true,
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 14
- },
- "id": 37,
- "panels": [
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 8,
- "x": 0,
- "y": 53
- },
- "id": 6,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_collector_pg_wal_archive_status{value=\"ready\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "interval": "",
- "legendFormat": "ready ({{`{{pod}}`}})",
- "refId": "A"
- },
- {
- "exemplar": true,
- "expr": "cnpg_collector_pg_wal_archive_status{value=\"done\",namespace=~\"$namespace\",pod=~\"$instances\"}",
- "hide": false,
- "interval": "",
- "legendFormat": "done ({{`{{pod}}`}})",
- "refId": "B"
- }
- ],
- "title": "WAL Segment Archive Status",
- "type": "timeseries"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 8,
- "x": 8,
- "y": 53
- },
- "id": 52,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "rate(cnpg_pg_stat_archiver_archived_count{namespace=~\"$namespace\",pod=~\"$instances\"}[5m])",
- "interval": "",
- "legendFormat": "archived ({{`{{pod}}`}})",
- "refId": "A"
- },
- {
- "exemplar": true,
- "expr": "rate(cnpg_pg_stat_archiver_failed_count{namespace=~\"$namespace\",pod=~\"$instances\"}[5m])",
- "hide": false,
- "interval": "",
- "legendFormat": "failed ({{`{{pod}}`}})",
- "refId": "B"
- }
- ],
- "title": "Archiver Status [5m]",
- "type": "timeseries"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 8,
- "x": 16,
- "y": 53
- },
- "id": 53,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_stat_archiver_seconds_since_last_archival{namespace=~\"$namespace\",pod=~\"$instances\"}",
- "interval": "",
- "legendFormat": "age ({{`{{pod}}`}})",
- "refId": "A"
- }
- ],
- "title": "Last Archive Age",
- "type": "timeseries"
- }
- ],
- "title": "Write Ahead Log",
- "type": "row"
- },
- {
- "collapsed": true,
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 15
- },
- "id": 18,
- "panels": [
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "line"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "#EAB839",
- "value": 600
- },
- {
- "color": "dark-red",
- "value": 3600
- }
- ]
- },
- "unit": "s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 6,
- "x": 0,
- "y": 6
- },
- "id": 16,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_replication_lag{namespace=~\"$namespace\",pod=~\"$instances\"}",
- "instant": false,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Replication Lag",
- "type": "timeseries"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 6,
- "x": 6,
- "y": 6
- },
- "id": 14,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_stat_replication_write_lag_seconds{namespace=~\"$namespace\",pod=~\"$cluster-.*\"}",
- "instant": false,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}} -> {{`{{application_name}}`}}",
- "refId": "A"
- }
- ],
- "title": "Write Lag",
- "type": "timeseries"
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 6,
- "x": 12,
- "y": 6
- },
- "id": 59,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_stat_replication_flush_lag_seconds{namespace=~\"$namespace\",pod=~\"$cluster-.*\"}",
- "instant": false,
- "interval": "",
- "legendFormat": "{{`{{pod}}`}} -> {{`{{application_name}}`}}",
- "refId": "A"
- }
- ],
- "title": "Flush Lag",
- "type": "timeseries"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 6,
- "x": 18,
- "y": 6
- },
- "id": 20,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_stat_replication_replay_lag_seconds{namespace=~\"$namespace\",pod=~\"$cluster-.*\"}",
- "interval": "",
- "legendFormat": "{{`{{pod}}`}} -> {{`{{application_name}}`}}",
- "refId": "A"
- }
- ],
- "title": "Replay Lag",
- "type": "timeseries"
- }
- ],
- "title": "Replication",
- "type": "row"
- },
- {
- "collapsed": true,
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 16
- },
- "id": 231,
- "panels": [
- {
- "cards": {
- "cardPadding": null,
- "cardRound": null
- },
- "color": {
- "cardColor": "#b4ff00",
- "colorScale": "sqrt",
- "colorScheme": "interpolateOranges",
- "exponent": 0.5,
- "mode": "spectrum"
- },
- "dataFormat": "timeseries",
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 63
- },
- "heatmap": {},
- "hideZeroBuckets": false,
- "highlightCards": true,
- "id": 233,
- "legend": {
- "show": false
- },
- "reverseYBuckets": false,
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_collector_collection_duration_seconds{namespace=~\"$namespace\",pod=~\"$instances\"}",
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Collection Duration",
- "tooltip": {
- "show": true,
- "showHistogram": false
- },
- "type": "heatmap",
- "xAxis": {
- "show": true
- },
- "xBucketNumber": null,
- "xBucketSize": null,
- "yAxis": {
- "decimals": null,
- "format": "s",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true,
- "splitFactor": null
- },
- "yBucketBound": "auto",
- "yBucketNumber": null,
- "yBucketSize": null
- },
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 0,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "auto",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 63
- },
- "id": 235,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_collector_last_collection_error{namespace=~\"$namespace\",pod=~\"$instances\"}",
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Errors",
- "type": "timeseries"
- }
- ],
- "title": "Collector Stats",
- "type": "row"
- },
- {
- "collapsed": true,
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 17
- },
- "id": 239,
- "panels": [
- {
- "datasource": "${DataSource}",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 0,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "auto",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "dateTimeAsIso"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 0,
- "y": 72
- },
- "id": 237,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single"
- }
- },
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_collector_first_recoverability_point{namespace=~\"$namespace\",pod=~\"$instances\"}*1000 > 0",
- "format": "time_series",
- "interval": "",
- "legendFormat": "{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "First Recoverability Point",
- "type": "timeseries"
- }
- ],
- "title": "Backups",
- "type": "row"
- },
- {
- "collapsed": true,
- "datasource": "${DataSource}",
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 18
- },
- "id": 293,
- "panels": [
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": -1,
- "drawStyle": "line",
- "fillOpacity": 8,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 6,
- "w": 5,
- "x": 0,
- "y": 79
- },
- "id": 295,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "multi"
- }
- },
- "pluginVersion": "8.2.1",
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_stat_bgwriter_checkpoints_req{namespace=~\"$namespace\",pod=~\"$instances\"}",
- "format": "time_series",
- "hide": false,
- "instant": false,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "req/{{`{{pod}}`}}",
- "refId": "B"
- },
- {
- "exemplar": true,
- "expr": "cnpg_pg_stat_bgwriter_checkpoints_timed{namespace=~\"$namespace\",pod=~\"$instances\"}",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "timed/{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Requested/Timed",
- "type": "timeseries"
- },
- {
- "datasource": "${DataSource}",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": -1,
- "drawStyle": "line",
- "fillOpacity": 8,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "ms"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 6,
- "w": 5,
- "x": 5,
- "y": 79
- },
- "id": 296,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "multi"
- }
- },
- "pluginVersion": "8.2.1",
- "targets": [
- {
- "exemplar": true,
- "expr": "cnpg_pg_stat_bgwriter_checkpoint_write_time{namespace=~\"$namespace\",pod=~\"$instances\"}",
- "format": "time_series",
- "hide": false,
- "instant": false,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "write/{{`{{pod}}`}}",
- "refId": "B"
- },
- {
- "exemplar": true,
- "expr": "cnpg_pg_stat_bgwriter_checkpoint_sync_time{namespace=~\"$namespace\",pod=~\"$instances\"}",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "sync/{{`{{pod}}`}}",
- "refId": "A"
- }
- ],
- "title": "Write/Sync time",
- "type": "timeseries"
- }
- ],
- "title": "Checkpoints",
- "type": "row"
- }
- ],
- "refresh": "30s",
- "schemaVersion": 31,
- "style": "dark",
- "tags": [],
- "templating": {
- "list": [
- {
- "current": {
- "selected": false,
- "text": "Prometheus",
- "value": "Prometheus"
- },
- "description": null,
- "error": null,
- "hide": 0,
- "includeAll": false,
- "label": "Data Source",
- "multi": false,
- "name": "DataSource",
- "options": [],
- "query": "prometheus",
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "type": "datasource"
- },
- {
- "allValue": null,
- "current": {
- "selected": false,
- "text": "default",
- "value": "default"
- },
- "datasource": "${DataSource}",
- "definition": "cnpg_collector_up",
- "description": null,
- "error": null,
- "hide": 0,
- "includeAll": false,
- "label": null,
- "multi": false,
- "name": "namespace",
- "options": [],
- "query": {
- "query": "cnpg_collector_up",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "/namespace=\"(?[^\"]+)/g",
- "skipUrlSync": false,
- "sort": 0,
- "type": "query"
- },
- {
- "allValue": null,
- "current": {
- "selected": false,
- "text": "cnp-sandbox",
- "value": "cnp-sandbox"
- },
- "datasource": "${DataSource}",
- "definition": "cnpg_collector_up{namespace=~\"$namespace\"}",
- "description": null,
- "error": null,
- "hide": 0,
- "includeAll": false,
- "label": null,
- "multi": false,
- "name": "cluster",
- "options": [],
- "query": {
- "query": "cnpg_collector_up{namespace=~\"$namespace\"}",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "/cluster=\"(?[^\"]+)/g",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- },
- {
- "allValue": null,
- "current": {
- "selected": true,
- "text": [
- "All"
- ],
- "value": [
- "$__all"
- ]
- },
- "datasource": "${DataSource}",
- "definition": "cnpg_collector_up{namespace=~\"$namespace\",pod=~\"$cluster-.*\"}",
- "description": null,
- "error": null,
- "hide": 0,
- "includeAll": true,
- "label": null,
- "multi": true,
- "name": "instances",
- "options": [],
- "query": {
- "query": "cnpg_collector_up{namespace=~\"$namespace\",pod=~\"$cluster-.*\"}",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "/pod=\"(?[^\"]+)/g",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- }
- ]
- },
- "time": {
- "from": "now-5m",
- "to": "now"
- },
- "timepicker": {
- "nowDelay": ""
- },
- "timezone": "",
- "title": "CloudNativePG",
- "uid": "z7FCA4Nnk",
- "version": 2
- }
-{{- end }}
diff --git a/attic/templates/resources/dashboards/dotdc-grafana-dashboards-kubernetes.yaml b/attic/templates/resources/dashboards/dotdc-grafana-dashboards-kubernetes.yaml
deleted file mode 100644
index b06e20bf..00000000
--- a/attic/templates/resources/dashboards/dotdc-grafana-dashboards-kubernetes.yaml
+++ /dev/null
@@ -1,21313 +0,0 @@
-apiVersion: v1
-data:
- k8s-addons-prometheus.json: |-
- {
- "__inputs": [
- {
- "name": "DS_PROMETHEUS",
- "label": "Prometheus",
- "description": "",
- "type": "datasource",
- "pluginId": "prometheus",
- "pluginName": "Prometheus"
- }
- ],
- "__elements": [],
- "__requires": [
- {
- "type": "grafana",
- "id": "grafana",
- "name": "Grafana",
- "version": "8.5.0"
- },
- {
- "type": "datasource",
- "id": "prometheus",
- "name": "Prometheus",
- "version": "5.0.0"
- },
- {
- "type": "panel",
- "id": "timeseries",
- "name": "Time series",
- "version": ""
- },
- {
- "type": "panel",
- "id": "stat",
- "name": "Stat",
- "version": ""
- },
- {
- "type": "panel",
- "id": "table",
- "name": "Table",
- "version": ""
- }
- ],
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "target": {
- "limit": 100,
- "matchAny": false,
- "tags": [],
- "type": "dashboard"
- },
- "type": "dashboard"
- }
- ]
- },
- "description": "This is a modern 'Prometheus' dashboard for your Kubernetes cluster(s). Made for kube-prometheus-stack and take advantage of the latest Grafana features. GitHub repository: https://github.com/dotdc/grafana-dashboards-kubernetes",
- "editable": true,
- "fiscalYearStartMonth": 0,
- "graphTooltip": 1,
- "links": [],
- "liveNow": false,
- "panels": [
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 89,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "refId": "A"
- }
- ],
- "title": "Information",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "?",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "orange",
- "value": null
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 0,
- "y": 1
- },
- "id": 78,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "name"
- },
- "pluginVersion": "10.0.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "prometheus_build_info{pod=~\"$pod\", cluster=~\"$cluster\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{ version }}`}}",
- "range": false,
- "refId": "A"
- }
- ],
- "title": "Prometheus version",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 1
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 6,
- "y": 1
- },
- "id": 92,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "10.0.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "up{pod=~\"$pod\", cluster=~\"$cluster\"} < 1",
- "instant": true,
- "interval": "",
- "legendFormat": "__auto",
- "range": false,
- "refId": "A"
- }
- ],
- "title": "Instance Down",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "text",
- "value": null
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 12,
- "y": 1
- },
- "id": 72,
- "options": {
- "colorMode": "value",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "10.0.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(prometheus_tsdb_head_series{pod=~\"$pod\", cluster=~\"$cluster\"}) by (pod)",
- "interval": "",
- "legendFormat": "__auto",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "TSDB Head Series",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "blue",
- "value": null
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 18,
- "y": 1
- },
- "id": 94,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "10.0.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum(prometheus_sd_discovered_targets{pod=~\"$pod\", cluster=~\"$cluster\"}) by (pod)",
- "instant": true,
- "interval": "",
- "legendFormat": "__auto",
- "range": false,
- "refId": "A"
- }
- ],
- "title": "Discovered Targets",
- "type": "stat"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 5
- },
- "id": 64,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "refId": "A"
- }
- ],
- "title": "Prometheus",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 6
- },
- "id": 93,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "up{pod=~\"$pod\", cluster=~\"$cluster\"}",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Liveness by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 6
- },
- "id": 96,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(prometheus_config_last_reload_successful{pod=~\"$pod\", cluster=~\"$cluster\"}) by (pod)",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Config - Last Successful Reload by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 14
- },
- "id": 74,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(prometheus_target_scrapes_exceeded_body_size_limit_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}} - Exceeded body size limit",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(rate(prometheus_target_scrapes_exceeded_sample_limit_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "hide": false,
- "legendFormat": "{{`{{ pod }}`}} - Exceeded sample limit",
- "range": true,
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(rate(prometheus_target_scrapes_sample_duplicate_timestamp_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "hide": false,
- "legendFormat": "{{`{{ pod }}`}} - Duplicate timestamp",
- "range": true,
- "refId": "C"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(rate(prometheus_target_scrapes_sample_out_of_bounds_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "hide": false,
- "legendFormat": "{{`{{ pod }}`}} - Sample out of bounds",
- "range": true,
- "refId": "D"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(rate(prometheus_target_scrapes_sample_out_of_order_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "hide": false,
- "legendFormat": "{{`{{ pod }}`}} - Sample out of order",
- "range": true,
- "refId": "E"
- }
- ],
- "title": "Target Scrapes Errors by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 14
- },
- "id": 84,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(prometheus_sd_discovered_targets{pod=~\"$pod\", cluster=~\"$cluster\"}) by (pod)",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Number of Targets by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "ms"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 22
- },
- "id": 75,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(prometheus_target_sync_length_seconds_sum{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod, scrape_job) * 1000",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}} - {{`{{ scrape_job }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Target Sync by pod, scrape_job",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 22
- },
- "id": 85,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "round(sum(rate(prometheus_target_interval_length_seconds_sum{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval]) / rate(prometheus_target_interval_length_seconds_count{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod))",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Average Scrape Interval by pod",
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 30
- },
- "id": 98,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "refId": "A"
- }
- ],
- "title": "Prometheus TSDB / Query Engine",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 31
- },
- "id": 59,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(prometheus_tsdb_head_series{pod=~\"$pod\", cluster=~\"$cluster\"}) by (pod)",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}} - Head Series",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(prometheus_tsdb_head_chunks{pod=~\"$pod\", cluster=~\"$cluster\"}) by (pod)",
- "hide": false,
- "legendFormat": "{{`{{ pod }}`}} - Head Chunks",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "TSDB Head Series & Chunks by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 31
- },
- "id": 60,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(prometheus_tsdb_head_samples_appended_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "TSDB Head samples appended - rate by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 39
- },
- "id": 101,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(prometheus_tsdb_blocks_loaded{pod=~\"$pod\", cluster=~\"$cluster\"}) by (pod)",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}} - Head Series",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "TSDB Blocks Loaded by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 39
- },
- "id": 102,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(prometheus_tsdb_compactions_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}} - Total Compactions",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(rate(prometheus_tsdb_compactions_triggered_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "hide": false,
- "legendFormat": "{{`{{ pod }}`}} - Triggered Compactions",
- "range": true,
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(rate(prometheus_tsdb_compactions_skipped_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "hide": false,
- "legendFormat": "{{`{{ pod }}`}} - Skipped Compactions",
- "range": true,
- "refId": "C"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(rate(prometheus_tsdb_compactions_failed_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "hide": false,
- "legendFormat": "{{`{{ pod }}`}} - Failed Compactions",
- "range": true,
- "refId": "D"
- }
- ],
- "title": "TSDB Rate of Compactions by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 47
- },
- "id": 90,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(prometheus_tsdb_reloads_failures_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "TSDB Reload Failures by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 47
- },
- "id": 95,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(prometheus_tsdb_head_series_created_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}} - Created series",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(rate(prometheus_tsdb_head_series_removed_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "hide": false,
- "legendFormat": "{{`{{ pod }}`}} - Deleted series",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "TSDB Created & Deleted series by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 55
- },
- "id": 73,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(prometheus_engine_query_duration_seconds_count{pod=~\"$pod\", slice=\"inner_eval\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Engine Query Count by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "ms"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 55
- },
- "id": 86,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "max(prometheus_engine_query_duration_seconds{pod=~\"$pod\", cluster=~\"$cluster\"}) by (pod, slice) * 1000",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}} - {{`{{ slice }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Engine Query Duration by pod, slice",
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 63
- },
- "id": 47,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "refId": "A"
- }
- ],
- "title": "Resources",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "CPU Cores",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 4,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "limit"
- },
- "properties": [
- {
- "id": "color",
- "value": {
- "fixedColor": "#F2495C",
- "mode": "fixed"
- }
- },
- {
- "id": "custom.fillOpacity",
- "value": 0
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 64
- },
- "id": 29,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(container_cpu_usage_seconds_total{pod=~\"$pod\", image!=\"\", container!=\"\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod, container)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ pod }}`}} - {{`{{ container }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "CPU Usage by pod, container",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "Bytes",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 64
- },
- "id": 51,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(container_memory_working_set_bytes{pod=~\"$pod\", image!=\"\", container!=\"\", cluster=~\"$cluster\"}) by (pod, container)",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}} - {{`{{ container }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Memory Usage by container",
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 72
- },
- "id": 66,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "refId": "A"
- }
- ],
- "title": "Storage",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 73
- },
- "id": 62,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(kubelet_volume_stats_used_bytes{persistentvolumeclaim=~\".*prom.*\", cluster=~\"$cluster\"}) by (persistentvolumeclaim) / sum(kubelet_volume_stats_capacity_bytes{persistentvolumeclaim=~\".*prom.*\", cluster=~\"$cluster\"}) by (persistentvolumeclaim)",
- "interval": "",
- "legendFormat": "{{`{{ persistentvolumeclaim }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Persistent Volumes - Capacity and usage in %",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 73
- },
- "id": 87,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(kubelet_volume_stats_used_bytes{persistentvolumeclaim=~\".*prom.*\", cluster=~\"$cluster\"}) by (persistentvolumeclaim)",
- "interval": "",
- "legendFormat": "{{`{{ persistentvolumeclaim }}`}} - Used",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(kubelet_volume_stats_capacity_bytes{persistentvolumeclaim=~\".*prom.*\", cluster=~\"$cluster\"}) by (persistentvolumeclaim)",
- "hide": false,
- "legendFormat": "{{`{{ persistentvolumeclaim }}`}} - Capacity",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Persistent Volumes - Capacity and usage in bytes",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "links": [],
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 81
- },
- "id": 68,
- "links": [],
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.4",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "1 - sum(kubelet_volume_stats_inodes_used{persistentvolumeclaim=~\".*prom.*\", cluster=~\"$cluster\"}) by (persistentvolumeclaim) / sum(kubelet_volume_stats_inodes{persistentvolumeclaim=~\".*prom.*\", cluster=~\"$cluster\"}) by (persistentvolumeclaim)",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "{{`{{ persistentvolumeclaim }}`}}",
- "range": true,
- "refId": "A",
- "step": 240
- }
- ],
- "title": "Persistent Volumes - Inodes",
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 89
- },
- "id": 45,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "refId": "A"
- }
- ],
- "title": "Network",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 90
- },
- "id": 31,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(container_network_receive_bytes_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ pod }}`}} - Received",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "- sum(rate(container_network_transmit_bytes_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ pod }}`}} - Transmitted",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Network - Bandwidth by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "pps"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 90
- },
- "id": 34,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(container_network_receive_packets_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ pod }}`}} - Received",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "- sum(rate(container_network_transmit_packets_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ pod }}`}} - Transmitted",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Network - Packets rate by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "pps"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 98
- },
- "id": 36,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(container_network_receive_packets_dropped_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ pod }}`}} - Received",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "- sum(rate(container_network_transmit_packets_dropped_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ pod }}`}} - Transmitted",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Network - Packets Dropped by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": true,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "pps"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 98
- },
- "id": 37,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(container_network_receive_errors_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ pod }}`}} - Received",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "- sum(rate(container_network_transmit_errors_total{pod=~\"$pod\", cluster=~\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ pod }}`}} - Transmitted",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Network - Errors by pod",
- "type": "timeseries"
- }
- ],
- "refresh": "30s",
- "revision": 1,
- "schemaVersion": 38,
- "style": "dark",
- "tags": [
- "Kubernetes",
- "Prometheus"
- ],
- "templating": {
- "list": [
- {
- "current": {
- "selected": true,
- "text": "Prometheus",
- "value": "Prometheus"
- },
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "datasource",
- "options": [],
- "query": "prometheus",
- "queryValue": "",
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "type": "datasource"
- },
- {
- "current": {
- "isNone": true,
- "selected": false,
- "text": "None",
- "value": ""
- },
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(kube_node_info,cluster)",
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "cluster",
- "options": [],
- "query": {
- "qryType": 1,
- "query": "label_values(kube_node_info,cluster)",
- "refId": "PrometheusVariableQueryEditor-VariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- },
- {
- "current": {
- "selected": false,
- "text": "All",
- "value": "$__all"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(prometheus_build_info{cluster=\"$cluster\"}, pod)",
- "hide": 0,
- "includeAll": true,
- "multi": false,
- "name": "pod",
- "options": [],
- "query": {
- "query": "label_values(prometheus_build_info{cluster=\"$cluster\"}, pod)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 2,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "tagValuesQuery": "",
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "current": {
- "selected": false,
- "text": "30s",
- "value": "30s"
- },
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "resolution",
- "options": [
- {
- "selected": false,
- "text": "1s",
- "value": "1s"
- },
- {
- "selected": false,
- "text": "15s",
- "value": "15s"
- },
- {
- "selected": true,
- "text": "30s",
- "value": "30s"
- },
- {
- "selected": false,
- "text": "1m",
- "value": "1m"
- },
- {
- "selected": false,
- "text": "3m",
- "value": "3m"
- },
- {
- "selected": false,
- "text": "5m",
- "value": "5m"
- }
- ],
- "query": "1s, 15s, 30s, 1m, 3m, 5m",
- "queryValue": "",
- "skipUrlSync": false,
- "type": "custom"
- }
- ]
- },
- "time": {
- "from": "now-15m",
- "to": "now"
- },
- "timepicker": {},
- "timezone": "",
- "title": "Prometheus",
- "uid": "k8s_addons_prometheus",
- "version": 3,
- "weekStart": ""
- }
-kind: ConfigMap
-metadata:
- annotations:
- grafana_folder: Kubernetes
- labels:
- grafana_dashboard: "1"
- name: dashboards-k8s-addons-prometheus
- namespace: prometheus
----
-#apiVersion: v1
-#data:
-# k8s-addons-trivy-operator.json: |
-# {
-# "__inputs": [
-# {
-# "name": "DS_PROMETHEUS",
-# "label": "Prometheus",
-# "description": "",
-# "type": "datasource",
-# "pluginId": "prometheus",
-# "pluginName": "Prometheus"
-# }
-# ],
-# "__elements": [],
-# "__requires": [
-# {
-# "type": "grafana",
-# "id": "grafana",
-# "name": "Grafana",
-# "version": "8.5.0"
-# },
-# {
-# "type": "datasource",
-# "id": "prometheus",
-# "name": "Prometheus",
-# "version": "5.0.0"
-# },
-# {
-# "type": "panel",
-# "id": "timeseries",
-# "name": "Time series",
-# "version": ""
-# },
-# {
-# "type": "panel",
-# "id": "stat",
-# "name": "Stat",
-# "version": ""
-# },
-# {
-# "type": "panel",
-# "id": "table",
-# "name": "Table",
-# "version": ""
-# }
-# ],
-# "annotations": {
-# "list": [
-# {
-# "builtIn": 1,
-# "datasource": {
-# "type": "datasource",
-# "uid": "grafana"
-# },
-# "enable": true,
-# "hide": true,
-# "iconColor": "rgba(0, 211, 255, 1)",
-# "name": "Annotations & Alerts",
-# "target": {
-# "limit": 100,
-# "matchAny": false,
-# "tags": [],
-# "type": "dashboard"
-# },
-# "type": "dashboard"
-# }
-# ]
-# },
-# "description": "This is a modern dashboard for the Trivy Operator from Aqua Security. Made to take advantage of the latest Grafana features. GitHub repository: https://github.com/dotdc/grafana-dashboards-kubernetes",
-# "editable": true,
-# "fiscalYearStartMonth": 0,
-# "graphTooltip": 1,
-# "links": [],
-# "liveNow": false,
-# "panels": [
-# {
-# "collapsed": false,
-# "datasource": {
-# "type": "datasource",
-# "uid": "grafana"
-# },
-# "gridPos": {
-# "h": 1,
-# "w": 24,
-# "x": 0,
-# "y": 0
-# },
-# "id": 43,
-# "panels": [],
-# "title": "Vulnerabilities",
-# "type": "row"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "red",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 0,
-# "y": 1
-# },
-# "id": 51,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_image_vulnerabilities{severity=\"Critical\", namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "CRITICAL",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "orange",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 4,
-# "y": 1
-# },
-# "id": 50,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_image_vulnerabilities{severity=\"High\", namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "HIGH",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "yellow",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 8,
-# "y": 1
-# },
-# "id": 49,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_image_vulnerabilities{severity=\"Medium\", namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "MEDIUM",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "blue",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 12,
-# "y": 1
-# },
-# "id": 60,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_image_vulnerabilities{severity=\"Low\", namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "LOW",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "purple",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 16,
-# "y": 1
-# },
-# "id": 52,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_image_vulnerabilities{severity=\"Unknown\", namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "UNKNOWN",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "text",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 20,
-# "y": 1
-# },
-# "id": 39,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_image_vulnerabilities{namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "TOTAL",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "palette-classic"
-# },
-# "custom": {
-# "axisCenteredZero": false,
-# "axisColorMode": "text",
-# "axisLabel": "",
-# "axisPlacement": "auto",
-# "barAlignment": 0,
-# "drawStyle": "line",
-# "fillOpacity": 15,
-# "gradientMode": "opacity",
-# "hideFrom": {
-# "legend": false,
-# "tooltip": false,
-# "viz": false
-# },
-# "lineInterpolation": "linear",
-# "lineWidth": 2,
-# "pointSize": 5,
-# "scaleDistribution": {
-# "type": "linear"
-# },
-# "showPoints": "never",
-# "spanNulls": false,
-# "stacking": {
-# "group": "A",
-# "mode": "none"
-# },
-# "thresholdsStyle": {
-# "mode": "off"
-# }
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "blue",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 8,
-# "w": 12,
-# "x": 0,
-# "y": 5
-# },
-# "id": 58,
-# "options": {
-# "legend": {
-# "calcs": [],
-# "displayMode": "table",
-# "placement": "right",
-# "showLegend": true
-# },
-# "tooltip": {
-# "mode": "single",
-# "sort": "none"
-# }
-# },
-# "pluginVersion": "8.5.0",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_image_vulnerabilities{cluster=~\"$cluster\"}) by (namespace)",
-# "instant": false,
-# "interval": "$resolution",
-# "legendFormat": "{{`{{namespace}}`}}",
-# "range": true,
-# "refId": "A"
-# }
-# ],
-# "title": "Total vulnerabilities by namespaces",
-# "type": "timeseries"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "palette-classic"
-# },
-# "custom": {
-# "axisCenteredZero": false,
-# "axisColorMode": "text",
-# "axisLabel": "",
-# "axisPlacement": "auto",
-# "barAlignment": 0,
-# "drawStyle": "line",
-# "fillOpacity": 15,
-# "gradientMode": "opacity",
-# "hideFrom": {
-# "legend": false,
-# "tooltip": false,
-# "viz": false
-# },
-# "lineInterpolation": "linear",
-# "lineWidth": 2,
-# "pointSize": 5,
-# "scaleDistribution": {
-# "type": "linear"
-# },
-# "showPoints": "never",
-# "spanNulls": false,
-# "stacking": {
-# "group": "A",
-# "mode": "none"
-# },
-# "thresholdsStyle": {
-# "mode": "off"
-# }
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "blue",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": [
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "Critical"
-# },
-# "properties": [
-# {
-# "id": "color",
-# "value": {
-# "fixedColor": "red",
-# "mode": "fixed"
-# }
-# }
-# ]
-# },
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "High"
-# },
-# "properties": [
-# {
-# "id": "color",
-# "value": {
-# "fixedColor": "orange",
-# "mode": "fixed"
-# }
-# }
-# ]
-# },
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "Medium"
-# },
-# "properties": [
-# {
-# "id": "color",
-# "value": {
-# "fixedColor": "yellow",
-# "mode": "fixed"
-# }
-# }
-# ]
-# },
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "Low"
-# },
-# "properties": [
-# {
-# "id": "color",
-# "value": {
-# "fixedColor": "blue",
-# "mode": "fixed"
-# }
-# }
-# ]
-# },
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "Unknown"
-# },
-# "properties": [
-# {
-# "id": "color",
-# "value": {
-# "fixedColor": "purple",
-# "mode": "fixed"
-# }
-# }
-# ]
-# }
-# ]
-# },
-# "gridPos": {
-# "h": 8,
-# "w": 12,
-# "x": 12,
-# "y": 5
-# },
-# "id": 61,
-# "options": {
-# "legend": {
-# "calcs": [],
-# "displayMode": "table",
-# "placement": "right",
-# "showLegend": true
-# },
-# "tooltip": {
-# "mode": "multi",
-# "sort": "desc"
-# }
-# },
-# "pluginVersion": "8.5.0",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_image_vulnerabilities{cluster=~\"$cluster\"}) by (severity)",
-# "instant": false,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "range": true,
-# "refId": "A"
-# }
-# ],
-# "title": "Total vulnerabilities by severity",
-# "type": "timeseries"
-# },
-# {
-# "collapsed": false,
-# "gridPos": {
-# "h": 1,
-# "w": 24,
-# "x": 0,
-# "y": 13
-# },
-# "id": 85,
-# "panels": [],
-# "title": "Vulnerability Details",
-# "type": "row"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "description": "",
-# "fieldConfig": {
-# "defaults": {
-# "custom": {
-# "align": "auto",
-# "displayMode": "auto",
-# "filterable": true,
-# "inspect": false
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "orange",
-# "value": 80
-# }
-# ]
-# }
-# },
-# "overrides": [
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "severity"
-# },
-# "properties": [
-# {
-# "id": "mappings",
-# "value": [
-# {
-# "options": {
-# "Critical": {
-# "color": "red",
-# "index": 0
-# },
-# "High": {
-# "color": "orange",
-# "index": 1
-# },
-# "Low": {
-# "color": "blue",
-# "index": 3
-# },
-# "Medium": {
-# "color": "yellow",
-# "index": 2
-# },
-# "Unknown": {
-# "color": "purple",
-# "index": 4
-# }
-# },
-# "type": "value"
-# }
-# ]
-# },
-# {
-# "id": "custom.displayMode",
-# "value": "color-text"
-# }
-# ]
-# }
-# ]
-# },
-# "gridPos": {
-# "h": 12,
-# "w": 24,
-# "x": 0,
-# "y": 14
-# },
-# "id": 83,
-# "options": {
-# "footer": {
-# "enablePagination": true,
-# "fields": [
-# "Value"
-# ],
-# "reducer": [
-# "sum"
-# ],
-# "show": false
-# },
-# "showHeader": true,
-# "sortBy": []
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_image_vulnerabilities{namespace=~\"$namespace\", cluster=~\"$cluster\"}) by (namespace, image_registry, image_repository, image_tag, severity) > 0",
-# "format": "table",
-# "instant": false,
-# "legendFormat": "__auto",
-# "range": true,
-# "refId": "A"
-# }
-# ],
-# "title": "Vulnerability count per image and severity in $namespace namespace(s)",
-# "transformations": [
-# {
-# "id": "organize",
-# "options": {
-# "excludeByName": {
-# "Time": true,
-# "Value": false
-# },
-# "indexByName": {
-# "Time": 0,
-# "Value": 6,
-# "image_registry": 2,
-# "image_repository": 3,
-# "image_tag": 4,
-# "namespace": 1,
-# "severity": 5
-# },
-# "renameByName": {
-# "Value": "Nb of vulnerabilities",
-# "image_registry": "Image Registry",
-# "image_repository": "Image Repository",
-# "image_tag": "Image Tag",
-# "namespace": "Namespace",
-# "severity": "Severity"
-# }
-# }
-# },
-# {
-# "id": "groupBy",
-# "options": {
-# "fields": {
-# "All values": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "Count": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "Image Registry": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "Image Repository": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "Image Tag": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "Namespace": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "Nb of vulnerabilities": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "Severity": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "Value": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "image_registry": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "image_repository": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "image_tag": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "namespace": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "severity": {
-# "aggregations": [],
-# "operation": "groupby"
-# }
-# }
-# }
-# }
-# ],
-# "type": "table"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "description": "Require operator.metricsVulnIdEnabled: true",
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "custom": {
-# "align": "auto",
-# "displayMode": "auto",
-# "filterable": true,
-# "inspect": false
-# },
-# "links": [],
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "blue",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": [
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "severity"
-# },
-# "properties": [
-# {
-# "id": "mappings",
-# "value": [
-# {
-# "options": {
-# "Critical": {
-# "color": "red",
-# "index": 0
-# },
-# "High": {
-# "color": "orange",
-# "index": 1
-# },
-# "Low": {
-# "color": "blue",
-# "index": 3
-# },
-# "Medium": {
-# "color": "yellow",
-# "index": 2
-# },
-# "Unknown": {
-# "color": "purple",
-# "index": 4
-# }
-# },
-# "type": "value"
-# }
-# ]
-# },
-# {
-# "id": "custom.displayMode",
-# "value": "color-text"
-# }
-# ]
-# },
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "vuln_id"
-# },
-# "properties": [
-# {
-# "id": "links",
-# "value": [
-# {
-# "targetBlank": true,
-# "title": "https://nvd.nist.gov/vuln/detail/${__value.text}",
-# "url": "https://nvd.nist.gov/vuln/detail/${__value.text}"
-# }
-# ]
-# }
-# ]
-# }
-# ]
-# },
-# "gridPos": {
-# "h": 12,
-# "w": 24,
-# "x": 0,
-# "y": 26
-# },
-# "id": 78,
-# "options": {
-# "footer": {
-# "enablePagination": true,
-# "fields": "",
-# "reducer": [
-# "sum"
-# ],
-# "show": false
-# },
-# "showHeader": true,
-# "sortBy": []
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_vulnerability_id{vuln_id=~\"CVE.*\", namespace=~\"$namespace\", cluster=~\"$cluster\"}) by (namespace, image_registry, image_repository, image_tag, vuln_id, severity)",
-# "format": "table",
-# "instant": false,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "range": true,
-# "refId": "A"
-# }
-# ],
-# "title": "Detaillled CVE vulnerabilities in $namespace namespace(s)",
-# "transformations": [
-# {
-# "id": "organize",
-# "options": {
-# "excludeByName": {
-# "Time": true,
-# "Value": true,
-# "__name__": true,
-# "container": true,
-# "endpoint": true,
-# "instance": true,
-# "job": true,
-# "namespace": false,
-# "service": true
-# },
-# "indexByName": {
-# "Time": 0,
-# "Value": 7,
-# "image_registry": 2,
-# "image_repository": 3,
-# "image_tag": 4,
-# "namespace": 1,
-# "severity": 6,
-# "vuln_id": 5
-# },
-# "renameByName": {
-# "image_namespace": "namespace",
-# "image_registry": "Image Registry",
-# "image_repository": "Image Repository",
-# "image_tag": "Image Tag",
-# "namespace": "Namespace",
-# "severity": "Severity",
-# "vuln_id": "Vulnerability",
-# "vulnerability_id": ""
-# }
-# }
-# },
-# {
-# "id": "groupBy",
-# "options": {
-# "fields": {
-# "Image Registry": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "Image Repository": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "Image Tag": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "Namespace": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "Severity": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "Value": {
-# "aggregations": [
-# "lastNotNull"
-# ]
-# },
-# "Vulnerability": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "image_namespace": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "namespace": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "severity": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "vuln_id": {
-# "aggregations": [],
-# "operation": "groupby"
-# },
-# "vulnerability_id": {
-# "aggregations": [],
-# "operation": "groupby"
-# }
-# }
-# }
-# }
-# ],
-# "type": "table"
-# },
-# {
-# "collapsed": false,
-# "datasource": {
-# "type": "datasource",
-# "uid": "grafana"
-# },
-# "gridPos": {
-# "h": 1,
-# "w": 24,
-# "x": 0,
-# "y": 38
-# },
-# "id": 47,
-# "panels": [],
-# "title": "Config Audit Reports",
-# "type": "row"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "red",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 0,
-# "y": 39
-# },
-# "id": 56,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_resource_configaudits{severity=\"Critical\", namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "CRITICAL",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "orange",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 4,
-# "y": 39
-# },
-# "id": 55,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_resource_configaudits{severity=\"High\", namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "HIGH",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "yellow",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 8,
-# "y": 39
-# },
-# "id": 54,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_resource_configaudits{severity=\"Medium\", namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "MEDIUM",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "blue",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 12,
-# "y": 39
-# },
-# "id": 53,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_resource_configaudits{severity=\"Low\", namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "LOW",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "text",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 16,
-# "y": 39
-# },
-# "id": 65,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_resource_configaudits{namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "TOTAL",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "palette-classic"
-# },
-# "custom": {
-# "axisCenteredZero": false,
-# "axisColorMode": "text",
-# "axisLabel": "",
-# "axisPlacement": "auto",
-# "barAlignment": 0,
-# "drawStyle": "line",
-# "fillOpacity": 15,
-# "gradientMode": "opacity",
-# "hideFrom": {
-# "legend": false,
-# "tooltip": false,
-# "viz": false
-# },
-# "lineInterpolation": "linear",
-# "lineWidth": 2,
-# "pointSize": 5,
-# "scaleDistribution": {
-# "type": "linear"
-# },
-# "showPoints": "never",
-# "spanNulls": false,
-# "stacking": {
-# "group": "A",
-# "mode": "none"
-# },
-# "thresholdsStyle": {
-# "mode": "off"
-# }
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "blue",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 8,
-# "w": 12,
-# "x": 0,
-# "y": 43
-# },
-# "id": 62,
-# "options": {
-# "legend": {
-# "calcs": [],
-# "displayMode": "table",
-# "placement": "right",
-# "showLegend": true
-# },
-# "tooltip": {
-# "mode": "single",
-# "sort": "none"
-# }
-# },
-# "pluginVersion": "8.5.0",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_resource_configaudits{cluster=~\"$cluster\"}) by (namespace)",
-# "instant": false,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "range": true,
-# "refId": "A"
-# }
-# ],
-# "title": "Total config audit report by namespaces",
-# "type": "timeseries"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "palette-classic"
-# },
-# "custom": {
-# "axisCenteredZero": false,
-# "axisColorMode": "text",
-# "axisLabel": "",
-# "axisPlacement": "auto",
-# "barAlignment": 0,
-# "drawStyle": "line",
-# "fillOpacity": 15,
-# "gradientMode": "opacity",
-# "hideFrom": {
-# "legend": false,
-# "tooltip": false,
-# "viz": false
-# },
-# "lineInterpolation": "linear",
-# "lineWidth": 2,
-# "pointSize": 5,
-# "scaleDistribution": {
-# "type": "linear"
-# },
-# "showPoints": "never",
-# "spanNulls": false,
-# "stacking": {
-# "group": "A",
-# "mode": "none"
-# },
-# "thresholdsStyle": {
-# "mode": "off"
-# }
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "blue",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": [
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "Critical"
-# },
-# "properties": [
-# {
-# "id": "color",
-# "value": {
-# "fixedColor": "red",
-# "mode": "fixed"
-# }
-# }
-# ]
-# },
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "High"
-# },
-# "properties": [
-# {
-# "id": "color",
-# "value": {
-# "fixedColor": "orange",
-# "mode": "fixed"
-# }
-# }
-# ]
-# },
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "Medium"
-# },
-# "properties": [
-# {
-# "id": "color",
-# "value": {
-# "fixedColor": "yellow",
-# "mode": "fixed"
-# }
-# }
-# ]
-# },
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "Low"
-# },
-# "properties": [
-# {
-# "id": "color",
-# "value": {
-# "fixedColor": "blue",
-# "mode": "fixed"
-# }
-# }
-# ]
-# }
-# ]
-# },
-# "gridPos": {
-# "h": 8,
-# "w": 12,
-# "x": 12,
-# "y": 43
-# },
-# "id": 63,
-# "options": {
-# "legend": {
-# "calcs": [],
-# "displayMode": "table",
-# "placement": "right",
-# "showLegend": true
-# },
-# "tooltip": {
-# "mode": "multi",
-# "sort": "desc"
-# }
-# },
-# "pluginVersion": "8.5.0",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_resource_configaudits{cluster=~\"$cluster\"}) by (severity)",
-# "instant": false,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "range": true,
-# "refId": "A"
-# }
-# ],
-# "title": "Total config audit report by severity",
-# "type": "timeseries"
-# },
-# {
-# "collapsed": false,
-# "gridPos": {
-# "h": 1,
-# "w": 24,
-# "x": 0,
-# "y": 51
-# },
-# "id": 68,
-# "panels": [],
-# "title": "RBAC Assessments",
-# "type": "row"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "red",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 0,
-# "y": 52
-# },
-# "id": 72,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_role_rbacassessments{severity=\"Critical\", namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "CRITICAL",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "orange",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 4,
-# "y": 52
-# },
-# "id": 71,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_role_rbacassessments{severity=\"High\", namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "HIGH",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "yellow",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 8,
-# "y": 52
-# },
-# "id": 70,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_role_rbacassessments{severity=\"Medium\", namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "MEDIUM",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "blue",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 12,
-# "y": 52
-# },
-# "id": 69,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_role_rbacassessments{severity=\"Low\", namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "LOW",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "thresholds"
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "text",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 4,
-# "w": 4,
-# "x": 16,
-# "y": 52
-# },
-# "id": 73,
-# "options": {
-# "colorMode": "value",
-# "graphMode": "area",
-# "justifyMode": "auto",
-# "orientation": "auto",
-# "reduceOptions": {
-# "calcs": [
-# "last"
-# ],
-# "fields": "",
-# "values": false
-# },
-# "textMode": "auto"
-# },
-# "pluginVersion": "9.3.8",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_role_rbacassessments{namespace=~\"$namespace\", cluster=~\"$cluster\"})",
-# "instant": true,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "refId": "A"
-# }
-# ],
-# "title": "TOTAL",
-# "type": "stat"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "palette-classic"
-# },
-# "custom": {
-# "axisCenteredZero": false,
-# "axisColorMode": "text",
-# "axisLabel": "",
-# "axisPlacement": "auto",
-# "barAlignment": 0,
-# "drawStyle": "line",
-# "fillOpacity": 15,
-# "gradientMode": "opacity",
-# "hideFrom": {
-# "legend": false,
-# "tooltip": false,
-# "viz": false
-# },
-# "lineInterpolation": "linear",
-# "lineWidth": 2,
-# "pointSize": 5,
-# "scaleDistribution": {
-# "type": "linear"
-# },
-# "showPoints": "never",
-# "spanNulls": false,
-# "stacking": {
-# "group": "A",
-# "mode": "none"
-# },
-# "thresholdsStyle": {
-# "mode": "off"
-# }
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "blue",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 8,
-# "w": 12,
-# "x": 0,
-# "y": 56
-# },
-# "id": 74,
-# "options": {
-# "legend": {
-# "calcs": [],
-# "displayMode": "table",
-# "placement": "right",
-# "showLegend": true
-# },
-# "tooltip": {
-# "mode": "single",
-# "sort": "none"
-# }
-# },
-# "pluginVersion": "8.5.0",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_role_rbacassessments{cluster=~\"$cluster\"}) by (namespace)",
-# "instant": false,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "range": true,
-# "refId": "A"
-# }
-# ],
-# "title": "Total RBAC Assessments by namespaces",
-# "type": "timeseries"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "palette-classic"
-# },
-# "custom": {
-# "axisCenteredZero": false,
-# "axisColorMode": "text",
-# "axisLabel": "",
-# "axisPlacement": "auto",
-# "barAlignment": 0,
-# "drawStyle": "line",
-# "fillOpacity": 15,
-# "gradientMode": "opacity",
-# "hideFrom": {
-# "legend": false,
-# "tooltip": false,
-# "viz": false
-# },
-# "lineInterpolation": "linear",
-# "lineWidth": 2,
-# "pointSize": 5,
-# "scaleDistribution": {
-# "type": "linear"
-# },
-# "showPoints": "never",
-# "spanNulls": false,
-# "stacking": {
-# "group": "A",
-# "mode": "none"
-# },
-# "thresholdsStyle": {
-# "mode": "off"
-# }
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "blue",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": [
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "Critical"
-# },
-# "properties": [
-# {
-# "id": "color",
-# "value": {
-# "fixedColor": "red",
-# "mode": "fixed"
-# }
-# }
-# ]
-# },
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "High"
-# },
-# "properties": [
-# {
-# "id": "color",
-# "value": {
-# "fixedColor": "orange",
-# "mode": "fixed"
-# }
-# }
-# ]
-# },
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "Medium"
-# },
-# "properties": [
-# {
-# "id": "color",
-# "value": {
-# "fixedColor": "yellow",
-# "mode": "fixed"
-# }
-# }
-# ]
-# },
-# {
-# "matcher": {
-# "id": "byName",
-# "options": "Low"
-# },
-# "properties": [
-# {
-# "id": "color",
-# "value": {
-# "fixedColor": "blue",
-# "mode": "fixed"
-# }
-# }
-# ]
-# }
-# ]
-# },
-# "gridPos": {
-# "h": 8,
-# "w": 12,
-# "x": 12,
-# "y": 56
-# },
-# "id": 75,
-# "options": {
-# "legend": {
-# "calcs": [],
-# "displayMode": "table",
-# "placement": "right",
-# "showLegend": true
-# },
-# "tooltip": {
-# "mode": "multi",
-# "sort": "desc"
-# }
-# },
-# "pluginVersion": "8.5.0",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_role_rbacassessments{cluster=~\"$cluster\"}) by (severity)",
-# "instant": false,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "range": true,
-# "refId": "A"
-# }
-# ],
-# "title": "Total RBAC Assessments by severity",
-# "type": "timeseries"
-# },
-# {
-# "collapsed": false,
-# "gridPos": {
-# "h": 1,
-# "w": 24,
-# "x": 0,
-# "y": 64
-# },
-# "id": 81,
-# "panels": [],
-# "title": "Exposed Secrets",
-# "type": "row"
-# },
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "fieldConfig": {
-# "defaults": {
-# "color": {
-# "mode": "palette-classic"
-# },
-# "custom": {
-# "axisCenteredZero": false,
-# "axisColorMode": "text",
-# "axisLabel": "",
-# "axisPlacement": "auto",
-# "barAlignment": 0,
-# "drawStyle": "line",
-# "fillOpacity": 15,
-# "gradientMode": "opacity",
-# "hideFrom": {
-# "legend": false,
-# "tooltip": false,
-# "viz": false
-# },
-# "lineInterpolation": "linear",
-# "lineWidth": 2,
-# "pointSize": 5,
-# "scaleDistribution": {
-# "type": "linear"
-# },
-# "showPoints": "never",
-# "spanNulls": false,
-# "stacking": {
-# "group": "A",
-# "mode": "none"
-# },
-# "thresholdsStyle": {
-# "mode": "off"
-# }
-# },
-# "mappings": [],
-# "thresholds": {
-# "mode": "absolute",
-# "steps": [
-# {
-# "color": "green",
-# "value": null
-# },
-# {
-# "color": "blue",
-# "value": 1
-# }
-# ]
-# },
-# "unit": "none"
-# },
-# "overrides": []
-# },
-# "gridPos": {
-# "h": 8,
-# "w": 24,
-# "x": 0,
-# "y": 65
-# },
-# "id": 76,
-# "options": {
-# "legend": {
-# "calcs": [],
-# "displayMode": "table",
-# "placement": "right",
-# "showLegend": true
-# },
-# "tooltip": {
-# "mode": "single",
-# "sort": "none"
-# }
-# },
-# "pluginVersion": "8.5.0",
-# "targets": [
-# {
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "editorMode": "code",
-# "exemplar": false,
-# "expr": "sum(trivy_image_exposedsecrets{cluster=~\"$cluster\"}) by (namespace)",
-# "instant": false,
-# "interval": "$resolution",
-# "legendFormat": "__auto",
-# "range": true,
-# "refId": "A"
-# }
-# ],
-# "title": "Total Exposed Secrets by namespaces",
-# "type": "timeseries"
-# }
-# ],
-# "refresh": "30s",
-# "schemaVersion": 37,
-# "style": "dark",
-# "tags": [
-# "Prometheus",
-# "Addons",
-# "Trivy",
-# "Trivy-operator"
-# ],
-# "templating": {
-# "list": [
-# {
-# "current": {
-# "selected": false,
-# "text": "Prometheus",
-# "value": "Prometheus"
-# },
-# "hide": 0,
-# "includeAll": false,
-# "multi": false,
-# "name": "datasource",
-# "options": [],
-# "query": "prometheus",
-# "queryValue": "",
-# "refresh": 1,
-# "regex": "",
-# "skipUrlSync": false,
-# "type": "datasource"
-# },
-# {
-# "current": {
-# "isNone": true,
-# "selected": false,
-# "text": "None",
-# "value": ""
-# },
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "definition": "label_values(kube_node_info,cluster)",
-# "hide": 0,
-# "includeAll": false,
-# "multi": false,
-# "name": "cluster",
-# "options": [],
-# "query": {
-# "qryType": 1,
-# "query": "label_values(kube_node_info,cluster)",
-# "refId": "PrometheusVariableQueryEditor-VariableQuery"
-# },
-# "refresh": 1,
-# "regex": "",
-# "skipUrlSync": false,
-# "sort": 1,
-# "type": "query"
-# },
-# {
-# "current": {
-# "selected": true,
-# "text": [
-# "All"
-# ],
-# "value": [
-# "$__all"
-# ]
-# },
-# "datasource": {
-# "type": "prometheus",
-# "uid": "${datasource}"
-# },
-# "definition": "label_values(kube_pod_info{cluster=\"$cluster\"}, namespace)",
-# "hide": 0,
-# "includeAll": true,
-# "multi": true,
-# "name": "namespace",
-# "options": [],
-# "query": {
-# "query": "label_values(kube_pod_info{cluster=\"$cluster\"}, namespace)",
-# "refId": "StandardVariableQuery"
-# },
-# "refresh": 1,
-# "regex": "",
-# "skipUrlSync": false,
-# "sort": 1,
-# "type": "query"
-# },
-# {
-# "current": {
-# "selected": true,
-# "text": "30s",
-# "value": "30s"
-# },
-# "hide": 0,
-# "includeAll": false,
-# "multi": false,
-# "name": "resolution",
-# "options": [
-# {
-# "selected": false,
-# "text": "1s",
-# "value": "1s"
-# },
-# {
-# "selected": false,
-# "text": "15s",
-# "value": "15s"
-# },
-# {
-# "selected": true,
-# "text": "30s",
-# "value": "30s"
-# },
-# {
-# "selected": false,
-# "text": "1m",
-# "value": "1m"
-# },
-# {
-# "selected": false,
-# "text": "3m",
-# "value": "3m"
-# },
-# {
-# "selected": false,
-# "text": "5m",
-# "value": "5m"
-# }
-# ],
-# "query": "1s, 15s, 30s, 1m, 3m, 5m",
-# "queryValue": "",
-# "skipUrlSync": false,
-# "type": "custom"
-# }
-# ]
-# },
-# "time": {
-# "from": "now-1h",
-# "to": "now"
-# },
-# "timepicker": {},
-# "timezone": "",
-# "title": "Trivy Operator - Vulnerabilities",
-# "uid": "security_trivy_operator",
-# "version": 12,
-# "weekStart": ""
-# }
-#kind: ConfigMap
-#metadata:
-# annotations:
-# grafana_folder: Kubernetes
-# labels:
-# grafana_dashboard: "1"
-# name: dashboards-k8s-addons-trivy-operator
-# namespace: prometheus
----
-apiVersion: v1
-data:
- k8s-system-api-server.json: |
- {
- "__inputs": [
- {
- "name": "DS_PROMETHEUS",
- "label": "Prometheus",
- "description": "",
- "type": "datasource",
- "pluginId": "prometheus",
- "pluginName": "Prometheus"
- }
- ],
- "__elements": [],
- "__requires": [
- {
- "type": "grafana",
- "id": "grafana",
- "name": "Grafana",
- "version": "8.4.4"
- },
- {
- "type": "datasource",
- "id": "prometheus",
- "name": "Prometheus",
- "version": "5.0.0"
- },
- {
- "type": "panel",
- "id": "timeseries",
- "name": "Time series",
- "version": ""
- },
- {
- "type": "panel",
- "id": "stat",
- "name": "Stat",
- "version": ""
- }
- ],
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "target": {
- "limit": 100,
- "matchAny": false,
- "tags": [],
- "type": "dashboard"
- },
- "type": "dashboard"
- }
- ]
- },
- "description": "This is a modern API Server dashboard for your Kubernetes cluster(s). Made for kube-prometheus-stack and take advantage of the latest Grafana features. GitHub repository: https://github.com/dotdc/grafana-dashboards-kubernetes",
- "editable": true,
- "fiscalYearStartMonth": 0,
- "graphTooltip": 1,
- "links": [],
- "liveNow": false,
- "panels": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [
- {
- "options": {
- "0": {
- "text": "DOWN"
- },
- "1": {
- "text": "UP"
- }
- },
- "type": "value"
- }
- ],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "red",
- "value": null
- },
- {
- "color": "green",
- "value": 1
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 0
- },
- "id": 42,
- "options": {
- "colorMode": "background",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "textMode": "value_and_name"
- },
- "pluginVersion": "10.0.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "up{job=~\"kubernetes-apiservers|apiserver\", cluster=~\"$cluster\"}",
- "interval": "",
- "legendFormat": "{{`{{ instance }}`}}",
- "refId": "A"
- }
- ],
- "title": "API Server - Health Status",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "custom": {
- "align": "auto",
- "cellOptions": {
- "type": "auto"
- },
- "inspect": false
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "__name__"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 188
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 0
- },
- "id": 60,
- "options": {
- "cellHeight": "sm",
- "footer": {
- "countRows": false,
- "fields": "",
- "reducer": [
- "sum"
- ],
- "show": false
- },
- "showHeader": true,
- "sortBy": [
- {
- "desc": false,
- "displayName": "removed_release"
- }
- ]
- },
- "pluginVersion": "10.0.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "apiserver_requested_deprecated_apis{cluster=~\"$cluster\"}",
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Deprecated Kubernetes Resources",
- "transformations": [
- {
- "id": "labelsToFields",
- "options": {
- "keepLabels": [
- "group",
- "job",
- "removed_release",
- "resource",
- "version",
- "name"
- ],
- "mode": "columns"
- }
- },
- {
- "id": "merge",
- "options": {}
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {
- "Time": true,
- "Value": true,
- "job": true
- },
- "indexByName": {
- "Time": 6,
- "Value": 7,
- "group": 1,
- "job": 5,
- "namespace": 0,
- "removed_release": 4,
- "resource": 3,
- "version": 2
- },
- "renameByName": {}
- }
- },
- {
- "id": "groupBy",
- "options": {
- "fields": {
- "group": {
- "aggregations": [
- "lastNotNull"
- ],
- "operation": "groupby"
- },
- "job": {
- "aggregations": [],
- "operation": "groupby"
- },
- "namespace": {
- "aggregations": [
- "lastNotNull"
- ],
- "operation": "groupby"
- },
- "removed_release": {
- "aggregations": [],
- "operation": "groupby"
- },
- "resource": {
- "aggregations": [
- "lastNotNull"
- ],
- "operation": "groupby"
- },
- "version": {
- "aggregations": [],
- "operation": "groupby"
- }
- }
- }
- }
- ],
- "type": "table"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 8
- },
- "id": 38,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum by (code) (rate(apiserver_request_total{cluster=~\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "{{`{{ code }}`}}",
- "refId": "A"
- }
- ],
- "title": "API Server - HTTP Requests by code",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 8
- },
- "id": 39,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum by (verb) (rate(apiserver_request_total{cluster=~\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "{{`{{ verb}}`}}",
- "refId": "A"
- }
- ],
- "title": "API Server - HTTP Requests by verb",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "ms"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 16
- },
- "id": 53,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(apiserver_request_duration_seconds_sum{job=~\"kubernetes-apiservers|apiserver\", cluster=~\"$cluster\"}[$__rate_interval])) by (instance)\n/\nsum(rate(apiserver_request_duration_seconds_count{job=~\"kubernetes-apiservers|apiserver\", cluster=~\"$cluster\"}[$__rate_interval])) by (instance)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ instance }}`}}",
- "refId": "A"
- }
- ],
- "title": "API Server - HTTP Requests Latency by instance",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "ms"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 16
- },
- "id": 54,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(apiserver_request_duration_seconds_sum{job=~\"kubernetes-apiservers|apiserver\", cluster=~\"$cluster\"}[$__rate_interval])) by (verb)\n/\nsum(rate(apiserver_request_duration_seconds_count{job=~\"kubernetes-apiservers|apiserver\", cluster=~\"$cluster\"}[$__rate_interval])) by (verb)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ verb }}`}}",
- "refId": "A"
- }
- ],
- "title": "API Server - HTTP Requests Latency by verb",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 24
- },
- "id": 50,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum by(instance) (rate(apiserver_request_total{code=~\"5..\", job=~\"kubernetes-apiservers|apiserver\", cluster=~\"$cluster\"}[$__rate_interval]))\n / sum by(instance) (rate(apiserver_request_total{job=~\"kubernetes-apiservers|apiserver\", cluster=~\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "{{`{{ instance }}`}}",
- "refId": "A"
- }
- ],
- "title": "API Server - Errors by Instance",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 24
- },
- "id": 51,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum by(verb) (rate(apiserver_request_total{code=~\"5..\",job=~\"kubernetes-apiservers|apiserver\", cluster=~\"$cluster\"}[$__rate_interval]))\n / sum by(verb) (rate(apiserver_request_total{job=~\"kubernetes-apiservers|apiserver\", cluster=~\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "{{`{{ verb }}`}}",
- "refId": "A"
- }
- ],
- "title": "API Server - Errors by verb",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "normal"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 32
- },
- "id": 40,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(apiserver_request_total{cluster=~\"$cluster\"}[$__rate_interval])) by (instance)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ instance }}`}}",
- "refId": "A"
- }
- ],
- "title": "API Server - Stacked HTTP Requests by instance",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 32
- },
- "id": 56,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(workqueue_depth{job=~\"kubernetes-apiservers|apiserver\", cluster=~\"$cluster\"}[$__rate_interval])) by (instance)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ instance }}`}}",
- "refId": "A"
- }
- ],
- "title": "API Server - Work Queue by instance",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 40
- },
- "id": 47,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "rate(process_cpu_seconds_total{job=~\"kubernetes-apiservers|apiserver\", cluster=~\"$cluster\"}[$__rate_interval])",
- "interval": "$resolution",
- "legendFormat": "{{`{{ instance }}`}}",
- "refId": "A"
- }
- ],
- "title": "API Server - CPU Usage by instance",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 40
- },
- "id": 48,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "process_resident_memory_bytes{job=~\"kubernetes-apiservers|apiserver\", cluster=~\"$cluster\"}",
- "interval": "$resolution",
- "legendFormat": "{{`{{ instance }}`}}",
- "refId": "A"
- }
- ],
- "title": "API Server - Memory Usage by instance",
- "type": "timeseries"
- }
- ],
- "refresh": "30s",
- "schemaVersion": 38,
- "style": "dark",
- "tags": [
- "Kubernetes",
- "Prometheus"
- ],
- "templating": {
- "list": [
- {
- "current": {
- "selected": false,
- "text": "Prometheus",
- "value": "Prometheus"
- },
- "hide": 0,
- "includeAll": false,
- "label": "",
- "multi": false,
- "name": "datasource",
- "options": [],
- "query": "prometheus",
- "queryValue": "",
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "type": "datasource"
- },
- {
- "current": {
- "isNone": true,
- "selected": false,
- "text": "None",
- "value": ""
- },
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(kube_node_info,cluster)",
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "cluster",
- "options": [],
- "query": {
- "qryType": 1,
- "query": "label_values(kube_node_info,cluster)",
- "refId": "PrometheusVariableQueryEditor-VariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- },
- {
- "current": {
- "selected": true,
- "text": "30s",
- "value": "30s"
- },
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "resolution",
- "options": [
- {
- "selected": false,
- "text": "1s",
- "value": "1s"
- },
- {
- "selected": false,
- "text": "15s",
- "value": "15s"
- },
- {
- "selected": true,
- "text": "30s",
- "value": "30s"
- },
- {
- "selected": false,
- "text": "1m",
- "value": "1m"
- },
- {
- "selected": false,
- "text": "3m",
- "value": "3m"
- },
- {
- "selected": false,
- "text": "5m",
- "value": "5m"
- }
- ],
- "query": "1s, 15s, 30s, 1m, 3m, 5m",
- "queryValue": "",
- "skipUrlSync": false,
- "type": "custom"
- }
- ]
- },
- "time": {
- "from": "now-1h",
- "to": "now"
- },
- "timepicker": {},
- "timezone": "",
- "title": "Kubernetes / System / API Server",
- "uid": "k8s_system_apisrv",
- "version": 17,
- "weekStart": ""
- }
-kind: ConfigMap
-metadata:
- annotations:
- grafana_folder: Kubernetes
- labels:
- grafana_dashboard: "1"
- name: dashboards-k8s-system-api-server
- namespace: prometheus
----
-apiVersion: v1
-data:
- k8s-system-coredns.json: |
- {
- "__inputs": [
- {
- "name": "DS_PROMETHEUS",
- "label": "Prometheus",
- "description": "",
- "type": "datasource",
- "pluginId": "prometheus",
- "pluginName": "Prometheus"
- }
- ],
- "__elements": [],
- "__requires": [
- {
- "type": "grafana",
- "id": "grafana",
- "name": "Grafana",
- "version": "8.4.4"
- },
- {
- "type": "datasource",
- "id": "prometheus",
- "name": "Prometheus",
- "version": "5.0.0"
- },
- {
- "type": "panel",
- "id": "timeseries",
- "name": "Time series",
- "version": ""
- },
- {
- "type": "panel",
- "id": "stat",
- "name": "Stat",
- "version": ""
- }
- ],
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "target": {
- "limit": 100,
- "matchAny": false,
- "tags": [],
- "type": "dashboard"
- },
- "type": "dashboard"
- }
- ]
- },
- "description": "This is a modern CoreDNS dashboard for your Kubernetes cluster(s). Made for kube-prometheus-stack and take advantage of the latest Grafana features. GitHub repository: https://github.com/dotdc/grafana-dashboards-kubernetes",
- "editable": true,
- "fiscalYearStartMonth": 0,
- "graphTooltip": 1,
- "links": [],
- "liveNow": false,
- "panels": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [
- {
- "options": {
- "0": {
- "text": "DOWN"
- },
- "1": {
- "text": "UP"
- }
- },
- "type": "value"
- }
- ],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "red",
- "value": null
- },
- {
- "color": "green",
- "value": 1
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 25,
- "options": {
- "colorMode": "background",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "vertical",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "textMode": "value_and_name",
- "wideLayout": true
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "up{job=~\"$job\", instance=~\"$instance\", cluster=~\"$cluster\"}",
- "interval": "",
- "legendFormat": "{{`{{ instance }}`}}",
- "refId": "A"
- }
- ],
- "title": "CoreDNS - Health Status",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 3
- },
- "id": 19,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "rate(process_cpu_seconds_total{job=~\"$job\", instance=~\"$instance\", cluster=~\"$cluster\"}[$__rate_interval])",
- "interval": "$resolution",
- "legendFormat": "{{`{{ instance }}`}}",
- "refId": "A"
- }
- ],
- "title": "CoreDNS - CPU Usage by instance",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 3
- },
- "id": 21,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "process_resident_memory_bytes{job=~\"$job\", instance=~\"$instance\", cluster=~\"$cluster\"}",
- "interval": "",
- "legendFormat": "{{`{{ instance }}`}}",
- "refId": "A"
- }
- ],
- "title": "CoreDNS - Memory Usage by instance",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 11
- },
- "id": 9,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(coredns_dns_requests_total{instance=~\"$instance\",proto=\"$protocol\", cluster=~\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "total $protocol requests",
- "refId": "A"
- }
- ],
- "title": "CoreDNS - Total DNS Requests ($protocol)",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 11
- },
- "id": 7,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(coredns_dns_request_size_bytes_sum{instance=~\"$instance\",proto=\"$protocol\", cluster=~\"$cluster\"}[$__rate_interval])) by (proto) / sum(rate(coredns_dns_request_size_bytes_count{instance=~\"$instance\",proto=\"$protocol\", cluster=~\"$cluster\"}[$__rate_interval])) by (proto)",
- "interval": "$resolution",
- "legendFormat": "average $protocol packet size",
- "refId": "A"
- }
- ],
- "title": "CoreDNS - Average Packet Size ($protocol)",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 19
- },
- "id": 2,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(coredns_dns_requests_total{instance=~\"$instance\", cluster=~\"$cluster\"}[$__rate_interval])) by (type)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ type }}`}}",
- "refId": "A"
- }
- ],
- "title": "CoreDNS - Requests by type",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 19
- },
- "id": 4,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(coredns_dns_responses_total{instance=~\"$instance\", cluster=~\"$cluster\"}[$__rate_interval])) by (rcode)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ rcode }}`}}",
- "refId": "A"
- }
- ],
- "title": "CoreDNS - Requests by return code",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 27
- },
- "id": 23,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(coredns_forward_requests_total{cluster=~\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "total forward requests",
- "refId": "A"
- }
- ],
- "title": "CoreDNS - Total Forward Requests",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 27
- },
- "id": 13,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(coredns_forward_responses_total{rcode=~\"SERVFAIL|REFUSED\", cluster=~\"$cluster\"}[$__rate_interval])) by (rcode)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ rcode }}`}}",
- "refId": "A"
- }
- ],
- "title": "CoreDNS - DNS Errors",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 35
- },
- "id": 17,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(coredns_cache_hits_total{instance=~\"$instance\", cluster=~\"$cluster\"}[$__rate_interval])) by (type)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ type }}`}}",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(coredns_cache_misses_total{instance=~\"$instance\", cluster=~\"$cluster\"}[$__rate_interval])) by (type)",
- "interval": "$resolution",
- "legendFormat": "misses",
- "refId": "B"
- }
- ],
- "title": "CoreDNS - Cache Hits / Misses",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 35
- },
- "id": 15,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(coredns_cache_entries{cluster=~\"$cluster\"}) by (type)",
- "interval": "",
- "legendFormat": "{{`{{ type }}`}}",
- "refId": "A"
- }
- ],
- "title": "CoreDNS - Cache Size",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "custom": {
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "scaleDistribution": {
- "type": "linear"
- }
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 10,
- "w": 12,
- "x": 0,
- "y": 43
- },
- "id": 27,
- "options": {
- "calculate": false,
- "cellGap": 1,
- "color": {
- "exponent": 0.5,
- "fill": "dark-orange",
- "mode": "scheme",
- "reverse": false,
- "scale": "exponential",
- "scheme": "RdYlBu",
- "steps": 64
- },
- "exemplars": {
- "color": "rgba(255,0,255,0.7)"
- },
- "filterValues": {
- "le": 1e-9
- },
- "legend": {
- "show": true
- },
- "rowsFrame": {
- "layout": "auto"
- },
- "tooltip": {
- "mode": "single",
- "showColorScale": false,
- "yHistogram": false
- },
- "yAxis": {
- "axisPlacement": "left",
- "reverse": false,
- "unit": "s"
- }
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(increase(coredns_dns_request_duration_seconds_bucket{instance=~\"$instance\", cluster=~\"$cluster\"}[$__rate_interval])) by (le)",
- "format": "heatmap",
- "legendFormat": "{{`{{le}}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "CoreDNS - DNS request duration",
- "type": "heatmap"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "custom": {
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "scaleDistribution": {
- "type": "linear"
- }
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 10,
- "w": 12,
- "x": 12,
- "y": 43
- },
- "id": 28,
- "options": {
- "calculate": false,
- "cellGap": 1,
- "color": {
- "exponent": 0.5,
- "fill": "dark-orange",
- "mode": "scheme",
- "reverse": false,
- "scale": "exponential",
- "scheme": "RdYlBu",
- "steps": 64
- },
- "exemplars": {
- "color": "rgba(255,0,255,0.7)"
- },
- "filterValues": {
- "le": 1e-9
- },
- "legend": {
- "show": true
- },
- "rowsFrame": {
- "layout": "auto"
- },
- "tooltip": {
- "mode": "single",
- "showColorScale": false,
- "yHistogram": false
- },
- "yAxis": {
- "axisPlacement": "left",
- "reverse": false,
- "unit": "decbytes"
- }
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(increase(coredns_dns_request_size_bytes_bucket{instance=~\"$instance\", le!=\"0\", cluster=~\"$cluster\"}[$__rate_interval])) by (le)",
- "format": "heatmap",
- "legendFormat": "{{`{{le}}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "CoreDNS - DNS request size",
- "type": "heatmap"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "custom": {
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "scaleDistribution": {
- "type": "linear"
- }
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 10,
- "w": 12,
- "x": 0,
- "y": 53
- },
- "id": 29,
- "options": {
- "calculate": false,
- "cellGap": 1,
- "color": {
- "exponent": 0.5,
- "fill": "dark-orange",
- "mode": "scheme",
- "reverse": false,
- "scale": "exponential",
- "scheme": "RdYlBu",
- "steps": 64
- },
- "exemplars": {
- "color": "rgba(255,0,255,0.7)"
- },
- "filterValues": {
- "le": 1e-9
- },
- "legend": {
- "show": true
- },
- "rowsFrame": {
- "layout": "auto"
- },
- "tooltip": {
- "mode": "single",
- "showColorScale": false,
- "yHistogram": false
- },
- "yAxis": {
- "axisPlacement": "left",
- "reverse": false,
- "unit": "decbytes"
- }
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(increase(coredns_dns_response_size_bytes_bucket{instance=~\"$instance\", le!=\"0\", cluster=~\"$cluster\"}[$__rate_interval])) by (le)",
- "format": "heatmap",
- "legendFormat": "{{`{{le}}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "CoreDNS - DNS response size",
- "type": "heatmap"
- }
- ],
- "refresh": "30s",
- "schemaVersion": 39,
- "tags": [
- "Kubernetes",
- "Prometheus"
- ],
- "templating": {
- "list": [
- {
- "current": {
- "selected": false,
- "text": "Prometheus",
- "value": "Prometheus"
- },
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "datasource",
- "options": [],
- "query": "prometheus",
- "queryValue": "",
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "type": "datasource"
- },
- {
- "current": {
- "isNone": true,
- "selected": false,
- "text": "None",
- "value": ""
- },
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(kube_node_info,cluster)",
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "cluster",
- "options": [],
- "query": {
- "qryType": 1,
- "query": "label_values(kube_node_info,cluster)",
- "refId": "PrometheusVariableQueryEditor-VariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- },
- {
- "current": {
- "selected": false,
- "text": "All",
- "value": "$__all"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(up{job=\"$job\", cluster=\"$cluster\"},instance)",
- "hide": 0,
- "includeAll": true,
- "label": "",
- "multi": false,
- "name": "instance",
- "options": [],
- "query": {
- "qryType": 1,
- "query": "label_values(up{job=\"$job\", cluster=\"$cluster\"},instance)",
- "refId": "PrometheusVariableQueryEditor-VariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "tagValuesQuery": "",
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "allValue": "udp,tcp",
- "current": {
- "selected": false,
- "text": "udp",
- "value": "udp"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(coredns_dns_requests_total{cluster=\"$cluster\"}, proto)",
- "hide": 0,
- "includeAll": false,
- "label": "",
- "multi": false,
- "name": "protocol",
- "options": [],
- "query": {
- "query": "label_values(coredns_dns_requests_total{cluster=\"$cluster\"}, proto)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "tagValuesQuery": "",
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "current": {
- "selected": false,
- "text": "30s",
- "value": "30s"
- },
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "resolution",
- "options": [
- {
- "selected": false,
- "text": "1s",
- "value": "1s"
- },
- {
- "selected": false,
- "text": "15s",
- "value": "15s"
- },
- {
- "selected": true,
- "text": "30s",
- "value": "30s"
- },
- {
- "selected": false,
- "text": "1m",
- "value": "1m"
- },
- {
- "selected": false,
- "text": "3m",
- "value": "3m"
- },
- {
- "selected": false,
- "text": "5m",
- "value": "5m"
- }
- ],
- "query": "1s, 15s, 30s, 1m, 3m, 5m",
- "queryValue": "",
- "skipUrlSync": false,
- "type": "custom"
- },
- {
- "current": {
- "selected": true,
- "text": [
- "coredns"
- ],
- "value": [
- "coredns"
- ]
- },
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(coredns_build_info{cluster=\"$cluster\"},job)",
- "hide": 0,
- "includeAll": false,
- "multi": true,
- "name": "job",
- "options": [],
- "query": {
- "qryType": 1,
- "query": "label_values(coredns_build_info{cluster=\"$cluster\"},job)",
- "refId": "PrometheusVariableQueryEditor-VariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- }
- ]
- },
- "time": {
- "from": "now-1h",
- "to": "now"
- },
- "timepicker": {},
- "timezone": "",
- "title": "Kubernetes / System / CoreDNS",
- "uid": "k8s_system_coredns",
- "version": 18,
- "weekStart": ""
- }
-kind: ConfigMap
-metadata:
- annotations:
- grafana_folder: Kubernetes
- labels:
- grafana_dashboard: "1"
- name: dashboards-k8s-system-coredns
- namespace: prometheus
----
-apiVersion: v1
-data:
- k8s-views-global.json: |
- {
- "__inputs": [
- {
- "name": "DS_PROMETHEUS",
- "label": "Prometheus",
- "description": "",
- "type": "datasource",
- "pluginId": "prometheus",
- "pluginName": "Prometheus"
- }
- ],
- "__elements": {},
- "__requires": [
- {
- "type": "panel",
- "id": "bargauge",
- "name": "Bar gauge",
- "version": ""
- },
- {
- "type": "grafana",
- "id": "grafana",
- "name": "Grafana",
- "version": "10.3.1"
- },
- {
- "type": "datasource",
- "id": "prometheus",
- "name": "Prometheus",
- "version": "1.0.0"
- },
- {
- "type": "panel",
- "id": "stat",
- "name": "Stat",
- "version": ""
- },
- {
- "type": "panel",
- "id": "timeseries",
- "name": "Time series",
- "version": ""
- }
- ],
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "target": {
- "limit": 100,
- "matchAny": false,
- "tags": [],
- "type": "dashboard"
- },
- "type": "dashboard"
- }
- ]
- },
- "description": "This is a modern 'Global View' dashboard for your Kubernetes cluster(s). Made for kube-prometheus-stack and take advantage of the latest Grafana features. GitHub repository: https://github.com/dotdc/grafana-dashboards-kubernetes",
- "editable": true,
- "fiscalYearStartMonth": 0,
- "graphTooltip": 1,
- "links": [],
- "liveNow": false,
- "panels": [
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 67,
- "panels": [],
- "title": "Overview",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "continuous-GrYlRd"
- },
- "mappings": [],
- "max": 1,
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 6,
- "x": 0,
- "y": 1
- },
- "id": 77,
- "options": {
- "displayMode": "lcd",
- "maxVizHeight": 300,
- "minVizHeight": 10,
- "minVizWidth": 0,
- "namePlacement": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showUnfilled": true,
- "sizing": "auto",
- "valueMode": "color"
- },
- "pluginVersion": "10.4.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "avg(sum by (instance, cpu) (rate(node_cpu_seconds_total{mode!~\"idle|iowait|steal\", cluster=\"$cluster\", job=\"$job\"}[$__rate_interval])))",
- "interval": "",
- "legendFormat": "Real Linux",
- "range": true,
- "refId": "Real Linux"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "avg(sum by (core) (rate(windows_cpu_time_total{mode!=\"idle\", cluster=\"$cluster\"}[$__rate_interval])))",
- "hide": false,
- "interval": "",
- "legendFormat": "Real Windows",
- "range": true,
- "refId": "Real Windows"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_resource_requests{resource=\"cpu\", cluster=\"$cluster\"}) / sum(machine_cpu_cores{cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Requests",
- "range": true,
- "refId": "Requests"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_resource_limits{resource=\"cpu\", cluster=\"$cluster\"}) / sum(machine_cpu_cores{cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Limits",
- "range": true,
- "refId": "Limits"
- }
- ],
- "title": "Global CPU Usage",
- "transformations": [
- {
- "id": "calculateField",
- "options": {
- "alias": "Real",
- "mode": "reduceRow",
- "reduce": {
- "include": [
- "Real Linux",
- "Real Windows"
- ],
- "reducer": "mean"
- }
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {
- "Real Linux": true,
- "Real Windows": true,
- "Time": true
- },
- "indexByName": {
- "Limits": 5,
- "Real": 1,
- "Real Linux": 2,
- "Real Windows": 3,
- "Requests": 4,
- "Time": 0
- },
- "renameByName": {}
- }
- }
- ],
- "type": "bargauge"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "continuous-GrYlRd"
- },
- "decimals": 2,
- "mappings": [],
- "max": 1,
- "min": 0,
- "thresholds": {
- "mode": "percentage",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 6,
- "x": 6,
- "y": 1
- },
- "id": 78,
- "options": {
- "displayMode": "lcd",
- "maxVizHeight": 300,
- "minVizHeight": 10,
- "minVizWidth": 0,
- "namePlacement": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showUnfilled": true,
- "sizing": "auto",
- "text": {},
- "valueMode": "color"
- },
- "pluginVersion": "10.4.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(node_memory_MemTotal_bytes{cluster=\"$cluster\", job=\"$job\"} - node_memory_MemAvailable_bytes{cluster=\"$cluster\", job=\"$job\"}) / sum(node_memory_MemTotal_bytes{cluster=\"$cluster\", job=\"$job\"})",
- "hide": false,
- "interval": "",
- "legendFormat": "Real Linux",
- "range": true,
- "refId": "Real Linux"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(windows_memory_available_bytes{cluster=\"$cluster\"} + windows_memory_cache_bytes{cluster=\"$cluster\"}) / sum(windows_os_visible_memory_bytes{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Real Windows",
- "range": true,
- "refId": "Real Windows"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_resource_requests{resource=\"memory\", cluster=\"$cluster\"}) / sum(machine_memory_bytes{cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Requests",
- "range": true,
- "refId": "Requests"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_resource_limits{resource=\"memory\", cluster=\"$cluster\"}) / sum(machine_memory_bytes{cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Limits",
- "range": true,
- "refId": "Limits"
- }
- ],
- "title": "Global RAM Usage",
- "transformations": [
- {
- "id": "calculateField",
- "options": {
- "alias": "Real",
- "mode": "reduceRow",
- "reduce": {
- "include": [
- "Real Linux",
- "Real Windows"
- ],
- "reducer": "mean"
- }
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {
- "Real Linux": true,
- "Real Windows": true,
- "Time": true
- },
- "includeByName": {},
- "indexByName": {
- "Limits": 5,
- "Real": 3,
- "Real Linux": 1,
- "Real Windows": 2,
- "Requests": 4,
- "Time": 0
- },
- "renameByName": {}
- }
- }
- ],
- "type": "bargauge"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "blue",
- "value": null
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 2,
- "x": 12,
- "y": 1
- },
- "id": 63,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "text": {},
- "textMode": "value",
- "wideLayout": true
- },
- "pluginVersion": "10.4.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "count(count by (node) (kube_node_info{cluster=\"$cluster\"}))",
- "interval": "",
- "legendFormat": "",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Nodes",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 12,
- "w": 10,
- "x": 14,
- "y": 1
- },
- "id": 52,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(kube_namespace_labels{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Namespaces",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_pod_container_status_running{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Running Containers",
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_pod_status_phase{phase=\"Running\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Running Pods",
- "refId": "O"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_service_info{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Services",
- "refId": "C"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_endpoint_info{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Endpoints",
- "refId": "D"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_ingress_info{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Ingresses",
- "refId": "E"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_deployment_labels{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Deployments",
- "refId": "F"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_statefulset_labels{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Statefulsets",
- "refId": "G"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_daemonset_labels{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Daemonsets",
- "refId": "H"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_persistentvolumeclaim_info{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Persistent Volume Claims",
- "refId": "I"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_hpa_labels{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Horizontal Pod Autoscalers",
- "refId": "J"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_configmap_info{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Configmaps",
- "refId": "K"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_secret_info{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Secrets",
- "refId": "L"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_networkpolicy_labels{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Network Policies",
- "refId": "M"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "count(count by (node) (kube_node_info{cluster=\"$cluster\"}))",
- "hide": false,
- "interval": "",
- "legendFormat": "Nodes",
- "refId": "N"
- }
- ],
- "title": "Kubernetes Resource Count",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "blue",
- "value": null
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 2,
- "x": 12,
- "y": 5
- },
- "id": 59,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "text": {},
- "textMode": "value",
- "wideLayout": true
- },
- "pluginVersion": "10.4.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "count(kube_namespace_created{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Namespaces",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "rgb(255, 255, 255)",
- "value": null
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 0,
- "y": 9
- },
- "id": 37,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "center",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "text": {},
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "10.4.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(node_cpu_seconds_total{mode!~\"idle|iowait|steal\", cluster=\"$cluster\", job=\"$job\"}[$__rate_interval]))",
- "interval": "",
- "legendFormat": "Real Linux",
- "range": true,
- "refId": "Real Linux"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(windows_cpu_time_total{mode!=\"idle\", cluster=\"$cluster\"}[$__rate_interval]))",
- "hide": false,
- "interval": "",
- "legendFormat": "Real Windows",
- "range": true,
- "refId": "Real Windows"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_resource_requests{resource=\"cpu\", cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Requests",
- "range": true,
- "refId": "Requests"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_resource_limits{resource=\"cpu\", cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Limits",
- "range": true,
- "refId": "Limits"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(machine_cpu_cores{cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Total",
- "range": true,
- "refId": "Total"
- }
- ],
- "title": "CPU Usage",
- "transformations": [
- {
- "id": "calculateField",
- "options": {
- "alias": "Real",
- "mode": "reduceRow",
- "reduce": {
- "include": [
- "Real Linux",
- "Real Windows"
- ],
- "reducer": "sum"
- }
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {
- "Real Linux": true,
- "Real Windows": true,
- "Time": true,
- "Total Linux": true,
- "Total Windows": true
- },
- "indexByName": {
- "Limits": 5,
- "Real": 3,
- "Real Linux": 1,
- "Real Windows": 2,
- "Requests": 4,
- "Time": 0,
- "Total": 8,
- "Total Linux": 6,
- "Total Windows": 7
- },
- "renameByName": {}
- }
- }
- ],
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "rgb(255, 255, 255)",
- "value": null
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 6,
- "y": 9
- },
- "id": 39,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "text": {},
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "10.4.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(node_memory_MemTotal_bytes{cluster=\"$cluster\", job=\"$job\"} - node_memory_MemAvailable_bytes{cluster=\"$cluster\", job=\"$job\"})",
- "interval": "",
- "legendFormat": "Real Linux",
- "range": true,
- "refId": "Real Linux"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(windows_os_visible_memory_bytes{cluster=\"$cluster\"} - windows_memory_available_bytes{cluster=\"$cluster\"} - windows_memory_cache_bytes{cluster=\"$cluster\"})",
- "hide": false,
- "interval": "",
- "legendFormat": "Real Windows",
- "range": true,
- "refId": "Real Windows"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_resource_requests{resource=\"memory\", cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Requests",
- "range": true,
- "refId": "Requests"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_resource_limits{resource=\"memory\", cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Limits",
- "range": true,
- "refId": "Limits"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(machine_memory_bytes{cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Total",
- "range": true,
- "refId": "Total"
- }
- ],
- "title": "RAM Usage",
- "transformations": [
- {
- "id": "calculateField",
- "options": {
- "alias": "Real",
- "mode": "reduceRow",
- "reduce": {
- "include": [
- "Real Linux",
- "Real Windows"
- ],
- "reducer": "mean"
- }
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {
- "Real Linux": true,
- "Real Windows": true,
- "Time": true
- },
- "includeByName": {},
- "indexByName": {
- "Limits": 5,
- "Real": 3,
- "Real Linux": 1,
- "Real Windows": 2,
- "Requests": 4,
- "Time": 0,
- "Total": 6
- },
- "renameByName": {}
- }
- }
- ],
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "blue",
- "value": null
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 2,
- "x": 12,
- "y": 9
- },
- "id": 62,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "text": {},
- "textMode": "value",
- "wideLayout": true
- },
- "pluginVersion": "10.4.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_pod_status_phase{phase=\"Running\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Running Pods",
- "type": "stat"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 13
- },
- "id": 71,
- "panels": [],
- "title": "Resources",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "continuous-GrYlRd",
- "seriesBy": "last"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "CPU %",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "scheme",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "yellow",
- "value": 0.5
- },
- {
- "color": "red",
- "value": 0.7
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 14
- },
- "id": 72,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "hidden",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "avg(sum by (instance, cpu) (rate(node_cpu_seconds_total{mode!~\"idle|iowait|steal\", cluster=\"$cluster\", job=\"$job\"}[$__rate_interval])))",
- "interval": "$resolution",
- "legendFormat": "Linux",
- "range": true,
- "refId": "Linux"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "1 - avg(rate(windows_cpu_time_total{cluster=\"$cluster\",mode=\"idle\"}[$__rate_interval]))",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Windows",
- "range": true,
- "refId": "Windows"
- }
- ],
- "title": "Cluster CPU Utilization",
- "transformations": [
- {
- "id": "calculateField",
- "options": {
- "alias": "CPU usage in %",
- "mode": "reduceRow",
- "reduce": {
- "reducer": "mean"
- },
- "replaceFields": true
- }
- }
- ],
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "continuous-GrYlRd"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "MEMORY",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "scheme",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "#EAB839",
- "value": 0.5
- },
- {
- "color": "red",
- "value": 0.7
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 14
- },
- "id": 55,
- "options": {
- "legend": {
- "calcs": [
- "mean",
- "lastNotNull",
- "max",
- "min"
- ],
- "displayMode": "hidden",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(node_memory_MemTotal_bytes{cluster=\"$cluster\", job=\"$job\"} - node_memory_MemAvailable_bytes{cluster=\"$cluster\", job=\"$job\"}) / sum(node_memory_MemTotal_bytes{cluster=\"$cluster\", job=\"$job\"})",
- "interval": "$resolution",
- "legendFormat": "Linux",
- "range": true,
- "refId": "Linux"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(windows_os_visible_memory_bytes{cluster=\"$cluster\"} - windows_memory_available_bytes{cluster=\"$cluster\"}) / sum(windows_os_visible_memory_bytes{cluster=\"$cluster\"})",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Windows",
- "range": true,
- "refId": "Windows"
- }
- ],
- "title": "Cluster Memory Utilization",
- "transformations": [
- {
- "id": "calculateField",
- "options": {
- "alias": "Memory usage in %",
- "mode": "reduceRow",
- "reduce": {
- "reducer": "mean"
- },
- "replaceFields": true
- }
- }
- ],
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "CPU CORES",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 22
- },
- "id": 46,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "10.4.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(container_cpu_usage_seconds_total{image!=\"\", cluster=\"$cluster\"}[$__rate_interval])) by (namespace)\n+ on (namespace)\n(sum(rate(windows_container_cpu_usage_seconds_total{container_id!=\"\", cluster=\"$cluster\"}[$__rate_interval]) * on (container_id) group_left (container, pod, namespace) max by ( container, container_id, pod, namespace) (kube_pod_container_info{container_id!=\"\", cluster=\"$cluster\"}) OR kube_namespace_created{cluster=\"$cluster\"} * 0) by (namespace))",
- "format": "time_series",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "{{`{{ namespace }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "CPU Utilization by namespace",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 22
- },
- "id": 50,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(container_memory_working_set_bytes{image!=\"\", cluster=\"$cluster\"}) by (namespace)\n+ on (namespace)\n(sum(windows_container_memory_usage_commit_bytes{container_id!=\"\", cluster=\"$cluster\"} * on (container_id) group_left (container, pod, namespace) max by ( container, container_id, pod, namespace) (kube_pod_container_info{container_id!=\"\", cluster=\"$cluster\"}) OR kube_namespace_created{cluster=\"$cluster\"} * 0) by (namespace))",
- "interval": "$resolution",
- "legendFormat": "{{`{{ namespace }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Memory Utilization by namespace",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "CPU %",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 30
- },
- "id": 54,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "avg(sum by (instance, cpu) (rate(node_cpu_seconds_total{mode!~\"idle|iowait|steal\", cluster=\"$cluster\", job=\"$job\"}[$__rate_interval]))) by (instance)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ node }}`}}",
- "range": true,
- "refId": "Linux"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "avg(sum by (instance,core) (rate(windows_cpu_time_total{mode!=\"idle\", cluster=\"$cluster\"}[$__rate_interval]))) by (instance)",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "{{`{{ node }}`}}",
- "range": true,
- "refId": "Windows"
- }
- ],
- "title": "CPU Utilization by instance",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "MEMORY",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 30
- },
- "id": 73,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(node_memory_MemTotal_bytes{cluster=\"$cluster\", job=\"$job\"} - node_memory_MemAvailable_bytes{cluster=\"$cluster\", job=\"$job\"}) by (instance)",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "{{`{{ instance }}`}}",
- "range": true,
- "refId": "Linux"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(windows_os_visible_memory_bytes{cluster=\"$cluster\"} - windows_memory_available_bytes{cluster=\"$cluster\"}) by (instance)",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "{{`{{ instance }}`}}",
- "range": true,
- "refId": "Windows"
- }
- ],
- "title": "Memory Utilization by instance",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "No data is generally a good thing here.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "SECONDS",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 38
- },
- "id": 82,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(container_cpu_cfs_throttled_seconds_total{image!=\"\", cluster=\"$cluster\"}[$__rate_interval])) by (namespace) > 0",
- "interval": "$resolution",
- "legendFormat": "{{`{{ namespace }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "CPU Throttled seconds by namespace",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "No data is generally a good thing here.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "NB",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 38
- },
- "id": 83,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(node_cpu_core_throttles_total{cluster=\"$cluster\", job=\"$job\"}[$__rate_interval])) by (instance)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ instance }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "CPU Core Throttled by instance",
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 46
- },
- "id": 86,
- "panels": [],
- "title": "Kubernetes",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 47
- },
- "id": 84,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(kube_pod_status_qos_class{cluster=\"$cluster\"}) by (qos_class)",
- "interval": "",
- "legendFormat": "{{`{{ qos_class }}`}} pods",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_info{cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Total pods",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Kubernetes Pods QoS classes",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 47
- },
- "id": 85,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(kube_pod_status_reason{cluster=\"$cluster\"}) by (reason)",
- "interval": "",
- "legendFormat": "{{`{{ reason }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Kubernetes Pods Status Reason",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "No data is generally a good thing here.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "points",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 56
- },
- "id": 87,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(increase(container_oom_events_total{cluster=\"$cluster\"}[$__rate_interval])) by (namespace) > 0",
- "interval": "",
- "legendFormat": "{{`{{ namespace }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "OOM Events by namespace",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "No data is generally a good thing here.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "points",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 56
- },
- "id": 88,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(increase(kube_pod_container_status_restarts_total{cluster=\"$cluster\"}[$__rate_interval])) by (namespace) > 0",
- "interval": "",
- "legendFormat": "{{`{{ namespace }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Container Restarts by namespace",
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 65
- },
- "id": 69,
- "panels": [],
- "title": "Network",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "Dropped noisy virtual devices for readability.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "BANDWIDTH",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 66
- },
- "id": 44,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "hidden",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(node_network_receive_bytes_total{device!~\"(veth|azv|lxc).*\", cluster=\"$cluster\", job=\"$job\"}[$__rate_interval])) by (device)",
- "interval": "$resolution",
- "legendFormat": "Received : {{`{{ device }}`}}",
- "range": true,
- "refId": "Linux Received"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "- sum(rate(node_network_transmit_bytes_total{device!~\"(veth|azv|lxc).*\", cluster=\"$cluster\", job=\"$job\"}[$__rate_interval])) by (device)",
- "interval": "$resolution",
- "legendFormat": "Transmitted : {{`{{ device }}`}}",
- "range": true,
- "refId": "Linux Transmitted"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(windows_net_bytes_received_total{cluster=\"$cluster\"}[$__rate_interval])) by (nic)",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Received : {{`{{ nic }}`}}",
- "range": true,
- "refId": "Windows Received"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "- sum(rate(windows_net_bytes_sent_total{cluster=\"$cluster\"}[$__rate_interval])) by (nic)",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Transmitted : {{`{{ device }}`}}",
- "range": true,
- "refId": "Windows Transmitted"
- }
- ],
- "title": "Global Network Utilization by device",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "DROPPED PACKETS",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 66
- },
- "id": 53,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "hidden",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(node_network_receive_drop_total{cluster=\"$cluster\", job=\"$job\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "Linux Packets dropped (receive)",
- "range": true,
- "refId": "Linux Packets dropped (receive)"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "- sum(rate(node_network_transmit_drop_total{cluster=\"$cluster\", job=\"$job\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "Linux Packets dropped (transmit)",
- "range": true,
- "refId": "Linux Packets dropped (transmit)"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(windows_net_packets_received_discarded_total{cluster=\"$cluster\"}[$__rate_interval]))",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Windows Packets dropped (receive)",
- "range": true,
- "refId": "Windows Packets dropped (receive)"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "- sum(rate(windows_net_packets_outbound_discarded_total{cluster=\"$cluster\"}[$__rate_interval]))",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Windows Packets dropped (transmit)",
- "range": true,
- "refId": "Windows Packets dropped (transmit)"
- }
- ],
- "title": "Network Saturation - Packets dropped",
- "transformations": [
- {
- "id": "calculateField",
- "options": {
- "alias": "Packets dropped (receive)",
- "mode": "reduceRow",
- "reduce": {
- "include": [
- "Linux Packets dropped (receive)",
- "Windows Packets dropped (receive)"
- ],
- "reducer": "mean"
- }
- }
- },
- {
- "id": "calculateField",
- "options": {
- "alias": "Packets dropped (transmit)",
- "mode": "reduceRow",
- "reduce": {
- "include": [
- "Linux Packets dropped (transmit)",
- "Windows Packets dropped (transmit)"
- ],
- "reducer": "mean"
- }
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {
- "Linux Packets dropped (receive)": true,
- "Linux Packets dropped (transmit)": true,
- "Time": false,
- "Windows Packets dropped (receive)": true,
- "Windows Packets dropped (transmit)": true
- },
- "includeByName": {},
- "indexByName": {},
- "renameByName": {}
- }
- }
- ],
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "BANDWIDTH",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 74
- },
- "id": 79,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "hidden",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(container_network_receive_bytes_total{cluster=\"$cluster\"}[$__rate_interval])) by (namespace)\n+ on (namespace)\n(sum(rate(windows_container_network_receive_bytes_total{container_id!=\"\", cluster=\"$cluster\"}[$__rate_interval]) * on (container_id) group_left (container, pod, namespace) max by ( container, container_id, pod, namespace) (kube_pod_container_info{container_id!=\"\", cluster=\"$cluster\"}) OR kube_namespace_created{cluster=\"$cluster\"} * 0) by (namespace))",
- "interval": "$resolution",
- "legendFormat": "Received : {{`{{ namespace }}`}}",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "- (sum(rate(container_network_transmit_bytes_total{cluster=\"$cluster\"}[$__rate_interval])) by (namespace)\n+ on (namespace)\n(sum(rate(windows_container_network_transmit_bytes_total{container_id!=\"\", cluster=\"$cluster\"}[$__rate_interval]) * on (container_id) group_left (container, pod, namespace) max by ( container, container_id, pod, namespace) (kube_pod_container_info{container_id!=\"\", cluster=\"$cluster\"}) OR kube_namespace_created{cluster=\"$cluster\"} * 0) by (namespace)))",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Transmitted : {{`{{ namespace }}`}}",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Network Received by namespace",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "BANDWIDTH",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 74
- },
- "id": 80,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "hidden",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(node_network_receive_bytes_total{cluster=\"$cluster\", job=\"$job\"}[$__rate_interval])) by (instance)",
- "interval": "$resolution",
- "legendFormat": "Received bytes in {{`{{ instance }}`}}",
- "range": true,
- "refId": "Linux Received bytes"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "- sum(rate(node_network_transmit_bytes_total{cluster=\"$cluster\", job=\"$job\"}[$__rate_interval])) by (instance)",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Transmitted bytes in {{`{{ instance }}`}}",
- "range": true,
- "refId": "Linux Transmitted bytes"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(windows_net_bytes_received_total{cluster=\"$cluster\"}[$__rate_interval])) by (instance)",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Received bytes in {{`{{ instance }}`}}",
- "range": true,
- "refId": "Windows Received bytes"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "- sum(rate(windows_net_bytes_sent_total{cluster=\"$cluster\"}[$__rate_interval])) by (instance)",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Transmitted bytes in {{`{{ instance }}`}}",
- "range": true,
- "refId": "Windows Transmitted bytes"
- }
- ],
- "title": "Total Network Received (with all virtual devices) by instance",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "Dropped noisy virtual devices for readability.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "BANDWIDTH",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 82
- },
- "id": 56,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "hidden",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(node_network_receive_bytes_total{device!~\"(veth|azv|lxc|lo).*\", cluster=\"$cluster\", job=\"$job\"}[$__rate_interval])) by (instance)",
- "interval": "$resolution",
- "legendFormat": "Received bytes in {{`{{ instance }}`}}",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "- sum(rate(node_network_transmit_bytes_total{device!~\"(veth|azv|lxc|lo).*\", cluster=\"$cluster\", job=\"$job\"}[$__rate_interval])) by (instance)",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Transmitted bytes in {{`{{ instance }}`}}",
- "range": true,
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(windows_net_bytes_received_total{nic!~\".*Virtual.*\",cluster=\"$cluster\"}[$__rate_interval])) by (instance)",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Received bytes in {{`{{ instance }}`}}",
- "range": true,
- "refId": "C"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "- sum(rate(windows_net_bytes_sent_total{nic!~\".*Virtual.*\",cluster=\"$cluster\"}[$__rate_interval])) by (instance)",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Transmitted bytes in {{`{{ instance }}`}}",
- "range": true,
- "refId": "D"
- }
- ],
- "title": "Network Received (without loopback) by instance",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "Dropped noisy virtual devices for readability.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "BANDWIDTH",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 82
- },
- "id": 81,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "hidden",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(node_network_receive_bytes_total{device=\"lo\", cluster=\"$cluster\", job=\"$job\"}[$__rate_interval])) by (instance)",
- "interval": "$resolution",
- "legendFormat": "Received bytes in {{`{{ instance }}`}}",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "- sum(rate(node_network_transmit_bytes_total{device=\"lo\", cluster=\"$cluster\", job=\"$job\"}[$__rate_interval])) by (instance)",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Transmitted bytes in {{`{{ instance }}`}}",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Network Received (loopback only) by instance",
- "type": "timeseries"
- }
- ],
- "refresh": "30s",
- "schemaVersion": 39,
- "tags": [
- "Kubernetes",
- "Prometheus"
- ],
- "templating": {
- "list": [
- {
- "current": {
- "selected": false,
- "text": "",
- "value": ""
- },
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "datasource",
- "options": [],
- "query": "prometheus",
- "queryValue": "",
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "type": "datasource"
- },
- {
- "current": {},
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(kube_node_info,cluster)",
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "cluster",
- "options": [],
- "query": {
- "qryType": 1,
- "query": "label_values(kube_node_info,cluster)",
- "refId": "PrometheusVariableQueryEditor-VariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- },
- {
- "current": {
- "selected": false,
- "text": "30s",
- "value": "30s"
- },
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "resolution",
- "options": [
- {
- "selected": false,
- "text": "1s",
- "value": "1s"
- },
- {
- "selected": false,
- "text": "15s",
- "value": "15s"
- },
- {
- "selected": true,
- "text": "30s",
- "value": "30s"
- },
- {
- "selected": false,
- "text": "1m",
- "value": "1m"
- },
- {
- "selected": false,
- "text": "3m",
- "value": "3m"
- },
- {
- "selected": false,
- "text": "5m",
- "value": "5m"
- }
- ],
- "query": "1s, 15s, 30s, 1m, 3m, 5m",
- "queryValue": "",
- "skipUrlSync": false,
- "type": "custom"
- },
- {
- "current": {
- "selected": false,
- "text": "",
- "value": ""
- },
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(node_cpu_seconds_total{cluster=\"$cluster\"},job)",
- "hide": 0,
- "includeAll": false,
- "multi": true,
- "name": "job",
- "options": [],
- "query": {
- "qryType": 1,
- "query": "label_values(node_cpu_seconds_total{cluster=\"$cluster\"},job)",
- "refId": "PrometheusVariableQueryEditor-VariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- }
- ]
- },
- "time": {
- "from": "now-1h",
- "to": "now"
- },
- "timepicker": {},
- "timezone": "",
- "title": "Kubernetes / Views / Global",
- "uid": "k8s_views_global",
- "version": 39,
- "weekStart": ""
- }
-kind: ConfigMap
-metadata:
- annotations:
- grafana_folder: Kubernetes
- labels:
- grafana_dashboard: "1"
- name: dashboards-k8s-views-global
- namespace: prometheus
----
-apiVersion: v1
-data:
- k8s-views-namespaces.json: |
- {
- "__inputs": [
- {
- "name": "DS_PROMETHEUS",
- "label": "Prometheus",
- "description": "",
- "type": "datasource",
- "pluginId": "prometheus",
- "pluginName": "Prometheus"
- }
- ],
- "__elements": {},
- "__requires": [
- {
- "type": "panel",
- "id": "gauge",
- "name": "Gauge",
- "version": ""
- },
- {
- "type": "grafana",
- "id": "grafana",
- "name": "Grafana",
- "version": "10.3.1"
- },
- {
- "type": "datasource",
- "id": "prometheus",
- "name": "Prometheus",
- "version": "1.0.0"
- },
- {
- "type": "panel",
- "id": "stat",
- "name": "Stat",
- "version": ""
- },
- {
- "type": "panel",
- "id": "timeseries",
- "name": "Time series",
- "version": ""
- }
- ],
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "target": {
- "limit": 100,
- "matchAny": false,
- "tags": [],
- "type": "dashboard"
- },
- "type": "dashboard"
- }
- ]
- },
- "description": "This is a modern 'Namespaces View' dashboard for your Kubernetes cluster(s). Made for kube-prometheus-stack and take advantage of the latest Grafana features. GitHub repository: https://github.com/dotdc/grafana-dashboards-kubernetes",
- "editable": true,
- "fiscalYearStartMonth": 0,
- "graphTooltip": 1,
- "links": [],
- "liveNow": false,
- "panels": [
- {
- "collapsed": false,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 38,
- "panels": [],
- "title": "Overview",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "decimals": 2,
- "mappings": [],
- "max": 1,
- "min": 0,
- "thresholds": {
- "mode": "percentage",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "orange",
- "value": 50
- },
- {
- "color": "red",
- "value": 70
- }
- ]
- },
- "unit": "percentunit",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 7,
- "w": 6,
- "x": 0,
- "y": 1
- },
- "id": 46,
- "options": {
- "minVizHeight": 75,
- "minVizWidth": 75,
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true,
- "sizing": "auto",
- "text": {}
- },
- "pluginVersion": "10.3.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum(rate(container_cpu_usage_seconds_total{namespace=~\"$namespace\", image!=\"\", cluster=\"$cluster\"}[$__rate_interval])) / sum(machine_cpu_cores{cluster=\"$cluster\"})",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "range": false,
- "refId": "A"
- }
- ],
- "title": "Namespace(s) usage on total cluster CPU in %",
- "type": "gauge"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "decimals": 2,
- "mappings": [],
- "max": 1,
- "min": 0,
- "thresholds": {
- "mode": "percentage",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "orange",
- "value": 50
- },
- {
- "color": "red",
- "value": 70
- }
- ]
- },
- "unit": "percentunit",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 7,
- "w": 6,
- "x": 6,
- "y": 1
- },
- "id": 48,
- "options": {
- "minVizHeight": 75,
- "minVizWidth": 75,
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true,
- "sizing": "auto",
- "text": {}
- },
- "pluginVersion": "10.3.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(container_memory_working_set_bytes{namespace=~\"$namespace\", image!=\"\", cluster=\"$cluster\"}) / sum(machine_memory_bytes{cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Namespace(s) usage on total cluster RAM in %",
- "type": "gauge"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 11,
- "w": 12,
- "x": 12,
- "y": 1
- },
- "id": 32,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_pod_info{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Running Pods",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_service_info{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Services",
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_ingress_info{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Ingresses",
- "refId": "C"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_deployment_labels{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Deployments",
- "refId": "D"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_statefulset_labels{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Statefulsets",
- "refId": "E"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_daemonset_labels{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Daemonsets",
- "refId": "F"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_persistentvolumeclaim_info{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Persistent Volume Claims",
- "refId": "G"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_hpa_labels{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Horizontal Pod Autoscalers",
- "refId": "H"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_configmap_info{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Configmaps",
- "refId": "I"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_secret_info{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Secrets",
- "refId": "J"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_networkpolicy_labels{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Network Policies",
- "refId": "K"
- }
- ],
- "title": "Kubernetes Resource Count",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "rgb(255, 255, 255)",
- "value": null
- }
- ]
- },
- "unit": "none",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 0,
- "y": 8
- },
- "id": 62,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "center",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "text": {},
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "10.3.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(container_cpu_usage_seconds_total{namespace=~\"$namespace\", image!=\"\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "",
- "legendFormat": "Real",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_resource_requests{namespace=~\"$namespace\", resource=\"cpu\", cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Requests",
- "range": true,
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_resource_limits{namespace=~\"$namespace\", resource=\"cpu\", cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Limits",
- "range": true,
- "refId": "C"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(machine_cpu_cores{cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Cluster Total",
- "range": true,
- "refId": "D"
- }
- ],
- "title": "Namespace(s) CPU Usage in cores",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "rgb(255, 255, 255)",
- "value": null
- }
- ]
- },
- "unit": "bytes",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 6,
- "y": 8
- },
- "id": 64,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "text": {},
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "10.3.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(container_memory_working_set_bytes{namespace=~\"$namespace\", image!=\"\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Real",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_resource_requests{namespace=~\"$namespace\", resource=\"memory\", cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Requests",
- "range": true,
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_resource_limits{namespace=~\"$namespace\", resource=\"memory\", cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Limits",
- "range": true,
- "refId": "C"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(machine_memory_bytes{cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Cluster Total",
- "range": true,
- "refId": "D"
- }
- ],
- "title": "Namespace(s) RAM Usage in bytes",
- "type": "stat"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 12
- },
- "id": 40,
- "panels": [],
- "title": "Resources",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "CPU CORES",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 13
- },
- "id": 29,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(container_cpu_usage_seconds_total{namespace=~\"$namespace\", image!=\"\", pod=~\"${created_by}.*\", cluster=\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ pod }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "CPU usage by Pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 13
- },
- "id": 30,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(container_memory_working_set_bytes{namespace=~\"$namespace\", image!=\"\", pod=~\"${created_by}.*\", cluster=\"$cluster\"}) by (pod)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ pod }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Memory usage by Pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "SECONDS",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 21
- },
- "id": 68,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(container_cpu_cfs_throttled_seconds_total{namespace=~\"$namespace\", image!=\"\", pod=~\"${created_by}.*\", cluster=\"$cluster\"}[$__rate_interval])) by (pod) > 0",
- "interval": "$resolution",
- "legendFormat": "{{`{{ pod }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "CPU Throttled seconds by pod",
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 29
- },
- "id": 73,
- "panels": [],
- "title": "Kubernetes",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 30
- },
- "id": 70,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(kube_pod_status_qos_class{namespace=~\"$namespace\", cluster=\"$cluster\"}) by (qos_class)",
- "interval": "",
- "legendFormat": "{{`{{ qos_class }}`}} pods",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_info{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "hide": false,
- "legendFormat": "Total pods",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Kubernetes Pods QoS classes",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 30
- },
- "id": 72,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(kube_pod_status_reason{cluster=\"$cluster\"}) by (reason)",
- "interval": "",
- "legendFormat": "{{`{{ reason }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Kubernetes Pods Status Reason",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "No data is generally a good thing here.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "points",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 39
- },
- "id": 74,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(increase(container_oom_events_total{namespace=~\"${namespace}\", cluster=\"$cluster\"}[$__rate_interval])) by (namespace, pod) > 0",
- "interval": "",
- "legendFormat": "namespace: {{`{{ namespace }}`}} - pod: {{`{{ pod }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "OOM Events by namespace, pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "No data is generally a good thing here.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "points",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 39
- },
- "id": 75,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(increase(kube_pod_container_status_restarts_total{namespace=~\"${namespace}\", cluster=\"$cluster\"}[$__rate_interval])) by (namespace, pod) > 0",
- "interval": "",
- "legendFormat": "namespace: {{`{{ namespace }}`}} - pod: {{`{{ pod }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Container Restarts by namespace, pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 0,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 48
- },
- "id": 5,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_status_ready{namespace=~\"$namespace\", pod=~\"${created_by}.*\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Ready",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_status_running{namespace=~\"$namespace\", pod=~\"${created_by}.*\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Running",
- "range": true,
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_pod_container_status_waiting{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Waiting",
- "refId": "C"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_pod_container_status_restarts_total{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Restarts Total",
- "refId": "D"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "expr": "sum(kube_pod_container_status_terminated{namespace=~\"$namespace\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "Terminated",
- "refId": "E"
- }
- ],
- "title": "Nb of pods by state",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 0,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 48
- },
- "id": 2,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "hidden",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_pod_container_info{namespace=~\"$namespace\", pod=~\"${created_by}.*\", cluster=\"$cluster\"}) by (pod)",
- "interval": "",
- "legendFormat": "{{`{{ pod }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Nb of containers by pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 56
- },
- "id": 7,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(kube_deployment_status_replicas_available{namespace=~\"$namespace\", cluster=\"$cluster\"}) by (deployment)",
- "interval": "",
- "legendFormat": "{{`{{ deployment }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Replicas available by deployment",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 56
- },
- "id": 8,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(kube_deployment_status_replicas_unavailable{namespace=~\"$namespace\", pod=~\"${created_by}.*\", cluster=\"$cluster\"}) by (deployment)",
- "interval": "",
- "legendFormat": "{{`{{ deployment }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Replicas unavailable by deployment",
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 64
- },
- "id": 42,
- "panels": [],
- "title": "Kubernetes Storage",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 65
- },
- "id": 65,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(kubelet_volume_stats_used_bytes{namespace=~\"$namespace\", cluster=\"$cluster\"}) by (persistentvolumeclaim) / sum(kubelet_volume_stats_capacity_bytes{namespace=~\"$namespace\", cluster=\"$cluster\"}) by (persistentvolumeclaim)",
- "interval": "",
- "legendFormat": "{{`{{ persistentvolumeclaim }}`}}",
- "refId": "A"
- }
- ],
- "title": "Persistent Volumes - Capacity and usage in %",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 65
- },
- "id": 66,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(kubelet_volume_stats_used_bytes{namespace=~\"$namespace\", cluster=\"$cluster\"}) by (persistentvolumeclaim)",
- "interval": "",
- "legendFormat": "{{`{{ persistentvolumeclaim }}`}} - Used",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(kubelet_volume_stats_capacity_bytes{namespace=~\"$namespace\", cluster=\"$cluster\"}) by (persistentvolumeclaim)",
- "hide": false,
- "interval": "",
- "legendFormat": "{{`{{ persistentvolumeclaim }}`}} - Capacity",
- "refId": "B"
- }
- ],
- "title": "Persistent Volumes - Capacity and usage in bytes",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 73
- },
- "id": 27,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "1 - sum(kubelet_volume_stats_inodes_used{namespace=~\"$namespace\", cluster=\"$cluster\"}) by (persistentvolumeclaim) / sum(kubelet_volume_stats_inodes{namespace=~\"$namespace\", cluster=\"$cluster\"}) by (persistentvolumeclaim)",
- "interval": "",
- "legendFormat": "{{`{{ persistentvolumeclaim }}`}}",
- "refId": "A"
- }
- ],
- "title": "Persistent Volumes - Inodes",
- "type": "timeseries"
- }
- ],
- "refresh": "30s",
- "schemaVersion": 39,
- "tags": [
- "Kubernetes",
- "Prometheus"
- ],
- "templating": {
- "list": [
- {
- "current": {},
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "datasource",
- "options": [],
- "query": "prometheus",
- "queryValue": "",
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "type": "datasource"
- },
- {
- "current": {},
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(kube_node_info,cluster)",
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "cluster",
- "options": [],
- "query": {
- "qryType": 1,
- "query": "label_values(kube_node_info,cluster)",
- "refId": "PrometheusVariableQueryEditor-VariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- },
- {
- "current": {},
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(kube_pod_info{cluster=\"$cluster\"}, namespace)",
- "hide": 0,
- "includeAll": true,
- "multi": true,
- "name": "namespace",
- "options": [],
- "query": {
- "query": "label_values(kube_pod_info{cluster=\"$cluster\"}, namespace)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "tagValuesQuery": "",
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "current": {
- "selected": false,
- "text": "30s",
- "value": "30s"
- },
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "resolution",
- "options": [
- {
- "selected": false,
- "text": "1s",
- "value": "1s"
- },
- {
- "selected": false,
- "text": "15s",
- "value": "15s"
- },
- {
- "selected": true,
- "text": "30s",
- "value": "30s"
- },
- {
- "selected": false,
- "text": "1m",
- "value": "1m"
- },
- {
- "selected": false,
- "text": "3m",
- "value": "3m"
- },
- {
- "selected": false,
- "text": "5m",
- "value": "5m"
- }
- ],
- "query": "1s, 15s, 30s, 1m, 3m, 5m",
- "queryValue": "",
- "skipUrlSync": false,
- "type": "custom"
- },
- {
- "current": {},
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(kube_pod_info{namespace=~\"$namespace\", container!=\"\", cluster=\"$cluster\"},created_by_name)",
- "description": "Can be used to filter on a specific deployment, statefulset or deamonset (only relevant panels).",
- "hide": 0,
- "includeAll": true,
- "multi": true,
- "name": "created_by",
- "options": [],
- "query": {
- "query": "label_values(kube_pod_info{namespace=~\"$namespace\", container!=\"\", cluster=\"$cluster\"},created_by_name)",
- "refId": "PrometheusVariableQueryEditor-VariableQuery"
- },
- "refresh": 2,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- }
- ]
- },
- "time": {
- "from": "now-1h",
- "to": "now"
- },
- "timepicker": {},
- "timezone": "",
- "title": "Kubernetes / Views / Namespaces",
- "uid": "k8s_views_ns",
- "version": 34,
- "weekStart": ""
- }
-kind: ConfigMap
-metadata:
- annotations:
- grafana_folder: Kubernetes
- labels:
- grafana_dashboard: "1"
- name: dashboards-k8s-views-namespaces
- namespace: prometheus
----
-apiVersion: v1
-data:
- k8s-views-nodes.json: |
- {
- "__inputs": [
- {
- "name": "DS_PROMETHEUS",
- "label": "Prometheus",
- "description": "",
- "type": "datasource",
- "pluginId": "prometheus",
- "pluginName": "Prometheus"
- }
- ],
- "__elements": {},
- "__requires": [
- {
- "type": "panel",
- "id": "gauge",
- "name": "Gauge",
- "version": ""
- },
- {
- "type": "grafana",
- "id": "grafana",
- "name": "Grafana",
- "version": "10.3.1"
- },
- {
- "type": "datasource",
- "id": "prometheus",
- "name": "Prometheus",
- "version": "1.0.0"
- },
- {
- "type": "panel",
- "id": "stat",
- "name": "Stat",
- "version": ""
- },
- {
- "type": "panel",
- "id": "table",
- "name": "Table",
- "version": ""
- },
- {
- "type": "panel",
- "id": "timeseries",
- "name": "Time series",
- "version": ""
- }
- ],
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "target": {
- "limit": 100,
- "matchAny": false,
- "tags": [],
- "type": "dashboard"
- },
- "type": "dashboard"
- }
- ]
- },
- "description": "This is a modern 'Nodes View' dashboard for your Kubernetes cluster(s). Made for kube-prometheus-stack and take advantage of the latest Grafana features. GitHub repository: https://github.com/dotdc/grafana-dashboards-kubernetes",
- "editable": true,
- "fiscalYearStartMonth": 0,
- "graphTooltip": 1,
- "links": [],
- "liveNow": false,
- "panels": [
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 40,
- "panels": [],
- "title": "Overview",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "decimals": 2,
- "mappings": [],
- "max": 1,
- "min": 0,
- "thresholds": {
- "mode": "percentage",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "orange",
- "value": 50
- },
- {
- "color": "red",
- "value": 70
- }
- ]
- },
- "unit": "percentunit",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 4,
- "x": 0,
- "y": 1
- },
- "id": 7,
- "options": {
- "minVizHeight": 75,
- "minVizWidth": 75,
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true,
- "sizing": "auto",
- "text": {}
- },
- "pluginVersion": "10.3.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": false,
- "expr": "avg(sum by (cpu) (rate(node_cpu_seconds_total{mode!~\"idle|iowait|steal\", instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval])))",
- "instant": true,
- "interval": "$resolution",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "CPU Usage",
- "type": "gauge"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "decimals": 2,
- "mappings": [],
- "max": 1,
- "min": 0,
- "thresholds": {
- "mode": "percentage",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "orange",
- "value": 50
- },
- {
- "color": "red",
- "value": 70
- }
- ]
- },
- "unit": "percentunit",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 4,
- "x": 4,
- "y": 1
- },
- "id": 13,
- "options": {
- "minVizHeight": 75,
- "minVizWidth": 75,
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true,
- "sizing": "auto",
- "text": {}
- },
- "pluginVersion": "10.3.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": false,
- "expr": "sum(node_memory_MemTotal_bytes{instance=\"$instance\", cluster=\"$cluster\"} - node_memory_MemAvailable_bytes{instance=\"$instance\", cluster=\"$cluster\"}) / sum(node_memory_MemTotal_bytes{instance=\"$instance\", cluster=\"$cluster\"})",
- "instant": true,
- "interval": "$resolution",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "RAM Usage",
- "type": "gauge"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "blue",
- "value": null
- }
- ]
- },
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 4,
- "x": 8,
- "y": 1
- },
- "id": 24,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "text": {},
- "textMode": "value",
- "wideLayout": true
- },
- "pluginVersion": "10.3.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(kube_pod_info{node=\"$node\", cluster=\"$cluster\"})",
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Pods on node",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "custom": {
- "align": "auto",
- "cellOptions": {
- "type": "auto"
- },
- "inspect": false
- },
- "links": [
- {
- "targetBlank": true,
- "title": "Pod details",
- "url": "/d/k8s_views_pods/kubernetes-views-pods?${datasource:queryparam}&var-namespace=${__data.fields.namespace}&var-pod=${__data.fields.pod}&${resolution:queryparam}&${__url_time_range}"
- }
- ],
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unitScale": true
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "pod"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 416
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "priority_class"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 176
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "pod_ip"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 157
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "created_by_kind"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 205
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "namespace"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 263
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 11,
- "w": 12,
- "x": 12,
- "y": 1
- },
- "id": 5,
- "options": {
- "cellHeight": "sm",
- "footer": {
- "countRows": false,
- "fields": "",
- "reducer": [
- "sum"
- ],
- "show": false
- },
- "showHeader": true,
- "sortBy": []
- },
- "pluginVersion": "10.3.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "kube_pod_info{node=\"$node\", cluster=\"$cluster\"}",
- "format": "table",
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "List of pods on node ($node)",
- "transformations": [
- {
- "id": "organize",
- "options": {
- "excludeByName": {
- "Time": true,
- "Value": true,
- "__name__": true,
- "container": true,
- "created_by_kind": false,
- "created_by_name": true,
- "endpoint": true,
- "env": true,
- "host_ip": true,
- "host_network": true,
- "instance": true,
- "job": true,
- "node": true,
- "project": true,
- "prometheus_replica": true,
- "service": true,
- "uid": true
- },
- "indexByName": {
- "Time": 6,
- "Value": 20,
- "__name__": 7,
- "container": 8,
- "created_by_kind": 2,
- "created_by_name": 9,
- "endpoint": 10,
- "env": 11,
- "host_ip": 5,
- "host_network": 12,
- "instance": 13,
- "job": 14,
- "namespace": 1,
- "node": 15,
- "pod": 0,
- "pod_ip": 3,
- "priority_class": 4,
- "project": 16,
- "prometheus_replica": 17,
- "service": 18,
- "uid": 19
- },
- "renameByName": {}
- }
- },
- {
- "id": "groupBy",
- "options": {
- "fields": {
- "created_by_kind": {
- "aggregations": [],
- "operation": "groupby"
- },
- "host_ip": {
- "aggregations": [],
- "operation": "groupby"
- },
- "namespace": {
- "aggregations": [
- "last"
- ],
- "operation": "groupby"
- },
- "pod": {
- "aggregations": [],
- "operation": "groupby"
- },
- "pod_ip": {
- "aggregations": [],
- "operation": "groupby"
- },
- "priority_class": {
- "aggregations": [],
- "operation": "groupby"
- }
- }
- }
- }
- ],
- "type": "table"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "decimals": 3,
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "rgb(255, 255, 255)",
- "value": null
- }
- ]
- },
- "unit": "none",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 2,
- "x": 0,
- "y": 9
- },
- "id": 9,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "text": {},
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "10.3.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": false,
- "expr": "sum(rate(node_cpu_seconds_total{mode!~\"idle|iowait|steal\", instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval]))",
- "instant": true,
- "interval": "$resolution",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "CPU Used",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "rgb(255, 255, 255)",
- "value": null
- }
- ]
- },
- "unit": "none",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 2,
- "x": 2,
- "y": 9
- },
- "id": 11,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "text": {},
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "10.3.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(machine_cpu_cores{node=\"$node\", cluster=\"$cluster\"})",
- "interval": "$resolution",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "CPU Total",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "rgb(255, 255, 255)",
- "value": null
- }
- ]
- },
- "unit": "bytes",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 2,
- "x": 4,
- "y": 9
- },
- "id": 15,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "text": {},
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "10.3.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": false,
- "expr": "sum(node_memory_MemTotal_bytes{instance=\"$instance\", cluster=\"$cluster\"} - node_memory_MemAvailable_bytes{instance=\"$instance\", cluster=\"$cluster\"})",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "RAM Used",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "rgb(255, 255, 255)",
- "value": null
- }
- ]
- },
- "unit": "bytes",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 2,
- "x": 6,
- "y": 9
- },
- "id": 17,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "text": {},
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "10.3.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "machine_memory_bytes{node=\"$node\", cluster=\"$cluster\"}",
- "instant": false,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "RAM Total",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "#EAB839",
- "value": 25228800
- },
- {
- "color": "red",
- "value": 31536000
- }
- ]
- },
- "unit": "s",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 4,
- "x": 8,
- "y": 9
- },
- "id": 18,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "text": {},
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "10.3.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "node_time_seconds{instance=\"$instance\", cluster=\"$cluster\"} - node_boot_time_seconds{instance=\"$instance\", cluster=\"$cluster\"}",
- "instant": false,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "uptime",
- "type": "stat"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 12
- },
- "id": 38,
- "panels": [],
- "title": "Resources",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "max": 100,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percent",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 13
- },
- "id": 2,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "avg(rate(node_cpu_seconds_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval]) * 100) by (mode)",
- "hide": false,
- "instant": false,
- "interval": "$resolution",
- "legendFormat": "{{`{{ mode }}`}}",
- "refId": "A"
- }
- ],
- "title": "CPU Usage",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes",
- "unitScale": true
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 13
- },
- "id": 3,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "node_memory_MemTotal_bytes{instance=\"$instance\", cluster=\"$cluster\"} - node_memory_MemFree_bytes{instance=\"$instance\", cluster=\"$cluster\"} - (node_memory_Cached_bytes{instance=\"$instance\", cluster=\"$cluster\"} + node_memory_Buffers_bytes{instance=\"$instance\", cluster=\"$cluster\"})",
- "instant": false,
- "interval": "$resolution",
- "legendFormat": "RAM Used",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "node_memory_MemTotal_bytes{instance=\"$instance\", cluster=\"$cluster\"}",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "RAM Total",
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "node_memory_Cached_bytes{instance=\"$instance\", cluster=\"$cluster\"}",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "RAM Cache",
- "refId": "C"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "node_memory_Buffers_bytes{instance=\"$instance\", cluster=\"$cluster\"}",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "RAM Buffer",
- "refId": "D"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "node_memory_MemFree_bytes{instance=\"$instance\", cluster=\"$cluster\"}",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "RAM Free",
- "refId": "E"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "node_memory_SwapTotal_bytes{instance=\"$instance\", cluster=\"$cluster\"} - node_memory_SwapFree_bytes{instance=\"$instance\", cluster=\"$cluster\"}",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "SWAP Used",
- "refId": "F"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "node_memory_SwapTotal_bytes{instance=\"$instance\", cluster=\"$cluster\"}",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "SWAP Total",
- "refId": "G"
- }
- ],
- "title": "Memory Usage",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "CPU Cores",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 22
- },
- "id": 26,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(container_cpu_usage_seconds_total{node=\"$node\", image!=\"\", cluster=\"$cluster\"}[$__rate_interval])) by (pod)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ pod }}`}}",
- "refId": "A"
- }
- ],
- "title": "CPU usage by Pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 22
- },
- "id": 28,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(container_memory_working_set_bytes{node=\"$node\", image!=\"\", cluster=\"$cluster\"}) by (pod)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ pod }}`}}",
- "refId": "A"
- }
- ],
- "title": "Memory usage by Pod",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "Number of times a CPU core has been throttled on an instance.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "CPU CORES",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 30
- },
- "id": 66,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(node_cpu_core_throttles_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "Nb of cpu core throttles",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Number of CPU Core Throttled",
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 38
- },
- "id": 44,
- "panels": [],
- "title": "System",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 39
- },
- "id": 48,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "node_load1{instance=\"$instance\", cluster=\"$cluster\"}",
- "interval": "$resolution",
- "legendFormat": "1m",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "node_load5{instance=\"$instance\", cluster=\"$cluster\"}",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "5m",
- "range": true,
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "node_load15{instance=\"$instance\", cluster=\"$cluster\"}",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "15m",
- "range": true,
- "refId": "C"
- }
- ],
- "title": "System Load",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 39
- },
- "id": 46,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "rate(node_context_switches_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval])",
- "interval": "$resolution",
- "intervalFactor": 1,
- "legendFormat": "Context switches",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "rate(node_intr_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval])",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Interrupts",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Context Switches & Interrupts",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 47
- },
- "id": 49,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "node_filefd_maximum{instance=\"$instance\", cluster=\"$cluster\"}",
- "instant": false,
- "interval": "$resolution",
- "legendFormat": "Maximum file descriptors",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "node_filefd_allocated{instance=\"$instance\", cluster=\"$cluster\"}",
- "hide": false,
- "instant": false,
- "interval": "$resolution",
- "legendFormat": "Allocated file descriptors",
- "refId": "B"
- }
- ],
- "title": "File Descriptors",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 47
- },
- "id": 50,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "node_timex_estimated_error_seconds{instance=\"$instance\", cluster=\"$cluster\"}",
- "instant": false,
- "interval": "$resolution",
- "intervalFactor": 1,
- "legendFormat": "Estimated error in seconds",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "node_timex_maxerror_seconds{instance=\"$instance\", cluster=\"$cluster\"}",
- "hide": false,
- "interval": "$resolution",
- "intervalFactor": 1,
- "legendFormat": "Maximum error in seconds",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Time Sync",
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 55
- },
- "id": 36,
- "panels": [],
- "title": "Network",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "BANDWIDTH",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "linear",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 56
- },
- "id": 20,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(node_network_receive_bytes_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "In",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "- sum(rate(node_network_transmit_bytes_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "Out",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Network usage (bytes)",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 56
- },
- "id": 61,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(node_network_receive_errs_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "In",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "- sum(rate(node_network_transmit_errs_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "Out",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Network errors",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "pps"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 64
- },
- "id": 62,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(node_network_receive_packets_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "In",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "- sum(rate(node_network_transmit_packets_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "Out",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Network usage (packet/s)",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 64
- },
- "id": 64,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(node_network_receive_drop_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval]))",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "In",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "- sum(rate(node_network_transmit_drop_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval]))",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "Out",
- "refId": "B"
- }
- ],
- "title": "Network total drops",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 72
- },
- "id": 60,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "node_netstat_Tcp_CurrEstab{instance=\"$instance\", cluster=\"$cluster\"}",
- "instant": false,
- "interval": "$resolution",
- "legendFormat": "TCP Currently Established",
- "refId": "A"
- }
- ],
- "title": "TCP Currently Established",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "NF Conntrack limit"
- },
- "properties": [
- {
- "id": "color",
- "value": {
- "fixedColor": "red",
- "mode": "fixed"
- }
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 72
- },
- "id": 63,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "node_nf_conntrack_entries{instance=\"$instance\", cluster=\"$cluster\"}",
- "instant": false,
- "interval": "$resolution",
- "legendFormat": "NF Conntrack entries",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "node_nf_conntrack_entries_limit{instance=\"$instance\", cluster=\"$cluster\"}",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "NF Conntrack limit",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "NF Conntrack",
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 80
- },
- "id": 54,
- "panels": [],
- "title": "Kubernetes Storage",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 81
- },
- "id": 30,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(kubelet_volume_stats_used_bytes{node=\"$node\", cluster=\"$cluster\"}) by (persistentvolumeclaim) / sum(kubelet_volume_stats_capacity_bytes{node=\"$node\", cluster=\"$cluster\"}) by (persistentvolumeclaim)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ persistentvolumeclaim }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Persistent Volumes - Usage in %",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "continuous-GrYlRd"
- },
- "custom": {
- "align": "auto",
- "cellOptions": {
- "type": "auto"
- },
- "filterable": false,
- "inspect": false
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "Used"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 146
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "Total"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 167
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 16,
- "w": 12,
- "x": 12,
- "y": 81
- },
- "id": 34,
- "options": {
- "cellHeight": "sm",
- "footer": {
- "countRows": false,
- "fields": "",
- "reducer": [
- "sum"
- ],
- "show": false
- },
- "showHeader": true,
- "sortBy": []
- },
- "pluginVersion": "10.2.2",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(kubelet_volume_stats_used_bytes{node=\"$node\", cluster=\"$cluster\"}) by (persistentvolumeclaim)",
- "format": "table",
- "hide": false,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(kubelet_volume_stats_capacity_bytes{node=\"$node\", cluster=\"$cluster\"}) by (persistentvolumeclaim)",
- "format": "table",
- "hide": false,
- "interval": "",
- "legendFormat": "",
- "refId": "B"
- }
- ],
- "title": "Persistent Volumes - Usage in GB",
- "transformations": [
- {
- "id": "groupBy",
- "options": {
- "fields": {
- "Value": {
- "aggregations": [
- "lastNotNull"
- ],
- "operation": "aggregate"
- },
- "Value #A": {
- "aggregations": [
- "lastNotNull"
- ],
- "operation": "aggregate"
- },
- "Value #B": {
- "aggregations": [
- "lastNotNull"
- ],
- "operation": "aggregate"
- },
- "persistentvolumeclaim": {
- "aggregations": [],
- "operation": "groupby"
- }
- }
- }
- },
- {
- "id": "seriesToColumns",
- "options": {
- "byField": "persistentvolumeclaim"
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {},
- "indexByName": {},
- "renameByName": {
- "Value #A (lastNotNull)": "Used",
- "Value #B (lastNotNull)": "Total",
- "persistentvolumeclaim": "Persistent Volume Claim"
- }
- }
- }
- ],
- "type": "table"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percent"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 89
- },
- "id": 32,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(kubelet_volume_stats_inodes_used{node=\"$node\", cluster=\"$cluster\"}) by (persistentvolumeclaim) / sum(kubelet_volume_stats_inodes{node=\"$node\", cluster=\"$cluster\"}) by (persistentvolumeclaim) * 100",
- "interval": "$resolution",
- "legendFormat": "{{`{{ persistentvolumeclaim }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Persistent Volumes - Inodes",
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 97
- },
- "id": 42,
- "panels": [],
- "title": "Node Storage",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percent"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 98
- },
- "id": 33,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "100 - ((node_filesystem_avail_bytes{instance=\"$instance\", cluster=\"$cluster\"} * 100) / node_filesystem_size_bytes{instance=\"$instance\", cluster=\"$cluster\"})",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "{{`{{ mountpoint }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "FS usage in %",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percent"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 98
- },
- "id": 59,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "100 - (node_filesystem_files_free{instance=\"$instance\", cluster=\"$cluster\"} / node_filesystem_files{instance=\"$instance\", cluster=\"$cluster\"} * 100)",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "{{`{{ mountpoint }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "FS inode usage in %",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 106
- },
- "id": 52,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "rate(node_disk_read_bytes_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval])",
- "interval": "$resolution",
- "legendFormat": "{{`{{device}}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Reads by disk (bytes)",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 106
- },
- "id": 57,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "rate(node_disk_written_bytes_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval])",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "{{`{{device}}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Writes by disk (bytes)",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "read/s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 114
- },
- "id": 51,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "rate(node_disk_reads_completed_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval])",
- "interval": "$resolution",
- "legendFormat": "{{`{{device}}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Completed reads by disk",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "write/s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 114
- },
- "id": 56,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "rate(node_disk_writes_completed_total{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval])",
- "hide": false,
- "interval": "$resolution",
- "legendFormat": "{{`{{device}}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Completed writes by disk",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "io/s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 122
- },
- "id": 58,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "rate(node_disk_io_now{instance=\"$instance\", cluster=\"$cluster\"}[$__rate_interval]) ",
- "interval": "$resolution",
- "legendFormat": "{{`{{device}}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Disk(s) io/s",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 122
- },
- "id": 55,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "right",
- "showLegend": false
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(node_filesystem_device_error{instance=\"$instance\", cluster=\"$cluster\"}) by (mountpoint)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ mountpoint }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "FS - Device Errors",
- "type": "timeseries"
- }
- ],
- "refresh": "30s",
- "schemaVersion": 39,
- "tags": [
- "Kubernetes",
- "Prometheus"
- ],
- "templating": {
- "list": [
- {
- "current": {},
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "datasource",
- "options": [],
- "query": "prometheus",
- "queryValue": "",
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "type": "datasource"
- },
- {
- "current": {},
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(kube_node_info,cluster)",
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "cluster",
- "options": [],
- "query": {
- "qryType": 1,
- "query": "label_values(kube_node_info,cluster)",
- "refId": "PrometheusVariableQueryEditor-VariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- },
- {
- "current": {
- "selected": false,
- "text": "30s",
- "value": "30s"
- },
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "resolution",
- "options": [
- {
- "selected": false,
- "text": "1s",
- "value": "1s"
- },
- {
- "selected": false,
- "text": "15s",
- "value": "15s"
- },
- {
- "selected": true,
- "text": "30s",
- "value": "30s"
- },
- {
- "selected": false,
- "text": "1m",
- "value": "1m"
- },
- {
- "selected": false,
- "text": "3m",
- "value": "3m"
- },
- {
- "selected": false,
- "text": "5m",
- "value": "5m"
- }
- ],
- "query": "1s, 15s, 30s, 1m, 3m, 5m",
- "queryValue": "",
- "skipUrlSync": false,
- "type": "custom"
- },
- {
- "current": {},
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(kube_node_info{cluster=\"$cluster\"}, node)",
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "node",
- "options": [],
- "query": {
- "query": "label_values(kube_node_info{cluster=\"$cluster\"}, node)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 2,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- },
- {
- "current": {},
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(node_uname_info{nodename=~\"(?i:($node))\"}, instance)",
- "hide": 2,
- "includeAll": false,
- "multi": false,
- "name": "instance",
- "options": [],
- "query": {
- "query": "label_values(node_uname_info{nodename=~\"(?i:($node))\"}, instance)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 2,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- }
- ]
- },
- "time": {
- "from": "now-1h",
- "to": "now"
- },
- "timepicker": {},
- "timezone": "",
- "title": "Kubernetes / Views / Nodes",
- "uid": "k8s_views_nodes",
- "version": 29,
- "weekStart": ""
- }
-kind: ConfigMap
-metadata:
- annotations:
- grafana_folder: Kubernetes
- labels:
- grafana_dashboard: "1"
- name: dashboards-k8s-views-nodes
- namespace: prometheus
----
-apiVersion: v1
-data:
- k8s-views-pods.json: |
- {
- "__inputs": [
- {
- "name": "DS_PROMETHEUS",
- "label": "Prometheus",
- "description": "",
- "type": "datasource",
- "pluginId": "prometheus",
- "pluginName": "Prometheus"
- }
- ],
- "__elements": [],
- "__requires": [
- {
- "type": "grafana",
- "id": "grafana",
- "name": "Grafana",
- "version": "8.3.4"
- },
- {
- "type": "datasource",
- "id": "prometheus",
- "name": "Prometheus",
- "version": "5.0.0"
- },
- {
- "type": "panel",
- "id": "timeseries",
- "name": "Time series",
- "version": ""
- },
- {
- "type": "panel",
- "id": "stat",
- "name": "Stat",
- "version": ""
- },
- {
- "type": "panel",
- "id": "gauge",
- "name": "Gauge",
- "version": ""
- },
- {
- "type": "panel",
- "id": "table",
- "name": "Table",
- "version": ""
- }
- ],
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "target": {
- "limit": 100,
- "matchAny": false,
- "tags": [],
- "type": "dashboard"
- },
- "type": "dashboard"
- }
- ]
- },
- "description": "This is a modern 'Pods View' dashboard for your Kubernetes cluster(s). Made for kube-prometheus-stack and take advantage of the latest Grafana features. GitHub repository: https://github.com/dotdc/grafana-dashboards-kubernetes",
- "editable": true,
- "fiscalYearStartMonth": 0,
- "graphTooltip": 1,
- "links": [],
- "liveNow": false,
- "panels": [
- {
- "collapsed": false,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 43,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "refId": "A"
- }
- ],
- "title": "Information",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "Panel only works when a single pod is selected.",
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "rgb(255, 255, 255)",
- "value": null
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 2,
- "w": 12,
- "x": 0,
- "y": 1
- },
- "id": 2,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "mean"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "textMode": "name",
- "wideLayout": true
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "kube_pod_info{namespace=\"$namespace\", pod=\"$pod\", cluster=\"$cluster\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{ created_by_kind }}`}}: {{`{{ created_by_name }}`}}",
- "refId": "A"
- }
- ],
- "title": "Created by",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "Panel only works when a single pod is selected.",
- "fieldConfig": {
- "defaults": {
- "links": [
- {
- "title": "",
- "url": "/d/k8s_views_nodes/kubernetes-views-nodes?var-datasource=${datasource}&var-node=${__data.fields.node}"
- }
- ],
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "rgb(255, 255, 255)",
- "value": null
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 2,
- "w": 6,
- "x": 12,
- "y": 1
- },
- "id": 33,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "mean"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "textMode": "name",
- "wideLayout": true
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "kube_pod_info{namespace=\"$namespace\", pod=\"$pod\", cluster=\"$cluster\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{ node }}`}}",
- "refId": "A"
- }
- ],
- "title": "Running on",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "Panel only works when a single pod is selected.",
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "rgb(255, 255, 255)",
- "value": null
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 2,
- "w": 6,
- "x": 18,
- "y": 1
- },
- "id": 41,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "mean"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "textMode": "name",
- "wideLayout": true
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "kube_pod_info{namespace=\"$namespace\", pod=\"$pod\", cluster=\"$cluster\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{ pod_ip }}`}}",
- "refId": "A"
- }
- ],
- "title": "Pod IP",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "Panel only works when a single pod is selected.",
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "rgb(255, 255, 255)",
- "value": null
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 2,
- "w": 5,
- "x": 0,
- "y": 3
- },
- "id": 52,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "mean"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "textMode": "name",
- "wideLayout": true
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "kube_pod_info{namespace=\"$namespace\", pod=\"$pod\", priority_class!=\"\", cluster=\"$cluster\"}",
- "format": "time_series",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{ priority_class }}`}}",
- "range": false,
- "refId": "A"
- }
- ],
- "title": "Priority Class",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "Panel only works when a single pod is selected.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- }
- ]
- },
- "unit": "none"
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "Burstable"
- },
- "properties": [
- {
- "id": "color",
- "value": {
- "fixedColor": "red",
- "mode": "fixed"
- }
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "BestEffort"
- },
- "properties": [
- {
- "id": "color",
- "value": {
- "fixedColor": "orange",
- "mode": "fixed"
- }
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 2,
- "w": 7,
- "x": 5,
- "y": 3
- },
- "id": 53,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "textMode": "name",
- "wideLayout": true
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "kube_pod_status_qos_class{namespace=\"$namespace\", pod=\"$pod\", cluster=\"$cluster\"} > 0",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{ qos_class }}`}}",
- "refId": "A"
- }
- ],
- "title": "QOS Class",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "Panel only works when a single pod is selected.",
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "text",
- "value": null
- },
- {
- "color": "red",
- "value": 1
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 2,
- "w": 6,
- "x": 12,
- "y": 3
- },
- "id": 56,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "textMode": "name",
- "wideLayout": true
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "kube_pod_container_status_last_terminated_reason{namespace=\"$namespace\", pod=\"$pod\", cluster=\"$cluster\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{ reason }}`}}",
- "refId": "A"
- }
- ],
- "title": "Last Terminated Reason",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "Panel only works when a single pod is selected.",
- "fieldConfig": {
- "defaults": {
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "text",
- "value": null
- },
- {
- "color": "red",
- "value": 1
- },
- {
- "color": "#EAB839",
- "value": 2
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 2,
- "w": 6,
- "x": 18,
- "y": 3
- },
- "id": 57,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [],
- "fields": "",
- "values": true
- },
- "showPercentChange": false,
- "textMode": "value",
- "wideLayout": true
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "kube_pod_container_status_last_terminated_exitcode{namespace=\"$namespace\", pod=\"$pod\", cluster=\"$cluster\"}",
- "instant": true,
- "interval": "",
- "legendFormat": "__auto",
- "range": false,
- "refId": "A"
- }
- ],
- "title": "Last Terminated Exit Code",
- "type": "stat"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 5
- },
- "id": 47,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "refId": "A"
- }
- ],
- "title": "Resources",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "fixedColor": "blue",
- "mode": "fixed"
- },
- "decimals": 2,
- "mappings": [],
- "max": 1,
- "min": 0,
- "thresholds": {
- "mode": "percentage",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "#EAB839",
- "value": 60
- },
- {
- "color": "red",
- "value": 75
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 3,
- "x": 0,
- "y": 6
- },
- "id": 39,
- "options": {
- "minVizHeight": 75,
- "minVizWidth": 75,
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true,
- "sizing": "auto"
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum(rate(container_cpu_usage_seconds_total{namespace=\"$namespace\", pod=~\"$pod\", image!=\"\", cluster=\"$cluster\"}[$__rate_interval])) / sum(kube_pod_container_resource_requests{namespace=\"$namespace\", pod=~\"$pod\", resource=\"cpu\", job=~\"$job\", cluster=\"$cluster\"})",
- "instant": true,
- "interval": "$resolution",
- "legendFormat": "Requests",
- "refId": "A"
- }
- ],
- "title": "Total pod CPU Requests usage",
- "type": "gauge"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "decimals": 2,
- "mappings": [],
- "max": 1,
- "min": 0,
- "thresholds": {
- "mode": "percentage",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "#EAB839",
- "value": 60
- },
- {
- "color": "red",
- "value": 75
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 3,
- "x": 3,
- "y": 6
- },
- "id": 48,
- "options": {
- "minVizHeight": 75,
- "minVizWidth": 75,
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true,
- "sizing": "auto"
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum(rate(container_cpu_usage_seconds_total{namespace=\"$namespace\", pod=~\"$pod\", image!=\"\", cluster=\"$cluster\"}[$__rate_interval])) / sum(kube_pod_container_resource_limits{namespace=\"$namespace\", pod=~\"$pod\", resource=\"cpu\", job=~\"$job\", cluster=\"$cluster\"})",
- "instant": true,
- "interval": "$resolution",
- "legendFormat": "Limits",
- "refId": "A"
- }
- ],
- "title": "Total pod CPU Limits usage",
- "type": "gauge"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "fixedColor": "blue",
- "mode": "fixed"
- },
- "decimals": 2,
- "mappings": [],
- "max": 1,
- "min": 0,
- "thresholds": {
- "mode": "percentage",
- "steps": [
- {
- "color": "blue",
- "value": null
- },
- {
- "color": "#EAB839",
- "value": 80
- },
- {
- "color": "red",
- "value": 99
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 3,
- "x": 6,
- "y": 6
- },
- "id": 40,
- "options": {
- "minVizHeight": 75,
- "minVizWidth": 75,
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true,
- "sizing": "auto"
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum(container_memory_working_set_bytes{namespace=\"$namespace\", pod=~\"$pod\", image!=\"\", cluster=\"$cluster\"}) / sum(kube_pod_container_resource_requests{namespace=\"$namespace\", pod=~\"$pod\", resource=\"memory\", job=~\"$job\", cluster=\"$cluster\"})",
- "instant": true,
- "interval": "$resolution",
- "legendFormat": "Requests",
- "refId": "A"
- }
- ],
- "title": "Total pod RAM Requests usage",
- "type": "gauge"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "decimals": 2,
- "mappings": [],
- "max": 1,
- "min": 0,
- "thresholds": {
- "mode": "percentage",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "#EAB839",
- "value": 60
- },
- {
- "color": "red",
- "value": 75
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 3,
- "x": 9,
- "y": 6
- },
- "id": 49,
- "options": {
- "minVizHeight": 75,
- "minVizWidth": 75,
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true,
- "sizing": "auto"
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum(container_memory_working_set_bytes{namespace=\"$namespace\", pod=~\"$pod\", image!=\"\", cluster=\"$cluster\"}) / sum(kube_pod_container_resource_limits{namespace=\"$namespace\", pod=~\"$pod\", resource=\"memory\", job=~\"$job\", cluster=\"$cluster\"}) ",
- "instant": true,
- "interval": "$resolution",
- "legendFormat": "Limits",
- "refId": "B"
- }
- ],
- "title": "Total pod RAM Limits usage",
- "type": "gauge"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "custom": {
- "align": "auto",
- "cellOptions": {
- "type": "auto"
- },
- "filterable": false,
- "inspect": false,
- "minWidth": 100
- },
- "decimals": 4,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "blue",
- "value": null
- }
- ]
- },
- "unit": "none"
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "Memory Requests"
- },
- "properties": [
- {
- "id": "unit",
- "value": "bytes"
- },
- {
- "id": "decimals",
- "value": 2
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "Memory Limits"
- },
- "properties": [
- {
- "id": "unit",
- "value": "bytes"
- },
- {
- "id": "decimals",
- "value": 2
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "Memory Used"
- },
- "properties": [
- {
- "id": "unit",
- "value": "bytes"
- },
- {
- "id": "decimals",
- "value": 2
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 6
- },
- "id": 38,
- "options": {
- "cellHeight": "sm",
- "footer": {
- "countRows": false,
- "fields": "",
- "reducer": [
- "sum"
- ],
- "show": false
- },
- "showHeader": true,
- "sortBy": []
- },
- "pluginVersion": "10.4.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum(kube_pod_container_resource_requests{namespace=\"$namespace\", pod=~\"$pod\", resource=\"cpu\", job=~\"$job\", cluster=\"$cluster\"}) by (container)",
- "format": "table",
- "instant": true,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum(kube_pod_container_resource_limits{namespace=\"$namespace\", pod=~\"$pod\", resource=\"cpu\", job=~\"$job\", cluster=\"$cluster\"}) by (container)",
- "format": "table",
- "instant": true,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum(kube_pod_container_resource_requests{namespace=\"$namespace\", pod=~\"$pod\", resource=\"memory\", job=~\"$job\", cluster=\"$cluster\"}) by (container)",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "C"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum(kube_pod_container_resource_limits{namespace=\"$namespace\", pod=~\"$pod\", resource=\"memory\", job=~\"$job\", cluster=\"$cluster\"}) by (container)",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "D"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum(rate(container_cpu_usage_seconds_total{namespace=\"$namespace\", pod=~\"$pod\", image!=\"\", container!=\"\", cluster=\"$cluster\"}[$__rate_interval])) by (container)",
- "format": "table",
- "hide": false,
- "instant": true,
- "legendFormat": "__auto",
- "range": false,
- "refId": "E"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum(container_memory_working_set_bytes{namespace=\"$namespace\", pod=~\"$pod\", image!=\"\", container!=\"\", cluster=\"$cluster\"}) by (container)",
- "format": "table",
- "hide": false,
- "instant": true,
- "range": false,
- "refId": "F"
- }
- ],
- "title": "Resources by container",
- "transformations": [
- {
- "id": "seriesToColumns",
- "options": {
- "byField": "container"
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {
- "Time": true,
- "Time 1": true,
- "Time 2": true,
- "Time 4": true,
- "__name__": true,
- "__name__ 1": true,
- "__name__ 2": true,
- "__name__ 3": true,
- "__name__ 4": true,
- "container": false,
- "endpoint": true,
- "endpoint 2": true,
- "endpoint 3": true,
- "endpoint 4": true,
- "instance": true,
- "instance 2": true,
- "instance 3": true,
- "instance 4": true,
- "job": true,
- "job 2": true,
- "job 3": true,
- "job 4": true,
- "namespace": true,
- "namespace 2": true,
- "namespace 3": true,
- "namespace 4": true,
- "node": true,
- "node 2": true,
- "node 3": true,
- "node 4": true,
- "pod": true,
- "pod 2": true,
- "pod 3": true,
- "pod 4": true,
- "resource 1": true,
- "resource 2": true,
- "resource 3": true,
- "resource 4": true,
- "service": true,
- "service 2": true,
- "service 3": true,
- "service 4": true,
- "uid 1": true,
- "uid 2": true,
- "uid 3": true,
- "uid 4": true,
- "unit 1": true,
- "unit 2": true,
- "unit 3": true,
- "unit 4": true
- },
- "indexByName": {
- "Time 1": 7,
- "Time 2": 8,
- "Time 3": 9,
- "Time 4": 10,
- "Time 5": 11,
- "Time 6": 12,
- "Value #A": 2,
- "Value #B": 3,
- "Value #C": 5,
- "Value #D": 6,
- "Value #E": 1,
- "Value #F": 4,
- "container": 0
- },
- "renameByName": {
- "Value #A": "CPU Requests",
- "Value #B": "CPU Limits",
- "Value #C": "Memory Requests",
- "Value #D": "Memory Limits",
- "Value #E": "CPU Used",
- "Value #F": "Memory Used",
- "container": "Container"
- }
- }
- }
- ],
- "type": "table"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "Percent",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "area"
- }
- },
- "mappings": [],
- "max": 1,
- "min": 0,
- "thresholds": {
- "mode": "percentage",
- "steps": [
- {
- "color": "red",
- "value": null
- },
- {
- "color": "yellow",
- "value": 20
- },
- {
- "color": "green",
- "value": 30
- },
- {
- "color": "yellow",
- "value": 70
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 14
- },
- "id": 50,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(container_cpu_usage_seconds_total{namespace=\"$namespace\", pod=~\"$pod\", image!=\"\", cluster=\"$cluster\"}[$__rate_interval])) by (container) / sum(kube_pod_container_resource_requests{namespace=\"$namespace\", pod=~\"$pod\", resource=\"cpu\", job=~\"$job\", cluster=\"$cluster\"}) by (container)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ container }}`}} REQUESTS",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(rate(container_cpu_usage_seconds_total{namespace=\"$namespace\", pod=~\"$pod\", image!=\"\", cluster=\"$cluster\"}[$__rate_interval])) by (container) / sum(kube_pod_container_resource_limits{namespace=\"$namespace\", pod=~\"$pod\", resource=\"cpu\", job=~\"$job\", cluster=\"$cluster\"}) by (container)",
- "hide": false,
- "legendFormat": "{{`{{ container }}`}} LIMITS",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "CPU Usage / Requests & Limits by container",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "fixedColor": "blue",
- "mode": "thresholds"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "Percent",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "area"
- }
- },
- "mappings": [],
- "max": 1,
- "min": 0,
- "thresholds": {
- "mode": "percentage",
- "steps": [
- {
- "color": "red",
- "value": null
- },
- {
- "color": "yellow",
- "value": 20
- },
- {
- "color": "green",
- "value": 30
- },
- {
- "color": "#EAB839",
- "value": 70
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 14
- },
- "id": 30,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(container_memory_working_set_bytes{namespace=\"$namespace\", pod=~\"$pod\", image!=\"\", cluster=\"$cluster\"}) by (container) / sum(kube_pod_container_resource_requests{namespace=\"$namespace\", pod=~\"$pod\", resource=\"memory\", job=~\"$job\", cluster=\"$cluster\"}) by (container)",
- "interval": "",
- "legendFormat": "{{`{{ container }}`}} REQUESTS",
- "range": true,
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "expr": "sum(container_memory_working_set_bytes{namespace=\"$namespace\", pod=~\"$pod\", image!=\"\", cluster=\"$cluster\"}) by (container) / sum(kube_pod_container_resource_limits{namespace=\"$namespace\", pod=~\"$pod\", resource=\"memory\", job=~\"$job\", cluster=\"$cluster\"}) by (container)",
- "hide": false,
- "legendFormat": "{{`{{ container }}`}} LIMITS",
- "range": true,
- "refId": "B"
- }
- ],
- "title": "Memory Usage / Requests & Limits by container",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "CPU Cores",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 4,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "limit"
- },
- "properties": [
- {
- "id": "color",
- "value": {
- "fixedColor": "#F2495C",
- "mode": "fixed"
- }
- },
- {
- "id": "custom.fillOpacity",
- "value": 0
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 22
- },
- "id": 29,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(container_cpu_usage_seconds_total{namespace=\"$namespace\", pod=~\"$pod\", image!=\"\", container!=\"\", cluster=\"$cluster\"}[$__rate_interval])) by (container)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ container }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "CPU Usage by container",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "Bytes",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 22
- },
- "id": 51,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(container_memory_working_set_bytes{namespace=\"$namespace\", pod=~\"$pod\", image!=\"\", container!=\"\", cluster=\"$cluster\"}) by (container)",
- "interval": "",
- "legendFormat": "{{`{{ container }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Memory Usage by container",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "SECONDS",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 30
- },
- "id": 59,
- "options": {
- "legend": {
- "calcs": [
- "min",
- "max",
- "mean"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true,
- "sortBy": "Max",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(rate(container_cpu_cfs_throttled_seconds_total{namespace=~\"$namespace\", pod=~\"$pod\", image!=\"\", container!=\"\", cluster=\"$cluster\"}[$__rate_interval])) by (container)",
- "interval": "$resolution",
- "legendFormat": "{{`{{ container }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "CPU Throttled seconds by container",
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 38
- },
- "id": 62,
- "panels": [],
- "title": "Kubernetes",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "fixedColor": "blue",
- "mode": "thresholds"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "Percent",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "area"
- }
- },
- "mappings": [],
- "max": 1,
- "min": 0,
- "thresholds": {
- "mode": "percentage",
- "steps": [
- {
- "color": "red",
- "value": null
- },
- {
- "color": "yellow",
- "value": 20
- },
- {
- "color": "green",
- "value": 30
- },
- {
- "color": "#EAB839",
- "value": 70
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 39
- },
- "id": 60,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(increase(container_oom_events_total{namespace=\"${namespace}\", pod=\"${pod}\", container!=\"\", cluster=\"$cluster\"}[$__rate_interval])) by (container)",
- "interval": "",
- "legendFormat": "{{`{{ container }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "OOM Events by container",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "fixedColor": "blue",
- "mode": "thresholds"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "Percent",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "area"
- }
- },
- "mappings": [],
- "max": 1,
- "min": 0,
- "thresholds": {
- "mode": "percentage",
- "steps": [
- {
- "color": "red",
- "value": null
- },
- {
- "color": "yellow",
- "value": 20
- },
- {
- "color": "green",
- "value": 30
- },
- {
- "color": "#EAB839",
- "value": 70
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 39
- },
- "id": 61,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "editorMode": "code",
- "exemplar": true,
- "expr": "sum(increase(kube_pod_container_status_restarts_total{namespace=~\"${namespace}\", pod=\"${pod}\", container!=\"\", job=~\"$job\", cluster=\"$cluster\"}[$__rate_interval])) by (container)",
- "interval": "",
- "legendFormat": "{{`{{ container }}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "Container Restarts by container",
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 47
- },
- "id": 45,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "refId": "A"
- }
- ],
- "title": "Network",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 48
- },
- "id": 31,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(container_network_receive_bytes_total{namespace=\"$namespace\", pod=~\"$pod\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "Received",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "- sum(rate(container_network_transmit_bytes_total{namespace=\"$namespace\", pod=~\"$pod\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "Transmitted",
- "refId": "B"
- }
- ],
- "title": "Network - Bandwidth",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "pps"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 48
- },
- "id": 34,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(container_network_receive_packets_total{namespace=\"$namespace\", pod=~\"$pod\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "Received",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "- sum(rate(container_network_transmit_packets_total{namespace=\"$namespace\", pod=~\"$pod\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "Transmitted",
- "refId": "B"
- }
- ],
- "title": "Network - Packets Rate",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "pps"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 56
- },
- "id": 36,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(container_network_receive_packets_dropped_total{namespace=\"$namespace\", pod=~\"$pod\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "Received",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "- sum(rate(container_network_transmit_packets_dropped_total{namespace=\"$namespace\", pod=~\"$pod\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "Transmitted",
- "refId": "B"
- }
- ],
- "title": "Network - Packets Dropped",
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 25,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "smooth",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "pps"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 56
- },
- "id": 37,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "list",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "8.3.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "sum(rate(container_network_receive_errors_total{namespace=\"$namespace\", pod=~\"$pod\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "Received",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "exemplar": true,
- "expr": "- sum(rate(container_network_transmit_errors_total{namespace=\"$namespace\", pod=~\"$pod\", cluster=\"$cluster\"}[$__rate_interval]))",
- "interval": "$resolution",
- "legendFormat": "Transmitted",
- "refId": "B"
- }
- ],
- "title": "Network - Errors",
- "type": "timeseries"
- }
- ],
- "refresh": "30s",
- "schemaVersion": 39,
- "tags": [
- "Kubernetes",
- "Prometheus"
- ],
- "templating": {
- "list": [
- {
- "current": {
- "selected": false,
- "text": "",
- "value": ""
- },
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "datasource",
- "options": [],
- "query": "prometheus",
- "queryValue": "",
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "type": "datasource"
- },
- {
- "current": {
- "isNone": true,
- "selected": false,
- "text": "None",
- "value": ""
- },
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(kube_node_info,cluster)",
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "cluster",
- "options": [],
- "query": {
- "qryType": 1,
- "query": "label_values(kube_node_info,cluster)",
- "refId": "PrometheusVariableQueryEditor-VariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- },
- {
- "current": {
- "selected": false,
- "text": "monitoring",
- "value": "monitoring"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(kube_pod_info{cluster=\"$cluster\"}, namespace)",
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "namespace",
- "options": [],
- "query": {
- "query": "label_values(kube_pod_info{cluster=\"$cluster\"}, namespace)",
- "refId": "Prometheus-namespace-Variable-Query"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "tagValuesQuery": "",
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "current": {
- "selected": false,
- "text": "",
- "value": ""
- },
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(kube_pod_info{namespace=\"$namespace\", cluster=\"$cluster\"}, pod)",
- "hide": 0,
- "includeAll": true,
- "multi": true,
- "name": "pod",
- "options": [],
- "query": {
- "query": "label_values(kube_pod_info{namespace=\"$namespace\", cluster=\"$cluster\"}, pod)",
- "refId": "Prometheus-pod-Variable-Query"
- },
- "refresh": 2,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "tagValuesQuery": "",
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "current": {
- "selected": false,
- "text": "30s",
- "value": "30s"
- },
- "hide": 0,
- "includeAll": false,
- "multi": false,
- "name": "resolution",
- "options": [
- {
- "selected": false,
- "text": "1s",
- "value": "1s"
- },
- {
- "selected": false,
- "text": "15s",
- "value": "15s"
- },
- {
- "selected": true,
- "text": "30s",
- "value": "30s"
- },
- {
- "selected": false,
- "text": "1m",
- "value": "1m"
- },
- {
- "selected": false,
- "text": "3m",
- "value": "3m"
- },
- {
- "selected": false,
- "text": "5m",
- "value": "5m"
- }
- ],
- "query": "1s, 15s, 30s, 1m, 3m, 5m",
- "queryValue": "",
- "skipUrlSync": false,
- "type": "custom"
- },
- {
- "current": {
- "selected": false,
- "text": "kube-state-metrics",
- "value": "kube-state-metrics"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "${datasource}"
- },
- "definition": "label_values(kube_pod_info{namespace=\"$namespace\", cluster=\"$cluster\"},job)",
- "hide": 0,
- "includeAll": false,
- "multi": true,
- "name": "job",
- "options": [],
- "query": {
- "qryType": 1,
- "query": "label_values(kube_pod_info{namespace=\"$namespace\", cluster=\"$cluster\"},job)",
- "refId": "PrometheusVariableQueryEditor-VariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "type": "query"
- }
- ]
- },
- "time": {
- "from": "now-1h",
- "to": "now"
- },
- "timepicker": {},
- "timezone": "",
- "title": "Kubernetes / Views / Pods",
- "uid": "k8s_views_pods",
- "version": 28,
- "weekStart": ""
- }
-kind: ConfigMap
-metadata:
- annotations:
- grafana_folder: Kubernetes
- labels:
- grafana_dashboard: "1"
- name: dashboards-k8s-views-pods
- namespace: prometheus
diff --git a/attic/templates/resources/dashboards/gitlab-runner.yaml b/attic/templates/resources/dashboards/gitlab-runner.yaml
deleted file mode 100644
index dc298651..00000000
--- a/attic/templates/resources/dashboards/gitlab-runner.yaml
+++ /dev/null
@@ -1,1822 +0,0 @@
-{{ if .Values.gitlab_runner.enabled }}
-apiVersion: v1
-kind: ConfigMap
-data:
- gitlab-runner.json: |-
- {
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "target": {
- "limit": 100,
- "matchAny": false,
- "tags": [],
- "type": "dashboard"
- },
- "type": "dashboard"
- }
- ]
- },
- "description": "Metrics from gitlab runners",
- "editable": true,
- "fiscalYearStartMonth": 0,
- "gnetId": 14016,
- "graphTooltip": 1,
- "id": 31,
- "iteration": 1697700881148,
- "links": [],
- "liveNow": false,
- "panels": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "6DmHLoFMz"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 43,
- "panels": [],
- "repeat": "app",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "6DmHLoFMz"
- },
- "refId": "A"
- }
- ],
- "title": "About $app",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 5,
- "w": 2,
- "x": 0,
- "y": 1
- },
- "id": 40,
- "options": {
- "code": {
- "language": "plaintext",
- "showLineNumbers": false,
- "showMiniMap": false
- },
- "content": "\n

\n
",
- "mode": "html"
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "refId": "A"
- }
- ],
- "transparent": true,
- "type": "text"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "N/A"
- }
- },
- "type": "special"
- }
- ],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "light-blue",
- "value": null
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 5,
- "w": 5,
- "x": 2,
- "y": 1
- },
- "id": 12,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "center",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "/^version$/",
- "values": false
- },
- "text": {},
- "textMode": "auto"
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "gitlab_runner_version_info{app=~\"^$app$\"}",
- "format": "table",
- "instant": true,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "current version",
- "transparent": true,
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "N/A"
- }
- },
- "type": "special"
- }
- ],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "light-blue",
- "value": null
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 5,
- "w": 4,
- "x": 7,
- "y": 1
- },
- "id": 41,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "center",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "/^Value$/",
- "values": false
- },
- "text": {},
- "textMode": "auto"
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "gitlab_runner_concurrent{app=~\"^$app$\"}",
- "format": "table",
- "instant": true,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "Concurrent job",
- "range": false,
- "refId": "A"
- }
- ],
- "title": "Global concurrent jobs",
- "transformations": [
- {
- "id": "filterFieldsByName",
- "options": {
- "include": {
- "names": [
- "kubernetes_pod_name",
- "Value"
- ]
- }
- }
- }
- ],
- "transparent": true,
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "N/A"
- }
- },
- "type": "special"
- }
- ],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "light-blue",
- "value": null
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 5,
- "w": 3,
- "x": 11,
- "y": 1
- },
- "id": 44,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "/^Value$/",
- "values": false
- },
- "text": {},
- "textMode": "auto"
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "gitlab_runner_limit{app=~\"^$app$\"}",
- "format": "table",
- "instant": true,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "{{`{{runner}}`}}",
- "range": false,
- "refId": "A"
- }
- ],
- "title": "Runner limits by token",
- "transparent": true,
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "-1": {
- "text": "no limit"
- }
- },
- "type": "value"
- }
- ],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "light-blue",
- "value": null
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 5,
- "w": 5,
- "x": 14,
- "y": 1
- },
- "id": 49,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "/^Value$/",
- "values": false
- },
- "text": {},
- "textMode": "auto"
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "gitlab_runner_jobs_total{app=~\"^$app$\"}",
- "format": "table",
- "instant": true,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "{{`{{runner}}`}}",
- "range": false,
- "refId": "A"
- }
- ],
- "title": "Total jobs executed",
- "transparent": true,
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "-1": {
- "text": "no limit"
- }
- },
- "type": "value"
- }
- ],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "light-blue",
- "value": null
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 5,
- "w": 5,
- "x": 19,
- "y": 1
- },
- "id": 54,
- "interval": "30s",
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "colorMode": "value",
- "graphMode": "none",
- "justifyMode": "center",
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "last"
- ],
- "fields": "/^Value$/",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum(gitlab_runner_failed_jobs_total{app=~\"^$app$\"}) by (runner)",
- "format": "table",
- "instant": true,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "__auto",
- "range": false,
- "refId": "A"
- }
- ],
- "title": "Total failed jobs",
- "transparent": true,
- "type": "stat"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "6DmHLoFMz"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 6
- },
- "id": 32,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "6DmHLoFMz"
- },
- "refId": "A"
- }
- ],
- "title": "General",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "count",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "bars",
- "fillOpacity": 100,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "normal"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 7
- },
- "id": 64,
- "interval": "30s",
- "links": [],
- "options": {
- "legend": {
- "calcs": [
- "mean",
- "max",
- "sum",
- "last"
- ],
- "displayMode": "table",
- "placement": "bottom",
- "showLegend": true,
- "sortBy": "Last",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "9.5.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "delta(gitlab_runner_jobs_total{app=~\"^$app$\"} [1m]) ",
- "format": "time_series",
- "hide": false,
- "instant": false,
- "interval": "30s",
- "intervalFactor": 1,
- "legendFormat": "{{`{{app}}`}} : {{`{{runner}}`}} ",
- "refId": "B"
- }
- ],
- "title": "Executed jobs",
- "transparent": true,
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "count",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "bars",
- "fillOpacity": 100,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "normal"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 7
- },
- "id": 53,
- "interval": "30s",
- "links": [],
- "options": {
- "legend": {
- "calcs": [
- "mean",
- "max",
- "sum",
- "last"
- ],
- "displayMode": "table",
- "placement": "bottom",
- "showLegend": true,
- "sortBy": "Last",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "9.5.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum(gitlab_runner_jobs{state=\"running\",app=~\"^$app$\"}) by (app,job,executor_stage,stage)",
- "format": "time_series",
- "hide": false,
- "instant": false,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "{{`{{app}}`}} : {{`{{job}}`}} : {{`{{executor_stage}}`}} : {{`{{stage}}`}} ",
- "refId": "B"
- }
- ],
- "title": "Runnig jobs phase",
- "transparent": true,
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "duration",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "bars",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "normal"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "s"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 16
- },
- "id": 63,
- "interval": "30s",
- "links": [],
- "options": {
- "legend": {
- "calcs": [
- "mean",
- "max",
- "sum",
- "last"
- ],
- "displayMode": "table",
- "placement": "bottom",
- "showLegend": true,
- "sortBy": "Last",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "9.5.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "sum (rate(gitlab_runner_job_duration_seconds_sum [1m]) / rate(gitlab_runner_job_duration_seconds_count [1m])) by (app,runner,job,)",
- "format": "time_series",
- "hide": false,
- "instant": false,
- "interval": "30s",
- "intervalFactor": 1,
- "legendFormat": "{{`{{app}}`}} : {{`{{runner}}`}} : {{`{{job}}`}}",
- "refId": "A"
- }
- ],
- "title": "Average duration of jobs",
- "transparent": true,
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "count",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "bars",
- "fillOpacity": 100,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 2,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "normal"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 16
- },
- "id": 36,
- "interval": "30s",
- "links": [],
- "options": {
- "legend": {
- "calcs": [
- "mean",
- "max",
- "sum",
- "last"
- ],
- "displayMode": "table",
- "placement": "bottom",
- "showLegend": true,
- "sortBy": "Total",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "9.5.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "editorMode": "code",
- "expr": "sum(delta(gitlab_runner_errors_total{app=~\"^$app$\"} [1m])) by (app,level)",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "{{`{{app}}`}} : {{`{{level}}`}}",
- "range": true,
- "refId": "A"
- }
- ],
- "title": "The number of caught errors",
- "transparent": true,
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "count",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "bars",
- "fillOpacity": 5,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "normal"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 25
- },
- "id": 34,
- "interval": "30s",
- "links": [],
- "options": {
- "legend": {
- "calcs": [
- "mean",
- "max",
- "sum",
- "last"
- ],
- "displayMode": "table",
- "placement": "bottom",
- "showLegend": true,
- "sortBy": "Last",
- "sortDesc": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "9.5.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "editorMode": "code",
- "exemplar": false,
- "expr": "delta(gitlab_runner_api_request_statuses_total{app=~\"^$app$\"} [1m])",
- "format": "time_series",
- "instant": false,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "{{`{{app}}`}} : api {{`{{endpoint}}`}} : status {{`{{status}}`}}",
- "refId": "A"
- }
- ],
- "title": "Total number of api requests",
- "transparent": true,
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "6DmHLoFMz"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 34
- },
- "id": 28,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "6DmHLoFMz"
- },
- "refId": "A"
- }
- ],
- "title": "Concurrency",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "count",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 0,
- "mappings": [],
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 35
- },
- "id": 24,
- "links": [],
- "options": {
- "legend": {
- "calcs": [
- "mean",
- "max",
- "last"
- ],
- "displayMode": "table",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "9.5.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "gitlab_runner_request_concurrency{app=~\"^$app$\"}",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "{{`{{app}}`}} : {{`{{runner}}`}}",
- "refId": "A"
- }
- ],
- "title": "The current number of concurrent requests for a new job",
- "transparent": true,
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "count",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 10,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 1,
- "mappings": [],
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 35
- },
- "id": 22,
- "links": [],
- "options": {
- "legend": {
- "calcs": [
- "mean",
- "max",
- "last"
- ],
- "displayMode": "table",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "none"
- }
- },
- "pluginVersion": "9.5.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "delta(gitlab_runner_request_concurrency_exceeded_total{app=~\"^$app$\"} [2m])",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "{{`{{app}}`}} : {{`{{ runner}}`}} ",
- "refId": "A"
- }
- ],
- "title": "Counter tracking exceeding of request concurrency",
- "transparent": true,
- "type": "timeseries"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "6DmHLoFMz"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 44
- },
- "id": 52,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "6DmHLoFMz"
- },
- "refId": "A"
- }
- ],
- "title": "Process",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "description": "(user and system)",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "rate",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 0,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 3,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "percent"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 45
- },
- "id": 47,
- "links": [],
- "options": {
- "legend": {
- "calcs": [
- "mean",
- "lastNotNull",
- "max"
- ],
- "displayMode": "table",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "9.5.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "editorMode": "code",
- "expr": "rate(process_cpu_seconds_total{app=~\"^$app$\"} [1m]) * 100",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "{{`{{app}}`}} ",
- "range": true,
- "refId": "A"
- }
- ],
- "title": " CPU time spent ",
- "transparent": true,
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "count",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 0,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 0,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 45
- },
- "id": 48,
- "links": [],
- "options": {
- "legend": {
- "calcs": [
- "mean",
- "max",
- "last"
- ],
- "displayMode": "table",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "9.5.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "process_open_fds{app=~\"^$app$\"}",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "{{`{{app}}`}} ",
- "refId": "A"
- }
- ],
- "title": "Number of open file descriptors",
- "transparent": true,
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "usage",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 5,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "decbytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 54
- },
- "id": 45,
- "links": [],
- "options": {
- "legend": {
- "calcs": [
- "mean",
- "max",
- "last"
- ],
- "displayMode": "table",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "9.5.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "process_virtual_memory_bytes{app=~\"^$app$\"}",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "{{`{{app}}`}} ",
- "refId": "A"
- }
- ],
- "title": "Virtual memory size in bytes",
- "transparent": true,
- "type": "timeseries"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "usage",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 5,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "decimals": 2,
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "decbytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 54
- },
- "id": 46,
- "links": [],
- "options": {
- "legend": {
- "calcs": [
- "mean",
- "max",
- "last"
- ],
- "displayMode": "table",
- "placement": "bottom",
- "showLegend": true
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "pluginVersion": "9.5.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "process_resident_memory_bytes{app=~\"^$app$\"}",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "{{`{{app}}`}} ",
- "refId": "A"
- }
- ],
- "title": "Resident memory size in bytes",
- "transparent": true,
- "type": "timeseries"
- }
- ],
- "refresh": "1m",
- "schemaVersion": 36,
- "style": "dark",
- "tags": [],
- "templating": {
- "list": [
- {
- "current": {
- "isNone": true,
- "selected": false,
- "text": "None",
- "value": ""
- },
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "definition": "label_values(gitlab_runner_api_request_statuses_total, app)",
- "hide": 0,
- "includeAll": false,
- "multi": true,
- "name": "app",
- "options": [],
- "query": {
- "query": "label_values(gitlab_runner_api_request_statuses_total, app)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 2,
- "regex": "",
- "skipUrlSync": false,
- "sort": 0,
- "tagValuesQuery": "",
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- }
- ]
- },
- "time": {
- "from": "now-3h",
- "to": "now"
- },
- "timepicker": {
- "refresh_intervals": [
- "5s",
- "10s",
- "30s",
- "1m",
- "5m",
- "15m",
- "30m",
- "1h",
- "2h",
- "1d"
- ],
- "time_options": [
- "5m",
- "15m",
- "1h",
- "6h",
- "12h",
- "24h",
- "2d",
- "7d",
- "30d"
- ]
- },
- "timezone": "browser",
- "title": "Gitlab Runner Metrics",
- "uid": "jTW2jWQmz",
- "version": 1,
- "weekStart": ""
- }
-metadata:
- name: prom-gitlab-runner-dashboard
- namespace: prometheus
- labels:
- grafana_dashboard: "1"
-{{- end }}
diff --git a/attic/templates/resources/dashboards/persistent-volume-usage.yaml b/attic/templates/resources/dashboards/persistent-volume-usage.yaml
deleted file mode 100644
index 40e123ef..00000000
--- a/attic/templates/resources/dashboards/persistent-volume-usage.yaml
+++ /dev/null
@@ -1,1592 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: persistent-volumes
- namespace: prometheus
- labels:
- grafana_dashboard: "1"
- annotations:
- grafana_folder: Kubernetes
-data:
- persistent-volumes.json: |-
- {
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "limit": 100,
- "name": "Annotations & Alerts",
- "showIn": 0,
- "type": "dashboard"
- }
- ]
- },
- "description": "Monitors all persistent volumes that exists within a Kubernetes cluster. Prometheus is used as datasource. ",
- "editable": true,
- "fiscalYearStartMonth": 0,
- "gnetId": 13646,
- "graphTooltip": 0,
- "id": 48,
- "links": [],
- "panels": [
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 26,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "refId": "A"
- }
- ],
- "title": "Alerts",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "decimals": 0,
- "mappings": [],
- "noValue": "--",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "light-green",
- "value": null
- },
- {
- "color": "light-green",
- "value": -0.0001
- },
- {
- "color": "semi-dark-orange",
- "value": 0.0001
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 8,
- "x": 0,
- "y": 1
- },
- "id": 22,
- "options": {
- "colorMode": "background",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "percentChangeColorMode": "standard",
- "reduceOptions": {
- "calcs": [
- "mean"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "11.2.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "(\n count (\n (kubelet_volume_stats_available_bytes{namespace=~\"${k8s_namespace}\"})\n and\n (predict_linear(kubelet_volume_stats_available_bytes{namespace=~\"${k8s_namespace}\"}[1d], 2 * 24 * 60 * 60) < 0)\n )\n)\nor\nvector(0)",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "PVCs Full in 2 days - Based on Daily Usage",
- "transformations": [
- {
- "id": "organize",
- "options": {}
- }
- ],
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "decimals": 0,
- "mappings": [],
- "noValue": "--",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "light-green",
- "value": null
- },
- {
- "color": "light-green",
- "value": -0.0001
- },
- {
- "color": "semi-dark-orange",
- "value": 0.0001
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 8,
- "x": 8,
- "y": 1
- },
- "id": 28,
- "options": {
- "colorMode": "background",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "percentChangeColorMode": "standard",
- "reduceOptions": {
- "calcs": [
- "mean"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "11.2.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "(\n count (\n (kubelet_volume_stats_available_bytes{namespace=~\"${k8s_namespace}\"})\n and\n (predict_linear(kubelet_volume_stats_available_bytes{namespace=~\"${k8s_namespace}\"}[1d], 5 * 24 * 60 * 60) < 0)\n )\n)\nor\nvector(0)",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "PVCs Full in 5 days - Based on Daily Usage",
- "transformations": [
- {
- "id": "organize",
- "options": {}
- }
- ],
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "decimals": 0,
- "mappings": [],
- "noValue": "--",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "light-green",
- "value": null
- },
- {
- "color": "light-green",
- "value": -0.0001
- },
- {
- "color": "semi-dark-orange",
- "value": 0.0001
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 8,
- "x": 16,
- "y": 1
- },
- "id": 27,
- "options": {
- "colorMode": "background",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "percentChangeColorMode": "standard",
- "reduceOptions": {
- "calcs": [
- "mean"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "11.2.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "(\n count (\n (kubelet_volume_stats_available_bytes{namespace=~\"${k8s_namespace}\"})\n and\n (predict_linear(kubelet_volume_stats_available_bytes{namespace=~\"${k8s_namespace}\"}[1d], 7 * 24 * 60 * 60) < 0)\n )\n)\nor\nvector(0)",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "PVCs Full in 1 Week - Based on Daily Usage",
- "transformations": [
- {
- "id": "organize",
- "options": {}
- }
- ],
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "noValue": "--",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "semi-dark-red",
- "value": null
- },
- {
- "color": "light-green",
- "value": -0.0001
- },
- {
- "color": "semi-dark-red",
- "value": 0.0001
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 8,
- "x": 0,
- "y": 5
- },
- "id": 21,
- "options": {
- "colorMode": "background",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "percentChangeColorMode": "standard",
- "reduceOptions": {
- "calcs": [
- "mean"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "11.2.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "count (max by (persistentvolumeclaim,namespace) (kubelet_volume_stats_used_bytes{namespace=~\"${k8s_namespace}\"} ) and (max by (persistentvolumeclaim,namespace) (kubelet_volume_stats_used_bytes{namespace=~\"${k8s_namespace}\"} )) / (max by (persistentvolumeclaim,namespace) (kubelet_volume_stats_capacity_bytes{namespace=~\"${k8s_namespace}\"} )) >= (${warning_threshold} / 100)) or vector (0)",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "PVCs Above Warning Threshold",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "decimals": 0,
- "mappings": [],
- "noValue": "--",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "semi-dark-red",
- "value": null
- },
- {
- "color": "light-green",
- "value": -0.0001
- },
- {
- "color": "semi-dark-red",
- "value": 0.0001
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 8,
- "x": 8,
- "y": 5
- },
- "id": 24,
- "options": {
- "colorMode": "background",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "percentChangeColorMode": "standard",
- "reduceOptions": {
- "calcs": [
- "mean"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "11.2.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "count((kube_persistentvolumeclaim_status_phase{namespace=~\"${k8s_namespace}\",phase=\"Pending\"}==1)) or vector(0)",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "PVCs in Pending State",
- "transformations": [
- {
- "id": "organize",
- "options": {}
- }
- ],
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "decimals": 0,
- "mappings": [],
- "noValue": "--",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "semi-dark-red",
- "value": null
- },
- {
- "color": "light-green",
- "value": -0.0001
- },
- {
- "color": "semi-dark-red",
- "value": 0.0001
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 4,
- "w": 8,
- "x": 16,
- "y": 5
- },
- "id": 23,
- "options": {
- "colorMode": "background",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "percentChangeColorMode": "standard",
- "reduceOptions": {
- "calcs": [
- "mean"
- ],
- "fields": "",
- "values": false
- },
- "showPercentChange": false,
- "textMode": "auto",
- "wideLayout": true
- },
- "pluginVersion": "11.2.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "count((kube_persistentvolumeclaim_status_phase{namespace=~\"${k8s_namespace}\",phase=\"Lost\"}==1)) or vector(0)",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "PVCs in Lost State",
- "transformations": [
- {
- "id": "organize",
- "options": {}
- }
- ],
- "type": "stat"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 9
- },
- "id": 17,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "refId": "A"
- }
- ],
- "title": "Usage statistics",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "custom": {
- "cellOptions": {
- "type": "auto"
- },
- "filterable": false,
- "inspect": false
- },
- "mappings": [],
- "noValue": "--",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "light-green",
- "value": null
- }
- ]
- },
- "unit": "none"
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "Used (%)"
- },
- "properties": [
- {
- "id": "custom.cellOptions",
- "value": {
- "mode": "gradient",
- "type": "gauge"
- }
- },
- {
- "id": "thresholds",
- "value": {
- "mode": "absolute",
- "steps": [
- {
- "color": "light-green",
- "value": null
- },
- {
- "color": "semi-dark-yellow",
- "value": 70
- },
- {
- "color": "dark-red",
- "value": 80
- }
- ]
- }
- },
- {
- "id": "decimals",
- "value": 1
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "Status"
- },
- "properties": [
- {
- "id": "custom.cellOptions",
- "value": {
- "mode": "gradient",
- "type": "color-background"
- }
- },
- {
- "id": "mappings",
- "value": [
- {
- "options": {
- "0": {
- "text": "Bound"
- },
- "1": {
- "text": "Pending"
- },
- "2": {
- "text": "Lost"
- }
- },
- "type": "value"
- }
- ]
- },
- {
- "id": "thresholds",
- "value": {
- "mode": "absolute",
- "steps": [
- {
- "color": "light-green",
- "value": null
- },
- {
- "color": "light-green",
- "value": 0
- },
- {
- "color": "semi-dark-orange",
- "value": 1
- },
- {
- "color": "semi-dark-red",
- "value": 2
- }
- ]
- }
- },
- {
- "id": "noValue",
- "value": "--"
- },
- {
- "id": "custom.align",
- "value": "center"
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "Namespace"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 120
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "Status"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 80
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "Capacity (GiB)"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 120
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "Used (GiB)"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 120
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "Available (GiB)"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 120
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "StorageClass"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 150
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "PersistentVolumeClaim"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 370
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 12,
- "w": 24,
- "x": 0,
- "y": 10
- },
- "id": 29,
- "interval": "",
- "options": {
- "cellHeight": "sm",
- "footer": {
- "countRows": false,
- "fields": "",
- "reducer": [
- "sum"
- ],
- "show": false
- },
- "frameIndex": 2,
- "showHeader": true,
- "sortBy": [
- {
- "desc": true,
- "displayName": "Used (%)"
- }
- ]
- },
- "pluginVersion": "11.2.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": " sum by (persistentvolumeclaim,namespace,storageclass,volumename) (kube_persistentvolumeclaim_info{namespace=~\"${k8s_namespace}\"})",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "sum by (persistentvolumeclaim) (kubelet_volume_stats_capacity_bytes{namespace=~\"${k8s_namespace}\"}/1024/1024/1024)",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "sum by (persistentvolumeclaim) (kubelet_volume_stats_used_bytes{namespace=~\"${k8s_namespace}\"}/1024/1024/1024)",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "C"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "sum by (persistentvolumeclaim) (kubelet_volume_stats_available_bytes{namespace=~\"${k8s_namespace}\"}/1024/1024/1024)",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "D"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "sum(kube_persistentvolumeclaim_status_phase{namespace=~\"${k8s_namespace}\",phase=~\"(Pending|Lost)\"}) by (persistentvolumeclaim) + sum(kube_persistentvolumeclaim_status_phase{namespace=~\"${k8s_namespace}\",phase=~\"(Lost)\"}) by (persistentvolumeclaim)",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "E"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "sum by (persistentvolumeclaim) (kubelet_volume_stats_used_bytes{namespace=~\"${k8s_namespace}\"}/kubelet_volume_stats_capacity_bytes{namespace=~\"${k8s_namespace}\"} * 100)",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "F"
- }
- ],
- "title": "Persistent Volume Claim",
- "transformations": [
- {
- "id": "seriesToColumns",
- "options": {
- "byField": "persistentvolumeclaim"
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {
- "Time": true,
- "Time 1": true,
- "Time 2": true,
- "Time 3": true,
- "Time 4": true,
- "Time 5": true,
- "Time 6": true,
- "Value #A": true
- },
- "indexByName": {},
- "renameByName": {
- "Time 1": "",
- "Time 2": "",
- "Time 3": "",
- "Time 4": "",
- "Time 5": "",
- "Time 6": "",
- "Value #A": "",
- "Value #B": "Capacity (GiB)",
- "Value #C": "Used (GiB)",
- "Value #D": "Available (GiB)",
- "Value #E": "Status",
- "Value #F": "Used (%)",
- "namespace": "Namespace",
- "persistentvolumeclaim": "PersistentVolumeClaim",
- "storageclass": "StorageClass",
- "volumename": "PhysicalVolume"
- }
- }
- }
- ],
- "type": "table"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "custom": {
- "cellOptions": {
- "type": "auto"
- },
- "filterable": false,
- "inspect": false
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 5,
- "w": 24,
- "x": 0,
- "y": 22
- },
- "id": 7,
- "options": {
- "cellHeight": "sm",
- "footer": {
- "countRows": false,
- "fields": "",
- "reducer": [
- "sum"
- ],
- "show": false
- },
- "showHeader": true,
- "sortBy": [
- {
- "desc": true,
- "displayName": "Status"
- }
- ]
- },
- "pluginVersion": "11.2.0",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "kube_storageclass_info",
- "format": "table",
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Storage Class",
- "transformations": [
- {
- "id": "organize",
- "options": {
- "excludeByName": {
- "Time": true,
- "Value": true,
- "__name__": true,
- "app_kubernetes_io_instance": true,
- "app_kubernetes_io_name": true,
- "instance": true,
- "job": true,
- "kubernetes_namespace": true,
- "kubernetes_pod_name": true,
- "pod_template_hash": true
- },
- "indexByName": {
- "Time": 1,
- "Value": 13,
- "__name__": 2,
- "app_kubernetes_io_instance": 3,
- "app_kubernetes_io_name": 4,
- "instance": 5,
- "job": 6,
- "kubernetes_namespace": 7,
- "kubernetes_pod_name": 8,
- "pod_template_hash": 9,
- "provisioner": 10,
- "reclaimPolicy": 11,
- "storageclass": 0,
- "volumeBindingMode": 12
- },
- "renameByName": {
- "provisioner": "Provisioner",
- "reclaimPolicy": "ReclaimPolicy",
- "storageclass": "StorageClass",
- "volumeBindingMode": "VolumeBindingMode"
- }
- }
- },
- {
- "id": "groupBy",
- "options": {
- "fields": {
- "Provisioner": {
- "aggregations": [],
- "operation": "groupby"
- },
- "ReclaimPolicy": {
- "aggregations": [],
- "operation": "groupby"
- },
- "StorageClass": {
- "aggregations": [],
- "operation": "groupby"
- },
- "VolumeBindingMode": {
- "aggregations": [],
- "operation": "groupby"
- }
- }
- }
- }
- ],
- "type": "table"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 27
- },
- "id": 15,
- "panels": [],
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "refId": "A"
- }
- ],
- "title": "Graphical usage data ",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisBorderShow": false,
- "axisCenteredZero": false,
- "axisColorMode": "text",
- "axisLabel": "",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "barWidthFactor": 0.6,
- "drawStyle": "line",
- "fillOpacity": 0,
- "gradientMode": "none",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "insertNulls": false,
- "lineInterpolation": "linear",
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green",
- "value": null
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- },
- "unit": "bytes"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 12,
- "w": 24,
- "x": 0,
- "y": 28
- },
- "id": 9,
- "options": {
- "legend": {
- "calcs": [
- "mean",
- "lastNotNull",
- "max",
- "min"
- ],
- "displayMode": "table",
- "placement": "right",
- "showLegend": true
- },
- "tooltip": {
- "mode": "multi",
- "sort": "desc"
- }
- },
- "pluginVersion": "7.2.1",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "(max by (persistentvolumeclaim,namespace) (kubelet_volume_stats_used_bytes{namespace=~\"${k8s_namespace}\"}))",
- "interval": "",
- "legendFormat": "{{`{{namespace}}`}} ({{`{{persistentvolumeclaim}}`}})",
- "refId": "A"
- }
- ],
- "title": "All Running PVCs Used Bytes",
- "type": "timeseries"
- },
- {
- "collapsed": true,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 40
- },
- "id": 19,
- "panels": [
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "custom": {}
- },
- "overrides": []
- },
- "fill": 0,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 24,
- "x": 0,
- "y": 41
- },
- "hiddenSeries": false,
- "id": 11,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "7.2.1",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "rate(kubelet_volume_stats_used_bytes{namespace=~\"${k8s_namespace}\"}[1h])",
- "instant": false,
- "interval": "",
- "legendFormat": "{{`{{namespace}}`}} ({{`{{persistentvolumeclaim}}`}})",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Hourly Volume Usage Rate",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "binBps",
- "logBase": 1,
- "show": true
- },
- {
- "format": "Date & time",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "custom": {}
- },
- "overrides": []
- },
- "fill": 0,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 24,
- "x": 0,
- "y": 48
- },
- "hiddenSeries": false,
- "id": 12,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "7.2.1",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "rate(kubelet_volume_stats_used_bytes{namespace=~\"${k8s_namespace}\"}[1d])",
- "interval": "",
- "legendFormat": "{{`{{namespace}}`}} ({{`{{persistentvolumeclaim}}`}})",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Daily Volume Usage Rate",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "binBps",
- "logBase": 1,
- "show": true
- },
- {
- "format": "Date & time",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "fieldConfig": {
- "defaults": {
- "custom": {}
- },
- "overrides": []
- },
- "fill": 0,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 24,
- "x": 0,
- "y": 55
- },
- "hiddenSeries": false,
- "id": 13,
- "legend": {
- "alignAsTable": true,
- "avg": true,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "7.2.1",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "expr": "rate(kubelet_volume_stats_used_bytes{namespace=~\"${k8s_namespace}\"}[1w])",
- "instant": false,
- "interval": "",
- "legendFormat": "{{`{{namespace}}`}} ({{`{{persistentvolumeclaim}}`}})",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Weekly Volume Usage Rate",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "binBps",
- "logBase": 1,
- "show": true
- },
- {
- "format": "Date & time",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- }
- ],
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "refId": "A"
- }
- ],
- "title": "Usage Rate",
- "type": "row"
- }
- ],
- "refresh": "1m",
- "schemaVersion": 39,
- "tags": [],
- "templating": {
- "list": [
- {
- "current": {
- "selected": false,
- "text": "Prometheus",
- "value": "prometheus"
- },
- "hide": 0,
- "includeAll": false,
- "label": "Datasource",
- "multi": false,
- "name": "datasource",
- "options": [],
- "query": "prometheus",
- "queryValue": "",
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "type": "datasource"
- },
- {
- "allValue": ".*",
- "current": {
- "selected": false,
- "text": "All",
- "value": "$__all"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "definition": "label_values(namespace)",
- "hide": 0,
- "includeAll": true,
- "label": "Namespace",
- "multi": true,
- "name": "k8s_namespace",
- "options": [],
- "query": "label_values(namespace)",
- "refresh": 2,
- "regex": "",
- "skipUrlSync": false,
- "sort": 1,
- "tagValuesQuery": "",
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "current": {
- "selected": false,
- "text": "80",
- "value": "80"
- },
- "hide": 2,
- "label": "PVC % Used Warning Threshold",
- "name": "warning_threshold",
- "options": [
- {
- "selected": true,
- "text": "80",
- "value": "80"
- }
- ],
- "query": "80",
- "skipUrlSync": false,
- "type": "textbox"
- }
- ]
- },
- "time": {
- "from": "now-24h",
- "to": "now"
- },
- "timepicker": {},
- "timezone": "",
- "title": "kubernetes-persistent-volumes",
- "uid": "peR80gTGk",
- "version": 1,
- "weekStart": ""
- }
diff --git a/attic/templates/resources/dashboards/rabbitmq.yaml b/attic/templates/resources/dashboards/rabbitmq.yaml
deleted file mode 100644
index 517da704..00000000
--- a/attic/templates/resources/dashboards/rabbitmq.yaml
+++ /dev/null
@@ -1,372 +0,0 @@
-{{- if .Values.rabbitmq_operator.enabled }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: rabbitmq-overview-dashboard
- namespace: prometheus
- labels:
- grafana_dashboard: "1"
-data:
- # https://grafana.com/grafana/dashboards/10991
- rabbitmq-overview-dashboard.json.url: "https://github.com/rabbitmq/rabbitmq-server/raw/e57c579d1a71b283469defdd0d6d45313e6d6daf/deps/rabbitmq_prometheus/docker/grafana/dashboards/RabbitMQ-Overview.json"
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: rabbitmq-queue-grafana-dashboard
- namespace: prometheus
- labels:
- grafana_dashboard: "1"
-data:
- rabbitmq-queue-grafana-dashboard.json: |-
- {
- "__inputs":[
- {
- "name":"DS_PROMETHEUS",
- "label":"prometheus",
- "description":"",
- "type":"datasource",
- "pluginId":"prometheus",
- "pluginName":"Prometheus"
- }
- ],
- "__elements":{
-
- },
- "__requires":[
- {
- "type":"grafana",
- "id":"grafana",
- "name":"Grafana",
- "version":"8.3.4"
- },
- {
- "type":"datasource",
- "id":"prometheus",
- "name":"Prometheus",
- "version":"1.0.0"
- },
- {
- "type":"panel",
- "id":"timeseries",
- "name":"Time series",
- "version":""
- }
- ],
- "annotations":{
- "list":[
- {
- "builtIn":1,
- "datasource":{
- "type":"datasource",
- "uid":"grafana"
- },
- "enable":true,
- "hide":true,
- "iconColor":"rgba(0, 211, 255, 1)",
- "name":"Annotations & Alerts",
- "target":{
- "limit":100,
- "matchAny":false,
- "tags":[
-
- ],
- "type":"dashboard"
- },
- "type":"dashboard"
- }
- ]
- },
- "editable":true,
- "fiscalYearStartMonth":0,
- "graphTooltip":0,
- "id":null,
- "links":[
-
- ],
- "liveNow":false,
- "panels":[
- {
- "datasource":{
- "type":"prometheus",
- "uid":"${DS_PROMETHEUS}"
- },
- "fieldConfig":{
- "defaults":{
- "color":{
- "mode":"palette-classic"
- },
- "custom":{
- "axisCenteredZero":false,
- "axisColorMode":"text",
- "axisLabel":"Messages",
- "axisPlacement":"left",
- "axisSoftMin":0,
- "barAlignment":0,
- "drawStyle":"line",
- "fillOpacity":0,
- "gradientMode":"none",
- "hideFrom":{
- "graph":false,
- "legend":false,
- "tooltip":false,
- "viz":false
- },
- "lineInterpolation":"linear",
- "lineWidth":1,
- "pointSize":5,
- "scaleDistribution":{
- "type":"linear"
- },
- "showPoints":"auto",
- "spanNulls":false,
- "stacking":{
- "group":"A",
- "mode":"none"
- },
- "thresholdsStyle":{
- "mode":"off"
- }
- },
- "mappings":[
-
- ],
- "thresholds":{
- "mode":"absolute",
- "steps":[
- {
- "color":"green",
- "value":null
- },
- {
- "color":"red",
- "value":80
- }
- ]
- }
- },
- "overrides":[
- {
- "matcher":{
- "id":"byName",
- "options":"Consumers"
- },
- "properties":[
- {
- "id":"custom.axisPlacement",
- "value":"right"
- },
- {
- "id":"unit",
- "value":"prefix:"
- },
- {
- "id":"custom.axisLabel",
- "value":"Consumers"
- }
- ]
- },
- {
- "matcher":{
- "id":"byName",
- "options":"Messages"
- },
- "properties":[
- {
- "id":"custom.drawStyle",
- "value":"line"
- },
- {
- "id":"custom.fillOpacity",
- "value":0
- }
- ]
- }
- ]
- },
- "gridPos":{
- "h":20,
- "w":24,
- "x":0,
- "y":0
- },
- "id":2,
- "options":{
- "legend":{
- "calcs":[
-
- ],
- "displayMode":"list",
- "placement":"bottom",
- "showLegend":true
- },
- "tooltip":{
- "mode":"single",
- "sort":"none"
- }
- },
- "targets":[
- {
- "datasource":{
- "type":"prometheus",
- "uid":"${DS_PROMETHEUS}"
- },
- "editorMode":"code",
- "expr":"(rabbitmq_detailed_queue_messages{namespace=\"$namespace\", queue=\"$queue\"} * on (instance, job) rabbitmq_identity_info{namespace=\"$namespace\",rabbitmq_cluster=\"$rabbitmq_cluster\"})",
- "legendFormat":"Messages ({{`{{job}}`}} | {{`{{instance}}`}})",
- "range":true,
- "refId":"A"
- },
- {
- "datasource":{
- "type":"prometheus",
- "uid":"${DS_PROMETHEUS}"
- },
- "editorMode":"code",
- "expr":"rabbitmq_detailed_queue_consumers{namespace=\"$namespace\", queue=\"$queue\"} * on (instance, job) rabbitmq_identity_info{namespace=\"$namespace\",rabbitmq_cluster=\"$rabbitmq_cluster\"}",
- "legendFormat":"Consumers ({{`{{job}}`}} | {{`{{instance}}`}})",
- "range":true,
- "refId":"B"
- }
- ],
- "title":"Queue messages and consumers",
- "type":"timeseries"
- }
- ],
- "refresh":"10s",
- "revision":1,
- "schemaVersion":38,
- "style":"dark",
- "tags":[
- "rabbitmq-prometheus"
- ],
- "templating":{
- "list":[
- {
- "current":{
- "selected":false,
- "text":"default",
- "value":"default"
- },
- "hide":2,
- "includeAll":false,
- "label":"datasource",
- "multi":false,
- "name":"DS_PROMETHEUS",
- "options":[
-
- ],
- "query":"prometheus",
- "refresh":1,
- "regex":"",
- "skipUrlSync":false,
- "type":"datasource",
- "datasource":"${DS_PROMETHEUS}"
- },
- {
- "current":{
-
- },
- "datasource":{
- "type":"prometheus",
- "uid":"${DS_PROMETHEUS}"
- },
- "definition":"label_values(rabbitmq_identity_info, namespace)",
- "hide":0,
- "includeAll":false,
- "label":"Namespace",
- "multi":false,
- "name":"namespace",
- "options":[
-
- ],
- "query":{
- "query":"label_values(rabbitmq_identity_info, namespace)",
- "refId":"StandardVariableQuery"
- },
- "refresh":2,
- "regex":"",
- "skipUrlSync":false,
- "sort":1,
- "tagValuesQuery":"",
- "tagsQuery":"",
- "type":"query",
- "useTags":false
- },
- {
- "current":{
-
- },
- "datasource":{
- "type":"prometheus",
- "uid":"${DS_PROMETHEUS}"
- },
- "definition":"label_values(rabbitmq_identity_info{namespace=\"$namespace\"}, rabbitmq_cluster)",
- "hide":0,
- "includeAll":false,
- "label":"RabbitMQ Cluster",
- "multi":false,
- "name":"rabbitmq_cluster",
- "options":[
-
- ],
- "query":{
- "query":"label_values(rabbitmq_identity_info{namespace=\"$namespace\"}, rabbitmq_cluster)",
- "refId":"StandardVariableQuery"
- },
- "refresh":2,
- "regex":"",
- "skipUrlSync":false,
- "sort":1,
- "tagValuesQuery":"",
- "tagsQuery":"",
- "type":"query",
- "useTags":false
- },
- {
- "current":{
-
- },
- "datasource":{
- "type":"prometheus",
- "uid":"${DS_PROMETHEUS}"
- },
- "definition":"query_result(rabbitmq_detailed_queue_messages{namespace=\"$namespace\"} * on (instance, job) group_left(rabbitmq_cluster) rabbitmq_identity_info{namespace=\"$namespace\"})",
- "hide":0,
- "includeAll":false,
- "label":"Queue",
- "multi":false,
- "name":"queue",
- "options":[
-
- ],
- "query":{
- "query":"query_result(rabbitmq_detailed_queue_messages{namespace=\"$namespace\"} * on (instance, job) group_left(rabbitmq_cluster) rabbitmq_identity_info{namespace=\"$namespace\", rabbitmq_cluster=\"$rabbitmq_cluster\"})",
- "refId":"StandardVariableQuery"
- },
- "refresh":2,
- "regex":"/.*queue=\"([^\"]+)\".*/",
- "skipUrlSync":false,
- "sort":0,
- "tagValuesQuery":"",
- "tagsQuery":"",
- "type":"query",
- "useTags":false
- }
- ]
- },
- "time":{
- "from":"now-15m",
- "to":"now"
- },
- "timepicker":{
-
- },
- "timezone":"",
- "title":"RabbitMQ-Queue",
- "uid":"j9t8vwH7k",
- "version":3,
- "weekStart":""
- }
-{{- end }}
diff --git a/attic/templates/resources/dashboards/velero.yaml b/attic/templates/resources/dashboards/velero.yaml
deleted file mode 100644
index 6874bdec..00000000
--- a/attic/templates/resources/dashboards/velero.yaml
+++ /dev/null
@@ -1,2214 +0,0 @@
-{{- if .Values.velero.enabled }}
-apiVersion: v1
-data:
- velero.json: |-
- {
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "target": {
- "limit": 100,
- "matchAny": false,
- "tags": [],
- "type": "dashboard"
- },
- "type": "dashboard"
- }
- ]
- },
- "description": "Velero Stats maintained by Velero team",
- "editable": true,
- "fiscalYearStartMonth": 0,
- "gnetId": 16829,
- "graphTooltip": 1,
- "id": 34,
- "iteration": 1678979743251,
- "links": [],
- "liveNow": false,
- "panels": [
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 15,
- "panels": [],
- "title": "Backup",
- "type": "row"
- },
- {
- "datasource": "prometheus",
- "description": "The sum of one-off backup and schedule backup success total ",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "N/A"
- }
- },
- "type": "special"
- }
- ],
- "max": 100,
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "#d44a3a",
- "value": null
- },
- {
- "color": "rgba(237, 129, 40, 0.89)",
- "value": 0.95
- },
- {
- "color": "#299c46",
- "value": 0.99
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 4,
- "x": 0,
- "y": 1
- },
- "id": 23,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "colorMode": "value",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "textMode": "auto"
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "velero_backup_total",
- "format": "time_series",
- "instant": true,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Backup Success Total",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "N/A"
- }
- },
- "type": "special"
- }
- ],
- "max": 100,
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "#d44a3a",
- "value": null
- },
- {
- "color": "rgba(237, 129, 40, 0.89)",
- "value": 0.95
- },
- {
- "color": "#299c46",
- "value": 0.99
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 4,
- "x": 4,
- "y": 1
- },
- "id": 22,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "sum(velero_backup_success_total{schedule=~\"$schedule\"}) / sum(velero_backup_attempt_total{schedule=~\"$schedule\"})",
- "format": "time_series",
- "instant": false,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Backup Success Rate",
- "type": "gauge"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "N/A"
- }
- },
- "type": "special"
- }
- ],
- "max": 100,
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "#d44a3a",
- "value": null
- },
- {
- "color": "rgba(237, 129, 40, 0.89)",
- "value": 0.95
- },
- {
- "color": "#299c46",
- "value": 0.99
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 4,
- "x": 8,
- "y": 1
- },
- "id": 26,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "sum(velero_backup_deletion_success_total{schedule=~\"$schedule\"}) / sum(velero_backup_deletion_attempt_total{schedule=~\"$schedule\"})",
- "format": "time_series",
- "instant": false,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Backup Deletion Success Rate",
- "type": "gauge"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "N/A"
- }
- },
- "type": "special"
- }
- ],
- "max": 100,
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "#d44a3a",
- "value": null
- },
- {
- "color": "rgba(237, 129, 40, 0.89)",
- "value": 0.95
- },
- {
- "color": "#299c46",
- "value": 0.99
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 4,
- "x": 12,
- "y": 1
- },
- "id": 25,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "sum(velero_volume_snapshot_success_total{schedule=~\"$schedule\"}) / sum(velero_volume_snapshot_attempt_total{schedule=~\"$schedule\"})\n",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Volume snapshot Success Rate",
- "type": "gauge"
- },
- {
- "columns": [
- {
- "$$hashKey": "object:462",
- "text": "Current",
- "value": "current"
- }
- ],
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "description": "for schedule backup use only",
- "fontSize": "100%",
- "gridPos": {
- "h": 9,
- "w": 8,
- "x": 16,
- "y": 1
- },
- "id": 13,
- "scroll": true,
- "showHeader": true,
- "sort": {
- "col": 0,
- "desc": false
- },
- "styles": [
- {
- "alias": "Time",
- "align": "auto",
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "pattern": "Time",
- "type": "date"
- },
- {
- "alias": "Hours since last backup",
- "align": "auto",
- "colorMode": "row",
- "colors": [
- "rgba(50, 172, 45, 0.97)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(245, 54, 54, 0.9)"
- ],
- "decimals": 2,
- "pattern": "Current",
- "thresholds": [
- "24",
- "48"
- ],
- "type": "number",
- "unit": "short"
- }
- ],
- "targets": [
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "(time() - velero_backup_last_successful_timestamp{schedule!=\"\"}) / 60 / 60",
- "instant": true,
- "interval": "",
- "legendFormat": "{{`{{schedule}}`}}",
- "refId": "A"
- }
- ],
- "title": "Hours since last Backup",
- "transform": "timeseries_aggregations",
- "type": "table-old"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "decimals": 0,
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 10,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 24,
- "x": 0,
- "y": 10
- },
- "hiddenSeries": false,
- "id": 8,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "avg",
- "sortDesc": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "8.5.3",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": true,
- "steppedLine": true,
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_backup_success_total{schedule=~\"$schedule\"}[1h])))",
- "format": "time_series",
- "instant": false,
- "interval": "",
- "legendFormat": "Backup success",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_backup_failure_total{schedule=~\"$schedule\"}[1h])))",
- "hide": false,
- "instant": false,
- "interval": "",
- "legendFormat": "Backup failure",
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_backup_partial_failure_total{schedule=~\"$schedule\"}[1h])))",
- "instant": false,
- "interval": "",
- "legendFormat": "Backup partial failure",
- "refId": "C"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_backup_deletion_success_total{schedule=~\"$schedule\"}[1h])))",
- "instant": false,
- "interval": "",
- "legendFormat": "Backup deletion success",
- "refId": "D"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_backup_deletion_failure_total{schedule=~\"$schedule\"}[1h])))",
- "instant": false,
- "interval": "",
- "legendFormat": "Backup deletion failure",
- "refId": "E"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "sum(avg_over_time(velero_backup_items_total{schedule=~\"$schedule\"}[1h]))",
- "hide": false,
- "instant": false,
- "interval": "",
- "legendFormat": "Backup items total",
- "refId": "F"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "sum(avg_over_time(velero_backup_items_errors{schedule=~\"$schedule\"}[1h]))",
- "hide": false,
- "instant": false,
- "interval": "",
- "legendFormat": "Backup items errors_total",
- "refId": "G"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_backup_validation_failure_total{schedule=~\"$schedule\"}[1h])))",
- "hide": false,
- "instant": false,
- "interval": "",
- "legendFormat": "Backup validation failure",
- "refId": "H"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_volume_snapshot_success_total{schedule=~\"$schedule\"}[1h])))",
- "hide": false,
- "instant": false,
- "interval": "",
- "legendFormat": "Backup volume snapshot success",
- "refId": "I"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_volume_snapshot_failure_total{schedule=~\"$schedule\"}[1h])))",
- "hide": false,
- "instant": false,
- "interval": "",
- "legendFormat": "Backup volume snapshot failure",
- "refId": "J"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Backup per hour",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "$$hashKey": "object:124",
- "decimals": 0,
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "$$hashKey": "object:125",
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "cards": {},
- "color": {
- "cardColor": "#1F60C4",
- "colorScale": "linear",
- "colorScheme": "interpolateSpectral",
- "exponent": 0.5,
- "mode": "spectrum"
- },
- "dataFormat": "tsbuckets",
- "datasource": "prometheus",
- "gridPos": {
- "h": 8,
- "w": 24,
- "x": 0,
- "y": 19
- },
- "heatmap": {},
- "hideZeroBuckets": false,
- "highlightCards": true,
- "id": 34,
- "legend": {
- "show": true
- },
- "reverseYBuckets": false,
- "targets": [
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "sum(increase(velero_backup_duration_seconds_bucket{schedule=~\"$schedule\",le!=\"+Inf\"}[1h])) by (le)",
- "format": "heatmap",
- "hide": false,
- "interval": "",
- "legendFormat": "{{`{{le}}`}}",
- "refId": "B"
- }
- ],
- "title": "Backup time heatmap",
- "tooltip": {
- "show": true,
- "showHistogram": true
- },
- "type": "heatmap",
- "xAxis": {
- "show": true
- },
- "yAxis": {
- "format": "s",
- "logBase": 1,
- "show": true
- },
- "yBucketBound": "auto"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 24,
- "x": 0,
- "y": 27
- },
- "hiddenSeries": false,
- "id": 18,
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": false,
- "max": true,
- "min": false,
- "rightSide": true,
- "show": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "8.5.3",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "sum(avg_over_time(velero_backup_tarball_size_bytes{schedule=~\"$schedule\"}[15m]))",
- "interval": "",
- "legendFormat": "{{`{{schedule}}`}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Backup Size",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "$$hashKey": "object:561",
- "decimals": 0,
- "format": "decbytes",
- "label": "",
- "logBase": 1,
- "show": true
- },
- {
- "$$hashKey": "object:562",
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 33
- },
- "id": 17,
- "panels": [],
- "title": "Restore",
- "type": "row"
- },
- {
- "datasource": "prometheus",
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "N/A"
- }
- },
- "type": "special"
- }
- ],
- "max": 100,
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "#d44a3a"
- },
- {
- "color": "rgba(237, 129, 40, 0.89)",
- "value": 0.95
- },
- {
- "color": "#299c46",
- "value": 0.99
- }
- ]
- },
- "unit": "short"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 4,
- "x": 0,
- "y": 34
- },
- "id": 27,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "colorMode": "value",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "textMode": "auto"
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "velero_restore_total",
- "format": "time_series",
- "instant": true,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Restore Success Total",
- "type": "stat"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "N/A"
- }
- },
- "type": "special"
- }
- ],
- "max": 100,
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "#d44a3a"
- },
- {
- "color": "rgba(237, 129, 40, 0.89)",
- "value": 0.95
- },
- {
- "color": "#299c46",
- "value": 0.99
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 4,
- "x": 4,
- "y": 34
- },
- "id": 24,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "sum(velero_restore_success_total{schedule=~\"$schedule\"}) / sum(velero_restore_attempt_total{schedule=~\"$schedule\"})",
- "format": "time_series",
- "instant": false,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Restore Success Rate",
- "type": "gauge"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "decimals": 0,
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 10,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 16,
- "x": 8,
- "y": 34
- },
- "hiddenSeries": false,
- "id": 28,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "avg",
- "sortDesc": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "8.5.3",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": true,
- "steppedLine": true,
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_restore_success_total{schedule=~\"$schedule\"}[1h])))",
- "format": "time_series",
- "instant": false,
- "interval": "",
- "legendFormat": "Restore success",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_restore_failed_total{schedule=~\"$schedule\"}[1h])))",
- "hide": false,
- "interval": "",
- "legendFormat": "Restore failure",
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_restore_validation_failed_total{schedule=~\"$schedule\"}[1h])))",
- "hide": false,
- "interval": "",
- "legendFormat": "Restore validation failure",
- "refId": "C"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_restore_partial_failure_total{schedule=~\"$schedule\"}[1h])))",
- "hide": false,
- "interval": "",
- "legendFormat": "Restore partial failure",
- "refId": "D"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Restore per hour",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "$$hashKey": "object:124",
- "decimals": 0,
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "$$hashKey": "object:125",
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 43
- },
- "id": 30,
- "panels": [],
- "title": "CSI",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "decimals": 0,
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 10,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 24,
- "x": 0,
- "y": 44
- },
- "hiddenSeries": false,
- "id": 32,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "avg",
- "sortDesc": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "8.5.3",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": true,
- "steppedLine": true,
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_csi_snapshot_attempt_total{schedule=~\"$schedule\", backupName=~\"$csi_backup_name\"}[1h])))",
- "format": "time_series",
- "instant": false,
- "interval": "",
- "legendFormat": "CSI Snapshot attempt",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_csi_snapshot_success_total{schedule=~\"$schedule\", backupName=~\"$csi_backup_name\"}[1h])))",
- "hide": false,
- "interval": "",
- "legendFormat": "CSI Snapshot success",
- "refId": "B"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(velero_csi_snapshot_failure_total{schedule=~\"$schedule\", backupName=~\"$csi_backup_name\"}[1h])))",
- "hide": false,
- "interval": "",
- "legendFormat": "CSI Snapshot failure",
- "refId": "C"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "CSI per hour",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "$$hashKey": "object:124",
- "decimals": 0,
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "$$hashKey": "object:125",
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "collapsed": true,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 53
- },
- "id": 36,
- "panels": [],
- "title": "Restic",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "N/A"
- }
- },
- "type": "special"
- }
- ],
- "max": 100,
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "#d44a3a"
- },
- {
- "color": "rgba(237, 129, 40, 0.89)",
- "value": 0.95
- },
- {
- "color": "#299c46",
- "value": 0.99
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 4,
- "x": 0,
- "y": 54
- },
- "id": 37,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "sum(restic_pod_volume_backup_dequeue_count{node=~\"$restic_node\"}) / sum(restic_pod_volume_backup_enqueue_count{node=~\"$restic_node\"})",
- "format": "time_series",
- "instant": false,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Restic Success Rate",
- "type": "gauge"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "decimals": 0,
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 10,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 20,
- "x": 4,
- "y": 54
- },
- "hiddenSeries": false,
- "id": 38,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "avg",
- "sortDesc": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "8.5.3",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": true,
- "steppedLine": true,
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(restic_pod_volume_backup_enqueue_count{node=~\"$restic_node\"}[1h])))",
- "format": "time_series",
- "instant": false,
- "interval": "",
- "legendFormat": "Restic enqueue",
- "refId": "A"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "round(sum(increase(restic_pod_volume_backup_dequeue_count{node=~\"$restic_node\"}[1h])))",
- "hide": false,
- "instant": false,
- "interval": "",
- "legendFormat": "Restic dequeue",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Restic per hour",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "$$hashKey": "object:124",
- "decimals": 0,
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "$$hashKey": "object:125",
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 24,
- "x": 0,
- "y": 63
- },
- "hiddenSeries": false,
- "id": 39,
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "8.5.3",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "sum(avg_over_time(restic_restic_operation_latency_seconds_gauge{backupName=~\"$restic_backup_name\", node=~\"$restic_node\", operation=~\"$restic_operation\", pod_volume_backup=~\"$restic_pvb_name\"}[15m]))",
- "interval": "",
- "legendFormat": "Avg over time",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Restic time",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "$$hashKey": "object:561",
- "decimals": 0,
- "format": "s",
- "label": "",
- "logBase": 1,
- "show": true
- },
- {
- "$$hashKey": "object:562",
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 69
- },
- "id": 43,
- "panels": [],
- "title": "File System Backup(for v1.10 and later)",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [
- {
- "options": {
- "match": "null",
- "result": {
- "text": "N/A"
- }
- },
- "type": "special"
- }
- ],
- "max": 100,
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "#d44a3a"
- },
- {
- "color": "rgba(237, 129, 40, 0.89)",
- "value": 0.95
- },
- {
- "color": "#299c46",
- "value": 0.99
- }
- ]
- },
- "unit": "percentunit"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 4,
- "x": 0,
- "y": 70
- },
- "id": 41,
- "links": [],
- "maxDataPoints": 100,
- "options": {
- "orientation": "horizontal",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "sum(pod_volume_backup_dequeue_count{node=~\"$fsb_node\"}) / sum(pod_volume_backup_enqueue_count{node=~\"$fsb_node\"})",
- "format": "time_series",
- "instant": false,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "FSB Success Rate",
- "type": "gauge"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "decimals": 0,
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 10,
- "fillGradient": 0,
- "gridPos": {
- "h": 9,
- "w": 20,
- "x": 4,
- "y": 70
- },
- "hiddenSeries": false,
- "id": 45,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "sort": "avg",
- "sortDesc": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "8.5.3",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": true,
- "steppedLine": true,
- "targets": [
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "round(sum(increase(pod_volume_backup_enqueue_count{node=~\"$fsb_node\"}[1h])))",
- "format": "time_series",
- "instant": false,
- "interval": "",
- "legendFormat": "FSB enqueue",
- "refId": "A"
- },
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "round(sum(increase(pod_volume_backup_dequeue_count{node=~\"$fsb_node\"}[1h])))",
- "hide": false,
- "instant": false,
- "interval": "",
- "legendFormat": "FSB dequeue",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "FSB per hour",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "$$hashKey": "object:124",
- "decimals": 0,
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "$$hashKey": "object:125",
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "fieldConfig": {
- "defaults": {
- "links": []
- },
- "overrides": []
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 24,
- "x": 0,
- "y": 79
- },
- "hiddenSeries": false,
- "id": 47,
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null as zero",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "8.5.3",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "datasource": "prometheus",
- "exemplar": false,
- "expr": "sum(avg_over_time(pod_volume_operation_latency_seconds_gauge{backupName=~\"$fsb_backup_name\", node=~\"$fsb_node\", operation=~\"$fsb_operation\", pod_volume_backup=~\"$fsb_pvb_name\"}[15m]))",
- "interval": "",
- "legendFormat": "Avg over time",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "FSB time",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "$$hashKey": "object:561",
- "decimals": 0,
- "format": "s",
- "label": "",
- "logBase": 1,
- "show": true
- },
- {
- "$$hashKey": "object:562",
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- }
- ],
- "refresh": false,
- "schemaVersion": 36,
- "style": "dark",
- "tags": [
- "velero"
- ],
- "templating": {
- "list": [
- {
- "current": {
- "selected": false,
- "text": "k0",
- "value": "k0"
- },
- "hide": 0,
- "includeAll": false,
- "label": "Datasource",
- "multi": false,
- "name": "datasource",
- "options": [],
- "query": "prometheus",
- "queryValue": "",
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "type": "datasource"
- },
- {
- "current": {
- "selected": false,
- "text": "All",
- "value": "$__all"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "$datasource"
- },
- "definition": "label_values(velero_backup_attempt_total, schedule)",
- "hide": 0,
- "includeAll": true,
- "multi": true,
- "name": "schedule",
- "options": [],
- "query": {
- "query": "label_values(velero_backup_attempt_total, schedule)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 0,
- "tagValuesQuery": "",
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "current": {
- "selected": false,
- "text": "All",
- "value": "$__all"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "definition": "label_values(velero_csi_snapshot_attempt_total, backupName)",
- "hide": 0,
- "includeAll": true,
- "multi": false,
- "name": "csi_backup_name",
- "options": [],
- "query": {
- "query": "label_values(velero_csi_snapshot_attempt_total, backupName)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 0,
- "type": "query"
- },
- {
- "current": {
- "selected": false,
- "text": "All",
- "value": "$__all"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "definition": "label_values(restic_pod_volume_backup_enqueue_count, node)",
- "hide": 0,
- "includeAll": true,
- "multi": false,
- "name": "restic_node",
- "options": [],
- "query": {
- "query": "label_values(restic_pod_volume_backup_enqueue_count, node)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 0,
- "type": "query"
- },
- {
- "current": {
- "selected": false,
- "text": "All",
- "value": "$__all"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "definition": "label_values(restic_restic_operation_latency_seconds_gauge, backupName)",
- "hide": 0,
- "includeAll": true,
- "multi": false,
- "name": "restic_backup_name",
- "options": [],
- "query": {
- "query": "label_values(restic_restic_operation_latency_seconds_gauge, backupName)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 0,
- "type": "query"
- },
- {
- "current": {
- "selected": false,
- "text": "All",
- "value": "$__all"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "definition": "label_values(restic_restic_operation_latency_seconds_gauge, operation)",
- "hide": 0,
- "includeAll": true,
- "multi": false,
- "name": "restic_operation",
- "options": [],
- "query": {
- "query": "label_values(restic_restic_operation_latency_seconds_gauge, operation)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 0,
- "type": "query"
- },
- {
- "current": {
- "selected": false,
- "text": "All",
- "value": "$__all"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "definition": "label_values(restic_restic_operation_latency_seconds_gauge, pod_volume_backup)",
- "hide": 0,
- "includeAll": true,
- "multi": false,
- "name": "restic_pvb_name",
- "options": [],
- "query": {
- "query": "label_values(restic_restic_operation_latency_seconds_gauge, pod_volume_backup)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 0,
- "type": "query"
- },
- {
- "current": {
- "selected": false,
- "text": "All",
- "value": "$__all"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "definition": "label_values(pod_volume_backup_enqueue_count, node)",
- "hide": 0,
- "includeAll": true,
- "multi": false,
- "name": "fsb_node",
- "options": [],
- "query": {
- "query": "label_values(pod_volume_backup_enqueue_count, node)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 0,
- "type": "query"
- },
- {
- "current": {
- "selected": false,
- "text": "All",
- "value": "$__all"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "definition": "label_values(pod_volume_operation_latency_seconds_gauge, backupName)",
- "hide": 0,
- "includeAll": true,
- "multi": false,
- "name": "fsb_backup_name",
- "options": [],
- "query": {
- "query": "label_values(pod_volume_operation_latency_seconds_gauge, backupName)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 0,
- "type": "query"
- },
- {
- "current": {
- "selected": false,
- "text": "All",
- "value": "$__all"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "definition": "label_values(pod_volume_operation_latency_seconds_gauge, operation)",
- "hide": 0,
- "includeAll": true,
- "multi": false,
- "name": "fsb_operation",
- "options": [],
- "query": {
- "query": "label_values(pod_volume_operation_latency_seconds_gauge, operation)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 0,
- "type": "query"
- },
- {
- "current": {
- "selected": false,
- "text": "All",
- "value": "$__all"
- },
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "definition": "label_values(pod_volume_operation_latency_seconds_gauge, pod_volume_backup)",
- "hide": 0,
- "includeAll": true,
- "multi": false,
- "name": "fsb_pvb_name",
- "options": [],
- "query": {
- "query": "label_values(pod_volume_operation_latency_seconds_gauge, pod_volume_backup)",
- "refId": "StandardVariableQuery"
- },
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 0,
- "type": "query"
- }
- ]
- },
- "time": {
- "from": "now-2d",
- "to": "now"
- },
- "timepicker": {
- "hidden": false,
- "refresh_intervals": [
- "5s",
- "10s",
- "30s",
- "1m",
- "5m",
- "15m",
- "30m",
- "1h",
- "2h",
- "1d"
- ]
- },
- "timezone": "",
- "title": "Kubernetes/Tanzu/Velero",
- "uid": "EbXSjT24k",
- "version": 2,
- "weekStart": ""
- }
-kind: ConfigMap
-metadata:
- name: velero-dashboard
- namespace: prometheus
- labels:
- grafana_dashboard: "1"
-{{- end }}
diff --git a/attic/templates/resources/dashboards/x509-exporter-dashbaoard.yaml b/attic/templates/resources/dashboards/x509-exporter-dashbaoard.yaml
deleted file mode 100644
index 01a9bc0a..00000000
--- a/attic/templates/resources/dashboards/x509-exporter-dashbaoard.yaml
+++ /dev/null
@@ -1,2011 +0,0 @@
-{{- if .Values.x509_exporter.enabled }}
-apiVersion: v1
-data:
- x509-dash.json: |-
- {
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": {
- "type": "datasource",
- "uid": "grafana"
- },
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "target": {
- "limit": 100,
- "matchAny": false,
- "tags": [],
- "type": "dashboard"
- },
- "type": "dashboard"
- }
- ]
- },
- "description": "Unified dashboard for checking certificates expiration: Kubernetes Secrets, certificate files on nodes, or on any server.",
- "editable": true,
- "fiscalYearStartMonth": 0,
- "gnetId": 13922,
- "graphTooltip": 0,
- "iteration": 1678705600458,
- "links": [],
- "liveNow": false,
- "panels": [
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 24,
- "panels": [],
- "title": "Overview",
- "type": "row"
- },
- {
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "super-light-blue"
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 6,
- "w": 5,
- "x": 0,
- "y": 1
- },
- "id": 2,
- "options": {
- "colorMode": "value",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "expr": "count(x509_cert_not_after)",
- "interval": "",
- "legendFormat": "",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "title": "Total Certificates",
- "type": "stat"
- },
- {
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "dark-red",
- "value": 1
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 6,
- "w": 3,
- "x": 5,
- "y": 1
- },
- "id": 18,
- "options": {
- "colorMode": "background",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "expr": "sum(((x509_cert_not_after - time()) / 86400) < bool 0)",
- "interval": "",
- "legendFormat": "",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "title": "Expired",
- "type": "stat"
- },
- {
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 1
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 6,
- "w": 3,
- "x": 8,
- "y": 1
- },
- "id": 19,
- "options": {
- "colorMode": "background",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "expr": "sum(0 < ((x509_cert_not_after - time()) / 86400) < bool $critical_threshold)",
- "interval": "",
- "legendFormat": "",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "title": "Expiring within $critical_threshold days",
- "type": "stat"
- },
- {
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "yellow",
- "value": 1
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 6,
- "w": 3,
- "x": 11,
- "y": 1
- },
- "id": 20,
- "options": {
- "colorMode": "background",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "expr": "sum(0 < ((x509_cert_not_after - time()) / 86400) < bool $warning_threshold)",
- "instant": false,
- "interval": "",
- "legendFormat": "",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "title": "Expiring within $warning_threshold days",
- "type": "stat"
- },
- {
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "super-light-blue"
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 3,
- "x": 14,
- "y": 1
- },
- "id": 17,
- "options": {
- "colorMode": "value",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "expr": "count(x509_read_errors)",
- "instant": false,
- "interval": "",
- "legendFormat": "",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "title": "Exporters",
- "type": "stat"
- },
- {
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 1
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 3,
- "x": 14,
- "y": 4
- },
- "id": 36,
- "options": {
- "colorMode": "value",
- "graphMode": "area",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "value"
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "expr": "sum(x509_read_errors)",
- "instant": false,
- "interval": "",
- "legendFormat": "",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "title": "Exporter Errors",
- "type": "stat"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 7
- },
- "id": 26,
- "panels": [],
- "title": "Expiration",
- "type": "row"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${DS_PROMETHEUS}"
- },
- "description": "Because of a missing feature in Grafana, critical and warning thresholds from dashboard variables will not affect coloration of the Time Left column in this table.\n\nThresholds are to be set manually in the Overrides settings for this widget.\n\nPlease vote or contribute to issue : https://github.com/grafana/grafana/issues/922",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "custom": {
- "displayMode": "auto",
- "filterable": true,
- "inspect": false
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "red"
- }
- ]
- }
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "Time Left"
- },
- "properties": [
- {
- "id": "custom.align",
- "value": "center"
- },
- {
- "id": "custom.width",
- "value": 200
- },
- {
- "id": "custom.filterable",
- "value": false
- },
- {
- "id": "custom.displayMode",
- "value": "color-background"
- },
- {
- "id": "thresholds",
- "value": {
- "mode": "absolute",
- "steps": [
- {
- "color": "dark-red"
- },
- {
- "color": "red",
- "value": 0
- },
- {
- "color": "yellow",
- "value": 7
- },
- {
- "color": "green",
- "value": 28
- }
- ]
- }
- },
- {
- "id": "unit",
- "value": "d"
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 13,
- "w": 12,
- "x": 0,
- "y": 8
- },
- "id": 46,
- "options": {
- "footer": {
- "fields": "",
- "reducer": [
- "sum"
- ],
- "show": false
- },
- "showHeader": true
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "sort(((x509_cert_not_after{secret_name!=\"linkerd-identity-issuer\", issuer_O=\"\", issuer_CN!=\"webhook.linkerd.cluster.local\"} - time()) / 86400) < $list_threshold)",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "title": "Kubernetes Secrets (no issuer) (time left < $list_threshold days)",
- "transformations": [
- {
- "id": "filterFieldsByName",
- "options": {
- "include": {
- "pattern": "^(subject_CN|secret_namespace|secret_name|Value)$"
- }
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {},
- "indexByName": {
- "Value": 3,
- "secret_name": 2,
- "secret_namespace": 1,
- "subject_CN": 0
- },
- "renameByName": {
- "Value": "Time Left",
- "secret_name": "Secret Name",
- "secret_namespace": "Secret Namespace",
- "subject_CN": "Subject CN"
- }
- }
- }
- ],
- "type": "table"
- },
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${DS_PROMETHEUS}"
- },
- "description": "Because of a missing feature in Grafana, critical and warning thresholds from dashboard variables will not affect coloration of the Time Left column in this table.\n\nThresholds are to be set manually in the Overrides settings for this widget.\n\nPlease vote or contribute to issue : https://github.com/grafana/grafana/issues/922",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "custom": {
- "align": "auto",
- "displayMode": "auto",
- "filterable": true,
- "inspect": false
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "red",
- "value": null
- }
- ]
- }
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "Time Left"
- },
- "properties": [
- {
- "id": "custom.align",
- "value": "center"
- },
- {
- "id": "custom.width",
- "value": 200
- },
- {
- "id": "custom.filterable",
- "value": false
- },
- {
- "id": "custom.displayMode",
- "value": "color-background"
- },
- {
- "id": "thresholds",
- "value": {
- "mode": "absolute",
- "steps": [
- {
- "color": "dark-red",
- "value": null
- },
- {
- "color": "red",
- "value": 0
- },
- {
- "color": "#EAB839",
- "value": 7
- },
- {
- "color": "green",
- "value": 28
- }
- ]
- }
- },
- {
- "id": "unit",
- "value": "d"
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 13,
- "w": 12,
- "x": 12,
- "y": 8
- },
- "id": 47,
- "options": {
- "footer": {
- "fields": "",
- "reducer": [
- "sum"
- ],
- "show": false
- },
- "showHeader": true
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "exemplar": false,
- "expr": "sort(((x509_cert_not_after{issuer_O!=\"\"} - time()) / 86400) < $list_threshold)",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "title": "Kubernetes Secrets (with issuer) (time left < $list_threshold days)",
- "transformations": [
- {
- "id": "filterFieldsByName",
- "options": {
- "include": {
- "pattern": "^(subject_CN|secret_namespace|secret_name|Value)$"
- }
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {},
- "indexByName": {
- "Value": 3,
- "secret_name": 2,
- "secret_namespace": 1,
- "subject_CN": 0
- },
- "renameByName": {
- "Value": "Time Left",
- "filepath": "File Path",
- "instance": "Instance",
- "subject_CN": "Subject CN"
- }
- }
- }
- ],
- "type": "table"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 21
- },
- "id": 12,
- "panels": [],
- "title": "Charts",
- "type": "row"
- },
- {
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "custom": {
- "displayMode": "auto",
- "filterable": false,
- "inspect": false
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "Certificate Count"
- },
- "properties": [
- {
- "id": "custom.align",
- "value": "center"
- },
- {
- "id": "custom.width",
- "value": 150
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 12,
- "w": 8,
- "x": 0,
- "y": 22
- },
- "id": 14,
- "options": {
- "footer": {
- "fields": "",
- "reducer": [
- "sum"
- ],
- "show": false
- },
- "showHeader": true
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "expr": "topk(10, sort_desc(count by (issuer_CN) (x509_cert_not_after)))",
- "format": "table",
- "instant": true,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "title": "Top Issuers",
- "transformations": [
- {
- "id": "filterFieldsByName",
- "options": {
- "include": {
- "names": [
- "issuer_CN",
- "Value"
- ]
- }
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {},
- "indexByName": {},
- "renameByName": {
- "Value": "Certificate Count",
- "issuer_CN": "Issuer CN"
- }
- }
- }
- ],
- "type": "table"
- },
- {
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "custom": {
- "displayMode": "auto",
- "filterable": false,
- "inspect": false
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "Certificate Count"
- },
- "properties": [
- {
- "id": "custom.align",
- "value": "center"
- },
- {
- "id": "custom.width",
- "value": 150
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 12,
- "w": 8,
- "x": 8,
- "y": 22
- },
- "id": 15,
- "options": {
- "footer": {
- "fields": "",
- "reducer": [
- "sum"
- ],
- "show": false
- },
- "showHeader": true
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "expr": "topk(10, sort_desc(count by (secret_namespace) (x509_cert_not_after{secret_namespace!=\"\"})))",
- "format": "table",
- "instant": true,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "title": "Top Namespaces (Kubernetes Secrets)",
- "transformations": [
- {
- "id": "filterFieldsByName",
- "options": {
- "include": {
- "names": [
- "Value",
- "secret_namespace"
- ]
- }
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {},
- "indexByName": {},
- "renameByName": {
- "Value": "Certificate Count",
- "secret_namespace": "Namespace"
- }
- }
- }
- ],
- "type": "table"
- },
- {
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "custom": {
- "displayMode": "auto",
- "filterable": false,
- "inspect": false
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "Days"
- },
- "properties": [
- {
- "id": "custom.align",
- "value": "center"
- },
- {
- "id": "custom.width",
- "value": 100
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "Secret Namespace"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 258
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 12,
- "w": 12,
- "x": 0,
- "y": 34
- },
- "id": 31,
- "options": {
- "footer": {
- "fields": "",
- "reducer": [
- "sum"
- ],
- "show": false
- },
- "showHeader": true,
- "sortBy": []
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "expr": "bottomk(10, (x509_cert_not_after{secret_name!=\"\"} - x509_cert_not_before) / 86400)",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "title": "Kubernetes Secrets : Shortest Validity Period",
- "transformations": [
- {
- "id": "filterFieldsByName",
- "options": {
- "include": {
- "pattern": "^(subject_CN|secret_namespace|secret_name|Value)$"
- }
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {},
- "indexByName": {
- "Value": 3,
- "secret_name": 2,
- "secret_namespace": 1,
- "subject_CN": 0
- },
- "renameByName": {
- "Value": "Days",
- "secret_name": "Secret Name",
- "secret_namespace": "Secret Namespace",
- "subject_CN": "Subject CN"
- }
- }
- }
- ],
- "type": "table"
- },
- {
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "custom": {
- "displayMode": "auto",
- "filterable": false,
- "inspect": false
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "Days"
- },
- "properties": [
- {
- "id": "custom.align",
- "value": "center"
- },
- {
- "id": "custom.width",
- "value": 100
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 12,
- "w": 12,
- "x": 12,
- "y": 34
- },
- "id": 28,
- "options": {
- "footer": {
- "fields": "",
- "reducer": [
- "sum"
- ],
- "show": false
- },
- "showHeader": true
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "expr": "topk(10, (x509_cert_not_after{secret_name!=\"\"} - x509_cert_not_before) / 86400)",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "title": "Kubernetes Secrets : Longest Validity Period",
- "transformations": [
- {
- "id": "filterFieldsByName",
- "options": {
- "include": {
- "pattern": "^(subject_CN|secret_namespace|secret_name|Value)$"
- }
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {},
- "indexByName": {
- "Value": 3,
- "secret_name": 2,
- "secret_namespace": 1,
- "subject_CN": 0
- },
- "renameByName": {
- "Value": "Days",
- "secret_name": "Secret Name",
- "secret_namespace": "Secret Namespace",
- "subject_CN": "Subject CN"
- }
- }
- }
- ],
- "type": "table"
- },
- {
- "collapsed": false,
- "datasource": {
- "type": "prometheus",
- "uid": "prometheus"
- },
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 46
- },
- "id": 35,
- "panels": [],
- "title": "Exporters",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 47
- },
- "hiddenSeries": false,
- "id": 38,
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": true,
- "max": true,
- "min": true,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "8.5.3",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "count(x509_read_errors)",
- "interval": "",
- "legendFormat": "exporters",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Reporting Exporters",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "$$hashKey": "object:237",
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "$$hashKey": "object:238",
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {
- "exporters with errors": "red"
- },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 47
- },
- "hiddenSeries": false,
- "id": 39,
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": true,
- "max": true,
- "min": true,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "8.5.3",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum (x509_read_errors > bool 0)",
- "interval": "",
- "legendFormat": "exporters with errors",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Exporters with Errors",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "$$hashKey": "object:237",
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "$$hashKey": "object:238",
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {
- "error rate": "red",
- "errors": "red"
- },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 0,
- "y": 55
- },
- "hiddenSeries": false,
- "id": 41,
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": true,
- "max": true,
- "min": true,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "8.5.3",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(rate(x509_read_errors[15m]))",
- "interval": "",
- "legendFormat": "error rate",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Error Rate",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "$$hashKey": "object:237",
- "format": "cps",
- "logBase": 1,
- "show": true
- },
- {
- "$$hashKey": "object:238",
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "aliasColors": {
- "errors": "red"
- },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 8,
- "w": 12,
- "x": 12,
- "y": 55
- },
- "hiddenSeries": false,
- "id": 40,
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": true,
- "max": true,
- "min": true,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "alertThreshold": true
- },
- "percentage": false,
- "pluginVersion": "8.5.3",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(x509_read_errors)",
- "interval": "",
- "legendFormat": "errors",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeRegions": [],
- "title": "Cumulative Errors",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "mode": "time",
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "$$hashKey": "object:237",
- "format": "short",
- "logBase": 1,
- "show": true
- },
- {
- "$$hashKey": "object:238",
- "format": "short",
- "logBase": 1,
- "show": true
- }
- ],
- "yaxis": {
- "align": false
- }
- },
- {
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "custom": {
- "displayMode": "auto",
- "filterable": false,
- "inspect": false
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "Rate"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 150
- },
- {
- "id": "custom.align",
- "value": "center"
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 12,
- "w": 12,
- "x": 0,
- "y": 63
- },
- "id": 43,
- "options": {
- "footer": {
- "fields": "",
- "reducer": [
- "sum"
- ],
- "show": false
- },
- "showHeader": true
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "expr": "topk(10, rate(x509_read_errors[6h]))",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "title": "Top Exporters by Error Rate",
- "transformations": [
- {
- "id": "filterFieldsByName",
- "options": {
- "include": {
- "pattern": "^(instance|Value)$"
- }
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {},
- "indexByName": {},
- "renameByName": {
- "Value": "Rate",
- "instance": "Instance"
- }
- }
- }
- ],
- "type": "table"
- },
- {
- "datasource": {
- "uid": "${DS_PROMETHEUS}"
- },
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "custom": {
- "displayMode": "auto",
- "filterable": false,
- "inspect": false
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": [
- {
- "matcher": {
- "id": "byName",
- "options": "Errors"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 150
- },
- {
- "id": "custom.align",
- "value": "center"
- }
- ]
- }
- ]
- },
- "gridPos": {
- "h": 12,
- "w": 12,
- "x": 12,
- "y": 63
- },
- "id": 44,
- "options": {
- "footer": {
- "fields": "",
- "reducer": [
- "sum"
- ],
- "show": false
- },
- "showHeader": true
- },
- "pluginVersion": "8.5.3",
- "targets": [
- {
- "expr": "topk(10, x509_read_errors)",
- "format": "table",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "queryType": "randomWalk",
- "refId": "A"
- }
- ],
- "title": "Top Exporters by Cumulative Errors",
- "transformations": [
- {
- "id": "filterFieldsByName",
- "options": {
- "include": {
- "pattern": "^(instance|Value)$"
- }
- }
- },
- {
- "id": "organize",
- "options": {
- "excludeByName": {},
- "indexByName": {},
- "renameByName": {
- "Value": "Errors",
- "instance": "Instance"
- }
- }
- }
- ],
- "type": "table"
- }
- ],
- "refresh": "",
- "schemaVersion": 36,
- "style": "dark",
- "tags": [],
- "templating": {
- "list": [
- {
- "current": {
- "selected": false,
- "text": "Prometheus",
- "value": "Prometheus"
- },
- "hide": 0,
- "includeAll": false,
- "label": "Datasource",
- "multi": false,
- "name": "DS_PROMETHEUS",
- "options": [],
- "query": "prometheus",
- "queryValue": "",
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "type": "datasource"
- },
- {
- "current": {
- "selected": false,
- "text": "7",
- "value": "7"
- },
- "hide": 0,
- "includeAll": false,
- "label": "Critical Threshold (days)",
- "multi": false,
- "name": "critical_threshold",
- "options": [
- {
- "selected": false,
- "text": "1",
- "value": "1"
- },
- {
- "selected": true,
- "text": "7",
- "value": "7"
- },
- {
- "selected": false,
- "text": "14",
- "value": "14"
- },
- {
- "selected": false,
- "text": "15",
- "value": "15"
- },
- {
- "selected": false,
- "text": "28",
- "value": "28"
- },
- {
- "selected": false,
- "text": "30",
- "value": "30"
- },
- {
- "selected": false,
- "text": "60",
- "value": "60"
- },
- {
- "selected": false,
- "text": "90",
- "value": "90"
- },
- {
- "selected": false,
- "text": "180",
- "value": "180"
- },
- {
- "selected": false,
- "text": "365",
- "value": "365"
- }
- ],
- "query": "1,7,14,15,28,30,60,90,180,365",
- "queryValue": "",
- "skipUrlSync": false,
- "type": "custom"
- },
- {
- "current": {
- "selected": false,
- "text": "28",
- "value": "28"
- },
- "hide": 0,
- "includeAll": false,
- "label": "Warning Threshold (days)",
- "multi": false,
- "name": "warning_threshold",
- "options": [
- {
- "selected": false,
- "text": "1",
- "value": "1"
- },
- {
- "selected": false,
- "text": "7",
- "value": "7"
- },
- {
- "selected": false,
- "text": "14",
- "value": "14"
- },
- {
- "selected": false,
- "text": "15",
- "value": "15"
- },
- {
- "selected": true,
- "text": "28",
- "value": "28"
- },
- {
- "selected": false,
- "text": "30",
- "value": "30"
- },
- {
- "selected": false,
- "text": "60",
- "value": "60"
- },
- {
- "selected": false,
- "text": "90",
- "value": "90"
- },
- {
- "selected": false,
- "text": "180",
- "value": "180"
- },
- {
- "selected": false,
- "text": "365",
- "value": "365"
- }
- ],
- "query": "1,7,14,15,28,30,60,90,180,365",
- "queryValue": "",
- "skipUrlSync": false,
- "type": "custom"
- },
- {
- "current": {
- "selected": true,
- "text": "7300",
- "value": "7300"
- },
- "hide": 0,
- "includeAll": false,
- "label": "List expiring in less than (days)",
- "multi": false,
- "name": "list_threshold",
- "options": [
- {
- "selected": false,
- "text": "1",
- "value": "1"
- },
- {
- "selected": false,
- "text": "7",
- "value": "7"
- },
- {
- "selected": false,
- "text": "15",
- "value": "15"
- },
- {
- "selected": false,
- "text": "30",
- "value": "30"
- },
- {
- "selected": false,
- "text": "60",
- "value": "60"
- },
- {
- "selected": false,
- "text": "90",
- "value": "90"
- },
- {
- "selected": false,
- "text": "180",
- "value": "180"
- },
- {
- "selected": false,
- "text": "365",
- "value": "365"
- },
- {
- "selected": false,
- "text": "730",
- "value": "730"
- },
- {
- "selected": false,
- "text": "1095",
- "value": "1095"
- },
- {
- "selected": false,
- "text": "1460",
- "value": "1460"
- },
- {
- "selected": false,
- "text": "1825",
- "value": "1825"
- },
- {
- "selected": false,
- "text": "3650",
- "value": "3650"
- },
- {
- "selected": true,
- "text": "7300",
- "value": "7300"
- }
- ],
- "query": "1,7,15,30,60,90,180,365,730,1095,1460,1825,3650,7300",
- "queryValue": "",
- "skipUrlSync": false,
- "type": "custom"
- }
- ]
- },
- "time": {
- "from": "now-6h",
- "to": "now"
- },
- "timepicker": {},
- "timezone": "",
- "title": "Certificates Expiration (X509 Certificate Exporter)",
- "uid": "lHnsYlPGk",
- "version": 2,
- "weekStart": ""
- }
-kind: ConfigMap
-metadata:
- creationTimestamp: null
- name: x509-exporter-dashboard
- namespace: prometheus
- labels:
- grafana_dashboard: "1"
-{{- end }}
diff --git a/attic/templates/resources/external-clusterrole.yaml b/attic/templates/resources/external-clusterrole.yaml
deleted file mode 100644
index 25ec7c68..00000000
--- a/attic/templates/resources/external-clusterrole.yaml
+++ /dev/null
@@ -1,209 +0,0 @@
-{{- if .Values.cluster_config.external_kubectl_access.enabled }}
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: external-access
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- - serviceaccounts
- - namespaces
- - events
- - persistentvolumeclaims
- - persistentvolumes
- - bindings
- - componentstatuses
- - podtemplates
- - replicationcontrollers
- - resourcequotas
- - services
- - nodes
- - limitranges
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - ""
- resources:
- - namespaces
- verbs:
- - create
- - delete
-- apiGroups:
- - apiregistration.k8s.io
- resources:
- - apiservices
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - apps
- resources:
- - controllerrevisions
- - statefulsets
- - replicasets
- - daemonsets
- - deployments
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - events.k8s.io
- resources:
- - events
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - autoscaling
- resources:
- - horizontalpodautoscalers
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - batch
- resources:
- - jobs
- - cronjobs
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - certificates.k8s.io
- resources:
- - certificatesigningrequests
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - networking.k8s.io
- resources:
- - ingressclasses
- - networkpolicies
- - ingresses
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - policy
- resources:
- - poddisruptionbudgets
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - rbac.authorization.k8s.io
- resources:
- - roles
- - clusterroles
- - clusterrolebindings
- - rolebindings
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - storage.k8s.io
- resources:
- - csinodes
- - storageclasses
- - csistoragecapacities
- - volumeattachments
- - csidrivers
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - admissionregistration.k8s.io
- resources:
- - mutatingwebhookconfigurations
- - validatingwebhookconfigurations
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - apiextensions.k8s.io
- resources:
- - customresourcedefinitions
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - scheduling.k8s.io
- resources:
- - priorityclasses
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - coordination.k8s.io
- resources:
- - leases
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - node.k8s.io
- resources:
- - runtimeclasses
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - flowcontrol.apiserver.k8s.io
- resources:
- - flowschemas
- - prioritylevelconfigurations
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - talos.dev
- resources:
- - serviceaccounts
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - cilium.io
- resources:
- - ciliumexternalworkloads
- - ciliumnetworkpolicies
- - ciliumidentities
- - ciliumnodes
- - ciliumendpoints
- - ciliumclusterwidenetworkpolicies
- verbs:
- - get
- - list
- - watch
-- apiGroups:
- - metrics.k8s.io
- resources:
- - pods
- - nodes
- verbs:
- - get
- - list
- - watch
-{{- end }}
diff --git a/attic/templates/resources/external-clusterrolebinding.yaml b/attic/templates/resources/external-clusterrolebinding.yaml
deleted file mode 100644
index 4965792b..00000000
--- a/attic/templates/resources/external-clusterrolebinding.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
-{{- if .Values.cluster_config.external_kubectl_access.enabled }}
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: external-access
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: external-access
-subjects:
-- apiGroup: rbac.authorization.k8s.io
- kind: Group
- name: {{ .Values.cluster_config.external_kubectl_access.admin_group }}
-{{- end }}
diff --git a/attic/templates/resources/kube-flannel-rbac.yaml b/attic/templates/resources/kube-flannel-rbac.yaml
deleted file mode 100644
index b14b53a8..00000000
--- a/attic/templates/resources/kube-flannel-rbac.yaml
+++ /dev/null
@@ -1,42 +0,0 @@
-# Create the clusterrole and clusterrolebinding:
-# $ kubectl create -f kube-flannel-rbac.yml
-# Create the pod using the same namespace used by the flannel serviceaccount:
-# $ kubectl create --namespace kube-system -f kube-flannel-legacy.yml
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: flannel-client
-rules:
- - apiGroups:
- - ""
- resources:
- - pods
- verbs:
- - get
- - apiGroups:
- - ""
- resources:
- - nodes
- verbs:
- - list
- - watch
- - apiGroups:
- - ""
- resources:
- - nodes/status
- verbs:
- - patch
----
-kind: ClusterRoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: flannel-client
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: flannel-client
-subjects:
- - kind: User
- name: flannel-client
- apiGroup: rbac.authorization.k8s.io
diff --git a/attic/templates/resources/kube-proxy-rbac.yaml b/attic/templates/resources/kube-proxy-rbac.yaml
deleted file mode 100644
index a695d238..00000000
--- a/attic/templates/resources/kube-proxy-rbac.yaml
+++ /dev/null
@@ -1,51 +0,0 @@
-# This cluster role binding allows anyone in the "manager" group to read secrets in any namespace.
-kind: ClusterRoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: kube-proxy
-subjects:
- - kind: User
- name: kube-proxy
- apiGroup: rbac.authorization.k8s.io
- - kind: ServiceAccount
- name: kube-proxy
- namespace: kube-system
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kube-proxy
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kube-proxy
-rules:
- - apiGroups:
- - ""
- resources:
- - endpoints
- - events
- - services
- - nodes
- verbs: ["get", "watch", "list"]
- - nonResourceURLs: ["*"]
- verbs: ["get", "watch", "list"]
-
- - apiGroups:
- - ""
- - "events.k8s.io"
- resources:
- - events
- verbs: ["*"]
-
- - nonResourceURLs: ["*"]
- verbs: ["*"]
- - apiGroups:
- - discovery.k8s.io
- resources:
- - endpointslices
- verbs:
- - list
- - watch
-
-
diff --git a/attic/templates/resources/kyverno-cluster-admin.yaml b/attic/templates/resources/kyverno-cluster-admin.yaml
deleted file mode 100644
index 5154ee58..00000000
--- a/attic/templates/resources/kyverno-cluster-admin.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-{{- if .Values.kyverno.enabled }}
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kyverno:generate-admin
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: cluster-admin
-subjects:
-- kind: ServiceAccount
- name: kyverno
- namespace: kyverno
-- kind: ServiceAccount
- name: kyverno-background-controller
- namespace: kyverno
-{{- end }}
diff --git a/attic/templates/resources/kyverno-generate-cilium-network-policies.yaml b/attic/templates/resources/kyverno-generate-cilium-network-policies.yaml
deleted file mode 100644
index dc956ce9..00000000
--- a/attic/templates/resources/kyverno-generate-cilium-network-policies.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-{{- if and (.Values.kyverno.enabled) (.Values.cilium.enabled) }}
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kyverno:generate-cilium-networkpolicies
-rules:
-- apiGroups:
- - cilium.io
- resources:
- - ciliumnetworkpolicies
- verbs:
- - "*"
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kyverno:generate-cilium-network-policies
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kyverno:generate-cilium-networkpolicies
-subjects:
-- kind: ServiceAccount
- name: kyverno
- namespace: kyverno
-- kind: ServiceAccount
- name: kyverno-background-controller
- namespace: kyverno
-{{- end }}
diff --git a/attic/templates/resources/label-and-taint-nodes.yaml b/attic/templates/resources/label-and-taint-nodes.yaml
deleted file mode 100644
index fb707755..00000000
--- a/attic/templates/resources/label-and-taint-nodes.yaml
+++ /dev/null
@@ -1,96 +0,0 @@
-{{ if .Values.cluster_config.nodes }}
-
----
-apiVersion: batch/v1
-kind: Job
-metadata:
- name: label-and-taint-nodes
- namespace: kube-system
-spec:
- backoffLimit: 1
- template:
- metadata:
- annotations:
- linkerd.io/inject: disable
- spec:
- restartPolicy: Never
- serviceAccountName: label-and-taint-nodes
- securityContext:
- runAsUser: 12000
- runAsGroup: 13000
- fsGroup: 10000
- affinity:
- tolerations:
- - key: unschedulable
- value: "true"
- effect: NoSchedule
- containers:
- - image: bitnami/kubectl:1.24
- name: kubectl
- resources: {}
- securityContext:
- allowPrivilegeEscalation: false
- command:
- - "/bin/sh"
- - -c
- - /tmp/scripts/script.sh
- volumeMounts:
- - name: scripts
- mountPath: /tmp/scripts
- volumes:
- - name: scripts
- configMap:
- name: label-and-taint-scripts
- defaultMode: 0755
----
-apiVersion: v1
-data:
- script.sh: |
- #! /bin/bash
-{{- range $node := .Values.cluster_config.nodes }}
- {{- range .labels }}
- kubectl label nodes --overwrite=true {{ $node.name }} {{ . | quote }}
- {{- end }}
- {{- range .taints }}
- kubectl taint nodes --overwrite=true {{ $node.name }} {{ . | quote }}
- {{- end }}
-{{- end }}
-kind: ConfigMap
-metadata:
- name: label-and-taint-scripts
- namespace: kube-system
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: label-and-taint-nodes
- namespace: kube-system
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: label-and-taint-nodes
-rules:
-- apiGroups:
- - ""
- resources:
- - nodes
- verbs:
- - get
- - list
- - update
- - patch
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: label-and-taint-nodes
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: label-and-taint-nodes
-subjects:
-- kind: ServiceAccount
- name: label-and-taint-nodes
- namespace: kube-system
-{{ end }}
diff --git a/attic/templates/resources/operator-role.yaml b/attic/templates/resources/operator-role.yaml
deleted file mode 100644
index 2e630e77..00000000
--- a/attic/templates/resources/operator-role.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: az-kubernetes-operators-cluster-admin
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: cluster-admin
-subjects:
-- apiGroup: rbac.authorization.k8s.io
- kind: Group
- name: dd2aa2d6-269d-48fe-90cc-04fd5c08bd29
diff --git a/attic/templates/resources/pre-cert-manager.yaml b/attic/templates/resources/pre-cert-manager.yaml
deleted file mode 100644
index e7b7dae8..00000000
--- a/attic/templates/resources/pre-cert-manager.yaml
+++ /dev/null
@@ -1,225 +0,0 @@
----
-apiVersion: cert-manager.io/v1
-kind: ClusterIssuer
-metadata:
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- name: letsencrypt-production
-spec:
- acme:
- # The ACME server URL
- server: https://acme-v02.api.letsencrypt.org/directory
- # Email address used for ACME registration
- email: {{ .Values.clusterConfig.acme_email }}
- # Name of a secret used to store the ACME account private key
- privateKeySecretRef:
- name: letsencrypt-production
- solvers:
- - http01:
- ingress:
- class: nginx
----
-apiVersion: cert-manager.io/v1
-kind: ClusterIssuer
-metadata:
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- name: letsencrypt-staging
-spec:
- acme:
- # The ACME server URL
- server: https://acme-staging-v02.api.letsencrypt.org/directory
- # Email address used for ACME registration
- email: {{ .Values.clusterConfig.acme_email }}
- # Name of a secret used to store the ACME account private key
- privateKeySecretRef:
- name: letsencrypt-staging
- solvers:
- - http01:
- ingress:
- class: nginx
----
-apiVersion: cert-manager.io/v1
-kind: ClusterIssuer
-metadata:
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- name: ca-issuer
-spec:
- ca:
- secretName: cluster-ca
----
-apiVersion: cert-manager.io/v1
-kind: ClusterIssuer
-metadata:
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- name: selfsigning-issuer
-spec:
- selfSigned: {}
----
-kind: ClusterRoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: front-proxy-client
-subjects:
- - kind: User
- name: front-proxy-client
- apiGroup: rbac.authorization.k8s.io
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: front-proxy-client
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: front-proxy-client
-rules:
-- apiGroups:
- - "webhook.cert-manager.io"
- resources:
- - mutations
- - validations
- verbs: [ "*" ]
-- apiGroups:
- - metrics.k8s.io
- resources:
- - pods
- - nodes
- verbs:
- - get
- - list
- - watch
----
-
-{{ if .Values.clusterConfig.initca }}
-
-# Pod to update certificates from master nodes
-# only runs on control plane nodes (etcd)
-# Mounts cert files rotatet by nixos service.mgr and uses it to update cert-manager secret
-# Always create certs on initial creation,
-# Otherwise, cert creation would not happen until cronJob runs
-apiVersion: batch/v1
-kind: Job
-metadata:
- name: cert-create
- namespace: cert-manager
-spec:
- backoffLimit: 1
- template:
- metadata:
- labels:
- block-egress: "true"
- annotations:
- linkerd.io/inject: disabled
- spec:
- restartPolicy: Never
- serviceAccountName: cert-secret-updater
- securityContext:
- runAsUser: 12000
- runAsGroup: 13000
- fsGroup: 10000
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: node-role.kubernetes.io
- operator: In
- values:
- - control-plane
- tolerations:
- - key: unschedulable
- value: "true"
- effect: NoSchedule
- containers:
- - image: bitnami/kubectl:1.24
- name: kubectl
- resources: {}
- securityContext:
- allowPrivilegeEscalation: false
- command:
- - "/bin/sh"
- - -c
- - /tmp/renew-certs/renew-certs.sh
- volumeMounts:
- - name: ca-pem
- mountPath: /tmp/ca.pem
- - name: ca-key-pem
- mountPath: /tmp/ca-key.pem
- - name: certs-script
- mountPath: /tmp/renew-certs
- volumes:
- - name: ca-pem
- hostPath:
- path: {{.Values.clusterConfig.initca}}/ca.pem
- type: File
- - name: ca-key-pem
- hostPath:
- path: {{.Values.clusterConfig.initca}}/ca-key.pem
- type: File
- - name: certs-script
- configMap:
- name: renew-certs-script
- defaultMode: 0755
----
-apiVersion: v1
-data:
- renew-certs.sh: |
- #! /bin/bash
- kubectl create secret tls -n cert-manager cluster-ca --cert=/tmp/ca.pem --key=/tmp/ca-key.pem --dry-run=client -o yaml > /tmp/new-secret.yaml
- kubectl apply -f /tmp/new-secret.yaml
-kind: ConfigMap
-metadata:
- name: renew-certs-script
- namespace: cert-manager
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: cert-secret-updater
- namespace: cert-manager
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: cert-secret-updater-role
- namespace: cert-manager
-rules:
-- apiGroups:
- - ""
- resourceNames:
- - cluster-ca
- resources:
- - secrets
- verbs:
- - '*'
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: cert-secret-updater-rbinding
- namespace: cert-manager
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: cert-secret-updater-role
-subjects:
-- kind: ServiceAccount
- name: cert-secret-updater
- namespace: cert-manager
----
-apiVersion: networking.k8s.io/v1
-kind: NetworkPolicy
-metadata:
- name: default-deny-egress
- namespace: cert-manager
-spec:
- podSelector:
- matchLabels:
- block-egress: "true"
- policyTypes:
- - Egress
----
-{{ end }}
diff --git a/attic/templates/resources/pre-gitlab-runner.yaml b/attic/templates/resources/pre-gitlab-runner.yaml
deleted file mode 100644
index 75899d35..00000000
--- a/attic/templates/resources/pre-gitlab-runner.yaml
+++ /dev/null
@@ -1,128 +0,0 @@
-{{- if and (.Values.gitlab_runner.enabled) (.Values.gitlab_runner.createCertSecret) }}
-# Pod to update certificates from master nodes
-# only runs on control plane nodes (etcd)
-# Mounts cert files rotatet by nixos service.mgr and uses it to update gitlab secret
-# Always create certs on initial creation,
-# Otherwise, cert creation would not happen until cronJob runs
-apiVersion: batch/v1
-kind: Job
-metadata:
- name: cert-create
- namespace: gitlab
-spec:
- template:
- metadata:
- labels:
- block-egress: "true"
- annotations:
- linkerd.io/inject: disabled
- spec:
- restartPolicy: Never
- serviceAccountName: cert-secret-updater
- securityContext:
- runAsUser: 12000
- runAsGroup: 13000
- fsGroup: 10000
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: node-role.kubernetes.io
- operator: In
- values:
- - control-plane
- tolerations:
- - key: unschedulable
- value: "true"
- effect: NoSchedule
- containers:
- - image: bitnami/kubectl:1.24
- name: kubectl
- resources: {}
- securityContext:
- allowPrivilegeEscalation: false
- command:
- - "/bin/sh"
- - -c
- - /tmp/renew-certs/renew-certs.sh
- volumeMounts:
- - name: ca-pem
- mountPath: /tmp/ca.pem
- - name: ca-key-pem
- mountPath: /tmp/ca-key.pem
- - name: certs-script
- mountPath: /tmp/renew-certs
- volumes:
- - name: ca-pem
- hostPath:
- path: {{.Values.cluster_config.initca}}/ca.pem
- type: File
- - name: ca-key-pem
- hostPath:
- path: {{.Values.cluster_config.initca}}/ca-key.pem
- type: File
- - name: certs-script
- configMap:
- name: renew-certs-script
- defaultMode: 0755
----
-apiVersion: v1
-data:
- renew-certs.sh: |
- #! /bin/bash
- kubectl create secret tls -n gitlab itp-cluster-ca --cert=/tmp/ca.pem --key=/tmp/ca-key.pem --dry-run=client -o yaml > /tmp/new-secret.yaml
- kubectl apply -f /tmp/new-secret.yaml
-kind: ConfigMap
-metadata:
- name: renew-certs-script
- namespace: gitlab
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: cert-secret-updater
- namespace: gitlab
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: cert-secret-updater-role
- namespace: gitlab
-rules:
-- apiGroups:
- - ""
- resourceNames:
- - itp-cluster-ca
- resources:
- - secrets
- verbs:
- - '*'
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: cert-secret-updater-rbinding
- namespace: gitlab
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: cert-secret-updater-role
-subjects:
-- kind: ServiceAccount
- name: cert-secret-updater
- namespace: gitlab
----
-apiVersion: networking.k8s.io/v1
-kind: NetworkPolicy
-metadata:
- name: default-deny-egress
- namespace: gitlab
-spec:
- podSelector:
- matchLabels:
- block-egress: "true"
- policyTypes:
- - Egress
----
-{{- end }}
diff --git a/attic/templates/resources/pre-linkerd.yaml b/attic/templates/resources/pre-linkerd.yaml
deleted file mode 100644
index d59ad3da..00000000
--- a/attic/templates/resources/pre-linkerd.yaml
+++ /dev/null
@@ -1,206 +0,0 @@
-{{ if .Values.linkerd.enabled }}
----
-apiVersion: v1
-kind: Namespace
-metadata:
- labels:
- linkerd.io/control-plane-ns: linkerd
- linkerd.io/is-control-plane: 'true'
- config.linkerd.io/admission-webhooks: disabled
- annotations:
- linkerd.io/inject: disabled
- argocd.argoproj.io/sync-wave: "-1"
- name: linkerd
----
-apiVersion: cert-manager.io/v1
-kind: Issuer
-metadata:
- name: linkerd-trust-anchor
- namespace: linkerd
-spec:
- ca:
- secretName: linkerd-trust-anchor
----
-apiVersion: cert-manager.io/v1
-kind: Certificate
-metadata:
- name: linkerd-identity-issuer
- namespace: linkerd
-spec:
- revisionHistoryLimit: 5
- secretName: linkerd-identity-issuer
- duration: 48h0m0s
- renewBefore: 25h0m0s
- issuerRef:
- name: linkerd-trust-anchor
- kind: Issuer
- dnsNames:
- - identity.linkerd.cluster.local
- isCA: true
- privateKey:
- algorithm: ECDSA
- usages:
- - cert sign
- - crl sign
- - server auth
- - client auth
----
-apiVersion: cert-manager.io/v1
-kind: Issuer
-metadata:
- name: webhook-issuer
- namespace: linkerd
-spec:
- ca:
- secretName: webhook-issuer-tls
----
-apiVersion: cert-manager.io/v1
-kind: Certificate
-metadata:
- name: linkerd-policy-validator
- namespace: linkerd
-spec:
- revisionHistoryLimit: 5
- secretName: linkerd-policy-validator-k8s-tls
- duration: 24h0m0s
- renewBefore: 1h0m0s
- issuerRef:
- name: webhook-issuer
- kind: Issuer
- commonName: linkerd-policy-validator.linkerd.svc
- dnsNames:
- - linkerd-policy-validator.linkerd.svc
- privateKey:
- algorithm: ECDSA
- encoding: PKCS8
- usages:
- - server auth
----
-apiVersion: cert-manager.io/v1
-kind: Certificate
-metadata:
- name: linkerd-proxy-injector
- namespace: linkerd
-spec:
- revisionHistoryLimit: 5
- secretName: linkerd-proxy-injector-k8s-tls
- duration: 24h0m0s
- renewBefore: 1h0m0s
- issuerRef:
- name: webhook-issuer
- kind: Issuer
- commonName: linkerd-proxy-injector.linkerd.svc
- dnsNames:
- - linkerd-proxy-injector.linkerd.svc
- privateKey:
- algorithm: ECDSA
- usages:
- - server auth
----
-apiVersion: cert-manager.io/v1
-kind: Certificate
-metadata:
- name: linkerd-sp-validator
- namespace: linkerd
-spec:
- revisionHistoryLimit: 5
- secretName: linkerd-sp-validator-k8s-tls
- duration: 24h0m0s
- renewBefore: 1h0m0s
- issuerRef:
- name: webhook-issuer
- kind: Issuer
- commonName: linkerd-sp-validator.linkerd.svc
- dnsNames:
- - linkerd-sp-validator.linkerd.svc
- privateKey:
- algorithm: ECDSA
- usages:
- - server auth
----
-{{ if .Values.linkerd.viz.enabled }}
-apiVersion: cert-manager.io/v1
-kind: Issuer
-metadata:
- name: webhook-issuer
- namespace: linkerd-viz
-spec:
- ca:
- secretName: webhook-issuer-tls
-# ignore if not using the viz extension
-apiVersion: cert-manager.io/v1
-kind: Certificate
-metadata:
- name: tap
- namespace: linkerd-viz
-spec:
- revisionHistoryLimit: 5
- secretName: tap-k8s-tls
- duration: 24h0m0s
- renewBefore: 1h0m0s
- issuerRef:
- name: webhook-issuer
- kind: Issuer
- commonName: tap.linkerd-viz.svc
- dnsNames:
- - tap.linkerd-viz.svc
- isCA: false
- privateKey:
- algorithm: ECDSA
- usages:
- - server auth
----
-apiVersion: cert-manager.io/v1
-kind: Certificate
-metadata:
- name: linkerd-tap-injector
- namespace: linkerd-viz
-spec:
- revisionHistoryLimit: 5
- secretName: tap-injector-k8s-tls
- duration: 24h0m0s
- renewBefore: 1h0m0s
- issuerRef:
- name: webhook-issuer
- kind: Issuer
- commonName: tap-injector.linkerd-viz.svc
- dnsNames:
- - tap-injector.linkerd-viz.svc
- privateKey:
- algorithm: ECDSA
- usages:
- - server auth
----
-{{ end }}
-{{ if .Values.linkerd.jaeger.enabled }}
-apiVersion: cert-manager.io/v1
-kind: Issuer
-metadata:
- name: webhook-issuer
- namespace: linkerd-jaeger
-spec:
- ca:
- secretName: webhook-issuer-tls
----
-apiVersion: cert-manager.io/v1
-kind: Certificate
-metadata:
- name: jaeger-injector
- namespace: linkerd-jaeger
-spec:
- revisionHistoryLimit: 5
- secretName: jaeger-injector-k8s-tls
- duration: 24h0m0s
- renewBefore: 1h0m0s
- issuerRef:
- name: webhook-issuer
- kind: Issuer
- commonName: jaeger-injector.linkerd-jaeger.svc
- dnsNames:
- - jaeger-injector.linkerd-jaeger.svc
- privateKey:
- algorithm: ECDSA
- usages:
- - server auth
-{{ end }}
-{{ end }}
diff --git a/attic/templates/resources/x509-certificates.yaml b/attic/templates/resources/x509-certificates.yaml
deleted file mode 100644
index a488fd04..00000000
--- a/attic/templates/resources/x509-certificates.yaml
+++ /dev/null
@@ -1,48 +0,0 @@
-{{- if .Values.x509_exporter.alerts }}
-apiVersion: monitoring.coreos.com/v1
-kind: PrometheusRule
-metadata:
- labels:
- # Some labels for various prometheus matching
- k8s-app: x509-exporter
- prometheus: k8s
- role: alert-rules
- name: x509-exporter-x509-certificate-exporter
- namespace: x509-exporter
-spec:
- groups:
- - name: x509-certificate-exporter.rules
- rules:
- - alert: X509ExporterReadErrors
- annotations:
- description: Over the last 15 minutes, this x509-certificate-exporter instance has experienced errors reading certificate files or querying the Kubernetes API. This could be caused by a misconfiguration if triggered when the exporter starts.
- summary: Increasing read errors for x509-certificate-exporter
- expr: delta(x509_read_errors[15m]) > 0
- for: 5m
- labels:
- severity: warning
- - alert: CertificateError
- annotations:
- description: Certificate could not be decoded {{`{{`}}if $labels.secret_name {{`}}`}} in Kubernetes secret "{{`{{`}} $labels.secret_namespace {{`}}`}}/{{`{{`}} $labels.secret_name {{`}}`}}"{{`{{`}}else{{`}}`}}at location "{{`{{`}} $labels.filepath {{`}}`}}"{{`{{`}}end{{`}}`}}
- summary: Certificate cannot be decoded
- expr: x509_cert_error > 0
- for: 15m
- labels:
- severity: warning
- - alert: CertificateRenewal
- annotations:
- description: Certificate for "{{`{{`}} $labels.subject_CN {{`}}`}}" should be renewed {{`{{`}}if $labels.secret_name {{`}}`}}in Kubernetes secret "{{`{{`}} $labels.secret_namespace {{`}}`}}/{{`{{`}} $labels.secret_name {{`}}`}}"{{`{{`}}else{{`}}`}}at location "{{`{{`}} $labels.filepath {{`}}`}}"{{`{{`}}end{{`}}`}}
- summary: Certificate should be renewed
- expr: ((x509_cert_not_after{secret_name!="linkerd-identity-issuer", issuer_O="", issuer_CN!="webhook.linkerd.cluster.local"} - time()) / 86400) < 28
- for: 15m
- labels:
- severity: warning
- - alert: CertificateExpiration
- annotations:
- description: Certificate for "{{`{{`}} $labels.subject_CN {{`}}`}}" is about to expire {{`{{`}}if $labels.secret_name {{`}}`}}in Kubernetes secret "{{`{{`}} $labels.secret_namespace {{`}}`}}/{{`{{`}} $labels.secret_name {{`}}`}}"{{`{{`}}else{{`}}`}}at location "{{`{{`}} $labels.filepath {{`}}`}}"{{`{{`}}end{{`}}`}}
- summary: Certificate is about to expire
- expr: ((x509_cert_not_after{secret_name!="linkerd-identity-issuer", issuer_O="", issuer_CN!="webhook.linkerd.cluster.local"} - time()) / 86400) < 14
- for: 15m
- labels:
- severity: critical
-{{- end }}
diff --git a/attic/templates/seq.yaml b/attic/templates/seq.yaml
deleted file mode 100644
index bcb8f87a..00000000
--- a/attic/templates/seq.yaml
+++ /dev/null
@@ -1,22 +0,0 @@
-{{- if .Values.seq.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: seq
- namespace: argocd
-spec:
- project: aux
- destination:
- server: https://kubernetes.default.svc
- namespace: seq
- sources:
- - repoURL: https://helm.datalust.co
- targetRevision: 2024.1.0
- chart: seq
- helm:
- valueFiles:
- - $values/values/seq/values.yaml
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- ref: values
-{{- end }}
diff --git a/attic/templates/sorcerer.yaml b/attic/templates/sorcerer.yaml
deleted file mode 100644
index f348fc80..00000000
--- a/attic/templates/sorcerer.yaml
+++ /dev/null
@@ -1,58 +0,0 @@
-{{ if .Values.sorcerer.enabled }}
-{{- range .Values.atlantis.envs }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: prod-sorcerer
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: prod-sorcerer
- server: https://10.255.241.99:4443
- project: atlantis
- sources:
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- ref: values
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- path: values/sorcerer
- plugin:
- name: kustomize-helm-with-rewrite
- parameters:
- - name: env
- string: prod
- - name: hostname
- string: sorcerer.data.oceanbox.io
- - repoURL: https://charts.bitnami.com/bitnami
- targetRevision: 20.1.7
- chart: redis
- helm:
- valueFiles:
- - $values/values/sorcerer/prod/redis.yaml
- ignoreDifferences:
- - kind: Secret
- name: azure-keyvault
- jqPathExpressions:
- - '.data'
- - '.metadata.labels'
- - '.metadata.annotations'
- - kind: Secret
- name: prod-atlantis-rabbitmq
- jqPathExpressions:
- - '.data'
- - '.metadata.labels'
- - '.metadata.annotations'
- syncPolicy:
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- # automated:
- # prune: true
- # selfHeal: false
-{{- end }}
-{{- end }}
diff --git a/attic/templates/tempo.yaml b/attic/templates/tempo.yaml
deleted file mode 100644
index 6b1ee048..00000000
--- a/attic/templates/tempo.yaml
+++ /dev/null
@@ -1,90 +0,0 @@
-{{ if .Values.tempo.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: tempo
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: tempo
- server: 'https://kubernetes.default.svc'
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{ if .Values.tempo.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{ end }}
- sources:
- - repoURL: {{ .Values.cluster_config.manifests }}
- path: {{ .Values.cluster_config.policies }}/tempo
- targetRevision: HEAD
- - repoURL: 'https://grafana.github.io/helm-charts'
- targetRevision: {{ .Values.tempo.version }}
- chart: tempo
- helm:
- values: |
- tempo:
- reportingEnabled: false
- storage:
- trace:
- backend: s3
- s3:
- bucket: {{ .Values.tempo.bucketName | default "tempo-traces" }}
- endpoint: {{ .Values.tempo.s3.endpoint | default "https://s3.production.itpartner.no" }}
- prefix: traces
- access_key: ${S3KEY}
- secret_key: ${S3SECRET}
- forcepathstyle: true
- region: us-east-1
- {{- if .Values.tempo.s3.insecure_skip_verify }}
- tls_insecure_skip_verify: true
- {{- end }}
- local:
- path: /var/tempo/traces
- wal:
- path: /var/tempo/wal
- metricsGenerator:
- enabled: true
- remoteWriteUrl: "http://prom-prometheus.prometheus:9090/api/v1/write"
- extraArgs: { config.expand-env=true }
- extraEnv:
- - name: S3KEY
- valueFrom:
- secretKeyRef:
- name: {{ .Values.tempo.secret.name | default "s3-credentials"}}
- key: {{ .Values.tempo.secret.access_key | default "access_key" }}
- - name: S3SECRET
- valueFrom:
- secretKeyRef:
- name: {{ .Values.tempo.secret.name | default "s3-credentials"}}
- key: {{ .Values.tempo.secret.access_key | default "access_secret" }}
- tempoQuery:
- ingress:
- enabled: true
- ingressClassName: nginx
- annotations:
- cert-manager.io/cluster-issuer: {{ .Values.cluster_config.ingress_clusterissuer }}
- nginx.ingress.kubernetes.io/ssl-redirect: "true"
- {{- with .Values.cluster_config.ingress_whitelist_ips }}
- nginx.ingress.kubernetes.io/whitelist-source-range: {{ join "," . }}
- {{- end }}
- path: /
- pathType: Prefix
- hosts:
- - query.tempo.{{ .Values.cluster_config.domain }}
- tls:
- - secretName: tempo-query-tls
- hosts:
- - query.tempo.{{ .Values.cluster_config.domain }}
-{{ end }}
diff --git a/attic/templates/velero.yaml b/attic/templates/velero.yaml
deleted file mode 100644
index 1b6142ab..00000000
--- a/attic/templates/velero.yaml
+++ /dev/null
@@ -1,109 +0,0 @@
-{{ if .Values.velero.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: velero
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
-spec:
- destination:
- namespace: velero
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: {{ .Values.cluster_config.manifests }}
- path: {{ .Values.cluster_config.policies }}/velero
- targetRevision: HEAD
- - repoURL: 'https://vmware-tanzu.github.io/helm-charts'
- targetRevision: {{ .Values.velero.version }}
- chart: velero
- helm:
- values: |
- initContainers:
- - name: velero-plugin-for-aws
- image: velero/velero-plugin-for-aws:v1.9.0
- imagePullPolicy: IfNotPresent
- volumeMounts:
- - mountPath: /target
- name: plugins
- credentials:
- useSecret: true
- existingSecret: {{ .Values.velero.credentials.secretName }}
- deployNodeAgent: true
- nodeAgent:
- podVolumePath: {{ .Values.velero.kubeletRootDir }}
- resources:
- requests:
- cpu: {{ .Values.velero.resources.nodeAgent.request.cpu | default "500m" }}
- memory: {{ .Values.velero.resources.nodeAgent.request.memory | default "1Gi" }}
- limits:
- memory: {{ .Values.velero.resources.nodeAgent.limit.memory | default "2Gi" }}
- snapshotsEnabled: false
- resources:
- requests:
- cpu: {{ .Values.velero.resources.velero.request.cpu | default "500m" }}
- memory: {{ .Values.velero.resources.velero.request.memory | default "1Gi" }}
- limits:
- memory: {{ .Values.velero.resources.velero.limit.memory | default "1Gi" }}
- configuration:
- uploaderType: kopia
- # Backup all volumes by default
- defaultVolumesToFsBackup: {{ .Values.velero.backupAllVolumes }}
- ## https://velero.io/docs/v1.6/api-types/backupstoragelocation/
- backupStorageLocation:
- - name: {{ .Values.velero.bsl }}
- bucket: {{ .Values.velero.bucket }}
- provider: aws
- default: true
- ## prefix is the directory under which all Velero data should be stored within the bucket. Optional.
- prefix: {{ .Values.cluster_config.cluster }}/velero
- accessMode: ReadWrite
- config:
- ## ONLY us-east-1 region is supported by nutanix
- region: {{ .Values.velero.s3.region }}
- s3ForcePathStyle: "true"
- s3Url: {{ .Values.velero.s3.url }}
- {{- if .Values.velero.s3.insecureSkipTLSVerify }}
- insecureSkipTLSVerify: true
- {{- end }}
- metrics:
- serviceMonitor:
- enabled: true
- additionalLabels:
- k8s-app: "velero"
- release: "prometheus"
- prometheusRule:
- enabled: true
- # namespace: ""
- # Rules to be deployed
- spec:
- - alert: VeleroBackupPartialFailures
- annotations:
- message: Velero backup {{` {{ $labels.schedule }} `}} has {{` {{$value | humanizePercentage}} `}} partialy failed backups.
- expr: |-
- velero_backup_partial_failure_total{schedule!=""} / velero_backup_attempt_total{schedule!=""} > 0.25
- for: 15m
- labels:
- severity: critical
- - alert: VeleroBackupFailures
- annotations:
- message: Velero backup {{` {{$labels.schedule}} `}} has {{` {{$value | humanizePercentage}} `}} failed backups.
- expr: |-
- velero_backup_failure_total{schedule!=""} / velero_backup_attempt_total{schedule!=""} > 0.25
- for: 15m
- labels:
- severity: critical
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.velero.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
-{{- end }}
diff --git a/attic/templates/wordpress.yaml b/attic/templates/wordpress.yaml
deleted file mode 100644
index 8529f258..00000000
--- a/attic/templates/wordpress.yaml
+++ /dev/null
@@ -1,22 +0,0 @@
-{{- if .Values.wordpress.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: www-oceanbox
- namespace: argocd
-spec:
- project: default
- destination:
- server: https://kubernetes.default.svc
- namespace: www-oceanbox
- sources:
- - repoURL: https://charts.bitnami.com/bitnami
- targetRevision: 19.2.2
- chart: wordpress
- helm:
- valueFiles:
- - $values/values/wordpress/values.yaml
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: HEAD
- ref: values
-{{- end }}
diff --git a/attic/templates/x509-exporter.yaml b/attic/templates/x509-exporter.yaml
deleted file mode 100644
index 659acc2b..00000000
--- a/attic/templates/x509-exporter.yaml
+++ /dev/null
@@ -1,53 +0,0 @@
-{{ if .Values.x509_exporter.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: x509-exporter
- namespace: argocd
- annotations:
- argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
- finalizers:
- - resources-finalizer.argocd.argoproj.io
-spec:
- destination:
- namespace: x509-exporter
- server: 'https://kubernetes.default.svc'
- sources:
- - repoURL: {{ .Values.cluster_config.manifests }}
- path: {{ .Values.cluster_config.policies }}/x509-exporter
- targetRevision: HEAD
- - repoURL: 'https://charts.enix.io'
- targetRevision: {{ .Values.x509_exporter.version }}
- chart: x509-certificate-exporter
- helm:
- values: |
- secretsExporter:
- excludeNamespaces:
- - sealed-secrets
- excludeLabels:
- - cert-manager.io/*
- resources:
- limits:
- memory: 100Mi
- requests:
- cpu: 20m
- memory: 100Mi
- prometheusServiceMonitor:
- extraLabels:
- k8s-app: x509-exporter
- prometheusRules:
- create: false
- project: sys
- syncPolicy:
- managedNamespaceMetadata:
- labels:
- component: sys
- syncOptions:
- - CreateNamespace=true
- - ApplyOutOfSyncOnly=true
- {{- if .Values.x509_exporter.autosync }}
- automated:
- prune: true
- # selfHeal: false
- {{- end }}
-{{ end }}
diff --git a/attic/templates/yolo-dl.yaml b/attic/templates/yolo-dl.yaml
deleted file mode 100644
index 4184573a..00000000
--- a/attic/templates/yolo-dl.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-{{- if .Values.yolo-dl.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: yolo-dl
- namespace: argocd
-spec:
- project: aux
- destination:
- server: https://10.255.241.99:4443
- namespace: oceanbox
- sources:
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- path: charts/yolo-dl
-{{- end }}
diff --git a/attic/templates/yolo-registry.yaml b/attic/templates/yolo-registry.yaml
deleted file mode 100644
index 19985466..00000000
--- a/attic/templates/yolo-registry.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-{{- if .Values.yolo-registry.enabled }}
-apiVersion: argoproj.io/v1alpha1
-kind: Application
-metadata:
- name: yolo-registry
- namespace: argocd
-spec:
- project: aux
- destination:
- server: https://kubernetes.default.svc
- namespace: yolo
- sources:
- - repoURL: https://gitlab.com/oceanbox/manifests.git
- targetRevision: main
- path: charts/yolo-registry
-{{- end }}
diff --git a/attic/values.yaml b/attic/values.yaml
deleted file mode 100644
index f2b7ffa2..00000000
--- a/attic/values.yaml
+++ /dev/null
@@ -1,404 +0,0 @@
-cluster_config:
- manifests: https://gitlab.com/oceanbox/manifests.git
- policies: policies/sys
- resources: resources/sys
- distro: "" #[nixos, talos]
- env: "" #[dev, test, staging, prod]
- initca: ""
- domain: "itpartner.no"
- apiserver: ""
- apiserverip: ""
- etcd_nodes: []
- k8s_nodes: []
- cluster: ""
- ingress_nodes: []
- ingress_replica_count: 3
- fileserver: ""
- acme_email: ""
- nodenames: []
- nodes: []
- ingress_clusterissuer: "letsencrypt-production"
- ingress_whitelist_ips:
- - 10.0.0.0/8
- - 172.16.0.0/12
- - 192.168.0.0/16
- - 172.19.255.0/24
- external_kubectl_access:
- enabled: false
- admin_group: ""
- external_access:
- enabled: false
- admin_group: ""
- groups: []
- #- group_id:
- # - ""
- # name:
- # namespaces:
- # -
- oidc: []
- #- name: azure-oidc
- # provider: azuread
- # tenant: "https://login.microsoftonline.com//oauth2/v2.0"
- # secret_ref:
- # name: azure-oidc
- # group_id: ""
- #- name: github-oidc
- # provider: github
- # secret_ref:
- # name: github-oidc
- # allowed_organizations:
- # allowed_teams:
-
-
-argocd:
- autosync: true
- version: 7.5.2
- ingress:
- enabled: true
- adminLogin: false
- anyNamespaces:
- enabled: false
- kustomizeHelmSupport: false
- applicationset_webhook:
- enabled: false
- additional_rbac_settings: []
- resources:
- controller:
- memory: ""
- repoServer:
- cmp:
- enabled: false
- name: ""
- image: ""
- imagePullSecret: []
- helmTokenSecret: ""
-argocd_apps:
- enable: true
- autosync: true
- version: 0.0.1
-argo_workflows:
- enabled: false
- autosync: true
- version: 0.45.0
- metrics:
- enabled: false
- allowed_namespaces: []
-argo_rollouts:
- enabled: false
- autosync: true
- version: 2.35.2
- metrics:
- enabled: false
- dashboard_enabled: false
-
-cilium:
- enabled: false
- autosync: true
- version: 1.16.2
- spire:
- enabled: false
- policyAuditMode: false
- encryption:
- enabled: true
- type: ipsec
- endpointStatus:
- enabled: true
- kubeProxyReplacement: false
- k8sServiceHost: localhost
- k8sServicePort: 7445
- nodePort:
- enabled: false
- # NOTE: requires that ingressconroller is also enabled (bug)
- gatewayAPI:
- enabled: false
- ingressController:
- enabled: false
- defaultClass: false
- loadbalancerMode: shared
- l2announcement:
- enabled: false
- k8sClientRateLimit:
- qps: 10
- burst: 3
- loadbalancerPool:
- enabled: false
- cidr: []
- envoy:
- enabled: false
- hubble:
- ui: true
- upgradeCompatability: ""
-linkerd:
- enabled: true
- autosync: true
- version: 1.9.3
- trustAnchorPEM: |
- -----BEGIN CERTIFICATE-----
- -----END CERTIFICATE-----
- webhookPEM: |
- -----BEGIN CERTIFICATE-----
- -----END CERTIFICATE-----
- identyIssuerPEM: ""
- secretScheme: kubernetes.io/tls
- crds:
- version: 1.4.0
- multicluster:
- version: 30.2.0
- enabled: false
- viz:
- enabled: false
- jaeger:
- enabled: false
-thanos:
- enabled: false
- autosync: true
- version: 8.3.0
- pagerdutyRoutingKey: ""
-prometheus:
- enabled: true
- autosync: true
- version: 62.7.0
- # Helm chart version, and app version is different. CRD version MUST be equals to chart's APP version
- crd_version: 14.0.0
- certRenewCronEnabled: true
- snitchUrl: ""
- oncallUrl: ""
- pagerdutyRoutingKey: ""
- fullname: ""
- # https://github.com/prometheus-community/helm-charts/blob/main/charts/kube-prometheus-stack/values.yaml#L47
- defaultRules: {}
- additionalScrapeConfigs: []
- additionalDataSources: []
- enableFeatures: []
- storage:
- size: 50Gi
- grafana:
- defaultDashboardsEnabled: true
- persistence: false
- disable_login_form: true
- plugins: []
- coredns:
- targetPort: ""
- etcd:
- targetPort: ""
- scheduler:
- targetPort: ""
- kubelet:
- enabled: false
- https: false
- thanos:
- enabled: false
- datasource:
- enabled: false
-nfs_provisioner:
- enabled: true
- autosync: true
- version: 4.0.13
- archiveOnDelete: true
- defaultClass: true
- extraMountOpts: []
-cert_manager:
- autosync: true
- version: 1.12.13
-kubernetes_dashboard:
- enabled: false
- autosync: true
- version: v2.3.1
-metrics_server:
- autosync: true
- version: 3.8.2
- ignoreTLS: false
-nginx:
- enabled: true
- autosync: true
- version: 4.8.3
- pdb:
- minAvailable: 1
- resources:
- controller:
- cpu: "100m"
- memory: "100Mi"
-kyverno:
- enabled: false
- autosync: true
- metrics: false
- version: 3.2.5
- resources:
- cleanupController:
- memory: "64Mi"
- reportsController:
- memory: "64Mi"
- backgroundController:
- memory: "64Mi"
-velero:
- enabled: true
- autosync: true
- version: 6.0.0
- kubeletRootDir: "/var/lib/kubernetes/pods"
- bucket: velero-backup
- bsl: default
- # Opt-in or opt-out pvc backup
- # https://velero.io/docs/main/file-system-backup/#to-back-up
- backupAllVolumes: true
- credentials:
- secretName: "s3-credentials"
- s3:
- region: us-east-1
- url: "https://nutanix-obj-s3.kube-system"
- insecureSkipTLSVerify: true
- resources:
- velero:
- request:
- cpu: 500m
- memory: 1Gi
- limit:
- memory: 2Gi
- nodeAgent:
- request:
- cpu: 500m
- memory: 1Gi
- limit:
- memory: 2Gi
-x509_exporter:
- enabled: true
- autosync: true
- alerts: true
- version: 3.6.0
-downscaler:
- enabled: false
- autosync: true
- version: 0.2.12
- extraConfig: |
- DEFAULT_UPTIME: "Mon-Fri 07:00-20:00 Europe/Berlin"
- excludedNamespaces:
- - py-kube-downscaler
- - kube-downscaler
- - kube-system
-
-actions_runner_controller:
- enabled: false
- autosync: true
- version: 0.23.7
-gitlab_runner:
- enabled: true
- autosync: true
- version: 0.39.0
- createCertSecret: true
- tag: "obx"
- s3:
- server: ""
- access_key: ""
- secret_key: ""
-postgres_operator:
- enabled: true
- autosync: true
- version: 0.18.2
-rabbitmq_operator:
- enabled: false
- autosync: true
- version: 4.3.27
-jaeger_operator:
- enabled: false
- autosync: true
- version: 1.38.0
-loki:
- enabled: false
- autosync: true
- version: 6.12.0
- compactor: false
- s3:
- endpoint: ""
- region: ""
- insecure_skip_verify: false
- secret:
- name: ""
- access_key: ""
- access_secret: ""
- buckets:
- chunks: ""
- ruler: ""
- admin: ""
-tempo:
- enabled: false
- autosync: true
- version: 1.14.0
- s3:
- endpoint: ""
- region: ""
- insecure_skip_verify: false
- secret:
- name: ""
- access_key: ""
- access_secret: ""
- bucketName: ""
-otel:
- enabled: false
- autosync: true
- version: 0.107.0
-promtail:
- enabled: false
- autosync: true
- version: 6.6.1
-mariadb_operator:
- enabled: false
- autosync: true
- version: 0.30.0
-chartmuseum:
- enabled: false
- autosync: true
- version: 3.10.2
- storage:
- size: 8Gi
- ingress:
- enabled: true
-clickhouse_operator:
- enabled: false
- autosync: true
- version: 0.24.4
-oncall:
- enabled: false
- externalGrafana:
- url: ""
-dapr:
- enable: true
-
-busynix.enable: false
-headscale.enable: false
-plausible.enable: false
-dex.enable: false
-keycloak.enable: false
-rabbitmq.enable: false
-redis.enable: false
-wordpress.enable: false
-yolo-dl.enable: false
-yolo-registry.enable: false
-osm-tile-server.enable: false
-geoserver.enable: false
-
-install:
- argo:
- autosync: true
- argocd:
- enabled: true
- apps:
- enabled: true
- rollouts:
- enabled: false
- workflows:
- enabled: false
- atlantis:
- enabled: false
- envs:
- - prod
- - staging
- sorcerer:
- enabled: false
- envs:
- - prod
- - staging
- openfga:
- enabled: false
- envs:
- - prod
- - staging
-
diff --git a/attic/values/archmeister/base/deployment_patch.yaml b/attic/values/archmeister/base/deployment_patch.yaml
deleted file mode 100644
index c8368399..00000000
--- a/attic/values/archmeister/base/deployment_patch.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-- op: replace
- path: /spec/template/spec/containers/0/livenessProbe/httpGet/path
- value: /healthz
-- op: replace
- path: /spec/template/spec/containers/0/readinessProbe/httpGet/path
- value: /healthz
-- op: add
- path: /spec/template/spec/containers/0/envFrom
- value: []
diff --git a/attic/values/archmeister/base/kustomization.yaml b/attic/values/archmeister/base/kustomization.yaml
deleted file mode 100644
index b0ce8979..00000000
--- a/attic/values/archmeister/base/kustomization.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-patches:
-- path: deployment_patch.yaml
- target:
- group: apps
- kind: Deployment
- version: v1
-resources:
-- _manifest.yaml
diff --git a/attic/values/archmeister/chart b/attic/values/archmeister/chart
deleted file mode 100644
index e898131e..00000000
--- a/attic/values/archmeister/chart
+++ /dev/null
@@ -1 +0,0 @@
-oceanbox/archmeister
diff --git a/attic/values/archmeister/prod/appsettings.json b/attic/values/archmeister/prod/appsettings.json
deleted file mode 100644
index ff4fb40c..00000000
--- a/attic/values/archmeister/prod/appsettings.json
+++ /dev/null
@@ -1,48 +0,0 @@
-{
- "connString": "Username=app;Password=secret;Host=prod-archmeister-rw;Port=5432;Database=app;Pooling=true;",
- "oidc": {
- "issuer": "https://idp.oceanbox.io/dex",
- "authorization_endpoint": "https://idp.oceanbox.io/dex/auth",
- "token_endpoint": "https://idp.oceanbox.io/dex/token",
- "jwks_uri": "https://idp.oceanbox.io/dex/keys",
- "userinfo_endpoint": "https://idp.oceanbox.io/dex/userinfo",
- "device_authorization_endpoint": "https://idp.oceanbox.io/dex/device/code",
- "clientId": "archmeister",
- "clientSecret": "",
- "scopes": [
- "openid",
- "email",
- "offline_access",
- "profile"
- ]
- },
- "sso": {
- "cookieDomain": ".oceanbox.io",
- "signedOutRedirectUri": "https://idp.oceanbox.io/dex/static/logout.html",
- "redis": "prod-redis-master.redis.svc,user=default,password=secret",
- "appDomain": "atlantis",
- "dataProtectionKeys": "DataProtection-Keys"
- },
- "allowedOrigins": [
- "https://maps.oceanbox.io",
- "https://atlantis.srv.oceanbox.io",
- "https://maps.relic.oceanbox.io",
- "https://sorcerer.data.oceanbox.io",
- "https://sorcerer.ekman.oceanbox.io",
- "https://sorcerer.jonas.ekman.oceanbox.io",
- "https://sorcerer.simkir.ekman.oceanbox.io",
- "https://sorcerer.stig.ekman.oceanbox.io",
- "https://atlantis.beta.oceanbox.io",
- "https://atlantis.jonas.dev.oceanbox.io",
- "https://atlantis.stig.dev.oceanbox.io",
- "https://atlantis.simkir.dev.oceanbox.io",
- "https://atlantis.local.oceanbox.io:8080"
- ],
- "logService" : "https://seq.adm.oceanbox.io",
- "logApiKey": "",
- "cliUsers": [
- "admin:en-to-tre-fire"
- ],
- "cerbosUrl": "http://prod-cerbos.idp.svc:3593",
- "deployEnv": "prod"
-}
diff --git a/attic/values/archmeister/prod/default.env b/attic/values/archmeister/prod/default.env
deleted file mode 100644
index 5aa261a6..00000000
--- a/attic/values/archmeister/prod/default.env
+++ /dev/null
@@ -1,2 +0,0 @@
-OIDC_CLIENT_SECRET=ieK3yak9zoh3yeewee8quahY6seiv7Ro
-SEQ_APIKEY=mxv08mP4RDQE7vgUkbfC
diff --git a/attic/values/archmeister/prod/deployment_patch.yaml b/attic/values/archmeister/prod/deployment_patch.yaml
deleted file mode 100644
index 1e899e2d..00000000
--- a/attic/values/archmeister/prod/deployment_patch.yaml
+++ /dev/null
@@ -1,44 +0,0 @@
-- op: add
- path: /spec/template/spec/containers/0/env/-
- value:
- name: DB_PASSWORD
- valueFrom:
- secretKeyRef:
- name: prod-archmeister-app
- key: password
-- op: add
- path: /spec/template/spec/containers/0/env/-
- value:
- name: DB_USERNAME
- valueFrom:
- secretKeyRef:
- name: prod-archmeister-app
- key: username
-- op: add
- path: /spec/template/spec/containers/0/env/-
- value:
- name: DB_HOST
- value: prod-archmeister-rw
-- op: add
- path: /spec/template/spec/containers/0/env/-
- value:
- name: REDIS_USER
- value: default
-- op: add
- path: /spec/template/spec/containers/0/env/-
- value:
- name: REDIS_PASSWORD
- valueFrom:
- secretKeyRef:
- name: prod-redis
- key: redis-password
-- op: add
- path: /spec/template/spec/containers/0/env/-
- value:
- name: RABBITMQ_USER
- value: user
-- op: add
- path: /spec/template/spec/containers/0/envFrom/-
- value:
- secretRef:
- name: prod-archmeister-env
diff --git a/attic/values/archmeister/prod/ingress_patch.yaml b/attic/values/archmeister/prod/ingress_patch.yaml
deleted file mode 100644
index 50004710..00000000
--- a/attic/values/archmeister/prod/ingress_patch.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-- op: replace
- path: /spec/rules/0/http/paths/0/path
- value: /internal
\ No newline at end of file
diff --git a/attic/values/archmeister/prod/kustomization.yaml b/attic/values/archmeister/prod/kustomization.yaml
deleted file mode 100644
index 1af54e43..00000000
--- a/attic/values/archmeister/prod/kustomization.yaml
+++ /dev/null
@@ -1,25 +0,0 @@
-generatorOptions:
- disableNameSuffixHash: true
-configMapGenerator:
-- name: prod-archmeister-appsettings
- files:
- - appsettings.json
-secretGenerator:
-- name: prod-archmeister-env
- envs:
- - default.env
-patches:
-- path: deployment_patch.yaml
- target:
- version: v1
- group: apps
- kind: Deployment
-- path: ingress_patch.yaml
- target:
- group: networking.k8s.io
- kind: Ingress
- name: prod-archmeister-internal
- annotationSelector: oceanbox.io/expose=internal
- version: v1
-resources:
-- ../base
diff --git a/attic/values/archmeister/staging/appsettings.json b/attic/values/archmeister/staging/appsettings.json
deleted file mode 100644
index aef83340..00000000
--- a/attic/values/archmeister/staging/appsettings.json
+++ /dev/null
@@ -1,43 +0,0 @@
-{
- "connString": "Username=app;Password=secret;Host=staging-archmeister-rw;Port=5432;Database=app;Pooling=true;",
- "oidc": {
- "issuer": "https://idp.oceanbox.io/dex",
- "authorization_endpoint": "https://idp.oceanbox.io/dex/auth",
- "token_endpoint": "https://idp.oceanbox.io/dex/token",
- "jwks_uri": "https://idp.oceanbox.io/dex/keys",
- "userinfo_endpoint": "https://idp.oceanbox.io/dex/userinfo",
- "device_authorization_endpoint": "https://idp.oceanbox.io/dex/device/code",
- "clientId": "archmeister_dev",
- "clientSecret": "",
- "scopes": [
- "openid",
- "email",
- "offline_access",
- "profile"
- ]
- },
- "sso": {
- "cookieDomain": ".oceanbox.io",
- "signedOutRedirectUri": "https://idp.oceanbox.io/dex/static/logout.html",
- "redis": "staging-redis-master.redis.svc,user=default,password=secret",
- "appDomain": "atlantis",
- "dataProtectionKeys": "DataProtection-Keys"
- },
- "allowedOrigins": [
- "https://maps.oceanbox.io",
- "https://atlantis.beta.oceanbox.io",
- "https://sorcerer.data.oceanbox.io",
- "https://sorcerer.ekman.oceanbox.io",
- "https://atlantis.jonas.dev.oceanbox.io",
- "https://atlantis.stig.dev.oceanbox.io",
- "https://atlantis.simkir.dev.oceanbox.io",
- "https://atlantis.local.oceanbox.io:8080"
- ],
- "logService" : "https://seq.adm.oceanbox.io",
- "logApiKey": "",
- "cliUsers": [
- "admin:en-to-tre-fire"
- ],
- "cerbosUrl": "http://staging-cerbos.idp.svc:3593",
- "deployEnv": "staging"
-}
diff --git a/attic/values/archmeister/staging/default.env b/attic/values/archmeister/staging/default.env
deleted file mode 100644
index 5aa261a6..00000000
--- a/attic/values/archmeister/staging/default.env
+++ /dev/null
@@ -1,2 +0,0 @@
-OIDC_CLIENT_SECRET=ieK3yak9zoh3yeewee8quahY6seiv7Ro
-SEQ_APIKEY=mxv08mP4RDQE7vgUkbfC
diff --git a/attic/values/archmeister/staging/deployment_patch.yaml b/attic/values/archmeister/staging/deployment_patch.yaml
deleted file mode 100644
index fd4f0400..00000000
--- a/attic/values/archmeister/staging/deployment_patch.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
-- op: replace
- path: /spec/template/spec/containers/0/env/0
- value:
- name: LOG_LEVEL
- value: "4"
-- op: add
- path: /spec/template/spec/containers/0/env/-
- value:
- name: DB_PASSWORD
- valueFrom:
- secretKeyRef:
- name: staging-archmeister-app
- key: password
-- op: add
- path: /spec/template/spec/containers/0/env/-
- value:
- name: DB_USERNAME
- valueFrom:
- secretKeyRef:
- name: staging-archmeister-app
- key: username
-- op: add
- path: /spec/template/spec/containers/0/env/-
- value:
- name: DB_HOST
- value: staging-archmeister-rw
-- op: add
- path: /spec/template/spec/containers/0/env/-
- value:
- name: REDIS_USER
- value: default
-- op: add
- path: /spec/template/spec/containers/0/env/-
- value:
- name: REDIS_PASSWORD
- valueFrom:
- secretKeyRef:
- name: staging-redis
- key: redis-password
-- op: add
- path: /spec/template/spec/containers/0/env/-
- value:
- name: RABBITMQ_USER
- value: user
-- op: add
- path: /spec/template/spec/containers/0/envFrom/-
- value:
- secretRef:
- name: staging-archmeister-env
diff --git a/attic/values/archmeister/staging/ingress_patch.yaml b/attic/values/archmeister/staging/ingress_patch.yaml
deleted file mode 100644
index bb8c50dc..00000000
--- a/attic/values/archmeister/staging/ingress_patch.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-- op: replace
- path: /spec/rules/0/http/paths/0/path
- value: /internal
-- op: add
- path: /metadata/annotations/nginx.ingress.kubernetes.io~1whitelist-source-range
- value: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
diff --git a/attic/values/archmeister/staging/kustomization.yaml b/attic/values/archmeister/staging/kustomization.yaml
deleted file mode 100644
index 33c43e00..00000000
--- a/attic/values/archmeister/staging/kustomization.yaml
+++ /dev/null
@@ -1,25 +0,0 @@
-generatorOptions:
- disableNameSuffixHash: true
-configMapGenerator:
-- name: staging-archmeister-appsettings
- files:
- - appsettings.json
-secretGenerator:
-- name: staging-archmeister-env
- envs:
- - default.env
-patches:
-- path: deployment_patch.yaml
- target:
- version: v1
- group: apps
- kind: Deployment
-- path: ingress_patch.yaml
- target:
- group: networking.k8s.io
- kind: Ingress
- name: staging-archmeister-internal
- annotationSelector: oceanbox.io/expose=internal
- version: v1
-resources:
-- ../base
diff --git a/attic/values/archmeister/values-prod.yaml b/attic/values/archmeister/values-prod.yaml
deleted file mode 100644
index ec4ad516..00000000
--- a/attic/values/archmeister/values-prod.yaml
+++ /dev/null
@@ -1,45 +0,0 @@
-replicaCount: 2
-
-podAnnotations:
- dapr.io/app-id: "prod-archmeister"
- dapr.io/enabled: "true"
- dapr.io/app-port: "8000"
- dapr.io/config: "tracing"
- dapr.io/app-protocol: "http"
- dapr.io/enable-app-health-check: "true"
- dapr.io/app-health-check-path: "/healthz"
- dapr.io/app-health-probe-interval: "3"
- dapr.io/app-health-probe-timeout: "200"
- dapr.io/app-health-threshold: "2"
- dapr.io/sidecar-cpu-request: "100m"
- dapr.io/sidecar-memory-request: "250Mi"
- dapr.io/sidecar-cpu-limit: "300m"
- dapr.io/sidecar-memory-limit: "1000Mi"
- dapr.io/log-as-json: "true"
-
-ingress:
- annotations:
- cert-manager.io/cluster-issuer: letsencrypt-production
- hosts:
- - host: archmeister.srv.oceanbox.io
- paths:
- - path: /
- pathType: ImplementationSpecific
- tls:
- - hosts:
- - archmeister.srv.oceanbox.io
- secretName: prod-archmeister-tls
-
-cluster:
- backupEnabled: true
- backupRetention: 60d
- instances: 2
-
-resources:
- limits:
- cpu: 1000m
- memory: 2Gi
- requests:
- cpu: 200m
- memory: 1Gi
-
diff --git a/attic/values/archmeister/values-staging.yaml b/attic/values/archmeister/values-staging.yaml
deleted file mode 100644
index 9ce8a708..00000000
--- a/attic/values/archmeister/values-staging.yaml
+++ /dev/null
@@ -1,39 +0,0 @@
-replicaCount: 1
-podAnnotations:
- dapr.io/app-id: "staging-archmeister"
- dapr.io/enabled: "true"
- dapr.io/app-port: "8000"
- dapr.io/config: "tracing"
- dapr.io/app-protocol: "http"
- dapr.io/enable-app-health-check: "true"
- dapr.io/app-health-check-path: "/healthz"
- dapr.io/app-health-probe-interval: "3"
- dapr.io/app-health-probe-timeout: "200"
- dapr.io/app-health-threshold: "2"
- dapr.io/sidecar-cpu-request: "100m"
- dapr.io/sidecar-memory-request: "250Mi"
- dapr.io/sidecar-cpu-limit: "300m"
- dapr.io/sidecar-memory-limit: "1000Mi"
- dapr.io/log-as-json: "true"
-image:
- tag: 16390a0c-debug
-ingress:
- annotations:
- cert-manager.io/cluster-issuer: letsencrypt-production
- # oceanbox.io/expose: internal
- hosts:
- - host: archmeister.beta.oceanbox.io
- paths:
- - path: /
- pathType: ImplementationSpecific
- tls:
- - hosts:
- - archmeister.beta.oceanbox.io
- secretName: staging-archmeister-tls
-resources:
- limits:
- cpu: 1000m
- memory: 2Gi
- requests:
- cpu: 200m
- memory: 1Gi
diff --git a/attic/values/cerbos/manifests/cerbos-gitlab-token.yaml b/attic/values/cerbos/manifests/cerbos-gitlab-token.yaml
deleted file mode 100644
index 234dd730..00000000
--- a/attic/values/cerbos/manifests/cerbos-gitlab-token.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: v1
-data:
- GITLAB_TOKEN: Z2xwYXQtOTZvWmVwdnNiSnYyMzVXUWVqTnM=
-kind: Secret
-metadata:
- name: cerbos-gitlab-token
-type: Opaque
diff --git a/attic/values/cerbos/values-prod.yaml b/attic/values/cerbos/values-prod.yaml
deleted file mode 100644
index b0dfbdcf..00000000
--- a/attic/values/cerbos/values-prod.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-service:
- httpNodePort: 30592
- grpcNodePort: 30593
diff --git a/attic/values/cerbos/values-staging.yaml b/attic/values/cerbos/values-staging.yaml
deleted file mode 100644
index 3bf5a00a..00000000
--- a/attic/values/cerbos/values-staging.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-service:
- httpNodePort: 31592
- grpcNodePort: 31593
diff --git a/attic/values/cerbos/values.yaml b/attic/values/cerbos/values.yaml
deleted file mode 100644
index 23271b0d..00000000
--- a/attic/values/cerbos/values.yaml
+++ /dev/null
@@ -1,46 +0,0 @@
-replicaCount: 1
-autoscaling:
- enabled: false
- minReplicas: 1
- maxReplicas: 100
- targetCPUUtilizationPercentage: 80
- # targetMemoryUtilizationPercentage: 80
-
-# Spec of the cert-manager certificate to create for the Cerbos deployment.
-# If certSpec is not empty, a cert-manager.io/v1/Certificate resource will be created with its spec populated with values from certSpec.
-# The certSpec value must be a valid Certificate spec. This Helm chart does not provide any defaults or inject any values into it.
-# If cerbos.tlsSecretName is defined, it takes precedence over the generated certificate.
-certManager:
- certSpec: {}
-
-# Cerbos service settings.
-service:
- type: ClusterIP
- httpPort: 3592
- grpcPort: 3593
- httpNodePort: 13592
- grpcNodePort: 13593
- annotations: {}
-
-envFrom:
- - secretRef:
- name: cerbos-gitlab-token
-
-cerbos:
- httpPort: 3592
- grpcPort: 3593
- tlsSecretName: ""
- logLevel: INFO
- config:
- storage:
- driver: "git"
- git:
- protocol: https
- url: https://gitlab.com/oceanbox/cerbos
- branch: main
- subDir: policies
- checkoutDir: /work
- updatePollInterval: 60s
- https:
- username: cerbos
- password: ${GITLAB_TOKEN}
diff --git a/attic/values/dex/resources/dex-volumes.yaml b/attic/values/dex/resources/dex-volumes.yaml
deleted file mode 100644
index 85792216..00000000
--- a/attic/values/dex/resources/dex-volumes.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: pv-oceanbox-dex
-spec:
- accessModes:
- - ReadOnlyMany
- capacity:
- storage: 50M
- mountOptions:
- - vers=4.2
- - soft
- nfs:
- path: /oceanbox/pv-oceanbox-dex
- server: 10.255.241.210
- persistentVolumeReclaimPolicy: Retain
- volumeMode: Filesystem
----
-apiVersion: v1
-kind: PersistentVolumeClaim
-metadata:
- name: oceanbox-dex
-spec:
- accessModes:
- - ReadOnlyMany
- resources:
- requests:
- storage: 50M
- storageClassName: ""
- volumeMode: Filesystem
- volumeName: pv-oceanbox-dex
diff --git a/attic/values/dex/templates/.config/dotnet-tools.json b/attic/values/dex/templates/.config/dotnet-tools.json
deleted file mode 100644
index f65a4aee..00000000
--- a/attic/values/dex/templates/.config/dotnet-tools.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "version": 1,
- "isRoot": true,
- "tools": {
- "fable": {
- "version": "3.6.1",
- "commands": [
- "fable"
- ]
- },
- "femto": {
- "version": "0.11.0",
- "commands": [
- "femto"
- ]
- }
- }
-}
\ No newline at end of file
diff --git a/attic/values/dex/templates/.gitignore b/attic/values/dex/templates/.gitignore
deleted file mode 100644
index 1f42bc48..00000000
--- a/attic/values/dex/templates/.gitignore
+++ /dev/null
@@ -1,355 +0,0 @@
-build/client/*
-build/test/*
-!build/test/__snapshots__
-dist/
-
-## Ignore Visual Studio temporary files, build results, and
-## files generated by popular Visual Studio add-ons.
-##
-## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
-
-# User-specific files
-*.rsuser
-*.suo
-*.user
-*.userosscache
-*.sln.docstates
-
-# User-specific files (MonoDevelop/Xamarin Studio)
-*.userprefs
-
-# Mono auto generated files
-mono_crash.*
-
-# Build results
-[Dd]ebug/
-[Dd]ebugPublic/
-[Rr]elease/
-[Rr]eleases/
-x64/
-x86/
-[Aa][Rr][Mm]/
-[Aa][Rr][Mm]64/
-bld/
-[Bb]in/
-[Oo]bj/
-[Ll]og/
-[Ll]ogs/
-
-# Visual Studio 2015/2017 cache/options directory
-.vs/
-# Uncomment if you have tasks that create the project's static files in wwwroot
-#wwwroot/
-
-# Visual Studio 2017 auto generated files
-Generated\ Files/
-
-# MSTest test Results
-[Tt]est[Rr]esult*/
-[Bb]uild[Ll]og.*
-
-# NUnit
-*.VisualState.xml
-TestResult.xml
-nunit-*.xml
-
-# Build Results of an ATL Project
-[Dd]ebugPS/
-[Rr]eleasePS/
-dlldata.c
-
-# Benchmark Results
-BenchmarkDotNet.Artifacts/
-
-# .NET Core
-project.lock.json
-project.fragment.lock.json
-artifacts/
-
-# StyleCop
-StyleCopReport.xml
-
-# Files built by Visual Studio
-*_i.c
-*_p.c
-*_h.h
-*.ilk
-*.meta
-*.obj
-*.iobj
-*.pch
-*.pdb
-*.ipdb
-*.pgc
-*.pgd
-*.rsp
-*.sbr
-*.tlb
-*.tli
-*.tlh
-*.tmp
-*.tmp_proj
-*_wpftmp.csproj
-*.log
-*.vspscc
-*.vssscc
-.builds
-*.pidb
-*.svclog
-*.scc
-
-# Chutzpah Test files
-_Chutzpah*
-
-# Visual C++ cache files
-ipch/
-*.aps
-*.ncb
-*.opendb
-*.opensdf
-*.sdf
-*.cachefile
-*.VC.db
-*.VC.VC.opendb
-
-# Visual Studio profiler
-*.psess
-*.vsp
-*.vspx
-*.sap
-
-# Visual Studio Trace Files
-*.e2e
-
-# TFS 2012 Local Workspace
-$tf/
-
-# Guidance Automation Toolkit
-*.gpState
-
-# ReSharper is a .NET coding add-in
-_ReSharper*/
-*.[Rr]e[Ss]harper
-*.DotSettings.user
-
-# TeamCity is a build add-in
-_TeamCity*
-
-# DotCover is a Code Coverage Tool
-*.dotCover
-
-# AxoCover is a Code Coverage Tool
-.axoCover/*
-!.axoCover/settings.json
-
-# Visual Studio code coverage results
-*.coverage
-*.coveragexml
-
-# NCrunch
-_NCrunch_*
-.*crunch*.local.xml
-nCrunchTemp_*
-
-# MightyMoose
-*.mm.*
-AutoTest.Net/
-
-# Web workbench (sass)
-.sass-cache/
-
-# Installshield output folder
-[Ee]xpress/
-
-# DocProject is a documentation generator add-in
-DocProject/buildhelp/
-DocProject/Help/*.HxT
-DocProject/Help/*.HxC
-DocProject/Help/*.hhc
-DocProject/Help/*.hhk
-DocProject/Help/*.hhp
-DocProject/Help/Html2
-DocProject/Help/html
-
-# Click-Once directory
-publish/
-
-# Publish Web Output
-*.[Pp]ublish.xml
-*.azurePubxml
-# Note: Comment the next line if you want to checkin your web deploy settings,
-# but database connection strings (with potential passwords) will be unencrypted
-*.pubxml
-*.publishproj
-
-# Microsoft Azure Web App publish settings. Comment the next line if you want to
-# checkin your Azure Web App publish settings, but sensitive information contained
-# in these scripts will be unencrypted
-PublishScripts/
-
-# NuGet Packages
-*.nupkg
-# NuGet Symbol Packages
-*.snupkg
-# The packages folder can be ignored because of Package Restore
-**/[Pp]ackages/*
-# except build/, which is used as an MSBuild target.
-!**/[Pp]ackages/build/
-# Uncomment if necessary however generally it will be regenerated when needed
-#!**/[Pp]ackages/repositories.config
-# NuGet v3's project.json files produces more ignorable files
-*.nuget.props
-*.nuget.targets
-
-# Microsoft Azure Build Output
-csx/
-*.build.csdef
-
-# Microsoft Azure Emulator
-ecf/
-rcf/
-
-# Windows Store app package directories and files
-AppPackages/
-BundleArtifacts/
-Package.StoreAssociation.xml
-_pkginfo.txt
-*.appx
-*.appxbundle
-*.appxupload
-
-# Visual Studio cache files
-# files ending in .cache can be ignored
-*.[Cc]ache
-# but keep track of directories ending in .cache
-!?*.[Cc]ache/
-
-# Others
-ClientBin/
-~$*
-*~
-*.dbmdl
-*.dbproj.schemaview
-*.jfm
-*.pfx
-*.publishsettings
-orleans.codegen.cs
-
-# Including strong name files can present a security risk
-# (https://github.com/github/gitignore/pull/2483#issue-259490424)
-#*.snk
-
-# Since there are multiple workflows, uncomment next line to ignore bower_components
-# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
-#bower_components/
-
-# RIA/Silverlight projects
-Generated_Code/
-
-# Backup & report files from converting an old project file
-# to a newer Visual Studio version. Backup files are not needed,
-# because we have git ;-)
-_UpgradeReport_Files/
-Backup*/
-UpgradeLog*.XML
-UpgradeLog*.htm
-ServiceFabricBackup/
-*.rptproj.bak
-
-# SQL Server files
-*.mdf
-*.ldf
-*.ndf
-
-# Business Intelligence projects
-*.rdl.data
-*.bim.layout
-*.bim_*.settings
-*.rptproj.rsuser
-*- [Bb]ackup.rdl
-*- [Bb]ackup ([0-9]).rdl
-*- [Bb]ackup ([0-9][0-9]).rdl
-
-# Microsoft Fakes
-FakesAssemblies/
-
-# GhostDoc plugin setting file
-*.GhostDoc.xml
-
-# Node.js Tools for Visual Studio
-.ntvs_analysis.dat
-node_modules/
-
-# Visual Studio 6 build log
-*.plg
-
-# Visual Studio 6 workspace options file
-*.opt
-
-# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
-*.vbw
-
-# Visual Studio LightSwitch build output
-**/*.HTMLClient/GeneratedArtifacts
-**/*.DesktopClient/GeneratedArtifacts
-**/*.DesktopClient/ModelManifest.xml
-**/*.Server/GeneratedArtifacts
-**/*.Server/ModelManifest.xml
-_Pvt_Extensions
-
-# Paket dependency manager
-.paket/paket.exe
-paket-files/
-
-# FAKE - F# Make
-.fake/
-
-# CodeRush personal settings
-.cr/personal
-
-# Python Tools for Visual Studio (PTVS)
-__pycache__/
-*.pyc
-
-# Cake - Uncomment if you are using it
-# tools/**
-# !tools/packages.config
-
-# Tabs Studio
-*.tss
-
-# Telerik's JustMock configuration file
-*.jmconfig
-
-# BizTalk build output
-*.btp.cs
-*.btm.cs
-*.odx.cs
-*.xsd.cs
-
-# OpenCover UI analysis results
-OpenCover/
-
-# Azure Stream Analytics local run output
-ASALocalRun/
-
-# MSBuild Binary and Structured Log
-*.binlog
-
-# NVidia Nsight GPU debugger configuration file
-*.nvuser
-
-# MFractors (Xamarin productivity tool) working folder
-.mfractor/
-
-# Local History for Visual Studio
-.localhistory/
-
-# BeatPulse healthcheck temp database
-healthchecksdb
-
-# Backup folder for Package Reference Convert tool in Visual Studio 2017
-MigrationBackup/
-
-# Ionide (cross platform F# VS Code tools) working folder
-.ionide/
diff --git a/attic/values/dex/templates/.vscode/launch.json b/attic/values/dex/templates/.vscode/launch.json
deleted file mode 100644
index 4a1114bc..00000000
--- a/attic/values/dex/templates/.vscode/launch.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "version": "0.2.0",
- "configurations": [
- {
- "type": "pwa-chrome",
- "request": "launch",
- "name": "Launch Chrome",
- "url": "http://localhost:3000",
- "webRoot": "${workspaceFolder}"
- }
- ]
-}
\ No newline at end of file
diff --git a/attic/values/dex/templates/.vscode/settings.json b/attic/values/dex/templates/.vscode/settings.json
deleted file mode 100644
index e58fff5a..00000000
--- a/attic/values/dex/templates/.vscode/settings.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "editor.detectIndentation": false,
- "files.trimTrailingWhitespace": true,
- "css.styleSheets": [
- "https://cdn.jsdelivr.net/npm/bulma@0.9.3/css/bulma.min.css",
- "https://cdn.jsdelivr.net/npm/bootstrap-icons@1.5.0/font/bootstrap-icons.css"
- ]
-}
\ No newline at end of file
diff --git a/attic/values/dex/templates/DexTemplates.sln b/attic/values/dex/templates/DexTemplates.sln
deleted file mode 100644
index 4bbaf895..00000000
--- a/attic/values/dex/templates/DexTemplates.sln
+++ /dev/null
@@ -1,22 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.30114.105
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "DexTemplates", "src\DexTemplates.fsproj", "{FA05EC30-6BCD-440D-AD18-4F2030BA1E83}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Release|Any CPU = Release|Any CPU
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {FA05EC30-6BCD-440D-AD18-4F2030BA1E83}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {FA05EC30-6BCD-440D-AD18-4F2030BA1E83}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {FA05EC30-6BCD-440D-AD18-4F2030BA1E83}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {FA05EC30-6BCD-440D-AD18-4F2030BA1E83}.Release|Any CPU.Build.0 = Release|Any CPU
- EndGlobalSection
-EndGlobal
diff --git a/attic/values/dex/templates/README.md b/attic/values/dex/templates/README.md
deleted file mode 100644
index 3b10694d..00000000
--- a/attic/values/dex/templates/README.md
+++ /dev/null
@@ -1,24 +0,0 @@
-# Oceanbox IdP
-
-```
-npm install && npm start
-```
-
-Other commands:
-
-```bash
-npm test # Run tests
-npm run test:watch # Run tests in watch mode
-npm test -- --update-snapshots # Update test snapshots
-npm run build # Build optimized site for deployment and put in dist/
-```
-
-## Vite.js repository structure conventions
-
-- Put static files in `public/` folder
-- Put `index.html` in app root (next to `package.json`)
-- Add a reference to the entry JS file (relative path is important):
-
-```html
-
-```
diff --git a/attic/values/dex/templates/deploy.sh b/attic/values/dex/templates/deploy.sh
deleted file mode 100755
index 0815eba1..00000000
--- a/attic/values/dex/templates/deploy.sh
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/usr/bin/env bash
-
-server="root@fs1-0"
-path="/vol/brick0/nfs0/k1/pv-oceanbox-dex"
-dest="${server}:${path}"
-
-index=$(basename dist/assets/index-*.js)
-
-ssh "${server}" -- rm "${path}"/static/js/*.js
-scp dist/assets/*.js "${dest}"/static/js/
-
-sed -r "s/@index@/${index}/" ./dex/templates/login.html > login.html.$$
-scp ./dex/templates/* "${dest}"/templates/
-scp ./dex/static/*.* "${dest}"/static/
-scp login.html.$$ "${dest}"/templates/login.html
-rm login.html.$$
-ssh admin@k1-0.itpartner.intern -- kubectl rollout restart -n oceanbox deployment/dex
diff --git a/attic/values/dex/templates/dex/static/img/atlassian-crowd-icon.svg b/attic/values/dex/templates/dex/static/img/atlassian-crowd-icon.svg
deleted file mode 100644
index cd94e300..00000000
--- a/attic/values/dex/templates/dex/static/img/atlassian-crowd-icon.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
diff --git a/attic/values/dex/templates/dex/static/img/bitbucket-icon.svg b/attic/values/dex/templates/dex/static/img/bitbucket-icon.svg
deleted file mode 100644
index 72f4eb10..00000000
--- a/attic/values/dex/templates/dex/static/img/bitbucket-icon.svg
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
diff --git a/attic/values/dex/templates/dex/static/img/email-icon.svg b/attic/values/dex/templates/dex/static/img/email-icon.svg
deleted file mode 100644
index 10f0d8d0..00000000
--- a/attic/values/dex/templates/dex/static/img/email-icon.svg
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
diff --git a/attic/values/dex/templates/dex/static/img/gitea-icon.svg b/attic/values/dex/templates/dex/static/img/gitea-icon.svg
deleted file mode 100644
index afeeacb7..00000000
--- a/attic/values/dex/templates/dex/static/img/gitea-icon.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/attic/values/dex/templates/dex/static/img/github-icon.svg b/attic/values/dex/templates/dex/static/img/github-icon.svg
deleted file mode 100644
index 5d607282..00000000
--- a/attic/values/dex/templates/dex/static/img/github-icon.svg
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
diff --git a/attic/values/dex/templates/dex/static/img/gitlab-icon.svg b/attic/values/dex/templates/dex/static/img/gitlab-icon.svg
deleted file mode 100644
index e8d408fa..00000000
--- a/attic/values/dex/templates/dex/static/img/gitlab-icon.svg
+++ /dev/null
@@ -1,53 +0,0 @@
-
-
\ No newline at end of file
diff --git a/attic/values/dex/templates/dex/static/img/google-icon.svg b/attic/values/dex/templates/dex/static/img/google-icon.svg
deleted file mode 100644
index d667afdf..00000000
--- a/attic/values/dex/templates/dex/static/img/google-icon.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
\ No newline at end of file
diff --git a/attic/values/dex/templates/dex/static/img/keystone-icon.svg b/attic/values/dex/templates/dex/static/img/keystone-icon.svg
deleted file mode 100644
index 7a30aba1..00000000
--- a/attic/values/dex/templates/dex/static/img/keystone-icon.svg
+++ /dev/null
@@ -1,12 +0,0 @@
-
diff --git a/attic/values/dex/templates/dex/static/img/ldap-icon.svg b/attic/values/dex/templates/dex/static/img/ldap-icon.svg
deleted file mode 100644
index 506dadc0..00000000
--- a/attic/values/dex/templates/dex/static/img/ldap-icon.svg
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
diff --git a/attic/values/dex/templates/dex/static/img/linkedin-icon.svg b/attic/values/dex/templates/dex/static/img/linkedin-icon.svg
deleted file mode 100644
index 409bad5e..00000000
--- a/attic/values/dex/templates/dex/static/img/linkedin-icon.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/attic/values/dex/templates/dex/static/img/microsoft-icon.svg b/attic/values/dex/templates/dex/static/img/microsoft-icon.svg
deleted file mode 100644
index 739c395a..00000000
--- a/attic/values/dex/templates/dex/static/img/microsoft-icon.svg
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
\ No newline at end of file
diff --git a/attic/values/dex/templates/dex/static/img/ob.png b/attic/values/dex/templates/dex/static/img/ob.png
deleted file mode 100644
index 8c041554..00000000
Binary files a/attic/values/dex/templates/dex/static/img/ob.png and /dev/null differ
diff --git a/attic/values/dex/templates/dex/static/img/oidc-icon.svg b/attic/values/dex/templates/dex/static/img/oidc-icon.svg
deleted file mode 100644
index e2817b0a..00000000
--- a/attic/values/dex/templates/dex/static/img/oidc-icon.svg
+++ /dev/null
@@ -1,156 +0,0 @@
-
-
-
-
diff --git a/attic/values/dex/templates/dex/static/img/saml-icon.svg b/attic/values/dex/templates/dex/static/img/saml-icon.svg
deleted file mode 100644
index 506dadc0..00000000
--- a/attic/values/dex/templates/dex/static/img/saml-icon.svg
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
diff --git a/attic/values/dex/templates/dex/static/js/index.c3f9eb2e.js b/attic/values/dex/templates/dex/static/js/index.c3f9eb2e.js
deleted file mode 100644
index 20025e83..00000000
--- a/attic/values/dex/templates/dex/static/js/index.c3f9eb2e.js
+++ /dev/null
@@ -1,44 +0,0 @@
-import{s as Je,y as Ke}from"./vendor.86e21c29.js";const Ze=function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))r(o);new MutationObserver(o=>{for(const i of o)if(i.type==="childList")for(const s of i.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function n(o){const i={};return o.integrity&&(i.integrity=o.integrity),o.referrerpolicy&&(i.referrerPolicy=o.referrerpolicy),o.crossorigin==="use-credentials"?i.credentials="include":o.crossorigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function r(o){if(o.ep)return;o.ep=!0;const i=n(o);fetch(o.href,i)}};Ze();function q(e){return Array.isArray(e)||ArrayBuffer.isView(e)}function ze(e){return typeof e.CompareTo=="function"}function Xe(e){return typeof e.Equals=="function"}function Ye(e){return typeof e.GetHashCode=="function"}function we(e,t){return Object.getPrototypeOf(e).constructor===Object.getPrototypeOf(t).constructor}class Qe{constructor(t){this.iter=t}["System.Collections.Generic.IEnumerator`1.get_Current"](){return this.current}["System.Collections.IEnumerator.get_Current"](){return this.current}["System.Collections.IEnumerator.MoveNext"](){const t=this.iter.next();return this.current=t.value,!t.done}["System.Collections.IEnumerator.Reset"](){throw new Error("JS iterators cannot be reset")}Dispose(){}}function le(e){return typeof e.GetEnumerator=="function"?e.GetEnumerator():new Qe(e[Symbol.iterator]())}function $e(e){return{[Symbol.iterator](){return this},next(){const t=e["System.Collections.IEnumerator.MoveNext"](),n=t?e["System.Collections.IEnumerator.get_Current"]():void 0;return{done:!t,value:n}}}}function me(e){const t=e;return typeof t.offset=="number"?t.offset:e.kind===1?0:e.getTimezoneOffset()*-6e4}class P{static id(t){return P.idMap.has(t)||P.idMap.set(t,++P.count),P.idMap.get(t)}}P.idMap=new WeakMap;P.count=0;function et(e){let t=0,n=5381;const r=e.length;for(;t(t<<5)+t^n)}function tt(e){return e.getTime()}function nt(e){const t=e.length,n=new Array(t);for(let r=0;rne(n));return te(t)}else return ae(P.id(e))}}}function rt(e,t,n){if(e==null)return t==null;if(t==null||e.length!==t.length)return!1;for(let r=0;rt===1?n(...e.concat([r])):be(e.concat([r]),t-1,n)}function ct(e,t){return t==null||t.length===1?t:ve in t?t[ve]:be([],e,t)}function ft(e){let t=0,n="[";for(const r of e){if(t===0)n+=H(r);else if(t===100){n+="; ...";break}else n+="; "+H(r);t++}return n+"]"}function H(e,t=0){if(e!=null&&typeof e=="object"){if(typeof e.toString=="function")return e.toString();if(Symbol.iterator in e)return ft(e);{const n=Object.getPrototypeOf(e).constructor;return n===Object&&t<10?"{ "+Object.entries(e).map(([r,o])=>r+" = "+H(o,t+1)).join(`
- `)+" }":n.name}}return String(e)}function lt(e,t){if(t.length===0)return e;{let n="",r=!0;return t.length===1?(n=H(t[0]),r=n.indexOf(" ")>=0):n=t.map(o=>H(o)).join(", "),e+(r?" (":" ")+n+(r?")":"")}}class at{get name(){return this.cases()[this.tag]}toJSON(){return this.fields.length===0?this.name:[this.name].concat(this.fields)}toString(){return lt(this.name,this.fields)}GetHashCode(){const t=this.fields.map(n=>ne(n));return t.splice(0,0,ae(this.tag)),te(t)}Equals(t){return this===t?!0:we(this,t)&&this.tag===t.tag?de(this.fields,t.fields):!1}CompareTo(t){return this===t?0:we(this,t)?this.tag===t.tag?Fe(this.fields,t.fields):this.tagt,this.setter=r=>{t=r})}get contents(){return this.getter()}set contents(t){this.setter(t)}}class gt{}const Se=Symbol("numeric");var g={GetHashCode(){return te([this.s,this.e].concat(this.c))},Equals(e){return!this.cmp(e)},CompareTo(e){return this.cmp(e)},[Se](){const e=this;return{multiply:t=>e.mul(t),toPrecision:t=>e.toPrecision(t),toExponential:t=>e.toExponential(t),toFixed:t=>e.toFixed(t),toHex:()=>(Number(e)>>>0).toString(16)}}},pt=28,_t=1,R=1e6,ye=1e6,wt=-29,mt=29,dt=!1,z="[big.js] ",A=z+"Invalid ",re=A+"decimal places",Et=A+"rounding mode",Ie=z+"Division by zero",C=void 0,Ft=/^-?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i;function Ce(){function e(t){var n=this;if(!(n instanceof e))return t===C?Ce():new e(t);if(t instanceof e)n.s=t.s,n.e=t.e,n.c=t.c.slice(),vt(n);else{if(typeof t!="string"){if(e.strict===!0)throw TypeError(A+"number");t=t===0&&1/t<0?"-0":String(t)}bt(n,t)}n.constructor=e}return e.prototype=g,e.DP=pt,e.RM=_t,e.NE=wt,e.PE=mt,e.strict=dt,e}function vt(e){if(e.c.length>1&&!e.c[0]){let t=e.c.findIndex(n=>n);e.c=e.c.slice(t),e.e=e.e-t}}function bt(e,t){var n,r,o;if(!Ft.test(t))throw Error(A+"number");for(e.s=t.charAt(0)=="-"?(t=t.slice(1),-1):1,(n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),o=t.length,r=0;r=5||n===2&&(o[0]>5||o[0]===5&&(r||o[1]!==C))),o.length=1,r?(e.e=e.e-t+1,o[0]=1):o[0]=e.e=0;else if(tu>=t&&s>0)<0;if(r=n===1&&o[t]>=5||n===2&&(o[t]>5||o[t]===5&&(r||o[t+1]!==C||o[t-1]&1))||n===3&&(r||!i),o.length=t--,r)for(;++o[t]>9;)o[t]=0,t--||(++e.e,o.unshift(1));for(t=o.length;!o[--t];)o.pop()}return e}function U(e,t,n){var r=e.e,o=e.c.join(""),i=o.length;if(t)o=o.charAt(0)+(i>1?"."+o.slice(1):"")+(r<0?"e":"e+")+r;else if(r<0){for(;++r;)o="0"+o;o="0."+o}else if(r>0)if(++r>i)for(r-=i;r--;)o+="0";else r1&&(o=o.charAt(0)+"."+o.slice(1));return e.s<0&&n?"-"+o:o}g.abs=function(){var e=new this.constructor(this);return e.s=1,e};g.cmp=function(e){var t,n=this.constructor,r=new n(this),e=new n(e),o=r.c,i=e.c,s=r.s,u=e.s,f=r.e,c=e.e;if(!o[0]||!i[0])return o[0]?s:i[0]?-u:0;if(s!=u)return s;if(t=s<0,f!=c)return f>c^t?1:-1;for(u=Math.max(o.length,i.length),s=0;sc^t?1:-1;return 0};g.div=function(e){var t=this.constructor,n=new t(this),e=new t(e),r=n.c,o=e.c,i=n.s==e.s?1:-1,s=t.DP;if(s!==~~s||s<0||s>R)throw Error(re);if(!o[0])throw Error(Ie);if(!r[0])return e.s=i,e.c=[e.e=0],e;var u,f,c,l,a,h=o.slice(),p=u=o.length,I=r.length,_=r.slice(0,u),d=_.length,T=e,ce=T.c=[],fe=0,K=s+(T.e=n.e-e.e)+1;for(T.s=i,i=K<0?0:K,h.unshift(0);d++d?1:-1;else for(a=-1,l=0;++a_[a]?1:-1;break}if(l<0){for(f=d==u?o:h;d;){if(_[--d]K&&k(T,K,t.RM,_[0]!==C),T};g.eq=function(e){return this.cmp(e)===0};g.gt=function(e){return this.cmp(e)>0};g.gte=function(e){return this.cmp(e)>-1};g.lt=function(e){return this.cmp(e)<0};g.lte=function(e){return this.cmp(e)<1};g.minus=g.sub=function(e){var t,n,r,o,i=this.constructor,s=new i(this),e=new i(e),u=s.s,f=e.s;if(u!=f)return e.s=-f,s.plus(e);var c=s.c.slice(),l=s.e,a=e.c,h=e.e;if(!c[0]||!a[0])return a[0]?e.s=-f:c[0]?e=new i(s):e.s=1,e;if(u=l-h){for((o=u<0)?(u=-u,r=c):(h=l,r=a),r.reverse(),f=u;f--;)r.push(0);r.reverse()}else for(n=((o=c.length0)for(;f--;)c[t++]=0;for(f=t;n>u;){if(c[--n]0?(f=s,r=c):(t=-t,r=u),r.reverse();t--;)r.push(0);r.reverse()}for(u.length-c.length<0&&(r=c,c=u,u=r),t=c.length,n=0;t;u[t]%=10)n=(u[--t]=u[t]+c[t]+n)/10|0;for(n&&(u.unshift(n),++f),t=u.length;u[--t]===0;)u.pop();return e.c=u,e.e=f,e};g.pow=function(e){var t=this.constructor,n=new t(this),r=new t("1"),o=new t("1"),i=e<0;if(e!==~~e||e<-ye||e>ye)throw Error(A+"exponent");for(i&&(e=-e);e&1&&(r=r.times(n)),e>>=1,!!e;)n=n.times(n);return i?o.div(r):r};g.prec=function(e,t){if(e!==~~e||e<1||e>R)throw Error(A+"precision");return k(new this.constructor(this),e,t)};g.round=function(e,t){if(e===C)e=0;else if(e!==~~e||e<-R||e>R)throw Error(re);return k(new this.constructor(this),e+this.e+1,t)};g.sqrt=function(){var e,t,n,r=this.constructor,o=new r(this),i=o.s,s=o.e,u=new r("0.5");if(!o.c[0])return new r(o);if(i<0)throw Error(z+"No square root");i=Math.sqrt(o+""),i===0||i===1/0?(t=o.c.join(""),t.length+s&1||(t+="0"),i=Math.sqrt(t),s=((s+1)/2|0)-(s<0||s&1),e=new r((i==1/0?"5e":(i=i.toExponential()).slice(0,i.indexOf("e")+1))+s)):e=new r(i+""),s=e.e+(r.DP+=4);do n=e,e=u.times(n.plus(o.div(n)));while(n.c.slice(0,s).join("")!==e.c.slice(0,s).join(""));return k(e,(r.DP-=4)+e.e+1,r.RM)};g.times=g.mul=function(e){var t,n=this.constructor,r=new n(this),e=new n(e),o=r.c,i=e.c,s=o.length,u=i.length,f=r.e,c=e.e;if(e.s=r.s==e.s?1:-1,!o[0]||!i[0])return e.c=[e.e=0],e;for(e.e=f+c,sf;)u=t[c]+i[f]*o[c-f-1]+u,t[c--]=u%10,u=u/10|0;t[c]=u}for(u?++e.e:t.shift(),f=t.length;!t[--f];)t.pop();return e.c=t,e};g.toExponential=function(e,t){var n=this,r=n.c[0];if(e!==C){if(e!==~~e||e<0||e>R)throw Error(re);for(n=k(new n.constructor(n),++e,t);n.c.lengthR)throw Error(re);for(n=k(new n.constructor(n),e+n.e+1,t),e=e+n.e+1;n.c.length=t.PE,!!e.c[0])};g.toNumber=function(){var e=Number(U(this,!0,!0));if(this.constructor.strict===!0&&!this.eq(e.toString()))throw Error(z+"Imprecise conversion");return e};g.toPrecision=function(e,t){var n=this,r=n.constructor,o=n.c[0];if(e!==C){if(e!==~~e||e<1||e>R)throw Error(A+"precision");for(n=k(new r(n),e,t);n.c.length=r.PE,!!o)};g.valueOf=function(){var e=this,t=e.constructor;if(t.strict===!0)throw Error(z+"valueOf disallowed");return U(e,e.e<=t.NE||e.e>=t.PE,!0)};var D=Ce();new D(0);new D(1);new D(-1);new D("79228162514264337593543950335");new D("-79228162514264337593543950335");var Oe;(function(e){e[e.AllowHexSpecifier=512]="AllowHexSpecifier"})(Oe||(Oe={}));var M=null;try{M=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch(e){}function O(e,t,n){this.low=e|0,this.high=t|0,this.unsigned=!!n}O.prototype.GetHashCode=function(){let e=this.unsigned?1:0;return e=(e<<5)+e^this.high,e=(e<<5)+e^this.low,e};O.prototype.Equals=function(e){return v(this,e)};O.prototype.CompareTo=function(e){return se(this,e)};O.prototype.toString=function(e){return Q(this,e)};O.prototype.toJSON=function(){return Q(this)};O.prototype[Se]=function(){const e=this;return{multiply:t=>y(e,t),toPrecision:t=>String(e)+0 .toPrecision(t).substr(1),toExponential:t=>String(e)+0 .toExponential(t).substr(1),toFixed:t=>String(e)+0 .toFixed(t).substr(1),toHex:()=>Q(e.unsigned?e:jt(Lt(e),!0),16)}};Object.defineProperty(O.prototype,"__isLong__",{value:!0});function N(e){return(e&&e.__isLong__)===!0}var Ne={},Pe={};function V(e,t){var n,r,o;return t?(e>>>=0,(o=0<=e&&e<256)&&(r=Pe[e],r)?r:(n=w(e,(e|0)<0?-1:0,!0),o&&(Pe[e]=n),n)):(e|=0,(o=-128<=e&&e<128)&&(r=Ne[e],r)?r:(n=w(e,e<0?-1:0,!1),o&&(Ne[e]=n),n))}function b(e,t){if(isNaN(e))return t?L:S;if(t){if(e<0)return L;if(e>=Me)return Ct}else{if(e<=-Le)return E;if(e+1>=Le)return It}return e<0?m(b(-e,t)):w(e%G|0,e/G|0,t)}function w(e,t,n){return new O(e,t,n)}var oe=Math.pow;function ke(e,t,n){if(e.length===0)throw Error("empty string");if(e==="NaN"||e==="Infinity"||e==="+Infinity"||e==="-Infinity")return S;if(typeof t=="number"?(n=t,t=!1):t=!!t,n=n||10,n<2||360)throw Error("interior hyphen");if(r===0)return m(ke(e.substring(1),t,n));for(var o=b(oe(n,8)),i=S,s=0;s>>0:e.low}function ie(e){return e.unsigned?(e.high>>>0)*G+(e.low>>>0):e.high*G+(e.low>>>0)}function Q(e,t){if(t=t||10,t<2||36>>0,l=c.toString(t);if(s=f,j(s))return l+u;for(;l.length<6;)l="0"+l;u=""+l+u}}function j(e){return e.high===0&&e.low===0}function F(e){return!e.unsigned&&e.high<0}function je(e){return(e.low&1)==1}function v(e,t){return N(t)||(t=W(t)),e.unsigned!==t.unsigned&&e.high>>>31==1&&t.high>>>31==1?!1:e.high===t.high&&e.low===t.low}function xe(e,t){return se(e,t)<0}function ge(e,t){return se(e,t)>0}function Ot(e,t){return se(e,t)>=0}function se(e,t){if(N(t)||(t=W(t)),v(e,t))return 0;var n=F(e),r=F(t);return n&&!r?-1:!n&&r?1:e.unsigned?t.high>>>0>e.high>>>0||t.high===e.high&&t.low>>>0>e.low>>>0?-1:1:F($(e,t))?-1:1}function m(e){return!e.unsigned&&v(e,E)?E:B(Nt(e),X)}function B(e,t){N(t)||(t=W(t));var n=e.high>>>16,r=e.high&65535,o=e.low>>>16,i=e.low&65535,s=t.high>>>16,u=t.high&65535,f=t.low>>>16,c=t.low&65535,l=0,a=0,h=0,p=0;return p+=i+c,h+=p>>>16,p&=65535,h+=o+f,a+=h>>>16,h&=65535,a+=r+u,l+=a>>>16,a&=65535,l+=n+s,l&=65535,w(h<<16|p,l<<16|a,e.unsigned)}function $(e,t){return N(t)||(t=W(t)),B(e,m(t))}function y(e,t){if(j(e))return e.unsigned?L:S;if(N(t)||(t=W(t)),M){var n=M.mul(e.low,e.high,t.low,t.high);return w(n,M.get_high(),e.unsigned)}if(j(t))return e.unsigned?L:S;if(v(e,E))return je(t)?E:S;if(v(t,E))return je(e)?E:S;if(F(e))return F(t)?y(m(e),m(t)):m(y(m(e),t));if(F(t))return m(y(e,m(t)));if(xe(e,Re)&&xe(t,Re))return b(ie(e)*ie(t),e.unsigned);var r=e.high>>>16,o=e.high&65535,i=e.low>>>16,s=e.low&65535,u=t.high>>>16,f=t.high&65535,c=t.low>>>16,l=t.low&65535,a=0,h=0,p=0,I=0;return I+=s*l,p+=I>>>16,I&=65535,p+=i*l,h+=p>>>16,p&=65535,p+=s*c,h+=p>>>16,p&=65535,h+=o*l,a+=h>>>16,h&=65535,h+=i*c,a+=h>>>16,h&=65535,h+=s*f,a+=h>>>16,h&=65535,a+=r*l+o*c+i*f+s*u,a&=65535,w(p<<16|I,a<<16|h,e.unsigned)}function x(e,t){if(N(t)||(t=W(t)),j(t))throw Error("division by zero");if(M){if(!e.unsigned&&e.high===-2147483648&&t.low===-1&&t.high===-1)return e;var n=(e.unsigned?M.div_u:M.div_s)(e.low,e.high,t.low,t.high);return w(n,M.get_high(),e.unsigned)}if(j(e))return e.unsigned?L:S;var r,o,i;if(e.unsigned){if(t.unsigned||(t=Mt(t)),ge(t,e))return L;if(ge(t,Dt(e,1)))return yt;i=L}else{if(v(e,E)){if(v(t,X)||v(t,Ae))return E;if(v(t,E))return X;var s=kt(e,1);return r=Pt(x(s,t),1),v(r,S)?F(t)?X:Ae:(o=$(e,y(t,r)),i=B(r,x(o,t)),i)}else if(v(t,E))return e.unsigned?L:S;if(F(e))return F(t)?x(m(e),m(t)):m(x(m(e),t));if(F(t))return m(x(e,m(t)));i=S}for(o=e;Ot(o,t);){r=Math.max(1,Math.floor(ie(o)/ie(t)));for(var u=Math.ceil(Math.log(r)/Math.LN2),f=u<=48?1:oe(2,u-48),c=b(r),l=y(c,t);F(l)||ge(l,o);)r-=f,c=b(r,e.unsigned),l=y(c,t);j(c)&&(c=X),i=B(i,c),o=$(o,l)}return i}function Nt(e){return w(~e.low,~e.high,e.unsigned)}function Pt(e,t){return N(t)&&(t=Y(t)),(t&=63)==0?e:t<32?w(e.low<>>32-t,e.unsigned):w(0,e.low<>>t|e.high<<32-t,e.high>>t,e.unsigned):w(e.high>>t-32,e.high>=0?0:-1,e.unsigned)}function Dt(e,t){if(N(t)&&(t=Y(t)),t&=63,t===0)return e;var n=e.high;if(t<32){var r=e.low;return w(r>>>t|n<<32-t,n>>>t,e.unsigned)}else return w(t===32?n:n>>>t-32,0,e.unsigned)}function Mt(e){return e.unsigned?e:w(e.low,e.high,!0)}function Lt(e,t){return t?Rt(e):At(e)}function Rt(e){var t=e.high,n=e.low;return[n&255,n>>>8&255,n>>>16&255,n>>>24,t&255,t>>>8&255,t>>>16&255,t>>>24]}function At(e){var t=e.high,n=e.low;return[t>>>24,t>>>16&255,t>>>8&255,t&255,n>>>24,n>>>16&255,n>>>8&255,n&255]}function jt(e,t,n){return n?xt(e,t):Tt(e,t)}function xt(e,t){return new O(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,t)}function Tt(e,t){return new O(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],t)}class J{constructor(t){this.value=t}toJSON(){return this.value}toString(){return String(this.value)}GetHashCode(){return ne(this.value)}Equals(t){return t==null?!1:Z(this.value,t instanceof J?t.value:t)}CompareTo(t){return t==null?1:he(this.value,t instanceof J?t.value:t)}}function pe(e){return e==null||e instanceof J?new J(e):e}function ue(e){if(e==null)throw new Error("Option has no value");return e instanceof J?e.value:e}function Te(e){return e==null?[]:[ue(e)]}function qt(e,...t){return{strs:e,args:t}}function Ht(e){throw new Error(e)}function Ut(e,t,n,r){const o=t|0;return e.fill(r,o,o+n)}function Vt(e,t,n){if(t==null)return n==null;if(n==null)return!1;{let r=0,o=!0;const i=t.length|0,s=n.length|0;if(i>s)return!1;if(i{e:for(;;){const o=n,s=r.tail;if(s!=null){n=o+1,r=s;continue e}else return o|0}})(0,e)|0}function Bt(e){if(e.tail!=null)return e.head;throw new Error(qe+"\\nParameter name: list")}function Jt(e){const t=e.tail;if(t!=null)return t;throw new Error(qe+"\\nParameter name: list")}function Kt(e){const t=Gt(e)|0,n=Ut(new Array(t),0,t,null);return((o,i)=>{e:for(;;){const s=o,u=i;if(!Wt(u)){n[s]=Bt(u),o=s+1,i=Jt(u);continue e}break}})(0,e),n}const Zt="Enumeration already finished.",zt="Enumeration has not started. Call MoveNext.",Xt="Reset is not supported on this enumerator.";function Yt(){throw new Error(Xt)}function Qt(){throw new Error(zt)}function $t(){throw new Error(Zt)}class en{constructor(t){this.f=t}toString(){const t=this,n=4;let r=0,o="seq [";const i=le(t);try{for(;r0&&(o=o+"; "),o=o+H(i["System.Collections.Generic.IEnumerator`1.get_Current"]()),r=r+1|0;return r===n&&(o=o+"; ..."),o+"]"}finally{i.Dispose()}}GetEnumerator(){return this.f()}[Symbol.iterator](){return $e(this.GetEnumerator())}["System.Collections.IEnumerable.GetEnumerator"](){return this.f()}}function tn(e){return new en(e)}class nn{constructor(t,n,r){this.current=t,this.next=n,this.dispose=r}["System.Collections.Generic.IEnumerator`1.get_Current"](){return this.current()}["System.Collections.IEnumerator.get_Current"](){return this.current()}["System.Collections.IEnumerator.MoveNext"](){return this.next()}["System.Collections.IEnumerator.Reset"](){Yt()}Dispose(){this.dispose()}}function rn(e,t,n){return new nn(e,t,n)}function on(e,t,n){let r=!1,o,i=pe(e());const s=()=>{if(i!=null){const f=ue(i);try{n(f)}finally{i=void 0}}},u=()=>{try{s()}finally{o=void 0}};return rn(()=>(r||Qt(),o!=null?ue(o):$t()),()=>{if(r||(r=!0),i!=null){const f=ue(i);let c;try{c=t(f)}catch(l){throw u(),l}return c!=null?(o=c,!0):(u(),!1)}else return!1},s)}function sn(e,t){t==null&&Ht(e)}function un(e){return tn(e)}function _e(e){return sn("source",e),le(e)}function cn(e,t,n){return un(()=>on(e,t,n))}function fn(e,t,n){const r=_e(n);try{let o=t;for(;r["System.Collections.IEnumerator.MoveNext"]();)o=e(o,r["System.Collections.Generic.IEnumerator`1.get_Current"]());return o}finally{r.Dispose()}}function ee(e,t){fn((n,r)=>{e(r)},void 0,t)}function ln(e,t,n){return cn(()=>[_e(t),_e(n)],r=>{const o=r[0],i=r[1];return(o["System.Collections.IEnumerator.MoveNext"]()?i["System.Collections.IEnumerator.MoveNext"]():!1)?pe(e(o["System.Collections.Generic.IEnumerator`1.get_Current"](),i["System.Collections.Generic.IEnumerator`1.get_Current"]())):void 0},r=>{try{r[0].Dispose()}finally{r[1].Dispose()}})}function an(e,t){return ln((n,r)=>[n,r],e,t)}function hn(e,t){setTimeout(t,e)}function He(e){hn(0,e)}class Ue extends at{constructor(t,...n){super();this.tag=t|0,this.fields=n}cases(){return["OnConnected","OnRender"]}}class Ve{constructor(t){this["host@80"]=t,this._firstRun=!0,this._rendering=!1,this._args=[],this._stateIndex=0,this._effectIndex=0,this._states=[],this._effects=[],this._disposables=[]}get host(){return this["host@80"]}fail(){throw new Error("Hooks must be called consistently for each render call")}requestUpdate(){this["host@80"].requestUpdate()}renderWith(t){const n=this;if(n._firstRun?!0:!Vt((r,o)=>Z(r,o),t,n._args))return n._args=t,n.render()}render(){const t=this;t._stateIndex=0,t._effectIndex=0,t._rendering=!0;const n=t["host@80"].renderFn.apply(t["host@80"],t._args);return(t._firstRun?!1:t._stateIndex!==t._states.length?!0:t._effectIndex!==t._effects.length)&&t.fail(),t._rendering=!1,t["host@80"].isConnected&&t.runEffects(t._firstRun,!0),t._firstRun=!1,n}checkRendering(){const t=this;t._rendering||t.fail()}runEffects(t,n){const r=this;He(()=>{ee(o=>{o.tag===0?t&&r._disposables.push(o.fields[0]()):n&&o.fields[0]()},r._effects)})}setState(t,n,r){let o,i;const s=this;o=n,i=s._states[t],!(ct(2,r)==null?Z(i,o):r(i,o))&&(s._states[t]=n,s._rendering?He(()=>{s["host@80"].requestUpdate()}):s["host@80"].requestUpdate())}getState(){const t=this;t._stateIndex>=t._states.length&&t.fail();const n=t._stateIndex|0;return t._stateIndex=n+1|0,[n,t._states[n]]}addState(t){const n=this;return n._states.push(t),[n._states.length-1,t]}disconnect(){const t=this;let n=le(t._disposables);try{for(;n["System.Collections.IEnumerator.MoveNext"]();)n["System.Collections.Generic.IEnumerator`1.get_Current"]().Dispose()}finally{n.Dispose()}ut(t._disposables)}useState(t){const n=this;n.checkRendering();const r=n._firstRun?n.addState(t()):n.getState();return[r[1],o=>{n.setState(r[0],o)}]}useRef(t){const n=this;return n.checkRendering(),n._firstRun?n.addState(new ht(t()))[1]:n.getState()[1]}setEffect(t){const n=this;if(n.checkRendering(),n._firstRun)n._effects.push(t);else{n._effectIndex>=n._effects.length&&n.fail();const r=n._effectIndex|0;n._effectIndex=r+1|0,n._effects[r]=t}}useEffect(t){this.setEffect(new Ue(1,t))}useEffectOnce(t){this.setEffect(new Ue(0,t))}}function gn(e){if(e==null?!0:!(e.hooks instanceof Ve))throw new Error("Cannot access hook context, make sure the hook is called on top of a HookComponent function");return e.hooks}function We(e){return e!=null}function Ge(){throw new Error("LitElement.init must be called on top of the render function")}function pn(e){throw new Error(`'${e}' field in \`props\` record is not of Prop<'T> type`)}class _n{constructor(t,n){this.defaultValue=t,this.options=n}}function wn(e){return[e.defaultValue,e.options]}class mn{constructor(){this._initPromise=null,this._useShadowDom=!0,this._props=null,this._styles=null}get props(){return this._props}set props(t){const n=this;n._props=t}get styles(){return this._styles}set styles(t){const n=this;n._styles=t}get useShadowDom(){return this._useShadowDom}set useShadowDom(t){const n=this;n._useShadowDom=t}init(t){const n=this;return n._initPromise=t(n),[null,null]}get hooks(){return Ge()}}function dn(){return new mn}function Be(e){return e._initPromise}class En extends Je{constructor(t){super();this._hooks=new Ve(this),t(this)}render(){return this._hooks.render()}disconnectedCallback(){const t=this;super.disconnectedCallback(),t._hooks.disconnect()}init(t){const n=this;return[n,n]}get hooks(){return this._hooks}}class Fn extends gt{constructor(t){super();this.name=t}Decorate(t){const n=this,r=dn();if(t.length>0)throw new Error("Render function for LitElement cannot take arguments");try{t.apply(r,[])}catch(i){}return Be(r)==null&&Ge(),Be(r).then(()=>{let i;const s=r,u=We(s.styles)?Kt(s.styles):void 0;let f;if(We(s.props)){const l=[],a={};ee(h=>{const p=h[0];let I;const _=h[1];I=_ instanceof _n?wn(_):pn(p);const d=I[0];a[p]=I[1],d!=null&&l.push([p,d])},(i=Object.values(s.props),an(Object.keys(s.props),i))),f=[pe(a),h=>{ee(p=>{h[p[0]]=p[1]},l)}]}else f=[void 0,l=>{}];const c=class extends En{constructor(){super(f[1])}get renderFn(){return t}};ee(l=>{Object.defineProperty(c,"properties",{get:()=>l})},Te(f[0])),ee(l=>{Object.defineProperty(c,"styles",{get:()=>l})},Te(u)),s.useShadowDom||(c.prototype.createRenderRoot=function(){return this}),customElements.define(n.name,c)}),()=>{throw new Error(`${n.name} is not immediately callable, it must be created in HTML`)}}}function vn(e,t){return e(t.strs,...t.args)}const bn=(()=>{const e=Ke;return t=>vn(e,t)})();function Sn(e){return e.value}function yn(e){throw new Error("A function supposed to be replaced by JS native code has been called, please check.")}yn();new Fn("login-app").Decorate(function(){this.init(n=>(n.useShadowDom=!1,Promise.resolve(void 0)));const e=gn(this).useState(()=>""),t=n=>{let r;const o=e[0].split("@");r=o.length===1?[o[0],"default"]:[o[0],o[1]];let i;const s=document.getElementById(r[1]);i=s==null?document.getElementById("default"):s;const u=i.attributes[0];u.value.indexOf("?")>=0?u.value=u.value+"&":u.value=u.value+"?",u.value=u.value+r[0],i.click()};return bn(qt`
-
-
{n.key==="Enter"&&t()}}>
-
-
-

-
- {e[1](Sn(n.target))}}>
-
-
- Next
-
-
-
-
-
- `)});
diff --git a/attic/values/dex/templates/dex/static/js/vendor.86e21c29.js b/attic/values/dex/templates/dex/static/js/vendor.86e21c29.js
deleted file mode 100644
index ad5c81cb..00000000
--- a/attic/values/dex/templates/dex/static/js/vendor.86e21c29.js
+++ /dev/null
@@ -1,1393 +0,0 @@
-var Xt=Object.defineProperty,Ze=Object.defineProperties,Je=Object.getOwnPropertyDescriptor,Ye=Object.getOwnPropertyDescriptors,Qt=Object.getOwnPropertySymbols,Ge=Object.prototype.hasOwnProperty,Xe=Object.prototype.propertyIsEnumerable,te=(t,e,r)=>e in t?Xt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,N=(t,e)=>{for(var r in e||(e={}))Ge.call(e,r)&&te(t,r,e[r]);if(Qt)for(var r of Qt(e))Xe.call(e,r)&&te(t,r,e[r]);return t},$t=(t,e)=>Ze(t,Ye(e)),a=(t,e,r,o)=>{for(var i=o>1?void 0:o?Je(e,r):e,s=t.length-1,n;s>=0;s--)(n=t[s])&&(i=(o?n(e,r,i):n(i))||i);return o&&i&&Xt(e,r,i),i},W=new WeakMap,ee=new WeakMap,K=new WeakMap,re=class{constructor(t,e){(this.host=t).addController(this),this.options=N({form:r=>r.closest("form"),name:r=>r.name,value:r=>r.value,defaultValue:r=>r.defaultValue,disabled:r=>{var o;return(o=r.disabled)!=null?o:!1},reportValidity:r=>typeof r.reportValidity=="function"?r.reportValidity():!0,setValue:(r,o)=>r.value=o},e),this.handleFormData=this.handleFormData.bind(this),this.handleFormSubmit=this.handleFormSubmit.bind(this),this.handleFormReset=this.handleFormReset.bind(this),this.reportFormValidity=this.reportFormValidity.bind(this),this.handleUserInput=this.handleUserInput.bind(this)}hostConnected(){this.form=this.options.form(this.host),this.form&&(W.has(this.form)?W.get(this.form).add(this.host):W.set(this.form,new Set([this.host])),this.form.addEventListener("formdata",this.handleFormData),this.form.addEventListener("submit",this.handleFormSubmit),this.form.addEventListener("reset",this.handleFormReset),K.has(this.form)||(K.set(this.form,this.form.reportValidity),this.form.reportValidity=()=>this.reportFormValidity())),this.host.addEventListener("sl-input",this.handleUserInput)}hostDisconnected(){var t;this.form&&((t=W.get(this.form))==null||t.delete(this.host),this.form.removeEventListener("formdata",this.handleFormData),this.form.removeEventListener("submit",this.handleFormSubmit),this.form.removeEventListener("reset",this.handleFormReset),K.has(this.form)&&(this.form.reportValidity=K.get(this.form),K.delete(this.form)),this.form=void 0),this.host.removeEventListener("sl-input",this.handleUserInput)}hostUpdated(){var t;const e=this.host,r=Boolean(ee.get(e)),o=Boolean(e.invalid),i=Boolean(e.required);((t=this.form)==null?void 0:t.noValidate)?(e.removeAttribute("data-required"),e.removeAttribute("data-optional"),e.removeAttribute("data-invalid"),e.removeAttribute("data-valid"),e.removeAttribute("data-user-invalid"),e.removeAttribute("data-user-valid")):(e.toggleAttribute("data-required",i),e.toggleAttribute("data-optional",!i),e.toggleAttribute("data-invalid",o),e.toggleAttribute("data-valid",!o),e.toggleAttribute("data-user-invalid",o&&r),e.toggleAttribute("data-user-valid",!o&&r))}handleFormData(t){const e=this.options.disabled(this.host),r=this.options.name(this.host),o=this.options.value(this.host),i=this.host.tagName.toLowerCase()==="sl-button";!e&&!i&&typeof r=="string"&&r.length>0&&typeof o!="undefined"&&(Array.isArray(o)?o.forEach(s=>{t.formData.append(r,s.toString())}):t.formData.append(r,o.toString()))}handleFormSubmit(t){var e;const r=this.options.disabled(this.host),o=this.options.reportValidity;this.form&&!this.form.noValidate&&((e=W.get(this.form))==null||e.forEach(i=>{this.setUserInteracted(i,!0)})),this.form&&!this.form.noValidate&&!r&&!o(this.host)&&(t.preventDefault(),t.stopImmediatePropagation())}handleFormReset(){this.options.setValue(this.host,this.options.defaultValue(this.host)),this.setUserInteracted(this.host,!1)}async handleUserInput(){await this.host.updateComplete,this.setUserInteracted(this.host,!0)}reportFormValidity(){if(this.form&&!this.form.noValidate){const t=this.form.querySelectorAll("*");for(const e of t)if(typeof e.reportValidity=="function"&&!e.reportValidity())return!1}return!0}setUserInteracted(t,e){ee.set(t,e),t.requestUpdate()}doAction(t,e){if(this.form){const r=document.createElement("button");r.type=t,r.style.position="absolute",r.style.width="0",r.style.height="0",r.style.clipPath="inset(50%)",r.style.overflow="hidden",r.style.whiteSpace="nowrap",e&&(r.name=e.name,r.value=e.value,["formaction","formenctype","formmethod","formnovalidate","formtarget"].forEach(o=>{e.hasAttribute(o)&&r.setAttribute(o,e.getAttribute(o))})),this.form.append(r),r.click(),r.remove()}}reset(t){this.doAction("reset",t)}submit(t){this.doAction("submit",t)}},ut=window,wt=ut.ShadowRoot&&(ut.ShadyCSS===void 0||ut.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,At=Symbol(),oe=new WeakMap,ie=class{constructor(t,e,r){if(this._$cssResult$=!0,r!==At)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(wt&&t===void 0){const r=e!==void 0&&e.length===1;r&&(t=oe.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),r&&oe.set(e,t))}return t}toString(){return this.cssText}},Qe=t=>new ie(typeof t=="string"?t:t+"",void 0,At),T=(t,...e)=>{const r=t.length===1?t[0]:e.reduce((o,i,s)=>o+(n=>{if(n._$cssResult$===!0)return n.cssText;if(typeof n=="number")return n;throw Error("Value passed to 'css' function must be a 'css' function result: "+n+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+t[s+1],t[0]);return new ie(r,t,At)},tr=(t,e)=>{wt?t.adoptedStyleSheets=e.map(r=>r instanceof CSSStyleSheet?r:r.styleSheet):e.forEach(r=>{const o=document.createElement("style"),i=ut.litNonce;i!==void 0&&o.setAttribute("nonce",i),o.textContent=r.cssText,t.appendChild(o)})},se=wt?t=>t:t=>t instanceof CSSStyleSheet?(e=>{let r="";for(const o of e.cssRules)r+=o.cssText;return Qe(r)})(t):t,xt,dt=window,ne=dt.trustedTypes,er=ne?ne.emptyScript:"",le=dt.reactiveElementPolyfillSupport,Z={toAttribute(t,e){switch(e){case Boolean:t=t?er:null;break;case Object:case Array:t=t==null?t:JSON.stringify(t)}return t},fromAttribute(t,e){let r=t;switch(e){case Boolean:r=t!==null;break;case Number:r=t===null?null:Number(t);break;case Object:case Array:try{r=JSON.parse(t)}catch(o){r=null}}return r}},ae=(t,e)=>e!==t&&(e==e||t==t),Et={attribute:!0,type:String,converter:Z,reflect:!1,hasChanged:ae},O=class extends HTMLElement{constructor(){super(),this._$Ei=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$El=null,this.u()}static addInitializer(t){var e;this.finalize(),((e=this.h)!==null&&e!==void 0?e:this.h=[]).push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach((e,r)=>{const o=this._$Ep(r,e);o!==void 0&&(this._$Ev.set(o,r),t.push(o))}),t}static createProperty(t,e=Et){if(e.state&&(e.attribute=!1),this.finalize(),this.elementProperties.set(t,e),!e.noAccessor&&!this.prototype.hasOwnProperty(t)){const r=typeof t=="symbol"?Symbol():"__"+t,o=this.getPropertyDescriptor(t,r,e);o!==void 0&&Object.defineProperty(this.prototype,t,o)}}static getPropertyDescriptor(t,e,r){return{get(){return this[e]},set(o){const i=this[t];this[e]=o,this.requestUpdate(t,i,r)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||Et}static finalize(){if(this.hasOwnProperty("finalized"))return!1;this.finalized=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),t.h!==void 0&&(this.h=[...t.h]),this.elementProperties=new Map(t.elementProperties),this._$Ev=new Map,this.hasOwnProperty("properties")){const e=this.properties,r=[...Object.getOwnPropertyNames(e),...Object.getOwnPropertySymbols(e)];for(const o of r)this.createProperty(o,e[o])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const r=new Set(t.flat(1/0).reverse());for(const o of r)e.unshift(se(o))}else t!==void 0&&e.push(se(t));return e}static _$Ep(t,e){const r=e.attribute;return r===!1?void 0:typeof r=="string"?r:typeof t=="string"?t.toLowerCase():void 0}u(){var t;this._$E_=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$Eg(),this.requestUpdate(),(t=this.constructor.h)===null||t===void 0||t.forEach(e=>e(this))}addController(t){var e,r;((e=this._$ES)!==null&&e!==void 0?e:this._$ES=[]).push(t),this.renderRoot!==void 0&&this.isConnected&&((r=t.hostConnected)===null||r===void 0||r.call(t))}removeController(t){var e;(e=this._$ES)===null||e===void 0||e.splice(this._$ES.indexOf(t)>>>0,1)}_$Eg(){this.constructor.elementProperties.forEach((t,e)=>{this.hasOwnProperty(e)&&(this._$Ei.set(e,this[e]),delete this[e])})}createRenderRoot(){var t;const e=(t=this.shadowRoot)!==null&&t!==void 0?t:this.attachShadow(this.constructor.shadowRootOptions);return tr(e,this.constructor.elementStyles),e}connectedCallback(){var t;this.renderRoot===void 0&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),(t=this._$ES)===null||t===void 0||t.forEach(e=>{var r;return(r=e.hostConnected)===null||r===void 0?void 0:r.call(e)})}enableUpdating(t){}disconnectedCallback(){var t;(t=this._$ES)===null||t===void 0||t.forEach(e=>{var r;return(r=e.hostDisconnected)===null||r===void 0?void 0:r.call(e)})}attributeChangedCallback(t,e,r){this._$AK(t,r)}_$EO(t,e,r=Et){var o;const i=this.constructor._$Ep(t,r);if(i!==void 0&&r.reflect===!0){const s=(((o=r.converter)===null||o===void 0?void 0:o.toAttribute)!==void 0?r.converter:Z).toAttribute(e,r.type);this._$El=t,s==null?this.removeAttribute(i):this.setAttribute(i,s),this._$El=null}}_$AK(t,e){var r;const o=this.constructor,i=o._$Ev.get(t);if(i!==void 0&&this._$El!==i){const s=o.getPropertyOptions(i),n=typeof s.converter=="function"?{fromAttribute:s.converter}:((r=s.converter)===null||r===void 0?void 0:r.fromAttribute)!==void 0?s.converter:Z;this._$El=i,this[i]=n.fromAttribute(e,s.type),this._$El=null}}requestUpdate(t,e,r){let o=!0;t!==void 0&&(((r=r||this.constructor.getPropertyOptions(t)).hasChanged||ae)(this[t],e)?(this._$AL.has(t)||this._$AL.set(t,e),r.reflect===!0&&this._$El!==t&&(this._$EC===void 0&&(this._$EC=new Map),this._$EC.set(t,r))):o=!1),!this.isUpdatePending&&o&&(this._$E_=this._$Ej())}async _$Ej(){this.isUpdatePending=!0;try{await this._$E_}catch(e){Promise.reject(e)}const t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Ei&&(this._$Ei.forEach((o,i)=>this[i]=o),this._$Ei=void 0);let e=!1;const r=this._$AL;try{e=this.shouldUpdate(r),e?(this.willUpdate(r),(t=this._$ES)===null||t===void 0||t.forEach(o=>{var i;return(i=o.hostUpdate)===null||i===void 0?void 0:i.call(o)}),this.update(r)):this._$Ek()}catch(o){throw e=!1,this._$Ek(),o}e&&this._$AE(r)}willUpdate(t){}_$AE(t){var e;(e=this._$ES)===null||e===void 0||e.forEach(r=>{var o;return(o=r.hostUpdated)===null||o===void 0?void 0:o.call(r)}),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$Ek(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$E_}shouldUpdate(t){return!0}update(t){this._$EC!==void 0&&(this._$EC.forEach((e,r)=>this._$EO(r,this[r],e)),this._$EC=void 0),this._$Ek()}updated(t){}firstUpdated(t){}};O.finalized=!0,O.elementProperties=new Map,O.elementStyles=[],O.shadowRootOptions={mode:"open"},le==null||le({ReactiveElement:O}),((xt=dt.reactiveElementVersions)!==null&&xt!==void 0?xt:dt.reactiveElementVersions=[]).push("1.4.2");var St,ct=window,L=ct.trustedTypes,ue=L?L.createPolicy("lit-html",{createHTML:t=>t}):void 0,E=`lit$${(Math.random()+"").slice(9)}$`,de="?"+E,rr=`<${de}>`,M=document,J=(t="")=>M.createComment(t),Y=t=>t===null||typeof t!="object"&&typeof t!="function",ce=Array.isArray,or=t=>ce(t)||typeof(t==null?void 0:t[Symbol.iterator])=="function",G=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,he=/-->/g,pe=/>/g,z=RegExp(`>|[
-\f\r](?:([^\\s"'>=/]+)([
-\f\r]*=[
-\f\r]*(?:[^
-\f\r"'\`<>=]|("|')|))|$)`,"g"),ve=/'/g,be=/"/g,fe=/^(?:script|style|textarea|title)$/i,ir=t=>(e,...r)=>({_$litType$:t,strings:e,values:r}),x=ir(1),w=Symbol.for("lit-noChange"),m=Symbol.for("lit-nothing"),me=new WeakMap,B=M.createTreeWalker(M,129,null,!1),sr=(t,e)=>{const r=t.length-1,o=[];let i,s=e===2?"":"");if(!Array.isArray(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return[ue!==void 0?ue.createHTML(d):d,o]},ht=class{constructor({strings:t,_$litType$:e},r){let o;this.parts=[];let i=0,s=0;const n=t.length-1,d=this.parts,[l,u]=sr(t,e);if(this.el=ht.createElement(l,r),B.currentNode=this.el.content,e===2){const b=this.el.content,c=b.firstChild;c.remove(),b.append(...c.childNodes)}for(;(o=B.nextNode())!==null&&d.length0){o.textContent=L?L.emptyScript:"";for(let v=0;v2||r[0]!==""||r[1]!==""?(this._$AH=Array(r.length-1).fill(new String),this.strings=r):this._$AH=m}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,r,o){const i=this.strings;let s=!1;if(i===void 0)t=H(this,t,e,0),s=!Y(t)||t!==this._$AH&&t!==w,s&&(this._$AH=t);else{const n=t;let d,l;for(t=i[0],d=0;d{var o,i;const s=(o=r==null?void 0:r.renderBefore)!==null&&o!==void 0?o:e;let n=s._$litPart$;if(n===void 0){const d=(i=r==null?void 0:r.renderBefore)!==null&&i!==void 0?i:null;s._$litPart$=n=new pt(e.insertBefore(J(),d),d,void 0,r!=null?r:{})}return n._$AI(t),n},Ct,kt,X=class extends O{constructor(){super(...arguments),this.renderOptions={host:this},this._$Dt=void 0}createRenderRoot(){var t,e;const r=super.createRenderRoot();return(t=(e=this.renderOptions).renderBefore)!==null&&t!==void 0||(e.renderBefore=r.firstChild),r}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Dt=hr(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),(t=this._$Dt)===null||t===void 0||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._$Dt)===null||t===void 0||t.setConnected(!1)}render(){return w}};X.finalized=!0,X._$litElement$=!0,(Ct=globalThis.litElementHydrateSupport)===null||Ct===void 0||Ct.call(globalThis,{LitElement:X});var _e=globalThis.litElementPolyfillSupport;_e==null||_e({LitElement:X});((kt=globalThis.litElementVersions)!==null&&kt!==void 0?kt:globalThis.litElementVersions=[]).push("3.2.0");/**
- * @license
- * Copyright 2017 Google LLC
- * SPDX-License-Identifier: BSD-3-Clause
- *//**
- * @license
- * Copyright 2019 Google LLC
- * SPDX-License-Identifier: BSD-3-Clause
- *//**
- * @license
- * Copyright 2022 Google LLC
- * SPDX-License-Identifier: BSD-3-Clause
- */var Q=T`
- :host {
- box-sizing: border-box;
- }
-
- :host *,
- :host *::before,
- :host *::after {
- box-sizing: inherit;
- }
-
- [hidden] {
- display: none !important;
- }
-`,pr=T`
- ${Q}
-
- :host {
- display: inline-block;
- position: relative;
- width: auto;
- cursor: pointer;
- }
-
- .button {
- display: inline-flex;
- align-items: stretch;
- justify-content: center;
- width: 100%;
- border-style: solid;
- border-width: var(--sl-input-border-width);
- font-family: var(--sl-input-font-family);
- font-weight: var(--sl-font-weight-semibold);
- text-decoration: none;
- user-select: none;
- white-space: nowrap;
- vertical-align: middle;
- padding: 0;
- transition: var(--sl-transition-x-fast) background-color, var(--sl-transition-x-fast) color,
- var(--sl-transition-x-fast) border, var(--sl-transition-x-fast) box-shadow;
- cursor: inherit;
- }
-
- .button::-moz-focus-inner {
- border: 0;
- }
-
- .button:focus {
- outline: none;
- }
-
- .button:focus-visible {
- outline: var(--sl-focus-ring);
- outline-offset: var(--sl-focus-ring-offset);
- }
-
- .button--disabled {
- opacity: 0.5;
- cursor: not-allowed;
- }
-
- /* When disabled, prevent mouse events from bubbling up */
- .button--disabled * {
- pointer-events: none;
- }
-
- .button__prefix,
- .button__suffix {
- flex: 0 0 auto;
- display: flex;
- align-items: center;
- pointer-events: none;
- }
-
- .button__label {
- display: inline-block;
- }
-
- .button__label::slotted(sl-icon) {
- vertical-align: -2px;
- }
-
- /*
- * Standard buttons
- */
-
- /* Default */
- .button--standard.button--default {
- background-color: var(--sl-color-neutral-0);
- border-color: var(--sl-color-neutral-300);
- color: var(--sl-color-neutral-700);
- }
-
- .button--standard.button--default:hover:not(.button--disabled) {
- background-color: var(--sl-color-primary-50);
- border-color: var(--sl-color-primary-300);
- color: var(--sl-color-primary-700);
- }
-
- .button--standard.button--default:active:not(.button--disabled) {
- background-color: var(--sl-color-primary-100);
- border-color: var(--sl-color-primary-400);
- color: var(--sl-color-primary-700);
- }
-
- /* Primary */
- .button--standard.button--primary {
- background-color: var(--sl-color-primary-600);
- border-color: var(--sl-color-primary-600);
- color: var(--sl-color-neutral-0);
- }
-
- .button--standard.button--primary:hover:not(.button--disabled) {
- background-color: var(--sl-color-primary-500);
- border-color: var(--sl-color-primary-500);
- color: var(--sl-color-neutral-0);
- }
-
- .button--standard.button--primary:active:not(.button--disabled) {
- background-color: var(--sl-color-primary-600);
- border-color: var(--sl-color-primary-600);
- color: var(--sl-color-neutral-0);
- }
-
- /* Success */
- .button--standard.button--success {
- background-color: var(--sl-color-success-600);
- border-color: var(--sl-color-success-600);
- color: var(--sl-color-neutral-0);
- }
-
- .button--standard.button--success:hover:not(.button--disabled) {
- background-color: var(--sl-color-success-500);
- border-color: var(--sl-color-success-500);
- color: var(--sl-color-neutral-0);
- }
-
- .button--standard.button--success:active:not(.button--disabled) {
- background-color: var(--sl-color-success-600);
- border-color: var(--sl-color-success-600);
- color: var(--sl-color-neutral-0);
- }
-
- /* Neutral */
- .button--standard.button--neutral {
- background-color: var(--sl-color-neutral-600);
- border-color: var(--sl-color-neutral-600);
- color: var(--sl-color-neutral-0);
- }
-
- .button--standard.button--neutral:hover:not(.button--disabled) {
- background-color: var(--sl-color-neutral-500);
- border-color: var(--sl-color-neutral-500);
- color: var(--sl-color-neutral-0);
- }
-
- .button--standard.button--neutral:active:not(.button--disabled) {
- background-color: var(--sl-color-neutral-600);
- border-color: var(--sl-color-neutral-600);
- color: var(--sl-color-neutral-0);
- }
-
- /* Warning */
- .button--standard.button--warning {
- background-color: var(--sl-color-warning-600);
- border-color: var(--sl-color-warning-600);
- color: var(--sl-color-neutral-0);
- }
- .button--standard.button--warning:hover:not(.button--disabled) {
- background-color: var(--sl-color-warning-500);
- border-color: var(--sl-color-warning-500);
- color: var(--sl-color-neutral-0);
- }
-
- .button--standard.button--warning:active:not(.button--disabled) {
- background-color: var(--sl-color-warning-600);
- border-color: var(--sl-color-warning-600);
- color: var(--sl-color-neutral-0);
- }
-
- /* Danger */
- .button--standard.button--danger {
- background-color: var(--sl-color-danger-600);
- border-color: var(--sl-color-danger-600);
- color: var(--sl-color-neutral-0);
- }
-
- .button--standard.button--danger:hover:not(.button--disabled) {
- background-color: var(--sl-color-danger-500);
- border-color: var(--sl-color-danger-500);
- color: var(--sl-color-neutral-0);
- }
-
- .button--standard.button--danger:active:not(.button--disabled) {
- background-color: var(--sl-color-danger-600);
- border-color: var(--sl-color-danger-600);
- color: var(--sl-color-neutral-0);
- }
-
- /*
- * Outline buttons
- */
-
- .button--outline {
- background: none;
- border: solid 1px;
- }
-
- /* Default */
- .button--outline.button--default {
- border-color: var(--sl-color-neutral-300);
- color: var(--sl-color-neutral-700);
- }
-
- .button--outline.button--default:hover:not(.button--disabled),
- .button--outline.button--default.button--checked:not(.button--disabled) {
- border-color: var(--sl-color-primary-600);
- background-color: var(--sl-color-primary-600);
- color: var(--sl-color-neutral-0);
- }
-
- .button--outline.button--default:active:not(.button--disabled) {
- border-color: var(--sl-color-primary-700);
- background-color: var(--sl-color-primary-700);
- color: var(--sl-color-neutral-0);
- }
-
- /* Primary */
- .button--outline.button--primary {
- border-color: var(--sl-color-primary-600);
- color: var(--sl-color-primary-600);
- }
-
- .button--outline.button--primary:hover:not(.button--disabled),
- .button--outline.button--primary.button--checked:not(.button--disabled) {
- background-color: var(--sl-color-primary-600);
- color: var(--sl-color-neutral-0);
- }
-
- .button--outline.button--primary:active:not(.button--disabled) {
- border-color: var(--sl-color-primary-700);
- background-color: var(--sl-color-primary-700);
- color: var(--sl-color-neutral-0);
- }
-
- /* Success */
- .button--outline.button--success {
- border-color: var(--sl-color-success-600);
- color: var(--sl-color-success-600);
- }
-
- .button--outline.button--success:hover:not(.button--disabled),
- .button--outline.button--success.button--checked:not(.button--disabled) {
- background-color: var(--sl-color-success-600);
- color: var(--sl-color-neutral-0);
- }
-
- .button--outline.button--success:active:not(.button--disabled) {
- border-color: var(--sl-color-success-700);
- background-color: var(--sl-color-success-700);
- color: var(--sl-color-neutral-0);
- }
-
- /* Neutral */
- .button--outline.button--neutral {
- border-color: var(--sl-color-neutral-600);
- color: var(--sl-color-neutral-600);
- }
-
- .button--outline.button--neutral:hover:not(.button--disabled),
- .button--outline.button--neutral.button--checked:not(.button--disabled) {
- background-color: var(--sl-color-neutral-600);
- color: var(--sl-color-neutral-0);
- }
-
- .button--outline.button--neutral:active:not(.button--disabled) {
- border-color: var(--sl-color-neutral-700);
- background-color: var(--sl-color-neutral-700);
- color: var(--sl-color-neutral-0);
- }
-
- /* Warning */
- .button--outline.button--warning {
- border-color: var(--sl-color-warning-600);
- color: var(--sl-color-warning-600);
- }
-
- .button--outline.button--warning:hover:not(.button--disabled),
- .button--outline.button--warning.button--checked:not(.button--disabled) {
- background-color: var(--sl-color-warning-600);
- color: var(--sl-color-neutral-0);
- }
-
- .button--outline.button--warning:active:not(.button--disabled) {
- border-color: var(--sl-color-warning-700);
- background-color: var(--sl-color-warning-700);
- color: var(--sl-color-neutral-0);
- }
-
- /* Danger */
- .button--outline.button--danger {
- border-color: var(--sl-color-danger-600);
- color: var(--sl-color-danger-600);
- }
-
- .button--outline.button--danger:hover:not(.button--disabled),
- .button--outline.button--danger.button--checked:not(.button--disabled) {
- background-color: var(--sl-color-danger-600);
- color: var(--sl-color-neutral-0);
- }
-
- .button--outline.button--danger:active:not(.button--disabled) {
- border-color: var(--sl-color-danger-700);
- background-color: var(--sl-color-danger-700);
- color: var(--sl-color-neutral-0);
- }
-
- @media (forced-colors: active) {
- .button.button--outline.button--checked:not(.button--disabled) {
- outline: solid 2px transparent;
- }
- }
-
- /*
- * Text buttons
- */
-
- .button--text {
- background-color: transparent;
- border-color: transparent;
- color: var(--sl-color-primary-600);
- }
-
- .button--text:hover:not(.button--disabled) {
- background-color: transparent;
- border-color: transparent;
- color: var(--sl-color-primary-500);
- }
-
- .button--text:focus-visible:not(.button--disabled) {
- background-color: transparent;
- border-color: transparent;
- color: var(--sl-color-primary-500);
- }
-
- .button--text:active:not(.button--disabled) {
- background-color: transparent;
- border-color: transparent;
- color: var(--sl-color-primary-700);
- }
-
- /*
- * Size modifiers
- */
-
- .button--small {
- font-size: var(--sl-button-font-size-small);
- height: var(--sl-input-height-small);
- line-height: calc(var(--sl-input-height-small) - var(--sl-input-border-width) * 2);
- border-radius: var(--sl-input-border-radius-small);
- }
-
- .button--medium {
- font-size: var(--sl-button-font-size-medium);
- height: var(--sl-input-height-medium);
- line-height: calc(var(--sl-input-height-medium) - var(--sl-input-border-width) * 2);
- border-radius: var(--sl-input-border-radius-medium);
- }
-
- .button--large {
- font-size: var(--sl-button-font-size-large);
- height: var(--sl-input-height-large);
- line-height: calc(var(--sl-input-height-large) - var(--sl-input-border-width) * 2);
- border-radius: var(--sl-input-border-radius-large);
- }
-
- /*
- * Pill modifier
- */
-
- .button--pill.button--small {
- border-radius: var(--sl-input-height-small);
- }
-
- .button--pill.button--medium {
- border-radius: var(--sl-input-height-medium);
- }
-
- .button--pill.button--large {
- border-radius: var(--sl-input-height-large);
- }
-
- /*
- * Circle modifier
- */
-
- .button--circle {
- padding-left: 0;
- padding-right: 0;
- }
-
- .button--circle.button--small {
- width: var(--sl-input-height-small);
- border-radius: 50%;
- }
-
- .button--circle.button--medium {
- width: var(--sl-input-height-medium);
- border-radius: 50%;
- }
-
- .button--circle.button--large {
- width: var(--sl-input-height-large);
- border-radius: 50%;
- }
-
- .button--circle .button__prefix,
- .button--circle .button__suffix,
- .button--circle .button__caret {
- display: none;
- }
-
- /*
- * Caret modifier
- */
-
- .button--caret .button__suffix {
- display: none;
- }
-
- .button--caret .button__caret {
- height: auto;
- }
-
- /*
- * Loading modifier
- */
-
- .button--loading {
- position: relative;
- cursor: wait;
- }
-
- .button--loading .button__prefix,
- .button--loading .button__label,
- .button--loading .button__suffix,
- .button--loading .button__caret {
- visibility: hidden;
- }
-
- .button--loading sl-spinner {
- --indicator-color: currentColor;
- position: absolute;
- font-size: 1em;
- height: 1em;
- width: 1em;
- top: calc(50% - 0.5em);
- left: calc(50% - 0.5em);
- }
-
- /*
- * Badges
- */
-
- .button ::slotted(sl-badge) {
- position: absolute;
- top: 0;
- right: 0;
- translate: 50% -50%;
- pointer-events: none;
- }
-
- .button--rtl ::slotted(sl-badge) {
- right: auto;
- left: 0;
- translate: -50% -50%;
- }
-
- /*
- * Button spacing
- */
-
- .button--has-label.button--small .button__label {
- padding: 0 var(--sl-spacing-small);
- }
-
- .button--has-label.button--medium .button__label {
- padding: 0 var(--sl-spacing-medium);
- }
-
- .button--has-label.button--large .button__label {
- padding: 0 var(--sl-spacing-large);
- }
-
- .button--has-prefix.button--small {
- padding-inline-start: var(--sl-spacing-x-small);
- }
-
- .button--has-prefix.button--small .button__label {
- padding-inline-start: var(--sl-spacing-x-small);
- }
-
- .button--has-prefix.button--medium {
- padding-inline-start: var(--sl-spacing-small);
- }
-
- .button--has-prefix.button--medium .button__label {
- padding-inline-start: var(--sl-spacing-small);
- }
-
- .button--has-prefix.button--large {
- padding-inline-start: var(--sl-spacing-small);
- }
-
- .button--has-prefix.button--large .button__label {
- padding-inline-start: var(--sl-spacing-small);
- }
-
- .button--has-suffix.button--small,
- .button--caret.button--small {
- padding-inline-end: var(--sl-spacing-x-small);
- }
-
- .button--has-suffix.button--small .button__label,
- .button--caret.button--small .button__label {
- padding-inline-end: var(--sl-spacing-x-small);
- }
-
- .button--has-suffix.button--medium,
- .button--caret.button--medium {
- padding-inline-end: var(--sl-spacing-small);
- }
-
- .button--has-suffix.button--medium .button__label,
- .button--caret.button--medium .button__label {
- padding-inline-end: var(--sl-spacing-small);
- }
-
- .button--has-suffix.button--large,
- .button--caret.button--large {
- padding-inline-end: var(--sl-spacing-small);
- }
-
- .button--has-suffix.button--large .button__label,
- .button--caret.button--large .button__label {
- padding-inline-end: var(--sl-spacing-small);
- }
-
- /*
- * Button groups support a variety of button types (e.g. buttons with tooltips, buttons as dropdown triggers, etc.).
- * This means buttons aren't always direct descendants of the button group, thus we can't target them with the
- * ::slotted selector. To work around this, the button group component does some magic to add these special classes to
- * buttons and we style them here instead.
- */
-
- :host(.sl-button-group__button--first:not(.sl-button-group__button--last)) .button {
- border-start-end-radius: 0;
- border-end-end-radius: 0;
- }
-
- :host(.sl-button-group__button--inner) .button {
- border-radius: 0;
- }
-
- :host(.sl-button-group__button--last:not(.sl-button-group__button--first)) .button {
- border-start-start-radius: 0;
- border-end-start-radius: 0;
- }
-
- /* All except the first */
- :host(.sl-button-group__button:not(.sl-button-group__button--first)) {
- margin-inline-start: calc(-1 * var(--sl-input-border-width));
- }
-
- /* Add a visual separator between solid buttons */
- :host(.sl-button-group__button:not(.sl-button-group__button--first, .sl-button-group__button--radio, [variant='default']):not(:hover))
- .button:after {
- content: '';
- position: absolute;
- top: 0;
- inset-inline-start: 0;
- bottom: 0;
- border-left: solid 1px rgb(128 128 128 / 33%);
- mix-blend-mode: multiply;
- }
-
- /* Bump hovered, focused, and checked buttons up so their focus ring isn't clipped */
- :host(.sl-button-group__button--hover) {
- z-index: 1;
- }
-
- /* Focus and checked are always on top */
- :host(.sl-button-group__button--focus),
- :host(.sl-button-group__button[checked]) {
- z-index: 2;
- }
-`,ye=Symbol.for(""),vr=t=>{if((t==null?void 0:t.r)===ye)return t==null?void 0:t._$litStatic$},$e=(t,...e)=>({_$litStatic$:e.reduce((r,o,i)=>r+(s=>{if(s._$litStatic$!==void 0)return s._$litStatic$;throw Error(`Value passed to 'literal' function must be a 'literal' result: ${s}. Use 'unsafeStatic' to pass non-literal values, but
- take care to ensure page security.`)})(o)+t[i+1],t[0]),r:ye}),we=new Map,br=t=>(e,...r)=>{const o=r.length;let i,s;const n=[],d=[];let l,u=0,b=!1;for(;u{const r=e.$code.toLowerCase();R.has(r)?R.set(r,Object.assign(Object.assign({},R.get(r)),e)):R.set(r,e),tt||(tt=e)}),Ee()}function Ee(){Ae=document.documentElement.dir||"ltr",xe=document.documentElement.lang||navigator.language,[...zt.keys()].map(t=>{typeof t.requestUpdate=="function"&&t.requestUpdate()})}var gr=class{constructor(t){this.host=t,this.host.addController(this)}hostConnected(){zt.add(this.host)}hostDisconnected(){zt.delete(this.host)}dir(){return`${this.host.dir||Ae}`.toLowerCase()}lang(){return`${this.host.lang||xe}`.toLowerCase()}term(t,...e){var r,o;const i=new Intl.Locale(this.lang()),s=i==null?void 0:i.language.toLowerCase(),n=(o=(r=i==null?void 0:i.region)===null||r===void 0?void 0:r.toLowerCase())!==null&&o!==void 0?o:"",d=R.get(`${s}-${n}`),l=R.get(s);let u;if(d&&d[t])u=d[t];else if(l&&l[t])u=l[t];else if(tt&&tt[t])u=tt[t];else return console.error(`No translation found for: ${String(t)}`),String(t);return typeof u=="function"?u(...e):u}date(t,e){return t=new Date(t),new Intl.DateTimeFormat(this.lang(),e).format(t)}number(t,e){return t=Number(t),isNaN(t)?"":new Intl.NumberFormat(this.lang(),e).format(t)}relativeTime(t,e,r){return new Intl.RelativeTimeFormat(this.lang(),r).format(t,e)}},Pt=class extends gr{},_r={$code:"en",$name:"English",$dir:"ltr",clearEntry:"Clear entry",close:"Close",copy:"Copy",numOptionsSelected:t=>t===0?"No options selected":t===1?"1 option selected":`${t} options selected`,currentValue:"Current value",hidePassword:"Hide password",loading:"Loading",progress:"Progress",remove:"Remove",resize:"Resize",scrollToEnd:"Scroll to end",scrollToStart:"Scroll to start",selectAColorFromTheScreen:"Select a color from the screen",showPassword:"Show password",toggleColorFormat:"Toggle color format"};mr(_r);var Ut=class{constructor(t,...e){this.slotNames=[],(this.host=t).addController(this),this.slotNames=e,this.handleSlotChange=this.handleSlotChange.bind(this)}hasDefaultSlot(){return[...this.host.childNodes].some(t=>{if(t.nodeType===t.TEXT_NODE&&t.textContent.trim()!=="")return!0;if(t.nodeType===t.ELEMENT_NODE){const e=t;if(e.tagName.toLowerCase()==="sl-visually-hidden")return!1;if(!e.hasAttribute("slot"))return!0}return!1})}hasNamedSlot(t){return this.host.querySelector(`:scope > [slot="${t}"]`)!==null}test(t){return t==="[default]"?this.hasDefaultSlot():this.hasNamedSlot(t)}hostConnected(){this.host.shadowRoot.addEventListener("slotchange",this.handleSlotChange)}hostDisconnected(){this.host.shadowRoot.removeEventListener("slotchange",this.handleSlotChange)}handleSlotChange(t){const e=t.target;(this.slotNames.includes("[default]")&&!e.name||e.name&&this.slotNames.includes(e.name))&&this.host.requestUpdate()}},g=t=>t!=null?t:m;/**
- * @license
- * Copyright 2018 Google LLC
- * SPDX-License-Identifier: BSD-3-Clause
- */var S={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Nt=t=>(...e)=>({_$litDirective$:t,values:e}),Ot=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,r){this._$Ct=t,this._$AM=e,this._$Ci=r}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};/**
- * @license
- * Copyright 2017 Google LLC
- * SPDX-License-Identifier: BSD-3-Clause
- */var bt=Nt(class extends Ot{constructor(t){var e;if(super(t),t.type!==S.ATTRIBUTE||t.name!=="class"||((e=t.strings)===null||e===void 0?void 0:e.length)>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(t){return" "+Object.keys(t).filter(e=>t[e]).join(" ")+" "}update(t,[e]){var r,o;if(this.nt===void 0){this.nt=new Set,t.strings!==void 0&&(this.st=new Set(t.strings.join(" ").split(/\s/).filter(s=>s!=="")));for(const s in e)e[s]&&!((r=this.st)===null||r===void 0?void 0:r.has(s))&&this.nt.add(s);return this.render(e)}const i=t.element.classList;this.nt.forEach(s=>{s in e||(i.remove(s),this.nt.delete(s))});for(const s in e){const n=!!e[s];n===this.nt.has(s)||((o=this.st)===null||o===void 0?void 0:o.has(s))||(n?(i.add(s),this.nt.add(s)):(i.remove(s),this.nt.delete(s)))}return w}});/**
- * @license
- * Copyright 2018 Google LLC
- * SPDX-License-Identifier: BSD-3-Clause
- */function C(t,e){const r=N({waitUntilFirstUpdate:!1},e);return(o,i)=>{const{update:s}=o;if(t in o){const n=t;o.update=function(d){if(d.has(n)){const l=d.get(n),u=this[n];l!==u&&(!r.waitUntilFirstUpdate||this.hasUpdated)&&this[i](l,u)}s.call(this,d)}}}}var et=t=>e=>typeof e=="function"?((r,o)=>(customElements.define(r,o),o))(t,e):((r,o)=>{const{kind:i,elements:s}=o;return{kind:i,elements:s,finisher(n){customElements.define(r,n)}}})(t,e),yr=(t,e)=>e.kind==="method"&&e.descriptor&&!("value"in e.descriptor)?$t(N({},e),{finisher(r){r.createProperty(e.key,t)}}):{kind:"field",key:Symbol(),placement:"own",descriptor:{},originalKey:e.key,initializer(){typeof e.initializer=="function"&&(this[e.key]=e.initializer.call(this))},finisher(r){r.createProperty(e.key,t)}};function h(t){return(e,r)=>r!==void 0?((o,i,s)=>{i.constructor.createProperty(s,o)})(t,e,r):yr(t,e)}function rt(t){return h($t(N({},t),{state:!0}))}var $r=({finisher:t,descriptor:e})=>(r,o)=>{var i;if(o===void 0){const s=(i=r.originalKey)!==null&&i!==void 0?i:r.key,n=e!=null?{kind:"method",placement:"prototype",key:s,descriptor:e(r.key)}:$t(N({},r),{key:s});return t!=null&&(n.finisher=function(d){t(d,s)}),n}{const s=r.constructor;e!==void 0&&Object.defineProperty(r,o,e(o)),t==null||t(s,o)}};function Se(t,e){return $r({descriptor:r=>{const o={get(){var i,s;return(s=(i=this.renderRoot)===null||i===void 0?void 0:i.querySelector(t))!==null&&s!==void 0?s:null},enumerable:!0,configurable:!0};if(e){const i=typeof r=="symbol"?Symbol():"__"+r;o.get=function(){var s,n;return this[i]===void 0&&(this[i]=(n=(s=this.renderRoot)===null||s===void 0?void 0:s.querySelector(t))!==null&&n!==void 0?n:null),this[i]}}return o}})}var Lt;((Lt=window.HTMLSlotElement)===null||Lt===void 0?void 0:Lt.prototype.assignedElements)!=null;var P=class extends X{emit(t,e){const r=new CustomEvent(t,N({bubbles:!0,cancelable:!1,composed:!0,detail:{}},e));return this.dispatchEvent(r),r}};a([h()],P.prototype,"dir",2);a([h()],P.prototype,"lang",2);/**
- * @license
- * Copyright 2017 Google LLC
- * SPDX-License-Identifier: BSD-3-Clause
- *//**
- * @license
- * Copyright 2021 Google LLC
- * SPDX-License-Identifier: BSD-3-Clause
- */var f=class extends P{constructor(){super(...arguments);this.formSubmitController=new re(this,{form:t=>{if(t.hasAttribute("form")){const e=t.getRootNode(),r=t.getAttribute("form");return e.getElementById(r)}return t.closest("form")}}),this.hasSlotController=new Ut(this,"[default]","prefix","suffix"),this.localize=new Pt(this),this.hasFocus=!1,this.invalid=!1,this.title="",this.variant="default",this.size="medium",this.caret=!1,this.disabled=!1,this.loading=!1,this.outline=!1,this.pill=!1,this.circle=!1,this.type="button",this.name="",this.value="",this.href=""}firstUpdated(){this.isButton()&&(this.invalid=!this.button.checkValidity())}handleBlur(){this.hasFocus=!1,this.emit("sl-blur")}handleFocus(){this.hasFocus=!0,this.emit("sl-focus")}handleClick(t){if(this.disabled||this.loading){t.preventDefault(),t.stopPropagation();return}this.type==="submit"&&this.formSubmitController.submit(this),this.type==="reset"&&this.formSubmitController.reset(this)}isButton(){return!this.href}isLink(){return!!this.href}handleDisabledChange(){this.isButton()&&(this.button.disabled=this.disabled,this.invalid=!this.button.checkValidity())}click(){this.button.click()}focus(t){this.button.focus(t)}blur(){this.button.blur()}checkValidity(){return this.isButton()?this.button.checkValidity():!0}reportValidity(){return this.isButton()?this.button.reportValidity():!0}setCustomValidity(t){this.isButton()&&(this.button.setCustomValidity(t),this.invalid=!this.button.checkValidity())}render(){const t=this.isLink(),e=t?$e`a`:$e`button`;return Tt`
- <${e}
- part="base"
- class=${bt({button:!0,"button--default":this.variant==="default","button--primary":this.variant==="primary","button--success":this.variant==="success","button--neutral":this.variant==="neutral","button--warning":this.variant==="warning","button--danger":this.variant==="danger","button--text":this.variant==="text","button--small":this.size==="small","button--medium":this.size==="medium","button--large":this.size==="large","button--caret":this.caret,"button--circle":this.circle,"button--disabled":this.disabled,"button--focused":this.hasFocus,"button--loading":this.loading,"button--standard":!this.outline,"button--outline":this.outline,"button--pill":this.pill,"button--rtl":this.localize.dir()==="rtl","button--has-label":this.hasSlotController.test("[default]"),"button--has-prefix":this.hasSlotController.test("prefix"),"button--has-suffix":this.hasSlotController.test("suffix")})}
- ?disabled=${g(t?void 0:this.disabled)}
- type=${g(t?void 0:this.type)}
- title=${this.title}
- name=${g(t?void 0:this.name)}
- value=${g(t?void 0:this.value)}
- href=${g(t?this.href:void 0)}
- target=${g(t?this.target:void 0)}
- download=${g(t?this.download:void 0)}
- rel=${g(t&&this.target?"noreferrer noopener":void 0)}
- role=${g(t?void 0:"button")}
- aria-disabled=${this.disabled?"true":"false"}
- tabindex=${this.disabled?"-1":"0"}
- @blur=${this.handleBlur}
- @focus=${this.handleFocus}
- @click=${this.handleClick}
- >
-
-
-
- ${this.caret?Tt` `:""}
- ${this.loading?Tt``:""}
- ${e}>
- `}};f.styles=pr;a([Se(".button")],f.prototype,"button",2);a([rt()],f.prototype,"hasFocus",2);a([rt()],f.prototype,"invalid",2);a([h()],f.prototype,"title",2);a([h({reflect:!0})],f.prototype,"variant",2);a([h({reflect:!0})],f.prototype,"size",2);a([h({type:Boolean,reflect:!0})],f.prototype,"caret",2);a([h({type:Boolean,reflect:!0})],f.prototype,"disabled",2);a([h({type:Boolean,reflect:!0})],f.prototype,"loading",2);a([h({type:Boolean,reflect:!0})],f.prototype,"outline",2);a([h({type:Boolean,reflect:!0})],f.prototype,"pill",2);a([h({type:Boolean,reflect:!0})],f.prototype,"circle",2);a([h()],f.prototype,"type",2);a([h()],f.prototype,"name",2);a([h()],f.prototype,"value",2);a([h()],f.prototype,"href",2);a([h()],f.prototype,"target",2);a([h()],f.prototype,"download",2);a([h()],f.prototype,"form",2);a([h({attribute:"formaction"})],f.prototype,"formAction",2);a([h({attribute:"formenctype"})],f.prototype,"formEnctype",2);a([h({attribute:"formmethod"})],f.prototype,"formMethod",2);a([h({attribute:"formnovalidate",type:Boolean})],f.prototype,"formNoValidate",2);a([h({attribute:"formtarget"})],f.prototype,"formTarget",2);a([C("disabled",{waitUntilFirstUpdate:!0})],f.prototype,"handleDisabledChange",1);f=a([et("sl-button")],f);var wr=T`
- ${Q}
-
- :host {
- --track-width: 2px;
- --track-color: rgb(128 128 128 / 25%);
- --indicator-color: var(--sl-color-primary-600);
- --speed: 2s;
-
- display: inline-flex;
- width: 1em;
- height: 1em;
- }
-
- .spinner {
- flex: 1 1 auto;
- height: 100%;
- width: 100%;
- }
-
- .spinner__track,
- .spinner__indicator {
- fill: none;
- stroke-width: var(--track-width);
- r: calc(0.5em - var(--track-width) / 2);
- cx: 0.5em;
- cy: 0.5em;
- transform-origin: 50% 50%;
- }
-
- .spinner__track {
- stroke: var(--track-color);
- transform-origin: 0% 0%;
- mix-blend-mode: multiply;
- }
-
- .spinner__indicator {
- stroke: var(--indicator-color);
- stroke-linecap: round;
- stroke-dasharray: 150% 75%;
- animation: spin var(--speed) linear infinite;
- }
-
- @keyframes spin {
- 0% {
- rotate: 0deg;
- stroke-dasharray: 0.01em, 2.75em;
- }
-
- 50% {
- rotate: 450deg;
- stroke-dasharray: 1.375em, 1.375em;
- }
-
- 100% {
- rotate: 1080deg;
- stroke-dasharray: 0.01em, 2.75em;
- }
- }
-`,Mt=class extends P{constructor(){super(...arguments);this.localize=new Pt(this)}render(){return x`
-
- `}};Mt.styles=wr;Mt=a([et("sl-spinner")],Mt);var Bt="";function Ce(t){Bt=t}function Ar(){if(!Bt){const t=[...document.getElementsByTagName("script")],e=t.find(r=>r.hasAttribute("data-shoelace"));if(e)Ce(e.getAttribute("data-shoelace"));else{const r=t.find(i=>/shoelace(\.min)?\.js($|\?)/.test(i.src));let o="";r&&(o=r.getAttribute("src")),Ce(o.split("/").slice(0,-1).join("/"))}}return Bt.replace(/\/$/,"")}var xr={name:"default",resolver:t=>`${Ar()}/assets/icons/${t}.svg`},Er=xr,ke={caret:`
-
- `,check:`
-
- `,"chevron-down":`
-
- `,"chevron-left":`
-
- `,"chevron-right":`
-
- `,eye:`
-
- `,"eye-slash":`
-
- `,eyedropper:`
-
- `,"grip-vertical":`
-
- `,indeterminate:`
-
- `,"person-fill":`
-
- `,"play-fill":`
-
- `,"pause-fill":`
-
- `,radio:`
-
- `,"star-fill":`
-
- `,"x-lg":`
-
- `,"x-circle-fill":`
-
- `},Sr={name:"system",resolver:t=>t in ke?`data:image/svg+xml,${encodeURIComponent(ke[t])}`:""},Cr=Sr,kr=[Er,Cr],Ht=[];function Tr(t){Ht.push(t)}function zr(t){Ht=Ht.filter(e=>e!==t)}function Te(t){return kr.find(e=>e.name===t)}var Rt=new Map;function Pr(t,e="cors"){if(Rt.has(t))return Rt.get(t);const r=fetch(t,{mode:e}).then(async o=>({ok:o.ok,status:o.status,html:await o.text()}));return Rt.set(t,r),r}var Vt=new Map;async function Ur(t){if(Vt.has(t))return Vt.get(t);const e=await Pr(t),r={ok:e.ok,status:e.status,svg:null};if(e.ok){const o=document.createElement("div");o.innerHTML=e.html;const i=o.firstElementChild;r.svg=(i==null?void 0:i.tagName.toLowerCase())==="svg"?i.outerHTML:""}return Vt.set(t,r),r}var Nr=T`
- ${Q}
-
- :host {
- display: inline-block;
- width: 1em;
- height: 1em;
- contain: strict;
- box-sizing: content-box !important;
- }
-
- svg {
- display: block;
- height: 100%;
- width: 100%;
- }
-`,Dt=class extends Ot{constructor(t){if(super(t),this.it=m,t.type!==S.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===m||t==null)return this._t=void 0,this.it=t;if(t===w)return t;if(typeof t!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this._t;this.it=t;const e=[t];return e.raw=e,this._t={_$litType$:this.constructor.resultType,strings:e,values:[]}}};Dt.directiveName="unsafeHTML",Dt.resultType=1;var It=class extends Dt{};It.directiveName="unsafeSVG",It.resultType=2;var Or=Nt(It),Ft,A=class extends P{constructor(){super(...arguments);this.svg="",this.label="",this.library="default"}connectedCallback(){super.connectedCallback(),Tr(this)}firstUpdated(){this.setIcon()}disconnectedCallback(){super.disconnectedCallback(),zr(this)}getUrl(){const t=Te(this.library);return this.name&&t?t.resolver(this.name):this.src}handleLabelChange(){typeof this.label=="string"&&this.label.length>0?(this.setAttribute("role","img"),this.setAttribute("aria-label",this.label),this.removeAttribute("aria-hidden")):(this.removeAttribute("role"),this.removeAttribute("aria-label"),this.setAttribute("aria-hidden","true"))}async setIcon(){var t;const e=Te(this.library),r=this.getUrl();if(Ft||(Ft=new DOMParser),r)try{const o=await Ur(r);if(r!==this.getUrl())return;if(o.ok){const s=Ft.parseFromString(o.svg,"text/html").body.querySelector("svg");s!==null?((t=e==null?void 0:e.mutator)==null||t.call(e,s),this.svg=s.outerHTML,this.emit("sl-load")):(this.svg="",this.emit("sl-error"))}else this.svg="",this.emit("sl-error")}catch(o){this.emit("sl-error")}else this.svg.length>0&&(this.svg="")}render(){return x` ${Or(this.svg)} `}};A.styles=Nr;a([rt()],A.prototype,"svg",2);a([h({reflect:!0})],A.prototype,"name",2);a([h()],A.prototype,"src",2);a([h()],A.prototype,"label",2);a([h({reflect:!0})],A.prototype,"library",2);a([C("label")],A.prototype,"handleLabelChange",1);a([C("name"),C("src"),C("library")],A.prototype,"setIcon",1);A=a([et("sl-icon")],A);/**
- * @license
- * Copyright 2017 Google LLC
- * SPDX-License-Identifier: BSD-3-Clause
- */var Lr=T`
- .form-control .form-control__label {
- display: none;
- }
-
- .form-control .form-control__help-text {
- display: none;
- }
-
- /* Label */
- .form-control--has-label .form-control__label {
- display: inline-block;
- color: var(--sl-input-label-color);
- margin-bottom: var(--sl-spacing-3x-small);
- }
-
- .form-control--has-label.form-control--small .form-control__label {
- font-size: var(--sl-input-label-font-size-small);
- }
-
- .form-control--has-label.form-control--medium .form-control__label {
- font-size: var(--sl-input-label-font-size-medium);
- }
-
- .form-control--has-label.form-control--large .form-control_label {
- font-size: var(--sl-input-label-font-size-large);
- }
-
- :host([required]) .form-control--has-label .form-control__label::after {
- content: var(--sl-input-required-content);
- margin-inline-start: var(--sl-input-required-content-offset);
- color: var(--sl-input-required-content-color);
- }
-
- /* Help text */
- .form-control--has-help-text .form-control__help-text {
- display: block;
- color: var(--sl-input-help-text-color);
- margin-top: var(--sl-spacing-3x-small);
- }
-
- .form-control--has-help-text.form-control--small .form-control__help-text {
- font-size: var(--sl-input-help-text-font-size-small);
- }
-
- .form-control--has-help-text.form-control--medium .form-control__help-text {
- font-size: var(--sl-input-help-text-font-size-medium);
- }
-
- .form-control--has-help-text.form-control--large .form-control__help-text {
- font-size: var(--sl-input-help-text-font-size-large);
- }
-
- .form-control--has-help-text.form-control--radio-group .form-control__help-text {
- margin-top: var(--sl-spacing-2x-small);
- }
-`,Mr=T`
- ${Q}
- ${Lr}
-
- :host {
- display: block;
- }
-
- .input {
- flex: 1 1 auto;
- display: inline-flex;
- align-items: stretch;
- justify-content: start;
- position: relative;
- width: 100%;
- font-family: var(--sl-input-font-family);
- font-weight: var(--sl-input-font-weight);
- letter-spacing: var(--sl-input-letter-spacing);
- vertical-align: middle;
- overflow: hidden;
- cursor: text;
- transition: var(--sl-transition-fast) color, var(--sl-transition-fast) border, var(--sl-transition-fast) box-shadow,
- var(--sl-transition-fast) background-color;
- }
-
- /* Standard inputs */
- .input--standard {
- background-color: var(--sl-input-background-color);
- border: solid var(--sl-input-border-width) var(--sl-input-border-color);
- }
-
- .input--standard:hover:not(.input--disabled) {
- background-color: var(--sl-input-background-color-hover);
- border-color: var(--sl-input-border-color-hover);
- }
-
- .input--standard.input--focused:not(.input--disabled) {
- background-color: var(--sl-input-background-color-focus);
- border-color: var(--sl-input-border-color-focus);
- box-shadow: 0 0 0 var(--sl-focus-ring-width) var(--sl-input-focus-ring-color);
- }
-
- .input--standard.input--focused:not(.input--disabled) .input__control {
- color: var(--sl-input-color-focus);
- }
-
- .input--standard.input--disabled {
- background-color: var(--sl-input-background-color-disabled);
- border-color: var(--sl-input-border-color-disabled);
- opacity: 0.5;
- cursor: not-allowed;
- }
-
- .input--standard.input--disabled .input__control {
- color: var(--sl-input-color-disabled);
- }
-
- .input--standard.input--disabled .input__control::placeholder {
- color: var(--sl-input-placeholder-color-disabled);
- }
-
- /* Filled inputs */
- .input--filled {
- border: none;
- background-color: var(--sl-input-filled-background-color);
- color: var(--sl-input-color);
- }
-
- .input--filled:hover:not(.input--disabled) {
- background-color: var(--sl-input-filled-background-color-hover);
- }
-
- .input--filled.input--focused:not(.input--disabled) {
- background-color: var(--sl-input-filled-background-color-focus);
- outline: var(--sl-focus-ring);
- outline-offset: var(--sl-focus-ring-offset);
- }
-
- .input--filled.input--disabled {
- background-color: var(--sl-input-filled-background-color-disabled);
- opacity: 0.5;
- cursor: not-allowed;
- }
-
- .input__control {
- flex: 1 1 auto;
- font-family: inherit;
- font-size: inherit;
- font-weight: inherit;
- min-width: 0;
- height: 100%;
- color: var(--sl-input-color);
- border: none;
- background: none;
- box-shadow: none;
- padding: 0;
- margin: 0;
- cursor: inherit;
- -webkit-appearance: none;
- }
-
- .input__control::-webkit-search-decoration,
- .input__control::-webkit-search-cancel-button,
- .input__control::-webkit-search-results-button,
- .input__control::-webkit-search-results-decoration {
- -webkit-appearance: none;
- }
-
- .input__control:-webkit-autofill,
- .input__control:-webkit-autofill:hover,
- .input__control:-webkit-autofill:focus,
- .input__control:-webkit-autofill:active {
- box-shadow: 0 0 0 var(--sl-input-height-large) var(--sl-input-background-color-hover) inset !important;
- -webkit-text-fill-color: var(--sl-color-primary-500);
- caret-color: var(--sl-input-color);
- }
-
- .input--filled .input__control:-webkit-autofill,
- .input--filled .input__control:-webkit-autofill:hover,
- .input--filled .input__control:-webkit-autofill:focus,
- .input--filled .input__control:-webkit-autofill:active {
- box-shadow: 0 0 0 var(--sl-input-height-large) var(--sl-input-filled-background-color) inset !important;
- }
-
- .input__control::placeholder {
- color: var(--sl-input-placeholder-color);
- user-select: none;
- }
-
- .input:hover:not(.input--disabled) .input__control {
- color: var(--sl-input-color-hover);
- }
-
- .input__control:focus {
- outline: none;
- }
-
- .input__prefix,
- .input__suffix {
- display: inline-flex;
- flex: 0 0 auto;
- align-items: center;
- cursor: default;
- }
-
- .input__prefix::slotted(sl-icon),
- .input__suffix::slotted(sl-icon) {
- color: var(--sl-input-icon-color);
- }
-
- /*
- * Size modifiers
- */
-
- .input--small {
- border-radius: var(--sl-input-border-radius-small);
- font-size: var(--sl-input-font-size-small);
- height: var(--sl-input-height-small);
- }
-
- .input--small .input__control {
- height: calc(var(--sl-input-height-small) - var(--sl-input-border-width) * 2);
- padding: 0 var(--sl-input-spacing-small);
- }
-
- .input--small .input__clear,
- .input--small .input__password-toggle {
- width: calc(1em + var(--sl-input-spacing-small) * 2);
- }
-
- .input--small .input__prefix::slotted(*) {
- margin-inline-start: var(--sl-input-spacing-small);
- }
-
- .input--small .input__suffix::slotted(*) {
- margin-inline-end: var(--sl-input-spacing-small);
- }
-
- .input--medium {
- border-radius: var(--sl-input-border-radius-medium);
- font-size: var(--sl-input-font-size-medium);
- height: var(--sl-input-height-medium);
- }
-
- .input--medium .input__control {
- height: calc(var(--sl-input-height-medium) - var(--sl-input-border-width) * 2);
- padding: 0 var(--sl-input-spacing-medium);
- }
-
- .input--medium .input__clear,
- .input--medium .input__password-toggle {
- width: calc(1em + var(--sl-input-spacing-medium) * 2);
- }
-
- .input--medium .input__prefix::slotted(*) {
- margin-inline-start: var(--sl-input-spacing-medium);
- }
-
- .input--medium .input__suffix::slotted(*) {
- margin-inline-end: var(--sl-input-spacing-medium);
- }
-
- .input--large {
- border-radius: var(--sl-input-border-radius-large);
- font-size: var(--sl-input-font-size-large);
- height: var(--sl-input-height-large);
- }
-
- .input--large .input__control {
- height: calc(var(--sl-input-height-large) - var(--sl-input-border-width) * 2);
- padding: 0 var(--sl-input-spacing-large);
- }
-
- .input--large .input__clear,
- .input--large .input__password-toggle {
- width: calc(1em + var(--sl-input-spacing-large) * 2);
- }
-
- .input--large .input__prefix::slotted(*) {
- margin-inline-start: var(--sl-input-spacing-large);
- }
-
- .input--large .input__suffix::slotted(*) {
- margin-inline-end: var(--sl-input-spacing-large);
- }
-
- /*
- * Pill modifier
- */
-
- .input--pill.input--small {
- border-radius: var(--sl-input-height-small);
- }
-
- .input--pill.input--medium {
- border-radius: var(--sl-input-height-medium);
- }
-
- .input--pill.input--large {
- border-radius: var(--sl-input-height-large);
- }
-
- /*
- * Clearable + Password Toggle
- */
-
- .input__clear,
- .input__password-toggle {
- display: inline-flex;
- align-items: center;
- justify-content: center;
- font-size: inherit;
- color: var(--sl-input-icon-color);
- border: none;
- background: none;
- padding: 0;
- transition: var(--sl-transition-fast) color;
- cursor: pointer;
- }
-
- .input__clear:hover,
- .input__password-toggle:hover {
- color: var(--sl-input-icon-color-hover);
- }
-
- .input__clear:focus,
- .input__password-toggle:focus {
- outline: none;
- }
-
- .input--empty .input__clear {
- visibility: hidden;
- }
-
- /* Don't show the browser's password toggle in Edge */
- ::-ms-reveal {
- display: none;
- }
-
- /* Hide Firefox's clear button on date and time inputs */
- .input--is-firefox input[type='date'],
- .input--is-firefox input[type='time'] {
- clip-path: inset(0 2em 0 0);
- }
-
- /* Hide the built-in number spinner */
- .input--no-spin-buttons input[type='number']::-webkit-outer-spin-button,
- .input--no-spin-buttons input[type='number']::-webkit-inner-spin-button {
- -webkit-appearance: none;
- display: none;
- }
-
- .input--no-spin-buttons input[type='number'] {
- -moz-appearance: textfield;
- }
-`,Br=t=>t.strings===void 0,Hr={},Rr=(t,e=Hr)=>t._$AH=e,Vr=Nt(class extends Ot{constructor(t){if(super(t),t.type!==S.PROPERTY&&t.type!==S.ATTRIBUTE&&t.type!==S.BOOLEAN_ATTRIBUTE)throw Error("The `live` directive is not allowed on child or event bindings");if(!Br(t))throw Error("`live` bindings can only contain a single expression")}render(t){return t}update(t,[e]){if(e===w||e===m)return e;const r=t.element,o=t.name;if(t.type===S.PROPERTY){if(e===r[o])return w}else if(t.type===S.BOOLEAN_ATTRIBUTE){if(!!e===r.hasAttribute(o))return w}else if(t.type===S.ATTRIBUTE&&r.getAttribute(o)===e+"")return w;return Rr(t),e}});/**
- * @license
- * Copyright 2020 Google LLC
- * SPDX-License-Identifier: BSD-3-Clause
- */var Dr=(t="value")=>(e,r)=>{const o=e.constructor,i=o.prototype.attributeChangedCallback;o.prototype.attributeChangedCallback=function(s,n,d){var l;const u=o.getPropertyOptions(t),b=typeof u.attribute=="string"?u.attribute:t;if(s===b){const c=u.converter||Z,_=(typeof c=="function"?c:(l=c==null?void 0:c.fromAttribute)!=null?l:Z.fromAttribute)(d,u.type);this[t]!==_&&(this[r]=_)}i.call(this,s,n,d)}},ze,Ir=(ze=navigator.userAgentData)==null?void 0:ze.brands.some(t=>t.brand.includes("Chromium")),Fr=Ir?!1:navigator.userAgent.includes("Firefox"),p=class extends P{constructor(){super(...arguments);this.formSubmitController=new re(this),this.hasSlotController=new Ut(this,"help-text","label"),this.localize=new Pt(this),this.hasFocus=!1,this.invalid=!1,this.title="",this.type="text",this.name="",this.value="",this.defaultValue="",this.size="medium",this.filled=!1,this.pill=!1,this.label="",this.helpText="",this.clearable=!1,this.disabled=!1,this.placeholder="",this.readonly=!1,this.passwordToggle=!1,this.passwordVisible=!1,this.noSpinButtons=!1,this.required=!1,this.spellcheck=!0}get valueAsDate(){var t,e;return(e=(t=this.input)==null?void 0:t.valueAsDate)!=null?e:null}set valueAsDate(t){const e=document.createElement("input");e.type="date",e.valueAsDate=t,this.value=e.value}get valueAsNumber(){var t,e;return(e=(t=this.input)==null?void 0:t.valueAsNumber)!=null?e:parseFloat(this.value)}set valueAsNumber(t){const e=document.createElement("input");e.type="number",e.valueAsNumber=t,this.value=e.value}firstUpdated(){this.invalid=!this.checkValidity()}handleBlur(){this.hasFocus=!1,this.emit("sl-blur")}handleChange(){this.value=this.input.value,this.emit("sl-change")}handleClearClick(t){this.value="",this.emit("sl-clear"),this.emit("sl-input"),this.emit("sl-change"),this.input.focus(),t.stopPropagation()}handleFocus(){this.hasFocus=!0,this.emit("sl-focus")}handleInput(){this.value=this.input.value,this.invalid=!this.checkValidity(),this.emit("sl-input")}handleInvalid(){this.invalid=!0}handleKeyDown(t){const e=t.metaKey||t.ctrlKey||t.shiftKey||t.altKey;t.key==="Enter"&&!e&&setTimeout(()=>{!t.defaultPrevented&&!t.isComposing&&this.formSubmitController.submit()})}handlePasswordToggle(){this.passwordVisible=!this.passwordVisible}handleDisabledChange(){this.input.disabled=this.disabled,this.invalid=!this.checkValidity()}handleStepChange(){this.input.step=String(this.step),this.invalid=!this.checkValidity()}async handleValueChange(){await this.updateComplete,this.invalid=!this.checkValidity()}focus(t){this.input.focus(t)}blur(){this.input.blur()}select(){this.input.select()}setSelectionRange(t,e,r="none"){this.input.setSelectionRange(t,e,r)}setRangeText(t,e,r,o){this.input.setRangeText(t,e,r,o),this.value!==this.input.value&&(this.value=this.input.value)}showPicker(){"showPicker"in HTMLInputElement.prototype&&this.input.showPicker()}stepUp(){this.input.stepUp(),this.value!==this.input.value&&(this.value=this.input.value)}stepDown(){this.input.stepDown(),this.value!==this.input.value&&(this.value=this.input.value)}checkValidity(){return this.input.checkValidity()}reportValidity(){return this.input.reportValidity()}setCustomValidity(t){this.input.setCustomValidity(t),this.invalid=!this.checkValidity()}render(){const t=this.hasSlotController.test("label"),e=this.hasSlotController.test("help-text"),r=this.label?!0:!!t,o=this.helpText?!0:!!e,i=this.clearable&&!this.disabled&&!this.readonly&&(typeof this.value=="number"||this.value.length>0);return x`
-
-
-
-
-
-
- ${this.helpText}
-
-
-
- `}};p.styles=Mr;a([Se(".input__control")],p.prototype,"input",2);a([rt()],p.prototype,"hasFocus",2);a([rt()],p.prototype,"invalid",2);a([h()],p.prototype,"title",2);a([h({reflect:!0})],p.prototype,"type",2);a([h()],p.prototype,"name",2);a([h()],p.prototype,"value",2);a([Dr()],p.prototype,"defaultValue",2);a([h({reflect:!0})],p.prototype,"size",2);a([h({type:Boolean,reflect:!0})],p.prototype,"filled",2);a([h({type:Boolean,reflect:!0})],p.prototype,"pill",2);a([h()],p.prototype,"label",2);a([h({attribute:"help-text"})],p.prototype,"helpText",2);a([h({type:Boolean})],p.prototype,"clearable",2);a([h({type:Boolean,reflect:!0})],p.prototype,"disabled",2);a([h()],p.prototype,"placeholder",2);a([h({type:Boolean,reflect:!0})],p.prototype,"readonly",2);a([h({attribute:"password-toggle",type:Boolean})],p.prototype,"passwordToggle",2);a([h({attribute:"password-visible",type:Boolean})],p.prototype,"passwordVisible",2);a([h({attribute:"no-spin-buttons",type:Boolean})],p.prototype,"noSpinButtons",2);a([h({type:Boolean,reflect:!0})],p.prototype,"required",2);a([h()],p.prototype,"pattern",2);a([h({type:Number})],p.prototype,"minlength",2);a([h({type:Number})],p.prototype,"maxlength",2);a([h({type:Number})],p.prototype,"min",2);a([h({type:Number})],p.prototype,"max",2);a([h()],p.prototype,"step",2);a([h()],p.prototype,"autocapitalize",2);a([h()],p.prototype,"autocorrect",2);a([h()],p.prototype,"autocomplete",2);a([h({type:Boolean})],p.prototype,"autofocus",2);a([h()],p.prototype,"enterkeyhint",2);a([h({type:Boolean,converter:{fromAttribute:t=>!(!t||t==="false"),toAttribute:t=>t?"true":"false"}})],p.prototype,"spellcheck",2);a([h()],p.prototype,"inputmode",2);a([C("disabled",{waitUntilFirstUpdate:!0})],p.prototype,"handleDisabledChange",1);a([C("step",{waitUntilFirstUpdate:!0})],p.prototype,"handleStepChange",1);a([C("value",{waitUntilFirstUpdate:!0})],p.prototype,"handleValueChange",1);p=a([et("sl-input")],p);var jr=T`
- ${Q}
-
- :host {
- --border-color: var(--sl-color-neutral-200);
- --border-radius: var(--sl-border-radius-medium);
- --border-width: 1px;
- --padding: var(--sl-spacing-large);
-
- display: inline-block;
- }
-
- .card {
- display: flex;
- flex-direction: column;
- background-color: var(--sl-panel-background-color);
- box-shadow: var(--sl-shadow-x-small);
- border: solid var(--border-width) var(--border-color);
- border-radius: var(--border-radius);
- }
-
- .card__image {
- display: flex;
- border-top-left-radius: var(--border-radius);
- border-top-right-radius: var(--border-radius);
- margin: calc(-1 * var(--border-width));
- overflow: hidden;
- }
-
- .card__image::slotted(img) {
- display: block;
- width: 100%;
- }
-
- .card:not(.card--has-image) .card__image {
- display: none;
- }
-
- .card__header {
- display: block;
- border-bottom: solid var(--border-width) var(--border-color);
- padding: calc(var(--padding) / 2) var(--padding);
- }
-
- .card:not(.card--has-header) .card__header {
- display: none;
- }
-
- .card:not(.card--has-image) .card__header {
- border-top-left-radius: var(--border-radius);
- border-top-right-radius: var(--border-radius);
- }
-
- .card__body {
- display: block;
- padding: var(--padding);
- }
-
- .card--has-footer .card__footer {
- display: block;
- border-top: solid var(--border-width) var(--border-color);
- padding: var(--padding);
- }
-
- .card:not(.card--has-footer) .card__footer {
- display: none;
- }
-`,jt=class extends P{constructor(){super(...arguments);this.hasSlotController=new Ut(this,"footer","header","image")}render(){return x`
-
- `}};jt.styles=jr;jt=a([et("sl-card")],jt);/**
- * @license
- * Copyright 2019 Google LLC
- * SPDX-License-Identifier: BSD-3-Clause
- */const ft=window,qt=ft.ShadowRoot&&(ft.ShadyCSS===void 0||ft.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Pe=Symbol(),Ue=new WeakMap;class qr{constructor(e,r,o){if(this._$cssResult$=!0,o!==Pe)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=r}get styleSheet(){let e=this.o;const r=this.t;if(qt&&e===void 0){const o=r!==void 0&&r.length===1;o&&(e=Ue.get(r)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),o&&Ue.set(r,e))}return e}toString(){return this.cssText}}const Wr=t=>new qr(typeof t=="string"?t:t+"",void 0,Pe),Kr=(t,e)=>{qt?t.adoptedStyleSheets=e.map(r=>r instanceof CSSStyleSheet?r:r.styleSheet):e.forEach(r=>{const o=document.createElement("style"),i=ft.litNonce;i!==void 0&&o.setAttribute("nonce",i),o.textContent=r.cssText,t.appendChild(o)})},Ne=qt?t=>t:t=>t instanceof CSSStyleSheet?(e=>{let r="";for(const o of e.cssRules)r+=o.cssText;return Wr(r)})(t):t;/**
- * @license
- * Copyright 2017 Google LLC
- * SPDX-License-Identifier: BSD-3-Clause
- */var Wt;const mt=window,Oe=mt.trustedTypes,Zr=Oe?Oe.emptyScript:"",Le=mt.reactiveElementPolyfillSupport,Kt={toAttribute(t,e){switch(e){case Boolean:t=t?Zr:null;break;case Object:case Array:t=t==null?t:JSON.stringify(t)}return t},fromAttribute(t,e){let r=t;switch(e){case Boolean:r=t!==null;break;case Number:r=t===null?null:Number(t);break;case Object:case Array:try{r=JSON.parse(t)}catch(o){r=null}}return r}},Me=(t,e)=>e!==t&&(e==e||t==t),Zt={attribute:!0,type:String,converter:Kt,reflect:!1,hasChanged:Me};class V extends HTMLElement{constructor(){super(),this._$Ei=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$El=null,this.u()}static addInitializer(e){var r;this.finalize(),((r=this.h)!==null&&r!==void 0?r:this.h=[]).push(e)}static get observedAttributes(){this.finalize();const e=[];return this.elementProperties.forEach((r,o)=>{const i=this._$Ep(o,r);i!==void 0&&(this._$Ev.set(i,o),e.push(i))}),e}static createProperty(e,r=Zt){if(r.state&&(r.attribute=!1),this.finalize(),this.elementProperties.set(e,r),!r.noAccessor&&!this.prototype.hasOwnProperty(e)){const o=typeof e=="symbol"?Symbol():"__"+e,i=this.getPropertyDescriptor(e,o,r);i!==void 0&&Object.defineProperty(this.prototype,e,i)}}static getPropertyDescriptor(e,r,o){return{get(){return this[r]},set(i){const s=this[e];this[r]=i,this.requestUpdate(e,s,o)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)||Zt}static finalize(){if(this.hasOwnProperty("finalized"))return!1;this.finalized=!0;const e=Object.getPrototypeOf(this);if(e.finalize(),e.h!==void 0&&(this.h=[...e.h]),this.elementProperties=new Map(e.elementProperties),this._$Ev=new Map,this.hasOwnProperty("properties")){const r=this.properties,o=[...Object.getOwnPropertyNames(r),...Object.getOwnPropertySymbols(r)];for(const i of o)this.createProperty(i,r[i])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(e){const r=[];if(Array.isArray(e)){const o=new Set(e.flat(1/0).reverse());for(const i of o)r.unshift(Ne(i))}else e!==void 0&&r.push(Ne(e));return r}static _$Ep(e,r){const o=r.attribute;return o===!1?void 0:typeof o=="string"?o:typeof e=="string"?e.toLowerCase():void 0}u(){var e;this._$E_=new Promise(r=>this.enableUpdating=r),this._$AL=new Map,this._$Eg(),this.requestUpdate(),(e=this.constructor.h)===null||e===void 0||e.forEach(r=>r(this))}addController(e){var r,o;((r=this._$ES)!==null&&r!==void 0?r:this._$ES=[]).push(e),this.renderRoot!==void 0&&this.isConnected&&((o=e.hostConnected)===null||o===void 0||o.call(e))}removeController(e){var r;(r=this._$ES)===null||r===void 0||r.splice(this._$ES.indexOf(e)>>>0,1)}_$Eg(){this.constructor.elementProperties.forEach((e,r)=>{this.hasOwnProperty(r)&&(this._$Ei.set(r,this[r]),delete this[r])})}createRenderRoot(){var e;const r=(e=this.shadowRoot)!==null&&e!==void 0?e:this.attachShadow(this.constructor.shadowRootOptions);return Kr(r,this.constructor.elementStyles),r}connectedCallback(){var e;this.renderRoot===void 0&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),(e=this._$ES)===null||e===void 0||e.forEach(r=>{var o;return(o=r.hostConnected)===null||o===void 0?void 0:o.call(r)})}enableUpdating(e){}disconnectedCallback(){var e;(e=this._$ES)===null||e===void 0||e.forEach(r=>{var o;return(o=r.hostDisconnected)===null||o===void 0?void 0:o.call(r)})}attributeChangedCallback(e,r,o){this._$AK(e,o)}_$EO(e,r,o=Zt){var i;const s=this.constructor._$Ep(e,o);if(s!==void 0&&o.reflect===!0){const n=(((i=o.converter)===null||i===void 0?void 0:i.toAttribute)!==void 0?o.converter:Kt).toAttribute(r,o.type);this._$El=e,n==null?this.removeAttribute(s):this.setAttribute(s,n),this._$El=null}}_$AK(e,r){var o;const i=this.constructor,s=i._$Ev.get(e);if(s!==void 0&&this._$El!==s){const n=i.getPropertyOptions(s),d=typeof n.converter=="function"?{fromAttribute:n.converter}:((o=n.converter)===null||o===void 0?void 0:o.fromAttribute)!==void 0?n.converter:Kt;this._$El=s,this[s]=d.fromAttribute(r,n.type),this._$El=null}}requestUpdate(e,r,o){let i=!0;e!==void 0&&(((o=o||this.constructor.getPropertyOptions(e)).hasChanged||Me)(this[e],r)?(this._$AL.has(e)||this._$AL.set(e,r),o.reflect===!0&&this._$El!==e&&(this._$EC===void 0&&(this._$EC=new Map),this._$EC.set(e,o))):i=!1),!this.isUpdatePending&&i&&(this._$E_=this._$Ej())}async _$Ej(){this.isUpdatePending=!0;try{await this._$E_}catch(r){Promise.reject(r)}const e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var e;if(!this.isUpdatePending)return;this.hasUpdated,this._$Ei&&(this._$Ei.forEach((i,s)=>this[s]=i),this._$Ei=void 0);let r=!1;const o=this._$AL;try{r=this.shouldUpdate(o),r?(this.willUpdate(o),(e=this._$ES)===null||e===void 0||e.forEach(i=>{var s;return(s=i.hostUpdate)===null||s===void 0?void 0:s.call(i)}),this.update(o)):this._$Ek()}catch(i){throw r=!1,this._$Ek(),i}r&&this._$AE(o)}willUpdate(e){}_$AE(e){var r;(r=this._$ES)===null||r===void 0||r.forEach(o=>{var i;return(i=o.hostUpdated)===null||i===void 0?void 0:i.call(o)}),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$Ek(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$E_}shouldUpdate(e){return!0}update(e){this._$EC!==void 0&&(this._$EC.forEach((r,o)=>this._$EO(o,this[o],r)),this._$EC=void 0),this._$Ek()}updated(e){}firstUpdated(e){}}V.finalized=!0,V.elementProperties=new Map,V.elementStyles=[],V.shadowRootOptions={mode:"open"},Le==null||Le({ReactiveElement:V}),((Wt=mt.reactiveElementVersions)!==null&&Wt!==void 0?Wt:mt.reactiveElementVersions=[]).push("1.6.1");/**
- * @license
- * Copyright 2017 Google LLC
- * SPDX-License-Identifier: BSD-3-Clause
- */var Jt;const gt=window,D=gt.trustedTypes,Be=D?D.createPolicy("lit-html",{createHTML:t=>t}):void 0,k=`lit$${(Math.random()+"").slice(9)}$`,He="?"+k,Jr=`<${He}>`,I=document,ot=(t="")=>I.createComment(t),it=t=>t===null||typeof t!="object"&&typeof t!="function",Re=Array.isArray,Yr=t=>Re(t)||typeof(t==null?void 0:t[Symbol.iterator])=="function",st=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Ve=/-->/g,De=/>/g,U=RegExp(`>|[
-\f\r](?:([^\\s"'>=/]+)([
-\f\r]*=[
-\f\r]*(?:[^
-\f\r"'\`<>=]|("|')|))|$)`,"g"),Ie=/'/g,Fe=/"/g,je=/^(?:script|style|textarea|title)$/i,Gr=t=>(e,...r)=>({_$litType$:t,strings:e,values:r}),no=Gr(1),F=Symbol.for("lit-noChange"),y=Symbol.for("lit-nothing"),qe=new WeakMap,j=I.createTreeWalker(I,129,null,!1),Xr=(t,e)=>{const r=t.length-1,o=[];let i,s=e===2?"":"");if(!Array.isArray(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return[Be!==void 0?Be.createHTML(d):d,o]};class nt{constructor({strings:e,_$litType$:r},o){let i;this.parts=[];let s=0,n=0;const d=e.length-1,l=this.parts,[u,b]=Xr(e,r);if(this.el=nt.createElement(u,o),j.currentNode=this.el.content,r===2){const c=this.el.content,v=c.firstChild;v.remove(),c.append(...v.childNodes)}for(;(i=j.nextNode())!==null&&l.length0){i.textContent=D?D.emptyScript:"";for(let _=0;_2||o[0]!==""||o[1]!==""?(this._$AH=Array(o.length-1).fill(new String),this.strings=o):this._$AH=y}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(e,r=this,o,i){const s=this.strings;let n=!1;if(s===void 0)e=q(this,e,r,0),n=!it(e)||e!==this._$AH&&e!==F,n&&(this._$AH=e);else{const d=e;let l,u;for(e=s[0],l=0;l{var o,i;const s=(o=r==null?void 0:r.renderBefore)!==null&&o!==void 0?o:e;let n=s._$litPart$;if(n===void 0){const d=(i=r==null?void 0:r.renderBefore)!==null&&i!==void 0?i:null;s._$litPart$=n=new lt(e.insertBefore(ot(),d),d,void 0,r!=null?r:{})}return n._$AI(t),n};/**
- * @license
- * Copyright 2017 Google LLC
- * SPDX-License-Identifier: BSD-3-Clause
- */var Yt,Gt;class yt extends V{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var e,r;const o=super.createRenderRoot();return(e=(r=this.renderOptions).renderBefore)!==null&&e!==void 0||(r.renderBefore=o.firstChild),o}update(e){const r=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=so(r,this.renderRoot,this.renderOptions)}connectedCallback(){var e;super.connectedCallback(),(e=this._$Do)===null||e===void 0||e.setConnected(!0)}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this._$Do)===null||e===void 0||e.setConnected(!1)}render(){return F}}yt.finalized=!0,yt._$litElement$=!0,(Yt=globalThis.litElementHydrateSupport)===null||Yt===void 0||Yt.call(globalThis,{LitElement:yt});const Ke=globalThis.litElementPolyfillSupport;Ke==null||Ke({LitElement:yt});((Gt=globalThis.litElementVersions)!==null&&Gt!==void 0?Gt:globalThis.litElementVersions=[]).push("3.2.2");export{yt as s,no as y};
diff --git a/attic/values/dex/templates/dex/static/logout.html b/attic/values/dex/templates/dex/static/logout.html
deleted file mode 100644
index 568d0ab6..00000000
--- a/attic/values/dex/templates/dex/static/logout.html
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
-
-
-
- {{ issuer }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-

-
-
-
-
-
You have been logged out.
- Yoy will be redirected in a moment.
-
-
-
-
diff --git a/attic/values/dex/templates/dex/static/main.css b/attic/values/dex/templates/dex/static/main.css
deleted file mode 100644
index 2c92859f..00000000
--- a/attic/values/dex/templates/dex/static/main.css
+++ /dev/null
@@ -1,148 +0,0 @@
-* {
- box-sizing: border-box;
-}
-
-body {
- margin: 0;
-}
-
-.dex-container {
- color: #333;
- margin: 45px auto;
- max-width: 500px;
- min-width: 320px;
- /* text-align: center; */
-}
-
-.dex-btn {
- border-radius: 4px;
- border: 0;
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.25), 0 0 1px rgba(0, 0, 0, 0.25);
- cursor: pointer;
- font-size: 16px;
- padding: 0;
-}
-
-.dex-btn:focus {
- outline: none;
-}
-
-.dex-btn:active {
- box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
- outline: none;
-}
-
-.dex-btn-icon {
- background-position: center;
- background-repeat: no-repeat;
- background-size: 24px;
- border-radius: 4px 0 0 4px;
- float: left;
- height: 36px;
- margin-right: 5px;
- width: 36px;
-}
-
-.dex-btn-icon--google {
- background-color: #FFFFFF;
- background-image: url(../static/img/google-icon.svg);;
-}
-
-.dex-btn-icon--local {
- background-color: #84B6EF;
- background-image: url(../static/img/email-icon.svg);
-}
-
-.dex-btn-icon--gitea {
- background-color: #F5F5F5;
- background-image: url(../static/img/gitea-icon.svg);
-}
-
-.dex-btn-icon--github {
- background-color: #F5F5F5;
- background-image: url(../static/img/github-icon.svg);
-}
-
-.dex-btn-icon--gitlab {
- background-color: #F5F5F5;
- background-image: url(../static/img/gitlab-icon.svg);
- background-size: contain;
-}
-
-.dex-btn-icon--keystone {
- background-color: #F5F5F5;
- background-image: url(../static/img/keystone-icon.svg);
- background-size: contain;
-}
-
-.dex-btn-icon--oidc {
- background-color: #EBEBEE;
- background-image: url(../static/img/oidc-icon.svg);
- background-size: contain;
-}
-
-.dex-btn-icon--bitbucket-cloud {
- background-color: #205081;
- background-image: url(../static/img/bitbucket-icon.svg);
-}
-
-.dex-btn-icon--atlassian-crowd {
- background-color: #CFDCEA;
- background-image: url(../static/img/atlassian-crowd-icon.svg);
-}
-
-.dex-btn-icon--ldap {
- background-color: #84B6EF;
- background-image: url(../static/img/ldap-icon.svg);
-}
-
-.dex-btn-icon--saml {
- background-color: #84B6EF;
- background-image: url(../static/img/saml-icon.svg);
-}
-
-.dex-btn-icon--linkedin {
- background-image: url(../static/img/linkedin-icon.svg);
- background-size: contain;
-}
-
-.dex-btn-icon--microsoft {
- background-image: url(../static/img/microsoft-icon.svg);
-}
-
-.dex-btn-text {
- font-weight: 600;
- line-height: 36px;
- padding: 6px 12px;
- text-align: center;
-}
-
-.dex-subtle-text {
- color: #999;
- font-size: 12px;
-}
-
-.dex-separator {
- color: #999;
-}
-
-.dex-list {
- color: #999;
- display: inline-block;
- font-size: 12px;
- list-style: circle;
- text-align: left;
-}
-
-.dex-error-box {
- background-color: #DD1327;
- color: #fff;
- font-size: 14px;
- font-weight: normal;
- max-width: 320px;
- padding: 4px 0;
-}
-
-.dex-error-box {
- margin: 20px auto;
-}
diff --git a/attic/values/dex/templates/dex/templates/approval.html b/attic/values/dex/templates/dex/templates/approval.html
deleted file mode 100644
index 1c037d2d..00000000
--- a/attic/values/dex/templates/dex/templates/approval.html
+++ /dev/null
@@ -1,44 +0,0 @@
-{{ template "header.html" . }}
-
-
-
Grant Access
-
-
-
- {{ if .Scopes }}
-
{{ .Client }} would like to:
-
- {{ range $scope := .Scopes }}
- - {{ $scope }}
- {{ end }}
-
- {{ else }}
-
{{ .Client }} has not requested any personal information
- {{ end }}
-
-
-
-
-
-
-
-{{ template "footer.html" . }}
diff --git a/attic/values/dex/templates/dex/templates/device.html b/attic/values/dex/templates/dex/templates/device.html
deleted file mode 100644
index 674cbdc3..00000000
--- a/attic/values/dex/templates/dex/templates/device.html
+++ /dev/null
@@ -1,23 +0,0 @@
-{{ template "header.html" . }}
-
-
-
-{{ template "footer.html" . }}
diff --git a/attic/values/dex/templates/dex/templates/device_success.html b/attic/values/dex/templates/dex/templates/device_success.html
deleted file mode 100644
index 53b09ce5..00000000
--- a/attic/values/dex/templates/dex/templates/device_success.html
+++ /dev/null
@@ -1,8 +0,0 @@
-{{ template "header.html" . }}
-
-
-
Login Successful for {{ .ClientName }}
-
Return to your device to continue
-
-
-{{ template "footer.html" . }}
diff --git a/attic/values/dex/templates/dex/templates/error.html b/attic/values/dex/templates/dex/templates/error.html
deleted file mode 100644
index 418f76fb..00000000
--- a/attic/values/dex/templates/dex/templates/error.html
+++ /dev/null
@@ -1,8 +0,0 @@
-{{ template "header.html" . }}
-
-
-
{{ .ErrType }}
-
{{ .ErrMsg }}
-
-
-{{ template "footer.html" . }}
diff --git a/attic/values/dex/templates/dex/templates/footer.html b/attic/values/dex/templates/dex/templates/footer.html
deleted file mode 100644
index 5b6e2d65..00000000
--- a/attic/values/dex/templates/dex/templates/footer.html
+++ /dev/null
@@ -1,3 +0,0 @@
-
-