From 1b9925f14bd93e11c6cf6794f092b314defd38bb Mon Sep 17 00:00:00 2001 From: paulfantom Date: Wed, 14 Feb 2024 01:22:21 +0000 Subject: [PATCH] [bot] Automated version update --- .../manifests/homeassistant/backupsPVC.yaml | 2 +- .../manifests/homeassistant/configs.yaml | 2 +- .../manifests/homeassistant/ingress.yaml | 2 +- .../homeassistant/prometheusRule.yaml | 2 +- .../manifests/homeassistant/service.yaml | 2 +- .../homeassistant/serviceAccount.yaml | 2 +- .../homeassistant/serviceMonitor.yaml | 2 +- .../manifests/homeassistant/statefulSet.yaml | 6 +- apps/homeassistant/settings.yaml | 4 +- apps/homer/manifests/homer/deployment.yaml | 6 +- apps/homer/manifests/homer/ingress.yaml | 2 +- apps/homer/manifests/homer/service.yaml | 2 +- .../homer/manifests/homer/serviceAccount.yaml | 2 +- apps/homer/settings.yaml | 4 +- apps/minio/release.yaml | 2 +- .../alertmanager/prometheusRule.yaml | 6 +- .../grafana/dashboardDefinitions.yaml | 259 +----------------- .../prometheusRule.yaml | 18 +- .../scrapeConfigKubeletSLIs.yaml | 37 +++ .../nodeExporter/prometheusRule.yaml | 10 + ...managerConfigCustomResourceDefinition.yaml | 202 ++++++++------ ...0alertmanagerCustomResourceDefinition.yaml | 21 +- .../0podmonitorCustomResourceDefinition.yaml | 89 +++--- .../0probeCustomResourceDefinition.yaml | 19 +- .../0prometheusCustomResourceDefinition.yaml | 96 +++++-- ...ometheusagentCustomResourceDefinition.yaml | 78 ++++-- ...rometheusruleCustomResourceDefinition.yaml | 5 +- ...0scrapeconfigCustomResourceDefinition.yaml | 184 +++++++++++-- ...ervicemonitorCustomResourceDefinition.yaml | 93 +++---- .../0thanosrulerCustomResourceDefinition.yaml | 7 +- .../prometheusOperator/clusterRole.yaml | 2 +- .../clusterRoleBinding.yaml | 2 +- .../prometheusOperator/deployment.yaml | 11 +- .../prometheusOperator/networkPolicy.yaml | 2 +- .../prometheusOperator/prometheusRule.yaml | 2 +- .../manifests/prometheusOperator/service.yaml | 2 +- .../prometheusOperator/serviceAccount.yaml | 2 +- .../prometheusOperator/serviceMonitor.yaml | 4 +- .../windowsExporter/prometheusRule.yaml | 64 ++--- apps/opencost/release.yaml | 2 +- base/cert-manager/VERSION | 2 +- base/cert-manager/manifests/cert-manager.yaml | 107 ++++---- base/external-secrets/release.yaml | 2 +- 43 files changed, 724 insertions(+), 646 deletions(-) create mode 100644 apps/monitoring/manifests/kubernetesControlPlane/scrapeConfigKubeletSLIs.yaml diff --git a/apps/homeassistant/manifests/homeassistant/backupsPVC.yaml b/apps/homeassistant/manifests/homeassistant/backupsPVC.yaml index 0ed2c27df..fe1fe6564 100644 --- a/apps/homeassistant/manifests/homeassistant/backupsPVC.yaml +++ b/apps/homeassistant/manifests/homeassistant/backupsPVC.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: server app.kubernetes.io/name: homeassistant app.kubernetes.io/part-of: homeassistant - app.kubernetes.io/version: 2024.2.0 + app.kubernetes.io/version: 2024.2.1 name: homeassistant-backups namespace: homeassistant spec: diff --git a/apps/homeassistant/manifests/homeassistant/configs.yaml b/apps/homeassistant/manifests/homeassistant/configs.yaml index 2e7cf9501..4e5094e74 100644 --- a/apps/homeassistant/manifests/homeassistant/configs.yaml +++ b/apps/homeassistant/manifests/homeassistant/configs.yaml @@ -545,6 +545,6 @@ metadata: app.kubernetes.io/component: server app.kubernetes.io/name: homeassistant app.kubernetes.io/part-of: homeassistant - app.kubernetes.io/version: 2024.2.0 + app.kubernetes.io/version: 2024.2.1 name: homeassistant-configs namespace: homeassistant diff --git a/apps/homeassistant/manifests/homeassistant/ingress.yaml b/apps/homeassistant/manifests/homeassistant/ingress.yaml index 0bb01e3a9..7c7b107a9 100644 --- a/apps/homeassistant/manifests/homeassistant/ingress.yaml +++ b/apps/homeassistant/manifests/homeassistant/ingress.yaml @@ -13,7 +13,7 @@ metadata: app.kubernetes.io/component: server app.kubernetes.io/name: homeassistant app.kubernetes.io/part-of: homeassistant - app.kubernetes.io/version: 2024.2.0 + app.kubernetes.io/version: 2024.2.1 probe: enabled reloader.homer/enabled: "true" name: homeassistant diff --git a/apps/homeassistant/manifests/homeassistant/prometheusRule.yaml b/apps/homeassistant/manifests/homeassistant/prometheusRule.yaml index f31755135..ed06235de 100644 --- a/apps/homeassistant/manifests/homeassistant/prometheusRule.yaml +++ b/apps/homeassistant/manifests/homeassistant/prometheusRule.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: server app.kubernetes.io/name: homeassistant app.kubernetes.io/part-of: homeassistant - app.kubernetes.io/version: 2024.2.0 + app.kubernetes.io/version: 2024.2.1 prometheus: k8s role: alert-rules name: homeassistant diff --git a/apps/homeassistant/manifests/homeassistant/service.yaml b/apps/homeassistant/manifests/homeassistant/service.yaml index e355b5887..86ca414fe 100644 --- a/apps/homeassistant/manifests/homeassistant/service.yaml +++ b/apps/homeassistant/manifests/homeassistant/service.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: server app.kubernetes.io/name: homeassistant app.kubernetes.io/part-of: homeassistant - app.kubernetes.io/version: 2024.2.0 + app.kubernetes.io/version: 2024.2.1 name: homeassistant namespace: homeassistant spec: diff --git a/apps/homeassistant/manifests/homeassistant/serviceAccount.yaml b/apps/homeassistant/manifests/homeassistant/serviceAccount.yaml index fe859f823..4f7c648b9 100644 --- a/apps/homeassistant/manifests/homeassistant/serviceAccount.yaml +++ b/apps/homeassistant/manifests/homeassistant/serviceAccount.yaml @@ -6,6 +6,6 @@ metadata: app.kubernetes.io/component: server app.kubernetes.io/name: homeassistant app.kubernetes.io/part-of: homeassistant - app.kubernetes.io/version: 2024.2.0 + app.kubernetes.io/version: 2024.2.1 name: homeassistant namespace: homeassistant diff --git a/apps/homeassistant/manifests/homeassistant/serviceMonitor.yaml b/apps/homeassistant/manifests/homeassistant/serviceMonitor.yaml index 6e07172f8..927d8eeec 100644 --- a/apps/homeassistant/manifests/homeassistant/serviceMonitor.yaml +++ b/apps/homeassistant/manifests/homeassistant/serviceMonitor.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: server app.kubernetes.io/name: homeassistant app.kubernetes.io/part-of: homeassistant - app.kubernetes.io/version: 2024.2.0 + app.kubernetes.io/version: 2024.2.1 name: homeassistant namespace: homeassistant spec: diff --git a/apps/homeassistant/manifests/homeassistant/statefulSet.yaml b/apps/homeassistant/manifests/homeassistant/statefulSet.yaml index 5154d47ed..406b677da 100644 --- a/apps/homeassistant/manifests/homeassistant/statefulSet.yaml +++ b/apps/homeassistant/manifests/homeassistant/statefulSet.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: server app.kubernetes.io/name: homeassistant app.kubernetes.io/part-of: homeassistant - app.kubernetes.io/version: 2024.2.0 + app.kubernetes.io/version: 2024.2.1 name: homeassistant namespace: homeassistant spec: @@ -24,13 +24,13 @@ spec: app.kubernetes.io/component: server app.kubernetes.io/name: homeassistant app.kubernetes.io/part-of: homeassistant - app.kubernetes.io/version: 2024.2.0 + app.kubernetes.io/version: 2024.2.1 spec: containers: - env: - name: TZ value: Europe/Berlin - image: homeassistant/home-assistant:2024.2.0 + image: homeassistant/home-assistant:2024.2.1 imagePullPolicy: IfNotPresent name: homeassistant ports: diff --git a/apps/homeassistant/settings.yaml b/apps/homeassistant/settings.yaml index d1b971b15..8c6e57223 100644 --- a/apps/homeassistant/settings.yaml +++ b/apps/homeassistant/settings.yaml @@ -3,8 +3,8 @@ common: namespace: &namespace "homeassistant" externalSecretStoreName: &externalSecretStoreName "doppler-auth-api" homeassistant: - version: "2024.2.0" # application-version-from-github: home-assistant/core - image: "homeassistant/home-assistant:2024.2.0" # application-image-from-github: home-assistant/core + version: "2024.2.1" # application-version-from-github: home-assistant/core + image: "homeassistant/home-assistant:2024.2.1" # application-image-from-github: home-assistant/core namespace: *namespace ingress: domain: "home.ankhmorpork.thaum.xyz" diff --git a/apps/homer/manifests/homer/deployment.yaml b/apps/homer/manifests/homer/deployment.yaml index e6e72ecf0..f0e5f9dec 100644 --- a/apps/homer/manifests/homer/deployment.yaml +++ b/apps/homer/manifests/homer/deployment.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: server app.kubernetes.io/name: homer app.kubernetes.io/part-of: homer - app.kubernetes.io/version: 23.02.2 + app.kubernetes.io/version: 23.10.1 name: homer namespace: homer spec: @@ -23,7 +23,7 @@ spec: app.kubernetes.io/component: server app.kubernetes.io/name: homer app.kubernetes.io/part-of: homer - app.kubernetes.io/version: 23.02.2 + app.kubernetes.io/version: 23.10.1 spec: affinity: podAntiAffinity: @@ -38,7 +38,7 @@ spec: topologyKey: kubernetes.io/hostname weight: 100 containers: - - image: b4bz/homer:v23.02.2 + - image: b4bz/homer:v23.10.1 imagePullPolicy: IfNotPresent name: homer ports: diff --git a/apps/homer/manifests/homer/ingress.yaml b/apps/homer/manifests/homer/ingress.yaml index 440cad553..218dfd754 100644 --- a/apps/homer/manifests/homer/ingress.yaml +++ b/apps/homer/manifests/homer/ingress.yaml @@ -7,7 +7,7 @@ metadata: app.kubernetes.io/component: server app.kubernetes.io/name: homer app.kubernetes.io/part-of: homer - app.kubernetes.io/version: 23.02.2 + app.kubernetes.io/version: 23.10.1 probe: enabled name: homer namespace: homer diff --git a/apps/homer/manifests/homer/service.yaml b/apps/homer/manifests/homer/service.yaml index 30750fa83..63c7b128e 100644 --- a/apps/homer/manifests/homer/service.yaml +++ b/apps/homer/manifests/homer/service.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: server app.kubernetes.io/name: homer app.kubernetes.io/part-of: homer - app.kubernetes.io/version: 23.02.2 + app.kubernetes.io/version: 23.10.1 name: homer namespace: homer spec: diff --git a/apps/homer/manifests/homer/serviceAccount.yaml b/apps/homer/manifests/homer/serviceAccount.yaml index 3d4e85c07..c319883ba 100644 --- a/apps/homer/manifests/homer/serviceAccount.yaml +++ b/apps/homer/manifests/homer/serviceAccount.yaml @@ -6,6 +6,6 @@ metadata: app.kubernetes.io/component: server app.kubernetes.io/name: homer app.kubernetes.io/part-of: homer - app.kubernetes.io/version: 23.02.2 + app.kubernetes.io/version: 23.10.1 name: homer namespace: homer diff --git a/apps/homer/settings.yaml b/apps/homer/settings.yaml index 9401e8573..b921d080b 100644 --- a/apps/homer/settings.yaml +++ b/apps/homer/settings.yaml @@ -1,7 +1,7 @@ --- homer: - version: "23.02.2" # application-version-from-github: bastienwirtz/homer - image: "b4bz/homer:v23.02.2" # application-image-from-github: bastienwirtz/homer + version: "23.10.1" # application-version-from-github: bastienwirtz/homer + image: "b4bz/homer:v23.10.1" # application-image-from-github: bastienwirtz/homer namespace: "homer" replicas: 2 domain: "ankhmorpork.thaum.xyz" diff --git a/apps/minio/release.yaml b/apps/minio/release.yaml index 67a04b847..fd43a3ef6 100644 --- a/apps/minio/release.yaml +++ b/apps/minio/release.yaml @@ -8,7 +8,7 @@ spec: chart: spec: chart: minio - version: "5.0.14" + version: "5.0.15" sourceRef: kind: HelmRepository name: minio diff --git a/apps/monitoring/manifests/alertmanager/prometheusRule.yaml b/apps/monitoring/manifests/alertmanager/prometheusRule.yaml index 9b24c6dce..9b102f483 100644 --- a/apps/monitoring/manifests/alertmanager/prometheusRule.yaml +++ b/apps/monitoring/manifests/alertmanager/prometheusRule.yaml @@ -49,7 +49,7 @@ spec: ( rate(alertmanager_notifications_failed_total{job="alertmanager-main",namespace="monitoring"}[5m]) / - rate(alertmanager_notifications_total{job="alertmanager-main",namespace="monitoring"}[5m]) + ignoring (reason) group_left rate(alertmanager_notifications_total{job="alertmanager-main",namespace="monitoring"}[5m]) ) > 0.01 for: 5m @@ -64,7 +64,7 @@ spec: min by (namespace,service, integration) ( rate(alertmanager_notifications_failed_total{job="alertmanager-main",namespace="monitoring", integration=~`.*`}[5m]) / - rate(alertmanager_notifications_total{job="alertmanager-main",namespace="monitoring", integration=~`.*`}[5m]) + ignoring (reason) group_left rate(alertmanager_notifications_total{job="alertmanager-main",namespace="monitoring", integration=~`.*`}[5m]) ) > 0.01 for: 5m @@ -79,7 +79,7 @@ spec: min by (namespace,service, integration) ( rate(alertmanager_notifications_failed_total{job="alertmanager-main",namespace="monitoring", integration!~`.*`}[5m]) / - rate(alertmanager_notifications_total{job="alertmanager-main",namespace="monitoring", integration!~`.*`}[5m]) + ignoring (reason) group_left rate(alertmanager_notifications_total{job="alertmanager-main",namespace="monitoring", integration!~`.*`}[5m]) ) > 0.01 for: 5m diff --git a/apps/monitoring/manifests/grafana/dashboardDefinitions.yaml b/apps/monitoring/manifests/grafana/dashboardDefinitions.yaml index 61d44f7d7..0dcfb6c52 100644 --- a/apps/monitoring/manifests/grafana/dashboardDefinitions.yaml +++ b/apps/monitoring/manifests/grafana/dashboardDefinitions.yaml @@ -6109,7 +6109,6 @@ items: "expr": "cluster:node_cpu:ratio_rate5m{cluster=\"$cluster\"}", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -6196,7 +6195,6 @@ items: "expr": "sum(namespace_cpu:kube_pod_container_resource_requests:sum{cluster=\"$cluster\"}) / sum(kube_node_status_allocatable{job=\"kube-state-metrics\",resource=\"cpu\",cluster=\"$cluster\"})", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -6283,7 +6281,6 @@ items: "expr": "sum(namespace_cpu:kube_pod_container_resource_limits:sum{cluster=\"$cluster\"}) / sum(kube_node_status_allocatable{job=\"kube-state-metrics\",resource=\"cpu\",cluster=\"$cluster\"})", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -6370,7 +6367,6 @@ items: "expr": "1 - sum(:node_memory_MemAvailable_bytes:sum{cluster=\"$cluster\"}) / sum(node_memory_MemTotal_bytes{job=\"node-exporter\",cluster=\"$cluster\"})", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -6457,7 +6453,6 @@ items: "expr": "sum(namespace_memory:kube_pod_container_resource_requests:sum{cluster=\"$cluster\"}) / sum(kube_node_status_allocatable{job=\"kube-state-metrics\",resource=\"memory\",cluster=\"$cluster\"})", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -6544,7 +6539,6 @@ items: "expr": "sum(namespace_memory:kube_pod_container_resource_limits:sum{cluster=\"$cluster\"}) / sum(kube_node_status_allocatable{job=\"kube-state-metrics\",resource=\"memory\",cluster=\"$cluster\"})", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -6641,7 +6635,6 @@ items: { "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\"}) by (namespace)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{namespace}}", "legendLink": null } @@ -6917,7 +6910,6 @@ items: "expr": "sum(kube_pod_owner{job=\"kube-state-metrics\", cluster=\"$cluster\"}) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -6925,7 +6917,6 @@ items: "expr": "count(avg(namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\"}) by (workload, namespace)) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -6933,7 +6924,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\"}) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -6941,7 +6931,6 @@ items: "expr": "sum(namespace_cpu:kube_pod_container_resource_requests:sum{cluster=\"$cluster\"}) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -6949,7 +6938,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\"}) by (namespace) / sum(namespace_cpu:kube_pod_container_resource_requests:sum{cluster=\"$cluster\"}) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" }, @@ -6957,7 +6945,6 @@ items: "expr": "sum(namespace_cpu:kube_pod_container_resource_limits:sum{cluster=\"$cluster\"}) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "F" }, @@ -6965,7 +6952,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\"}) by (namespace) / sum(namespace_cpu:kube_pod_container_resource_limits:sum{cluster=\"$cluster\"}) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "G" } @@ -7066,7 +7052,6 @@ items: { "expr": "sum(container_memory_rss{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", container!=\"\"}) by (namespace)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{namespace}}", "legendLink": null } @@ -7342,7 +7327,6 @@ items: "expr": "sum(kube_pod_owner{job=\"kube-state-metrics\", cluster=\"$cluster\"}) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -7350,7 +7334,6 @@ items: "expr": "count(avg(namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\"}) by (workload, namespace)) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -7358,7 +7341,6 @@ items: "expr": "sum(container_memory_rss{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", container!=\"\"}) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -7366,7 +7348,6 @@ items: "expr": "sum(namespace_memory:kube_pod_container_resource_requests:sum{cluster=\"$cluster\"}) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -7374,7 +7355,6 @@ items: "expr": "sum(container_memory_rss{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", container!=\"\"}) by (namespace) / sum(namespace_memory:kube_pod_container_resource_requests:sum{cluster=\"$cluster\"}) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" }, @@ -7382,7 +7362,6 @@ items: "expr": "sum(namespace_memory:kube_pod_container_resource_limits:sum{cluster=\"$cluster\"}) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "F" }, @@ -7390,7 +7369,6 @@ items: "expr": "sum(container_memory_rss{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", container!=\"\"}) by (namespace) / sum(namespace_memory:kube_pod_container_resource_limits:sum{cluster=\"$cluster\"}) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "G" } @@ -7648,7 +7626,6 @@ items: "expr": "sum(irate(container_network_receive_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=~\".+\"}[$__rate_interval])) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -7656,7 +7633,6 @@ items: "expr": "sum(irate(container_network_transmit_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=~\".+\"}[$__rate_interval])) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -7664,7 +7640,6 @@ items: "expr": "sum(irate(container_network_receive_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=~\".+\"}[$__rate_interval])) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -7672,7 +7647,6 @@ items: "expr": "sum(irate(container_network_transmit_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=~\".+\"}[$__rate_interval])) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -7680,7 +7654,6 @@ items: "expr": "sum(irate(container_network_receive_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=~\".+\"}[$__rate_interval])) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" }, @@ -7688,7 +7661,6 @@ items: "expr": "sum(irate(container_network_transmit_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=~\".+\"}[$__rate_interval])) by (namespace)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "F" } @@ -7789,7 +7761,6 @@ items: { "expr": "sum(irate(container_network_receive_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=~\".+\"}[$__rate_interval])) by (namespace)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{namespace}}", "legendLink": null } @@ -7877,7 +7848,6 @@ items: { "expr": "sum(irate(container_network_transmit_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=~\".+\"}[$__rate_interval])) by (namespace)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{namespace}}", "legendLink": null } @@ -7977,7 +7947,6 @@ items: { "expr": "avg(irate(container_network_receive_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=~\".+\"}[$__rate_interval])) by (namespace)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{namespace}}", "legendLink": null } @@ -8065,7 +8034,6 @@ items: { "expr": "avg(irate(container_network_transmit_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=~\".+\"}[$__rate_interval])) by (namespace)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{namespace}}", "legendLink": null } @@ -8165,7 +8133,6 @@ items: { "expr": "sum(irate(container_network_receive_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=~\".+\"}[$__rate_interval])) by (namespace)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{namespace}}", "legendLink": null } @@ -8253,7 +8220,6 @@ items: { "expr": "sum(irate(container_network_transmit_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=~\".+\"}[$__rate_interval])) by (namespace)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{namespace}}", "legendLink": null } @@ -8353,7 +8319,6 @@ items: { "expr": "sum(irate(container_network_receive_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=~\".+\"}[$__rate_interval])) by (namespace)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{namespace}}", "legendLink": null } @@ -8441,7 +8406,6 @@ items: { "expr": "sum(irate(container_network_transmit_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=~\".+\"}[$__rate_interval])) by (namespace)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{namespace}}", "legendLink": null } @@ -8542,7 +8506,6 @@ items: { "expr": "ceil(sum by(namespace) (rate(container_fs_reads_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", container!=\"\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", cluster=\"$cluster\", namespace!=\"\"}[$__rate_interval]) + rate(container_fs_writes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", container!=\"\", cluster=\"$cluster\", namespace!=\"\"}[$__rate_interval])))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{namespace}}", "legendLink": null } @@ -8630,7 +8593,6 @@ items: { "expr": "sum by(namespace) (rate(container_fs_reads_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", container!=\"\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", cluster=\"$cluster\", namespace!=\"\"}[$__rate_interval]) + rate(container_fs_writes_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", container!=\"\", cluster=\"$cluster\", namespace!=\"\"}[$__rate_interval]))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{namespace}}", "legendLink": null } @@ -8891,7 +8853,6 @@ items: "expr": "sum by(namespace) (rate(container_fs_reads_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace!=\"\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -8899,7 +8860,6 @@ items: "expr": "sum by(namespace) (rate(container_fs_writes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace!=\"\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -8907,7 +8867,6 @@ items: "expr": "sum by(namespace) (rate(container_fs_reads_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace!=\"\"}[$__rate_interval]) + rate(container_fs_writes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace!=\"\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -8915,7 +8874,6 @@ items: "expr": "sum by(namespace) (rate(container_fs_reads_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace!=\"\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -8923,7 +8881,6 @@ items: "expr": "sum by(namespace) (rate(container_fs_writes_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace!=\"\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" }, @@ -8931,7 +8888,6 @@ items: "expr": "sum by(namespace) (rate(container_fs_reads_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace!=\"\"}[$__rate_interval]) + rate(container_fs_writes_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace!=\"\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "F" } @@ -9148,7 +9104,6 @@ items: "expr": "cluster:node_cpu:ratio_rate5m", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -9235,7 +9190,6 @@ items: "expr": "sum(kube_pod_container_resource_requests{job=\"kube-state-metrics\", resource=\"cpu\"}) / sum(kube_node_status_allocatable{job=\"kube-state-metrics\", resource=\"cpu\"})", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -9322,7 +9276,6 @@ items: "expr": "sum(kube_pod_container_resource_limits{job=\"kube-state-metrics\", resource=\"cpu\"}) / sum(kube_node_status_allocatable{job=\"kube-state-metrics\", resource=\"cpu\"})", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -9409,7 +9362,6 @@ items: "expr": "1 - sum(:node_memory_MemAvailable_bytes:sum) / sum(node_memory_MemTotal_bytes{job=\"node-exporter\"})", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -9496,7 +9448,6 @@ items: "expr": "sum(kube_pod_container_resource_requests{job=\"kube-state-metrics\", resource=\"memory\"}) / sum(kube_node_status_allocatable{job=\"kube-state-metrics\", resource=\"memory\"})", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -9583,7 +9534,6 @@ items: "expr": "sum(kube_pod_container_resource_limits{job=\"kube-state-metrics\", resource=\"memory\"}) / sum(kube_node_status_allocatable{job=\"kube-state-metrics\", resource=\"memory\"})", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -9680,7 +9630,6 @@ items: { "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate) by (cluster)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{cluster}}", "legendLink": null } @@ -9918,7 +9867,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate) by (cluster)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -9926,7 +9874,6 @@ items: "expr": "sum(kube_pod_container_resource_requests{job=\"kube-state-metrics\", resource=\"cpu\"}) by (cluster)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -9934,7 +9881,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate) by (cluster) / sum(kube_pod_container_resource_requests{job=\"kube-state-metrics\", resource=\"cpu\"}) by (cluster)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -9942,7 +9888,6 @@ items: "expr": "sum(kube_pod_container_resource_limits{job=\"kube-state-metrics\", resource=\"cpu\"}) by (cluster)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -9950,7 +9895,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate) by (cluster) / sum(kube_pod_container_resource_limits{job=\"kube-state-metrics\", resource=\"cpu\"}) by (cluster)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" } @@ -10051,7 +9995,6 @@ items: { "expr": "sum(container_memory_rss{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", container!=\"\"}) by (cluster)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{cluster}}", "legendLink": null } @@ -10289,7 +10232,6 @@ items: "expr": "sum(container_memory_rss{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", container!=\"\"}) by (cluster)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -10297,7 +10239,6 @@ items: "expr": "sum(kube_pod_container_resource_requests{job=\"kube-state-metrics\", resource=\"memory\"}) by (cluster)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -10305,7 +10246,6 @@ items: "expr": "sum(container_memory_rss{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", container!=\"\"}) by (cluster) / sum(kube_pod_container_resource_requests{job=\"kube-state-metrics\", resource=\"memory\"}) by (cluster)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -10313,7 +10253,6 @@ items: "expr": "sum(kube_pod_container_resource_limits{job=\"kube-state-metrics\", resource=\"memory\"}) by (cluster)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -10321,7 +10260,6 @@ items: "expr": "sum(container_memory_rss{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", container!=\"\"}) by (cluster) / sum(kube_pod_container_resource_limits{job=\"kube-state-metrics\", resource=\"memory\"}) by (cluster)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" } @@ -10511,7 +10449,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\"}) / sum(kube_pod_container_resource_requests{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"cpu\"})", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -10598,7 +10535,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\"}) / sum(kube_pod_container_resource_limits{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"cpu\"})", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -10685,7 +10621,6 @@ items: "expr": "sum(container_memory_working_set_bytes{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\",container!=\"\", image!=\"\"}) / sum(kube_pod_container_resource_requests{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"memory\"})", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -10772,7 +10707,6 @@ items: "expr": "sum(container_memory_working_set_bytes{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\",container!=\"\", image!=\"\"}) / sum(kube_pod_container_resource_limits{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"memory\"})", "format": "time_series", "instant": true, - "intervalFactor": 2, "refId": "A" } ], @@ -10890,21 +10824,18 @@ items: { "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\"}) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null }, { "expr": "scalar(kube_resourcequota{cluster=\"$cluster\", namespace=\"$namespace\", type=\"hard\",resource=\"requests.cpu\"})", "format": "time_series", - "intervalFactor": 2, "legendFormat": "quota - requests", "legendLink": null }, { "expr": "scalar(kube_resourcequota{cluster=\"$cluster\", namespace=\"$namespace\", type=\"hard\",resource=\"limits.cpu\"})", "format": "time_series", - "intervalFactor": 2, "legendFormat": "quota - limits", "legendLink": null } @@ -11142,7 +11073,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -11150,7 +11080,6 @@ items: "expr": "sum(cluster:namespace:pod_cpu:active:kube_pod_container_resource_requests{cluster=\"$cluster\", namespace=\"$namespace\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -11158,7 +11087,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\"}) by (pod) / sum(cluster:namespace:pod_cpu:active:kube_pod_container_resource_requests{cluster=\"$cluster\", namespace=\"$namespace\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -11166,7 +11094,6 @@ items: "expr": "sum(cluster:namespace:pod_cpu:active:kube_pod_container_resource_limits{cluster=\"$cluster\", namespace=\"$namespace\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -11174,7 +11101,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\"}) by (pod) / sum(cluster:namespace:pod_cpu:active:kube_pod_container_resource_limits{cluster=\"$cluster\", namespace=\"$namespace\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" } @@ -11296,21 +11222,18 @@ items: { "expr": "sum(container_memory_working_set_bytes{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", container!=\"\", image!=\"\"}) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null }, { "expr": "scalar(kube_resourcequota{cluster=\"$cluster\", namespace=\"$namespace\", type=\"hard\",resource=\"requests.memory\"})", "format": "time_series", - "intervalFactor": 2, "legendFormat": "quota - requests", "legendLink": null }, { "expr": "scalar(kube_resourcequota{cluster=\"$cluster\", namespace=\"$namespace\", type=\"hard\",resource=\"limits.memory\"})", "format": "time_series", - "intervalFactor": 2, "legendFormat": "quota - limits", "legendLink": null } @@ -11605,7 +11528,6 @@ items: "expr": "sum(container_memory_working_set_bytes{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\",container!=\"\", image!=\"\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -11613,7 +11535,6 @@ items: "expr": "sum(cluster:namespace:pod_memory:active:kube_pod_container_resource_requests{cluster=\"$cluster\", namespace=\"$namespace\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -11621,7 +11542,6 @@ items: "expr": "sum(container_memory_working_set_bytes{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\",container!=\"\", image!=\"\"}) by (pod) / sum(cluster:namespace:pod_memory:active:kube_pod_container_resource_requests{cluster=\"$cluster\", namespace=\"$namespace\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -11629,7 +11549,6 @@ items: "expr": "sum(cluster:namespace:pod_memory:active:kube_pod_container_resource_limits{cluster=\"$cluster\", namespace=\"$namespace\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -11637,7 +11556,6 @@ items: "expr": "sum(container_memory_working_set_bytes{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\",container!=\"\", image!=\"\"}) by (pod) / sum(cluster:namespace:pod_memory:active:kube_pod_container_resource_limits{cluster=\"$cluster\", namespace=\"$namespace\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" }, @@ -11645,7 +11563,6 @@ items: "expr": "sum(container_memory_rss{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\",container!=\"\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "F" }, @@ -11653,7 +11570,6 @@ items: "expr": "sum(container_memory_cache{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\",container!=\"\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "G" }, @@ -11661,7 +11577,6 @@ items: "expr": "sum(container_memory_swap{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\",container!=\"\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "H" } @@ -11919,7 +11834,6 @@ items: "expr": "sum(irate(container_network_receive_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -11927,7 +11841,6 @@ items: "expr": "sum(irate(container_network_transmit_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -11935,7 +11848,6 @@ items: "expr": "sum(irate(container_network_receive_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -11943,7 +11855,6 @@ items: "expr": "sum(irate(container_network_transmit_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -11951,7 +11862,6 @@ items: "expr": "sum(irate(container_network_receive_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" }, @@ -11959,7 +11869,6 @@ items: "expr": "sum(irate(container_network_transmit_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "F" } @@ -12060,7 +11969,6 @@ items: { "expr": "sum(irate(container_network_receive_bytes_total{cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -12148,7 +12056,6 @@ items: { "expr": "sum(irate(container_network_transmit_bytes_total{cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -12248,7 +12155,6 @@ items: { "expr": "sum(irate(container_network_receive_packets_total{cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -12336,7 +12242,6 @@ items: { "expr": "sum(irate(container_network_transmit_packets_total{cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -12436,7 +12341,6 @@ items: { "expr": "sum(irate(container_network_receive_packets_dropped_total{cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -12524,7 +12428,6 @@ items: { "expr": "sum(irate(container_network_transmit_packets_dropped_total{cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -12625,7 +12528,6 @@ items: { "expr": "ceil(sum by(pod) (rate(container_fs_reads_total{container!=\"\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval]) + rate(container_fs_writes_total{container!=\"\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -12713,7 +12615,6 @@ items: { "expr": "sum by(pod) (rate(container_fs_reads_bytes_total{container!=\"\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval]) + rate(container_fs_writes_bytes_total{container!=\"\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval]))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -12974,7 +12875,6 @@ items: "expr": "sum by(pod) (rate(container_fs_reads_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -12982,7 +12882,6 @@ items: "expr": "sum by(pod) (rate(container_fs_writes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -12990,7 +12889,6 @@ items: "expr": "sum by(pod) (rate(container_fs_reads_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval]) + rate(container_fs_writes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -12998,7 +12896,6 @@ items: "expr": "sum by(pod) (rate(container_fs_reads_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -13006,7 +12903,6 @@ items: "expr": "sum by(pod) (rate(container_fs_writes_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" }, @@ -13014,7 +12910,6 @@ items: "expr": "sum by(pod) (rate(container_fs_reads_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval]) + rate(container_fs_writes_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "F" } @@ -13266,14 +13161,12 @@ items: { "expr": "sum(kube_node_status_capacity{cluster=\"$cluster\", node=~\"$node\", resource=\"cpu\"})", "format": "time_series", - "intervalFactor": 2, "legendFormat": "max capacity", "legendLink": null }, { "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", node=~\"$node\"}) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -13511,7 +13404,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", node=~\"$node\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -13519,7 +13411,6 @@ items: "expr": "sum(cluster:namespace:pod_cpu:active:kube_pod_container_resource_requests{cluster=\"$cluster\", node=~\"$node\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -13527,7 +13418,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", node=~\"$node\"}) by (pod) / sum(cluster:namespace:pod_cpu:active:kube_pod_container_resource_requests{cluster=\"$cluster\", node=~\"$node\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -13535,7 +13425,6 @@ items: "expr": "sum(cluster:namespace:pod_cpu:active:kube_pod_container_resource_limits{cluster=\"$cluster\", node=~\"$node\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -13543,7 +13432,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", node=~\"$node\"}) by (pod) / sum(cluster:namespace:pod_cpu:active:kube_pod_container_resource_limits{cluster=\"$cluster\", node=~\"$node\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" } @@ -13654,14 +13542,12 @@ items: { "expr": "sum(kube_node_status_capacity{cluster=\"$cluster\", node=~\"$node\", resource=\"memory\"})", "format": "time_series", - "intervalFactor": 2, "legendFormat": "max capacity", "legendLink": null }, { "expr": "sum(node_namespace_pod_container:container_memory_working_set_bytes{cluster=\"$cluster\", node=~\"$node\", container!=\"\"}) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -13956,7 +13842,6 @@ items: "expr": "sum(node_namespace_pod_container:container_memory_working_set_bytes{cluster=\"$cluster\", node=~\"$node\",container!=\"\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -13964,7 +13849,6 @@ items: "expr": "sum(cluster:namespace:pod_memory:active:kube_pod_container_resource_requests{cluster=\"$cluster\", node=~\"$node\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -13972,7 +13856,6 @@ items: "expr": "sum(node_namespace_pod_container:container_memory_working_set_bytes{cluster=\"$cluster\", node=~\"$node\",container!=\"\"}) by (pod) / sum(cluster:namespace:pod_memory:active:kube_pod_container_resource_requests{cluster=\"$cluster\", node=~\"$node\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -13980,7 +13863,6 @@ items: "expr": "sum(cluster:namespace:pod_memory:active:kube_pod_container_resource_limits{cluster=\"$cluster\", node=~\"$node\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -13988,7 +13870,6 @@ items: "expr": "sum(node_namespace_pod_container:container_memory_working_set_bytes{cluster=\"$cluster\", node=~\"$node\",container!=\"\"}) by (pod) / sum(cluster:namespace:pod_memory:active:kube_pod_container_resource_limits{cluster=\"$cluster\", node=~\"$node\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" }, @@ -13996,7 +13877,6 @@ items: "expr": "sum(node_namespace_pod_container:container_memory_rss{cluster=\"$cluster\", node=~\"$node\",container!=\"\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "F" }, @@ -14004,7 +13884,6 @@ items: "expr": "sum(node_namespace_pod_container:container_memory_cache{cluster=\"$cluster\", node=~\"$node\",container!=\"\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "G" }, @@ -14012,7 +13891,6 @@ items: "expr": "sum(node_namespace_pod_container:container_memory_swap{cluster=\"$cluster\", node=~\"$node\",container!=\"\"}) by (pod)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "H" } @@ -14271,21 +14149,18 @@ items: { "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{namespace=\"$namespace\", pod=\"$pod\", cluster=\"$cluster\"}) by (container)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{container}}", "legendLink": null }, { "expr": "sum(\n kube_pod_container_resource_requests{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\", resource=\"cpu\"}\n)\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "requests", "legendLink": null }, { "expr": "sum(\n kube_pod_container_resource_limits{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\", resource=\"cpu\"}\n)\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "limits", "legendLink": null } @@ -14385,7 +14260,6 @@ items: { "expr": "sum(increase(container_cpu_cfs_throttled_periods_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", namespace=\"$namespace\", pod=\"$pod\", container!=\"\", cluster=\"$cluster\"}[$__rate_interval])) by (container) /sum(increase(container_cpu_cfs_periods_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", namespace=\"$namespace\", pod=\"$pod\", container!=\"\", cluster=\"$cluster\"}[$__rate_interval])) by (container)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{container}}", "legendLink": null } @@ -14630,7 +14504,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}) by (container)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -14638,7 +14511,6 @@ items: "expr": "sum(cluster:namespace:pod_cpu:active:kube_pod_container_resource_requests{cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}) by (container)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -14646,7 +14518,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}) by (container) / sum(cluster:namespace:pod_cpu:active:kube_pod_container_resource_requests{cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}) by (container)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -14654,7 +14525,6 @@ items: "expr": "sum(cluster:namespace:pod_cpu:active:kube_pod_container_resource_limits{cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}) by (container)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -14662,7 +14532,6 @@ items: "expr": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}) by (container) / sum(cluster:namespace:pod_cpu:active:kube_pod_container_resource_limits{cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}) by (container)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" } @@ -14782,21 +14651,18 @@ items: { "expr": "sum(container_memory_working_set_bytes{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\", container!=\"\", image!=\"\"}) by (container)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{container}}", "legendLink": null }, { "expr": "sum(\n kube_pod_container_resource_requests{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\", resource=\"memory\"}\n)\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "requests", "legendLink": null }, { "expr": "sum(\n kube_pod_container_resource_limits{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\", resource=\"memory\"}\n)\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "limits", "legendLink": null } @@ -15091,7 +14957,6 @@ items: "expr": "sum(container_memory_working_set_bytes{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\", container!=\"\", image!=\"\"}) by (container)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -15099,7 +14964,6 @@ items: "expr": "sum(cluster:namespace:pod_memory:active:kube_pod_container_resource_requests{cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}) by (container)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -15107,7 +14971,6 @@ items: "expr": "sum(container_memory_working_set_bytes{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\", image!=\"\"}) by (container) / sum(cluster:namespace:pod_memory:active:kube_pod_container_resource_requests{cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}) by (container)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -15115,7 +14978,6 @@ items: "expr": "sum(cluster:namespace:pod_memory:active:kube_pod_container_resource_limits{cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}) by (container)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -15123,7 +14985,6 @@ items: "expr": "sum(container_memory_working_set_bytes{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\", container!=\"\", image!=\"\"}) by (container) / sum(cluster:namespace:pod_memory:active:kube_pod_container_resource_limits{cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}) by (container)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" }, @@ -15131,7 +14992,6 @@ items: "expr": "sum(container_memory_rss{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\", container != \"\", container != \"POD\"}) by (container)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "F" }, @@ -15139,7 +14999,6 @@ items: "expr": "sum(container_memory_cache{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\", container != \"\", container != \"POD\"}) by (container)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "G" }, @@ -15147,7 +15006,6 @@ items: "expr": "sum(container_memory_swap{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\", container != \"\", container != \"POD\"}) by (container)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "H" } @@ -15248,7 +15106,6 @@ items: { "expr": "sum(irate(container_network_receive_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", pod=~\"$pod\"}[$__rate_interval])) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -15336,7 +15193,6 @@ items: { "expr": "sum(irate(container_network_transmit_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", pod=~\"$pod\"}[$__rate_interval])) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -15436,7 +15292,6 @@ items: { "expr": "sum(irate(container_network_receive_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", pod=~\"$pod\"}[$__rate_interval])) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -15524,7 +15379,6 @@ items: { "expr": "sum(irate(container_network_transmit_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", pod=~\"$pod\"}[$__rate_interval])) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -15624,7 +15478,6 @@ items: { "expr": "sum(irate(container_network_receive_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", pod=~\"$pod\"}[$__rate_interval])) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -15712,7 +15565,6 @@ items: { "expr": "sum(irate(container_network_transmit_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", pod=~\"$pod\"}[$__rate_interval])) by (pod)", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -15813,14 +15665,12 @@ items: { "expr": "ceil(sum by(pod) (rate(container_fs_reads_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=~\"$pod\"}[$__rate_interval])))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "Reads", "legendLink": null }, { "expr": "ceil(sum by(pod) (rate(container_fs_writes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\",namespace=\"$namespace\", pod=~\"$pod\"}[$__rate_interval])))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "Writes", "legendLink": null } @@ -15908,14 +15758,12 @@ items: { "expr": "sum by(pod) (rate(container_fs_reads_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=~\"$pod\"}[$__rate_interval]))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "Reads", "legendLink": null }, { "expr": "sum by(pod) (rate(container_fs_writes_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=~\"$pod\"}[$__rate_interval]))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "Writes", "legendLink": null } @@ -16016,7 +15864,6 @@ items: { "expr": "ceil(sum by(container) (rate(container_fs_reads_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}[$__rate_interval]) + rate(container_fs_writes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}[$__rate_interval])))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{container}}", "legendLink": null } @@ -16104,7 +15951,6 @@ items: { "expr": "sum by(container) (rate(container_fs_reads_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}[$__rate_interval]) + rate(container_fs_writes_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}[$__rate_interval]))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{container}}", "legendLink": null } @@ -16365,7 +16211,6 @@ items: "expr": "sum by(container) (rate(container_fs_reads_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -16373,7 +16218,6 @@ items: "expr": "sum by(container) (rate(container_fs_writes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\",device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -16381,7 +16225,6 @@ items: "expr": "sum by(container) (rate(container_fs_reads_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}[$__rate_interval]) + rate(container_fs_writes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -16389,7 +16232,6 @@ items: "expr": "sum by(container) (rate(container_fs_reads_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -16397,7 +16239,6 @@ items: "expr": "sum by(container) (rate(container_fs_writes_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" }, @@ -16405,7 +16246,6 @@ items: "expr": "sum by(container) (rate(container_fs_reads_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}[$__rate_interval]) + rate(container_fs_writes_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"$cluster\", namespace=\"$namespace\", pod=\"$pod\"}[$__rate_interval]))", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "F" } @@ -16674,7 +16514,6 @@ items: { "expr": "sum(\n node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -16912,7 +16751,6 @@ items: "expr": "sum(\n node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -16920,7 +16758,6 @@ items: "expr": "sum(\n kube_pod_container_resource_requests{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"cpu\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -16928,7 +16765,6 @@ items: "expr": "sum(\n node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n/sum(\n kube_pod_container_resource_requests{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"cpu\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -16936,7 +16772,6 @@ items: "expr": "sum(\n kube_pod_container_resource_limits{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"cpu\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -16944,7 +16779,6 @@ items: "expr": "sum(\n node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n/sum(\n kube_pod_container_resource_limits{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"cpu\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" } @@ -17045,7 +16879,6 @@ items: { "expr": "sum(\n container_memory_working_set_bytes{cluster=\"$cluster\", namespace=\"$namespace\", container!=\"\", image!=\"\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -17283,7 +17116,6 @@ items: "expr": "sum(\n container_memory_working_set_bytes{cluster=\"$cluster\", namespace=\"$namespace\", container!=\"\", image!=\"\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -17291,7 +17123,6 @@ items: "expr": "sum(\n kube_pod_container_resource_requests{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"memory\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -17299,7 +17130,6 @@ items: "expr": "sum(\n container_memory_working_set_bytes{cluster=\"$cluster\", namespace=\"$namespace\", container!=\"\", image!=\"\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n/sum(\n kube_pod_container_resource_requests{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"memory\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -17307,7 +17137,6 @@ items: "expr": "sum(\n kube_pod_container_resource_limits{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"memory\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -17315,7 +17144,6 @@ items: "expr": "sum(\n container_memory_working_set_bytes{cluster=\"$cluster\", namespace=\"$namespace\", container!=\"\", image!=\"\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n/sum(\n kube_pod_container_resource_limits{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"memory\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=\"$workload\", workload_type=~\"$type\"}\n) by (pod)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" } @@ -17573,7 +17401,6 @@ items: "expr": "(sum(irate(container_network_receive_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\"$workload\", workload_type=~\"$type\"}) by (pod))\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -17581,7 +17408,6 @@ items: "expr": "(sum(irate(container_network_transmit_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\"$workload\", workload_type=~\"$type\"}) by (pod))\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -17589,7 +17415,6 @@ items: "expr": "(sum(irate(container_network_receive_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\"$workload\", workload_type=~\"$type\"}) by (pod))\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -17597,7 +17422,6 @@ items: "expr": "(sum(irate(container_network_transmit_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\"$workload\", workload_type=~\"$type\"}) by (pod))\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -17605,7 +17429,6 @@ items: "expr": "(sum(irate(container_network_receive_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\"$workload\", workload_type=~\"$type\"}) by (pod))\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" }, @@ -17613,7 +17436,6 @@ items: "expr": "(sum(irate(container_network_transmit_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\"$workload\", workload_type=~\"$type\"}) by (pod))\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "F" } @@ -17714,7 +17536,6 @@ items: { "expr": "(sum(irate(container_network_receive_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\"$workload\", workload_type=~\"$type\"}) by (pod))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -17802,7 +17623,6 @@ items: { "expr": "(sum(irate(container_network_transmit_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\"$workload\", workload_type=~\"$type\"}) by (pod))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -17902,7 +17722,6 @@ items: { "expr": "(avg(irate(container_network_receive_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\"$workload\", workload_type=~\"$type\"}) by (pod))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -17990,7 +17809,6 @@ items: { "expr": "(avg(irate(container_network_transmit_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\"$workload\", workload_type=~\"$type\"}) by (pod))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -18090,7 +17908,6 @@ items: { "expr": "(sum(irate(container_network_receive_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\"$workload\", workload_type=~\"$type\"}) by (pod))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -18178,7 +17995,6 @@ items: { "expr": "(sum(irate(container_network_transmit_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\"$workload\", workload_type=~\"$type\"}) by (pod))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -18278,7 +18094,6 @@ items: { "expr": "(sum(irate(container_network_receive_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\"$workload\", workload_type=~\"$type\"}) by (pod))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -18366,7 +18181,6 @@ items: { "expr": "(sum(irate(container_network_transmit_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\"$workload\", workload_type=~\"$type\"}) by (pod))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{pod}}", "legendLink": null } @@ -18682,21 +18496,18 @@ items: { "expr": "sum(\n node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\"}\n* on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{workload}} - {{workload_type}}", "legendLink": null }, { "expr": "scalar(kube_resourcequota{cluster=\"$cluster\", namespace=\"$namespace\", type=\"hard\",resource=\"requests.cpu\"})", "format": "time_series", - "intervalFactor": 2, "legendFormat": "quota - requests", "legendLink": null }, { "expr": "scalar(kube_resourcequota{cluster=\"$cluster\", namespace=\"$namespace\", type=\"hard\",resource=\"limits.cpu\"})", "format": "time_series", - "intervalFactor": 2, "legendFormat": "quota - limits", "legendLink": null } @@ -18972,7 +18783,6 @@ items: "expr": "count(namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}) by (workload, workload_type)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -18980,7 +18790,6 @@ items: "expr": "sum(\n node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\"}\n* on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -18988,7 +18797,6 @@ items: "expr": "sum(\n kube_pod_container_resource_requests{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"cpu\"}\n* on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -18996,7 +18804,6 @@ items: "expr": "sum(\n node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\"}\n* on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n/sum(\n kube_pod_container_resource_requests{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"cpu\"}\n* on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -19004,7 +18811,6 @@ items: "expr": "sum(\n kube_pod_container_resource_limits{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"cpu\"}\n* on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" }, @@ -19012,7 +18818,6 @@ items: "expr": "sum(\n node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"$cluster\", namespace=\"$namespace\"}\n* on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n/sum(\n kube_pod_container_resource_limits{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"cpu\"}\n* on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "F" } @@ -19134,21 +18939,18 @@ items: { "expr": "sum(\n container_memory_working_set_bytes{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", container!=\"\", image!=\"\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{workload}} - {{workload_type}}", "legendLink": null }, { "expr": "scalar(kube_resourcequota{cluster=\"$cluster\", namespace=\"$namespace\", type=\"hard\",resource=\"requests.memory\"})", "format": "time_series", - "intervalFactor": 2, "legendFormat": "quota - requests", "legendLink": null }, { "expr": "scalar(kube_resourcequota{cluster=\"$cluster\", namespace=\"$namespace\", type=\"hard\",resource=\"limits.memory\"})", "format": "time_series", - "intervalFactor": 2, "legendFormat": "quota - limits", "legendLink": null } @@ -19424,7 +19226,6 @@ items: "expr": "count(namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}) by (workload, workload_type)", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -19432,7 +19233,6 @@ items: "expr": "sum(\n container_memory_working_set_bytes{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", container!=\"\", image!=\"\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -19440,7 +19240,6 @@ items: "expr": "sum(\n kube_pod_container_resource_requests{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"memory\"}\n* on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -19448,7 +19247,6 @@ items: "expr": "sum(\n container_memory_working_set_bytes{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", container!=\"\", image!=\"\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n/sum(\n kube_pod_container_resource_requests{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"memory\"}\n* on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -19456,7 +19254,6 @@ items: "expr": "sum(\n kube_pod_container_resource_limits{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"memory\"}\n* on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" }, @@ -19464,7 +19261,6 @@ items: "expr": "sum(\n container_memory_working_set_bytes{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\", container!=\"\", image!=\"\"}\n * on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n/sum(\n kube_pod_container_resource_limits{job=\"kube-state-metrics\", cluster=\"$cluster\", namespace=\"$namespace\", resource=\"memory\"}\n* on(namespace,pod)\n group_left(workload, workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}\n) by (workload, workload_type)\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "F" } @@ -19741,7 +19537,6 @@ items: "expr": "(sum(irate(container_network_receive_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}) by (workload))\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -19749,7 +19544,6 @@ items: "expr": "(sum(irate(container_network_transmit_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}) by (workload))\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" }, @@ -19757,7 +19551,6 @@ items: "expr": "(sum(irate(container_network_receive_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}) by (workload))\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "C" }, @@ -19765,7 +19558,6 @@ items: "expr": "(sum(irate(container_network_transmit_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}) by (workload))\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "D" }, @@ -19773,7 +19565,6 @@ items: "expr": "(sum(irate(container_network_receive_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}) by (workload))\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "E" }, @@ -19781,7 +19572,6 @@ items: "expr": "(sum(irate(container_network_transmit_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload_type=~\"$type\"}) by (workload))\n", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "F" } @@ -19882,7 +19672,6 @@ items: { "expr": "(sum(irate(container_network_receive_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\".+\", workload_type=~\"$type\"}) by (workload))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{workload}}", "legendLink": null } @@ -19970,7 +19759,6 @@ items: { "expr": "(sum(irate(container_network_transmit_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\".+\", workload_type=~\"$type\"}) by (workload))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{workload}}", "legendLink": null } @@ -20070,7 +19858,6 @@ items: { "expr": "(avg(irate(container_network_receive_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\".+\", workload_type=~\"$type\"}) by (workload))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{workload}}", "legendLink": null } @@ -20158,7 +19945,6 @@ items: { "expr": "(avg(irate(container_network_transmit_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\".+\", workload_type=~\"$type\"}) by (workload))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{workload}}", "legendLink": null } @@ -20258,7 +20044,6 @@ items: { "expr": "(sum(irate(container_network_receive_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\".+\", workload_type=~\"$type\"}) by (workload))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{workload}}", "legendLink": null } @@ -20346,7 +20131,6 @@ items: { "expr": "(sum(irate(container_network_transmit_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\".+\", workload_type=~\"$type\"}) by (workload))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{workload}}", "legendLink": null } @@ -20446,7 +20230,6 @@ items: { "expr": "(sum(irate(container_network_receive_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\".+\", workload_type=~\"$type\"}) by (workload))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{workload}}", "legendLink": null } @@ -20534,7 +20317,6 @@ items: { "expr": "(sum(irate(container_network_transmit_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"$cluster\", namespace=\"$namespace\"}[$__rate_interval])\n* on (namespace,pod)\ngroup_left(workload,workload_type) namespace_workload_pod:kube_pod_owner:relabel{cluster=\"$cluster\", namespace=\"$namespace\", workload=~\".+\", workload_type=~\"$type\"}) by (workload))\n", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{workload}}", "legendLink": null } @@ -32283,7 +32065,7 @@ items: "steppedLine": false, "targets": [ { - "expr": "(\n prometheus_remote_storage_highest_timestamp_in_seconds{cluster=~\"$cluster\", instance=~\"$instance\"} \n- \n ignoring(remote_name, url) group_right(instance) (prometheus_remote_storage_queue_highest_sent_timestamp_seconds{cluster=~\"$cluster\", instance=~\"$instance\"} != 0)\n)\n", + "expr": "(\n prometheus_remote_storage_highest_timestamp_in_seconds{cluster=~\"$cluster\", instance=~\"$instance\"} \n- \n ignoring(remote_name, url) group_right(instance) (prometheus_remote_storage_queue_highest_sent_timestamp_seconds{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"} != 0)\n)\n", "format": "time_series", "intervalFactor": 2, "legendFormat": "{{cluster}}:{{instance}} {{remote_name}}:{{url}}", @@ -32376,7 +32158,7 @@ items: "steppedLine": false, "targets": [ { - "expr": "clamp_min(\n rate(prometheus_remote_storage_highest_timestamp_in_seconds{cluster=~\"$cluster\", instance=~\"$instance\"}[5m]) \n- \n ignoring (remote_name, url) group_right(instance) rate(prometheus_remote_storage_queue_highest_sent_timestamp_seconds{cluster=~\"$cluster\", instance=~\"$instance\"}[5m])\n, 0)\n", + "expr": "clamp_min(\n rate(prometheus_remote_storage_highest_timestamp_in_seconds{cluster=~\"$cluster\", instance=~\"$instance\"}[5m]) \n- \n ignoring (remote_name, url) group_right(instance) rate(prometheus_remote_storage_queue_highest_sent_timestamp_seconds{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}[5m])\n, 0)\n", "format": "time_series", "intervalFactor": 2, "legendFormat": "{{cluster}}:{{instance}} {{remote_name}}:{{url}}", @@ -32482,7 +32264,7 @@ items: "steppedLine": false, "targets": [ { - "expr": "rate(\n prometheus_remote_storage_samples_in_total{cluster=~\"$cluster\", instance=~\"$instance\"}[5m])\n- \n ignoring(remote_name, url) group_right(instance) (rate(prometheus_remote_storage_succeeded_samples_total{cluster=~\"$cluster\", instance=~\"$instance\"}[5m]) or rate(prometheus_remote_storage_samples_total{cluster=~\"$cluster\", instance=~\"$instance\"}[5m]))\n- \n (rate(prometheus_remote_storage_dropped_samples_total{cluster=~\"$cluster\", instance=~\"$instance\"}[5m]) or rate(prometheus_remote_storage_samples_dropped_total{cluster=~\"$cluster\", instance=~\"$instance\"}[5m]))\n", + "expr": "rate(\n prometheus_remote_storage_samples_in_total{cluster=~\"$cluster\", instance=~\"$instance\"}[5m])\n- \n ignoring(remote_name, url) group_right(instance) (rate(prometheus_remote_storage_succeeded_samples_total{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}[5m]) or rate(prometheus_remote_storage_samples_total{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}[5m]))\n- \n (rate(prometheus_remote_storage_dropped_samples_total{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}[5m]) or rate(prometheus_remote_storage_samples_dropped_total{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}[5m]))\n", "format": "time_series", "intervalFactor": 2, "legendFormat": "{{cluster}}:{{instance}} {{remote_name}}:{{url}}", @@ -32589,7 +32371,7 @@ items: "steppedLine": false, "targets": [ { - "expr": "prometheus_remote_storage_shards{cluster=~\"$cluster\", instance=~\"$instance\"}", + "expr": "prometheus_remote_storage_shards{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "{{cluster}}:{{instance}} {{remote_name}}:{{url}}", @@ -32682,7 +32464,7 @@ items: "steppedLine": false, "targets": [ { - "expr": "prometheus_remote_storage_shards_max{cluster=~\"$cluster\", instance=~\"$instance\"}", + "expr": "prometheus_remote_storage_shards_max{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "{{cluster}}:{{instance}} {{remote_name}}:{{url}}", @@ -32775,7 +32557,7 @@ items: "steppedLine": false, "targets": [ { - "expr": "prometheus_remote_storage_shards_min{cluster=~\"$cluster\", instance=~\"$instance\"}", + "expr": "prometheus_remote_storage_shards_min{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "{{cluster}}:{{instance}} {{remote_name}}:{{url}}", @@ -32868,7 +32650,7 @@ items: "steppedLine": false, "targets": [ { - "expr": "prometheus_remote_storage_shards_desired{cluster=~\"$cluster\", instance=~\"$instance\"}", + "expr": "prometheus_remote_storage_shards_desired{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "{{cluster}}:{{instance}} {{remote_name}}:{{url}}", @@ -32974,7 +32756,7 @@ items: "steppedLine": false, "targets": [ { - "expr": "prometheus_remote_storage_shard_capacity{cluster=~\"$cluster\", instance=~\"$instance\"}", + "expr": "prometheus_remote_storage_shard_capacity{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "{{cluster}}:{{instance}} {{remote_name}}:{{url}}", @@ -33067,7 +32849,7 @@ items: "steppedLine": false, "targets": [ { - "expr": "prometheus_remote_storage_pending_samples{cluster=~\"$cluster\", instance=~\"$instance\"} or prometheus_remote_storage_samples_pending{cluster=~\"$cluster\", instance=~\"$instance\"}", + "expr": "prometheus_remote_storage_pending_samples{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"} or prometheus_remote_storage_samples_pending{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "{{cluster}}:{{instance}} {{remote_name}}:{{url}}", @@ -33372,7 +33154,7 @@ items: "steppedLine": false, "targets": [ { - "expr": "rate(prometheus_remote_storage_dropped_samples_total{cluster=~\"$cluster\", instance=~\"$instance\"}[5m]) or rate(prometheus_remote_storage_samples_dropped_total{cluster=~\"$cluster\", instance=~\"$instance\"}[5m])", + "expr": "rate(prometheus_remote_storage_dropped_samples_total{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}[5m]) or rate(prometheus_remote_storage_samples_dropped_total{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}[5m])", "format": "time_series", "intervalFactor": 2, "legendFormat": "{{cluster}}:{{instance}} {{remote_name}}:{{url}}", @@ -33465,7 +33247,7 @@ items: "steppedLine": false, "targets": [ { - "expr": "rate(prometheus_remote_storage_failed_samples_total{cluster=~\"$cluster\", instance=~\"$instance\"}[5m]) or rate(prometheus_remote_storage_samples_failed_total{cluster=~\"$cluster\", instance=~\"$instance\"}[5m])", + "expr": "rate(prometheus_remote_storage_failed_samples_total{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}[5m]) or rate(prometheus_remote_storage_samples_failed_total{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}[5m])", "format": "time_series", "intervalFactor": 2, "legendFormat": "{{cluster}}:{{instance}} {{remote_name}}:{{url}}", @@ -33558,7 +33340,7 @@ items: "steppedLine": false, "targets": [ { - "expr": "rate(prometheus_remote_storage_retried_samples_total{cluster=~\"$cluster\", instance=~\"$instance\"}[5m]) or rate(prometheus_remote_storage_samples_retried_total{cluster=~\"$cluster\", instance=~\"$instance\"}[5m])", + "expr": "rate(prometheus_remote_storage_retried_samples_total{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}[5m]) or rate(prometheus_remote_storage_samples_retried_total{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}[5m])", "format": "time_series", "intervalFactor": 2, "legendFormat": "{{cluster}}:{{instance}} {{remote_name}}:{{url}}", @@ -33651,7 +33433,7 @@ items: "steppedLine": false, "targets": [ { - "expr": "rate(prometheus_remote_storage_enqueue_retries_total{cluster=~\"$cluster\", instance=~\"$instance\"}[5m])", + "expr": "rate(prometheus_remote_storage_enqueue_retries_total{cluster=~\"$cluster\", instance=~\"$instance\", url=~\"$url\"}[5m])", "format": "time_series", "intervalFactor": 2, "legendFormat": "{{cluster}}:{{instance}} {{remote_name}}:{{url}}", @@ -34048,7 +33830,6 @@ items: "expr": "count by (job, instance, version) (prometheus_build_info{job=~\"$job\", instance=~\"$instance\"})", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "A" }, @@ -34056,7 +33837,6 @@ items: "expr": "max by (job, instance) (time() - process_start_time_seconds{job=~\"$job\", instance=~\"$instance\"})", "format": "table", "instant": true, - "intervalFactor": 2, "legendFormat": "", "refId": "B" } @@ -34154,7 +33934,6 @@ items: { "expr": "sum(rate(prometheus_target_sync_length_seconds_sum{job=~\"$job\",instance=~\"$instance\"}[5m])) by (scrape_job) * 1e3", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{scrape_job}}", "legendLink": null } @@ -34239,7 +34018,6 @@ items: { "expr": "sum(prometheus_sd_discovered_targets{job=~\"$job\",instance=~\"$instance\"})", "format": "time_series", - "intervalFactor": 2, "legendFormat": "Targets", "legendLink": null } @@ -34336,7 +34114,6 @@ items: { "expr": "rate(prometheus_target_interval_length_seconds_sum{job=~\"$job\",instance=~\"$instance\"}[5m]) / rate(prometheus_target_interval_length_seconds_count{job=~\"$job\",instance=~\"$instance\"}[5m]) * 1e3", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{interval}} configured", "legendLink": null } @@ -34421,35 +34198,30 @@ items: { "expr": "sum by (job) (rate(prometheus_target_scrapes_exceeded_body_size_limit_total[1m]))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "exceeded body size limit: {{job}}", "legendLink": null }, { "expr": "sum by (job) (rate(prometheus_target_scrapes_exceeded_sample_limit_total[1m]))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "exceeded sample limit: {{job}}", "legendLink": null }, { "expr": "sum by (job) (rate(prometheus_target_scrapes_sample_duplicate_timestamp_total[1m]))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "duplicate timestamp: {{job}}", "legendLink": null }, { "expr": "sum by (job) (rate(prometheus_target_scrapes_sample_out_of_bounds_total[1m]))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "out of bounds: {{job}}", "legendLink": null }, { "expr": "sum by (job) (rate(prometheus_target_scrapes_sample_out_of_order_total[1m]))", "format": "time_series", - "intervalFactor": 2, "legendFormat": "out of order: {{job}}", "legendLink": null } @@ -34534,7 +34306,6 @@ items: { "expr": "rate(prometheus_tsdb_head_samples_appended_total{job=~\"$job\",instance=~\"$instance\"}[5m])", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{job}} {{instance}}", "legendLink": null } @@ -34631,7 +34402,6 @@ items: { "expr": "prometheus_tsdb_head_series{job=~\"$job\",instance=~\"$instance\"}", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{job}} {{instance}} head series", "legendLink": null } @@ -34716,7 +34486,6 @@ items: { "expr": "prometheus_tsdb_head_chunks{job=~\"$job\",instance=~\"$instance\"}", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{job}} {{instance}} head chunks", "legendLink": null } @@ -34813,7 +34582,6 @@ items: { "expr": "rate(prometheus_engine_query_duration_seconds_count{job=~\"$job\",instance=~\"$instance\",slice=\"inner_eval\"}[5m])", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{job}} {{instance}}", "legendLink": null } @@ -34898,7 +34666,6 @@ items: { "expr": "max by (slice) (prometheus_engine_query_duration_seconds{quantile=\"0.9\",job=~\"$job\",instance=~\"$instance\"}) * 1e3", "format": "time_series", - "intervalFactor": 2, "legendFormat": "{{slice}}", "legendLink": null } diff --git a/apps/monitoring/manifests/kubernetesControlPlane/prometheusRule.yaml b/apps/monitoring/manifests/kubernetesControlPlane/prometheusRule.yaml index 3feb04232..8faf57894 100644 --- a/apps/monitoring/manifests/kubernetesControlPlane/prometheusRule.yaml +++ b/apps/monitoring/manifests/kubernetesControlPlane/prometheusRule.yaml @@ -350,9 +350,9 @@ spec: runbook_url: https://runbooks.thaum.xyz/runbooks/kubernetes/cputhrottlinghigh summary: Processes experience elevated CPU throttling. expr: | - sum(increase(container_cpu_cfs_throttled_periods_total{container!="", }[5m])) by (container, pod, namespace) + sum(increase(container_cpu_cfs_throttled_periods_total{container!="", }[5m])) by (cluster, container, pod, namespace) / - sum(increase(container_cpu_cfs_periods_total{}[5m])) by (container, pod, namespace) + sum(increase(container_cpu_cfs_periods_total{}[5m])) by (cluster, container, pod, namespace) > ( 70 / 100 ) for: 15m labels: @@ -1208,7 +1208,7 @@ spec: - expr: | sum by (cluster, code, verb) (increase(apiserver_request_total{job="kubelet",verb=~"LIST|GET|POST|PUT|PATCH|DELETE",code=~"5.."}[1h])) record: code_verb:apiserver_request_total:increase1h - - name: k8s.rules + - name: k8s.rules.container_cpu_usage_seconds_total rules: - expr: | sum by (cluster, namespace, pod, container) ( @@ -1217,30 +1217,40 @@ spec: 1, max by(cluster, namespace, pod, node) (kube_pod_info{node!=""}) ) record: node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate + - name: k8s.rules.container_memory_working_set_bytes + rules: - expr: | container_memory_working_set_bytes{job="kubelet", metrics_path="/metrics/cadvisor", image!=""} * on (cluster, namespace, pod) group_left(node) topk by(cluster, namespace, pod) (1, max by(cluster, namespace, pod, node) (kube_pod_info{node!=""}) ) record: node_namespace_pod_container:container_memory_working_set_bytes + - name: k8s.rules.container_memory_rss + rules: - expr: | container_memory_rss{job="kubelet", metrics_path="/metrics/cadvisor", image!=""} * on (cluster, namespace, pod) group_left(node) topk by(cluster, namespace, pod) (1, max by(cluster, namespace, pod, node) (kube_pod_info{node!=""}) ) record: node_namespace_pod_container:container_memory_rss + - name: k8s.rules.container_memory_cache + rules: - expr: | container_memory_cache{job="kubelet", metrics_path="/metrics/cadvisor", image!=""} * on (cluster, namespace, pod) group_left(node) topk by(cluster, namespace, pod) (1, max by(cluster, namespace, pod, node) (kube_pod_info{node!=""}) ) record: node_namespace_pod_container:container_memory_cache + - name: k8s.rules.container_memory_swap + rules: - expr: | container_memory_swap{job="kubelet", metrics_path="/metrics/cadvisor", image!=""} * on (cluster, namespace, pod) group_left(node) topk by(cluster, namespace, pod) (1, max by(cluster, namespace, pod, node) (kube_pod_info{node!=""}) ) record: node_namespace_pod_container:container_memory_swap + - name: k8s.rules.container_resource + rules: - expr: | kube_pod_container_resource_requests{resource="memory",job="kube-state-metrics"} * on (namespace, pod, cluster) group_left() max by (namespace, pod, cluster) ( @@ -1309,6 +1319,8 @@ spec: ) ) record: namespace_cpu:kube_pod_container_resource_limits:sum + - name: k8s.rules.pod_owner + rules: - expr: | max by (cluster, namespace, workload, pod) ( label_replace( diff --git a/apps/monitoring/manifests/kubernetesControlPlane/scrapeConfigKubeletSLIs.yaml b/apps/monitoring/manifests/kubernetesControlPlane/scrapeConfigKubeletSLIs.yaml new file mode 100644 index 000000000..a89707192 --- /dev/null +++ b/apps/monitoring/manifests/kubernetesControlPlane/scrapeConfigKubeletSLIs.yaml @@ -0,0 +1,37 @@ +apiVersion: monitoring.coreos.com/v1alpha1 +kind: ScrapeConfig +metadata: + labels: + app.kubernetes.io/name: kubelet + app.kubernetes.io/part-of: kube-prometheus + name: kubelet-slis + namespace: monitoring +spec: + authorization: + credentials: + key: token + name: prometheus-k8s-token + type: Bearer + honorLabels: true + kubernetesSDConfigs: + - role: Node + metricRelabelings: [] + metricsPath: /metrics/slis + relabelings: + - action: replace + replacement: kube-system + targetLabel: namespace + - action: replace + sourceLabels: + - __meta_kubernetes_node_name + targetLabel: node + - sourceLabels: + - __metrics_path__ + targetLabel: metrics_path + - replacement: kubelet + targetLabel: job + scheme: HTTPS + scrapeInterval: 5s + scrapeTimeout: 5s + tlsConfig: + insecureSkipVerify: true diff --git a/apps/monitoring/manifests/nodeExporter/prometheusRule.yaml b/apps/monitoring/manifests/nodeExporter/prometheusRule.yaml index 700965170..e90b37825 100644 --- a/apps/monitoring/manifests/nodeExporter/prometheusRule.yaml +++ b/apps/monitoring/manifests/nodeExporter/prometheusRule.yaml @@ -312,6 +312,16 @@ spec: for: 5m labels: severity: warning + - alert: NodeBondingDegraded + annotations: + description: Bonding interface {{ $labels.master }} on {{ $labels.instance }} is in degraded state due to one or more slave failures. + runbook_url: https://runbooks.thaum.xyz/runbooks/node/nodebondingdegraded + summary: Bonding interface is degraded + expr: | + (node_bonding_slaves - node_bonding_active) != 0 + for: 5m + labels: + severity: warning - name: node-exporter.rules rules: - expr: | diff --git a/apps/monitoring/manifests/prometheusOperator/0alertmanagerConfigCustomResourceDefinition.yaml b/apps/monitoring/manifests/prometheusOperator/0alertmanagerConfigCustomResourceDefinition.yaml index 436f053ec..fb7de9f78 100644 --- a/apps/monitoring/manifests/prometheusOperator/0alertmanagerConfigCustomResourceDefinition.yaml +++ b/apps/monitoring/manifests/prometheusOperator/0alertmanagerConfigCustomResourceDefinition.yaml @@ -2,9 +2,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.68.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.13.0 + operator.prometheus.io/version: 0.70.0 name: alertmanagerconfigs.monitoring.coreos.com spec: group: monitoring.coreos.com @@ -196,6 +195,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic httpConfig: description: HTTP client configuration. properties: @@ -226,7 +226,7 @@ spec: description: BasicAuth for the client. This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence. properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -242,7 +242,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -273,6 +273,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic followRedirects: description: FollowRedirects specifies whether the client should follow HTTP 3xx redirects. type: boolean @@ -280,7 +281,7 @@ spec: description: OAuth2 client credentials used to fetch a token for the targets. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -316,7 +317,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -334,15 +335,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -488,6 +489,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic authSecret: description: The secret's key that contains the CRAM-MD5 secret. The secret needs to be in the same namespace as the AlertmanagerConfig object and accessible by the Prometheus Operator. properties: @@ -503,6 +505,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic authUsername: description: The username to use for authentication. type: string @@ -682,7 +685,7 @@ spec: description: BasicAuth for the client. This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence. properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -698,7 +701,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -729,6 +732,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic followRedirects: description: FollowRedirects specifies whether the client should follow HTTP 3xx redirects. type: boolean @@ -736,7 +740,7 @@ spec: description: OAuth2 client credentials used to fetch a token for the targets. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -772,7 +776,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -790,15 +794,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -932,6 +936,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic required: - webhookUrl type: object @@ -963,6 +968,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic apiURL: description: The URL to send OpsGenie API requests to. type: string @@ -1019,7 +1025,7 @@ spec: description: BasicAuth for the client. This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence. properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -1035,7 +1041,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -1066,6 +1072,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic followRedirects: description: FollowRedirects specifies whether the client should follow HTTP 3xx redirects. type: boolean @@ -1073,7 +1080,7 @@ spec: description: OAuth2 client credentials used to fetch a token for the targets. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -1109,7 +1116,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -1127,15 +1134,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -1366,7 +1373,7 @@ spec: description: BasicAuth for the client. This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence. properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -1382,7 +1389,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -1413,6 +1420,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic followRedirects: description: FollowRedirects specifies whether the client should follow HTTP 3xx redirects. type: boolean @@ -1420,7 +1428,7 @@ spec: description: OAuth2 client credentials used to fetch a token for the targets. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -1456,7 +1464,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -1474,15 +1482,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -1636,6 +1644,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic sendResolved: description: Whether or not to notify about resolved alerts. type: boolean @@ -1654,6 +1663,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic severity: description: Severity of the incident. type: string @@ -1667,6 +1677,9 @@ spec: items: description: PushoverConfig configures notifications via Pushover. See https://prometheus.io/docs/alerting/latest/configuration/#pushover_config properties: + device: + description: The name of a device to send the notification to + type: string expire: description: How long your notification will continue to be retried for, unless the user acknowledges the notification. pattern: ^(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?$ @@ -1704,7 +1717,7 @@ spec: description: BasicAuth for the client. This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence. properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -1720,7 +1733,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -1751,6 +1764,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic followRedirects: description: FollowRedirects specifies whether the client should follow HTTP 3xx redirects. type: boolean @@ -1758,7 +1772,7 @@ spec: description: OAuth2 client credentials used to fetch a token for the targets. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -1794,7 +1808,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -1812,15 +1826,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -1964,6 +1978,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic tokenFile: description: The token file that contains the registered application's API token, see https://pushover.net/apps. Either `token` or `tokenFile` is required. It requires Alertmanager >= v0.26.0. type: string @@ -1988,6 +2003,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic userKeyFile: description: The user key file that contains the recipient user's user key. Either `userKey` or `userKeyFile` is required. It requires Alertmanager >= v0.26.0. type: string @@ -2052,6 +2068,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic callbackId: type: string channel: @@ -2111,7 +2128,7 @@ spec: description: BasicAuth for the client. This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence. properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -2127,7 +2144,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -2158,6 +2175,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic followRedirects: description: FollowRedirects specifies whether the client should follow HTTP 3xx redirects. type: boolean @@ -2165,7 +2183,7 @@ spec: description: OAuth2 client credentials used to fetch a token for the targets. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -2201,7 +2219,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -2219,15 +2237,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -2411,7 +2429,7 @@ spec: description: BasicAuth for the client. This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence. properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -2427,7 +2445,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -2458,6 +2476,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic followRedirects: description: FollowRedirects specifies whether the client should follow HTTP 3xx redirects. type: boolean @@ -2465,7 +2484,7 @@ spec: description: OAuth2 client credentials used to fetch a token for the targets. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -2501,7 +2520,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -2519,15 +2538,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -2725,6 +2744,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic botTokenFile: description: "File to read the Telegram bot token from. It is mutually exclusive with `botToken`. Either `botToken` or `botTokenFile` is required. \n It requires Alertmanager >= v0.26.0." type: string @@ -2765,7 +2785,7 @@ spec: description: BasicAuth for the client. This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence. properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -2781,7 +2801,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -2812,6 +2832,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic followRedirects: description: FollowRedirects specifies whether the client should follow HTTP 3xx redirects. type: boolean @@ -2819,7 +2840,7 @@ spec: description: OAuth2 client credentials used to fetch a token for the targets. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -2855,7 +2876,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -2873,15 +2894,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -3026,6 +3047,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic apiUrl: description: The VictorOps API URL. type: string @@ -3079,7 +3101,7 @@ spec: description: BasicAuth for the client. This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence. properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3095,7 +3117,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3126,6 +3148,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic followRedirects: description: FollowRedirects specifies whether the client should follow HTTP 3xx redirects. type: boolean @@ -3133,7 +3156,7 @@ spec: description: OAuth2 client credentials used to fetch a token for the targets. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -3169,7 +3192,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3187,15 +3210,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -3361,7 +3384,7 @@ spec: description: BasicAuth for the client. This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence. properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3377,7 +3400,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3408,6 +3431,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic followRedirects: description: FollowRedirects specifies whether the client should follow HTTP 3xx redirects. type: boolean @@ -3415,7 +3439,7 @@ spec: description: OAuth2 client credentials used to fetch a token for the targets. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -3451,7 +3475,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3469,15 +3493,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -3636,7 +3660,7 @@ spec: description: BasicAuth for the client. This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence. properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3652,7 +3676,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3683,6 +3707,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic followRedirects: description: FollowRedirects specifies whether the client should follow HTTP 3xx redirects. type: boolean @@ -3690,7 +3715,7 @@ spec: description: OAuth2 client credentials used to fetch a token for the targets. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -3726,7 +3751,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3744,15 +3769,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -3888,6 +3913,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object type: array wechatConfigs: @@ -3912,6 +3938,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic apiURL: description: The WeChat API URL. type: string @@ -3948,7 +3975,7 @@ spec: description: BasicAuth for the client. This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence. properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3964,7 +3991,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3995,6 +4022,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic followRedirects: description: FollowRedirects specifies whether the client should follow HTTP 3xx redirects. type: boolean @@ -4002,7 +4030,7 @@ spec: description: OAuth2 client credentials used to fetch a token for the targets. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -4038,7 +4066,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -4056,15 +4084,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: diff --git a/apps/monitoring/manifests/prometheusOperator/0alertmanagerCustomResourceDefinition.yaml b/apps/monitoring/manifests/prometheusOperator/0alertmanagerCustomResourceDefinition.yaml index 22ac6a34a..9dba9f7c6 100644 --- a/apps/monitoring/manifests/prometheusOperator/0alertmanagerCustomResourceDefinition.yaml +++ b/apps/monitoring/manifests/prometheusOperator/0alertmanagerCustomResourceDefinition.yaml @@ -2,9 +2,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.68.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.13.0 + operator.prometheus.io/version: 0.70.0 name: alertmanagers.monitoring.coreos.com spec: group: monitoring.coreos.com @@ -648,7 +647,7 @@ spec: description: BasicAuth for the client. This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence. properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -664,7 +663,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -703,7 +702,7 @@ spec: description: OAuth2 client credentials used to fetch a token for the targets. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -739,7 +738,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -757,15 +756,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -2793,7 +2792,7 @@ spec: description: If set to true all actions on the underlying managed objects are not goint to be performed, except for delete actions. type: boolean podMetadata: - description: PodMetadata configures Labels and Annotations which are propagated to the alertmanager pods. + description: "PodMetadata configures labels and annotations which are propagated to the Alertmanager pods. \n The following items are reserved and cannot be overridden: * \"alertmanager\" label, set to the name of the Alertmanager instance. * \"app.kubernetes.io/instance\" label, set to the name of the Alertmanager instance. * \"app.kubernetes.io/managed-by\" label, set to \"prometheus-operator\". * \"app.kubernetes.io/name\" label, set to \"alertmanager\". * \"app.kubernetes.io/version\" label, set to the Alertmanager version. * \"kubectl.kubernetes.io/default-container\" annotation, set to \"alertmanager\"." properties: annotations: additionalProperties: diff --git a/apps/monitoring/manifests/prometheusOperator/0podmonitorCustomResourceDefinition.yaml b/apps/monitoring/manifests/prometheusOperator/0podmonitorCustomResourceDefinition.yaml index 4338db145..d6fcbfeb3 100644 --- a/apps/monitoring/manifests/prometheusOperator/0podmonitorCustomResourceDefinition.yaml +++ b/apps/monitoring/manifests/prometheusOperator/0podmonitorCustomResourceDefinition.yaml @@ -2,9 +2,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.68.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.13.0 + operator.prometheus.io/version: 0.70.0 name: podmonitors.monitoring.coreos.com spec: group: monitoring.coreos.com @@ -36,33 +35,33 @@ spec: description: Specification of desired Pod selection for target discovery by Prometheus. properties: attachMetadata: - description: Attaches node metadata to discovered targets. Requires Prometheus v2.35.0 and above. + description: "`attachMetadata` defines additional metadata which is added to the discovered targets. \n It requires Prometheus >= v2.37.0." properties: node: - description: When set to true, Prometheus must have permissions to get Nodes. + description: When set to true, Prometheus must have the `get` permission on the `Nodes` objects. type: boolean type: object jobLabel: - description: The label to use to retrieve the job name from. + description: "The label to use to retrieve the job name from. `jobLabel` selects the label from the associated Kubernetes `Pod` object which will be used as the `job` label for all metrics. \n For example if `jobLabel` is set to `foo` and the Kubernetes `Pod` object is labeled with `foo: bar`, then Prometheus adds the `job=\"bar\"` label to all ingested metrics. \n If the value of this field is empty, the `job` label of the metrics defaults to the namespace and name of the PodMonitor object (e.g. `/`)." type: string keepDroppedTargets: description: "Per-scrape limit on the number of targets dropped by relabeling that will be kept in memory. 0 means no limit. \n It requires Prometheus >= v2.47.0." format: int64 type: integer labelLimit: - description: Per-scrape limit on number of labels that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. + description: "Per-scrape limit on number of labels that will be accepted for a sample. \n It requires Prometheus >= v2.27.0." format: int64 type: integer labelNameLengthLimit: - description: Per-scrape limit on length of labels name that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. + description: "Per-scrape limit on length of labels name that will be accepted for a sample. \n It requires Prometheus >= v2.27.0." format: int64 type: integer labelValueLengthLimit: - description: Per-scrape limit on length of labels value that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. + description: "Per-scrape limit on length of labels value that will be accepted for a sample. \n It requires Prometheus >= v2.27.0." format: int64 type: integer namespaceSelector: - description: Selector to select which namespaces the Endpoints objects are discovered from. + description: Selector to select which namespaces the Kubernetes `Pods` objects are discovered from. properties: any: description: Boolean describing whether all namespaces are selected in contrast to a list restricting them. @@ -74,12 +73,12 @@ spec: type: array type: object podMetricsEndpoints: - description: A list of endpoints allowed as part of this PodMonitor. + description: List of endpoints part of this PodMonitor. items: - description: PodMetricsEndpoint defines a scrapeable endpoint of a Kubernetes Pod serving Prometheus metrics. + description: PodMetricsEndpoint defines an endpoint serving Prometheus metrics to be scraped by Prometheus. properties: authorization: - description: Authorization section for this endpoint + description: "`authorization` configures the Authorization header credentials to use when scraping the target. \n Cannot be set at the same time as `basicAuth`, or `oauth2`." properties: credentials: description: Selects a key of a Secret in the namespace that contains the credentials for authentication. @@ -102,10 +101,10 @@ spec: type: string type: object basicAuth: - description: 'BasicAuth allow an endpoint to authenticate over basic authentication. More info: https://prometheus.io/docs/operating/configuration/#endpoint' + description: "`basicAuth` configures the Basic Authentication credentials to use when scraping the target. \n Cannot be set at the same time as `authorization`, or `oauth2`." properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -121,7 +120,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -138,7 +137,7 @@ spec: x-kubernetes-map-type: atomic type: object bearerTokenSecret: - description: Secret to mount to read bearer token for scraping targets. The secret needs to be in the same namespace as the pod monitor and accessible by the Prometheus Operator. + description: "`bearerTokenSecret` specifies a key of a Secret containing the bearer token for scraping targets. The secret needs to be in the same namespace as the PodMonitor object and readable by the Prometheus Operator. \n Deprecated: use `authorization` instead." properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -154,26 +153,26 @@ spec: type: object x-kubernetes-map-type: atomic enableHttp2: - description: Whether to enable HTTP2. + description: '`enableHttp2` can be used to disable HTTP2 when scraping the target.' type: boolean filterRunning: - description: 'Drop pods that are not running. (Failed, Succeeded). Enabled by default. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase' + description: "When true, the pods which are not running (e.g. either in Failed or Succeeded state) are dropped during the target discovery. \n If unset, the filtering is enabled. \n More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase" type: boolean followRedirects: - description: FollowRedirects configures whether scrape requests follow HTTP 3xx redirects. + description: '`followRedirects` defines whether the scrape requests should follow HTTP 3xx redirects.' type: boolean honorLabels: - description: HonorLabels chooses the metric's labels on collisions with target labels. + description: When true, `honorLabels` preserves the metric's labels when they collide with the target's labels. type: boolean honorTimestamps: - description: HonorTimestamps controls whether Prometheus respects the timestamps present in scraped data. + description: '`honorTimestamps` controls whether Prometheus preserves the timestamps when exposed by the target.' type: boolean interval: - description: Interval at which metrics should be scraped If not specified Prometheus' global scrape interval is used. + description: "Interval at which Prometheus scrapes the metrics from the target. \n If empty, Prometheus uses the global scrape interval." pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ type: string metricRelabelings: - description: MetricRelabelConfigs to apply to samples before ingestion. + description: '`metricRelabelings` configures the relabeling rules to apply to the samples before ingestion.' items: description: "RelabelConfig allows dynamic rewriting of the label set for targets, alerts, scraped samples and remote write samples. \n More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config" properties: @@ -230,10 +229,10 @@ spec: type: object type: array oauth2: - description: OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer. + description: "`oauth2` configures the OAuth2 settings to use when scraping the target. \n It requires Prometheus >= 2.27.0. \n Cannot be set at the same time as `authorization`, or `basicAuth`." properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -269,7 +268,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -287,15 +286,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -308,19 +307,19 @@ spec: items: type: string type: array - description: Optional HTTP URL parameters + description: '`params` define optional HTTP URL parameters.' type: object path: - description: HTTP path to scrape for metrics. If empty, Prometheus uses the default value (e.g. `/metrics`). + description: "HTTP path from which to scrape for metrics. \n If empty, Prometheus uses the default value (e.g. `/metrics`)." type: string port: - description: Name of the pod port this endpoint refers to. Mutually exclusive with targetPort. + description: "Name of the Pod port which this endpoint refers to. \n It takes precedence over `targetPort`." type: string proxyUrl: - description: ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. + description: '`proxyURL` configures the HTTP Proxy URL (e.g. "http://proxyserver:2195") to go through when scraping the target.' type: string relabelings: - description: 'RelabelConfigs to apply to samples before scraping. Prometheus Operator automatically adds relabelings for a few standard Kubernetes fields. The original scrape job''s name is available via the `__tmp_prometheus_job_name` label. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config' + description: "`relabelings` configures the relabeling rules to apply the target's metadata labels. \n The Operator automatically adds relabelings for a few standard Kubernetes fields. \n The original scrape job's name is available via the `__tmp_prometheus_job_name` label. \n More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config" items: description: "RelabelConfig allows dynamic rewriting of the label set for targets, alerts, scraped samples and remote write samples. \n More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config" properties: @@ -377,23 +376,23 @@ spec: type: object type: array scheme: - description: HTTP scheme to use for scraping. `http` and `https` are the expected values unless you rewrite the `__scheme__` label via relabeling. If empty, Prometheus uses the default value `http`. + description: "HTTP scheme to use for scraping. \n `http` and `https` are the expected values unless you rewrite the `__scheme__` label via relabeling. \n If empty, Prometheus uses the default value `http`." enum: - http - https type: string scrapeTimeout: - description: Timeout after which the scrape is ended If not specified, the Prometheus global scrape interval is used. + description: "Timeout after which Prometheus considers the scrape to be failed. \n If empty, Prometheus uses the global scrape timeout unless it is less than the target's scrape interval value in which the latter is used." pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ type: string targetPort: anyOf: - type: integer - type: string - description: 'Deprecated: Use ''port'' instead.' + description: "Name or number of the target port of the `Pod` object behind the Service, the port must be specified with container port property. \n Deprecated: use 'port' instead." x-kubernetes-int-or-string: true tlsConfig: - description: TLS configuration to use when scraping the endpoint. + description: TLS configuration to use when scraping the target. properties: ca: description: Certificate authority used when verifying server certificates. @@ -490,19 +489,22 @@ spec: description: Used to verify the hostname for the targets. type: string type: object + trackTimestampsStaleness: + description: "`trackTimestampsStaleness` defines whether Prometheus tracks staleness of the metrics that have an explicit timestamp present in scraped data. Has no effect if `honorTimestamps` is false. \n It requires Prometheus >= v2.48.0." + type: boolean type: object type: array podTargetLabels: - description: PodTargetLabels transfers labels on the Kubernetes Pod onto the target. + description: '`podTargetLabels` defines the labels which are transferred from the associated Kubernetes `Pod` object onto the ingested metrics.' items: type: string type: array sampleLimit: - description: SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. + description: '`sampleLimit` defines a per-scrape limit on the number of scraped samples that will be accepted.' format: int64 type: integer selector: - description: Selector to select Pod objects. + description: Label selector to select the Kubernetes `Pod` objects. properties: matchExpressions: description: matchExpressions is a list of label selector requirements. The requirements are ANDed. @@ -533,11 +535,10 @@ spec: type: object x-kubernetes-map-type: atomic targetLimit: - description: TargetLimit defines a limit on the number of scraped targets that will be accepted. + description: '`targetLimit` defines a limit on the number of scraped targets that will be accepted.' format: int64 type: integer required: - - podMetricsEndpoints - selector type: object required: diff --git a/apps/monitoring/manifests/prometheusOperator/0probeCustomResourceDefinition.yaml b/apps/monitoring/manifests/prometheusOperator/0probeCustomResourceDefinition.yaml index 5fcfdba51..1c1d9ca0b 100644 --- a/apps/monitoring/manifests/prometheusOperator/0probeCustomResourceDefinition.yaml +++ b/apps/monitoring/manifests/prometheusOperator/0probeCustomResourceDefinition.yaml @@ -2,9 +2,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.68.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.13.0 + operator.prometheus.io/version: 0.70.0 name: probes.monitoring.coreos.com spec: group: monitoring.coreos.com @@ -62,7 +61,7 @@ spec: description: 'BasicAuth allow an endpoint to authenticate over basic authentication. More info: https://prometheus.io/docs/operating/configuration/#endpoint' properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -78,7 +77,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -197,7 +196,7 @@ spec: description: OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -233,7 +232,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -251,15 +250,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: diff --git a/apps/monitoring/manifests/prometheusOperator/0prometheusCustomResourceDefinition.yaml b/apps/monitoring/manifests/prometheusOperator/0prometheusCustomResourceDefinition.yaml index 5105eca95..ab4387a9b 100644 --- a/apps/monitoring/manifests/prometheusOperator/0prometheusCustomResourceDefinition.yaml +++ b/apps/monitoring/manifests/prometheusOperator/0prometheusCustomResourceDefinition.yaml @@ -2,9 +2,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.68.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.13.0 + operator.prometheus.io/version: 0.70.0 name: prometheuses.monitoring.coreos.com spec: group: monitoring.coreos.com @@ -636,7 +635,7 @@ spec: description: "BasicAuth configuration for Alertmanager. \n Cannot be set at the same time as `bearerTokenFile`, `authorization` or `sigv4`." properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -652,7 +651,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -893,7 +892,7 @@ spec: description: "BasicAuth configuration for the API server. \n Cannot be set at the same time as `authorization`, `bearerToken`, or `bearerTokenFile`." properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -909,7 +908,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -2904,8 +2903,18 @@ spec: paused: description: When a Prometheus deployment is paused, no actions except for deletion will be performed on the underlying objects. type: boolean + persistentVolumeClaimRetentionPolicy: + description: The field controls if and how PVCs are deleted during the lifecycle of a StatefulSet. The default behavior is all PVCs are retained. This is an alpha field from kubernetes 1.23 until 1.26 and a beta field from 1.26. It requires enabling the StatefulSetAutoDeletePVC feature gate. + properties: + whenDeleted: + description: WhenDeleted specifies what happens to PVCs created from StatefulSet VolumeClaimTemplates when the StatefulSet is deleted. The default policy of `Retain` causes PVCs to not be affected by StatefulSet deletion. The `Delete` policy causes those PVCs to be deleted. + type: string + whenScaled: + description: WhenScaled specifies what happens to PVCs created from StatefulSet VolumeClaimTemplates when the StatefulSet is scaled down. The default policy of `Retain` causes PVCs to not be affected by a scaledown. The `Delete` policy causes the associated PVCs for any excess pods above the replica count to be deleted. + type: string + type: object podMetadata: - description: PodMetadata configures labels and annotations which are propagated to the Prometheus pods. + description: "PodMetadata configures labels and annotations which are propagated to the Prometheus pods. \n The following items are reserved and cannot be overridden: * \"prometheus\" label, set to the name of the Prometheus object. * \"app.kubernetes.io/instance\" label, set to the name of the Prometheus object. * \"app.kubernetes.io/managed-by\" label, set to \"prometheus-operator\". * \"app.kubernetes.io/name\" label, set to \"prometheus\". * \"app.kubernetes.io/version\" label, set to the Prometheus version. * \"operator.prometheus.io/name\" label, set to the name of the Prometheus object. * \"operator.prometheus.io/shard\" label, set to the shard number of the Prometheus object. * \"kubectl.kubernetes.io/default-container\" annotation, set to \"prometheus\"." properties: annotations: additionalProperties: @@ -3099,6 +3108,12 @@ spec: queryLogFile: description: "queryLogFile specifies where the file to which PromQL queries are logged. \n If the filename has an empty path, e.g. 'query.log', The Prometheus Pods will mount the file into an emptyDir volume at `/var/log/prometheus`. If a full path is provided, e.g. '/var/log/prometheus/query.log', you must mount a volume in the specified directory and it must be writable. This is because the prometheus container runs with a read-only root filesystem for security reasons. Alternatively, the location can be set to a standard I/O stream, e.g. `/dev/stdout`, to log query information to the default Prometheus log stream." type: string + reloadStrategy: + description: Defines the strategy used to reload the Prometheus configuration. If not specified, the configuration is reloaded using the /-/reload HTTP endpoint. + enum: + - HTTP + - ProcessSignal + type: string remoteRead: description: Defines the list of remote read configurations. items: @@ -3134,7 +3149,7 @@ spec: description: "BasicAuth configuration for the URL. \n Cannot be set at the same time as `authorization`, or `oauth2`." properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3150,7 +3165,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3190,7 +3205,7 @@ spec: description: "OAuth2 configuration for the URL. \n It requires Prometheus >= v2.27.0. \n Cannot be set at the same time as `authorization`, or `basicAuth`." properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -3226,7 +3241,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3244,15 +3259,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -3431,7 +3446,7 @@ spec: - AzurePublic type: string managedIdentity: - description: ManagedIdentity defines the Azure User-assigned Managed identity. + description: ManagedIdentity defines the Azure User-assigned Managed identity. Cannot be set at the same time as `oauth`. properties: clientId: description: The client id @@ -3439,14 +3454,45 @@ spec: required: - clientId type: object - required: - - managedIdentity + oauth: + description: "OAuth defines the oauth config that is being used to authenticate. Cannot be set at the same time as `managedIdentity`. \n It requires Prometheus >= v2.48.0." + properties: + clientId: + description: '`clientID` is the clientId of the Azure Active Directory application that is being used to authenticate.' + minLength: 1 + type: string + clientSecret: + description: '`clientSecret` specifies a key of a Secret containing the client secret of the Azure Active Directory application that is being used to authenticate.' + properties: + key: + description: The key of the secret to select from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + tenantId: + description: '`tenantID` is the tenant ID of the Azure Active Directory application that is being used to authenticate.' + minLength: 1 + pattern: ^[0-9a-zA-Z-.]+$ + type: string + required: + - clientId + - clientSecret + - tenantId + type: object type: object basicAuth: description: "BasicAuth configuration for the URL. \n Cannot be set at the same time as `sigv4`, `authorization`, `oauth2`, or `azureAd`." properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3462,7 +3508,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3507,7 +3553,7 @@ spec: description: "OAuth2 configuration for the URL. \n It requires Prometheus >= v2.27.0. \n Cannot be set at the same time as `sigv4`, `authorization`, `basicAuth`, or `azureAd`." properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -3543,7 +3589,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -3561,15 +3607,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: diff --git a/apps/monitoring/manifests/prometheusOperator/0prometheusagentCustomResourceDefinition.yaml b/apps/monitoring/manifests/prometheusOperator/0prometheusagentCustomResourceDefinition.yaml index 574edb03a..4a72096db 100644 --- a/apps/monitoring/manifests/prometheusOperator/0prometheusagentCustomResourceDefinition.yaml +++ b/apps/monitoring/manifests/prometheusOperator/0prometheusagentCustomResourceDefinition.yaml @@ -2,9 +2,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.68.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.13.0 + operator.prometheus.io/version: 0.70.0 name: prometheusagents.monitoring.coreos.com spec: group: monitoring.coreos.com @@ -599,7 +598,7 @@ spec: description: "BasicAuth configuration for the API server. \n Cannot be set at the same time as `authorization`, `bearerToken`, or `bearerTokenFile`." properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -615,7 +614,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -2588,8 +2587,18 @@ spec: paused: description: When a Prometheus deployment is paused, no actions except for deletion will be performed on the underlying objects. type: boolean + persistentVolumeClaimRetentionPolicy: + description: The field controls if and how PVCs are deleted during the lifecycle of a StatefulSet. The default behavior is all PVCs are retained. This is an alpha field from kubernetes 1.23 until 1.26 and a beta field from 1.26. It requires enabling the StatefulSetAutoDeletePVC feature gate. + properties: + whenDeleted: + description: WhenDeleted specifies what happens to PVCs created from StatefulSet VolumeClaimTemplates when the StatefulSet is deleted. The default policy of `Retain` causes PVCs to not be affected by StatefulSet deletion. The `Delete` policy causes those PVCs to be deleted. + type: string + whenScaled: + description: WhenScaled specifies what happens to PVCs created from StatefulSet VolumeClaimTemplates when the StatefulSet is scaled down. The default policy of `Retain` causes PVCs to not be affected by a scaledown. The `Delete` policy causes the associated PVCs for any excess pods above the replica count to be deleted. + type: string + type: object podMetadata: - description: PodMetadata configures labels and annotations which are propagated to the Prometheus pods. + description: "PodMetadata configures labels and annotations which are propagated to the Prometheus pods. \n The following items are reserved and cannot be overridden: * \"prometheus\" label, set to the name of the Prometheus object. * \"app.kubernetes.io/instance\" label, set to the name of the Prometheus object. * \"app.kubernetes.io/managed-by\" label, set to \"prometheus-operator\". * \"app.kubernetes.io/name\" label, set to \"prometheus\". * \"app.kubernetes.io/version\" label, set to the Prometheus version. * \"operator.prometheus.io/name\" label, set to the name of the Prometheus object. * \"operator.prometheus.io/shard\" label, set to the shard number of the Prometheus object. * \"kubectl.kubernetes.io/default-container\" annotation, set to \"prometheus\"." properties: annotations: additionalProperties: @@ -2744,6 +2753,12 @@ spec: prometheusExternalLabelName: description: "Name of Prometheus external label used to denote the Prometheus instance name. The external label will _not_ be added when the field is set to the empty string (`\"\"`). \n Default: \"prometheus\"" type: string + reloadStrategy: + description: Defines the strategy used to reload the Prometheus configuration. If not specified, the configuration is reloaded using the /-/reload HTTP endpoint. + enum: + - HTTP + - ProcessSignal + type: string remoteWrite: description: Defines the list of remote write configurations. items: @@ -2786,7 +2801,7 @@ spec: - AzurePublic type: string managedIdentity: - description: ManagedIdentity defines the Azure User-assigned Managed identity. + description: ManagedIdentity defines the Azure User-assigned Managed identity. Cannot be set at the same time as `oauth`. properties: clientId: description: The client id @@ -2794,14 +2809,45 @@ spec: required: - clientId type: object - required: - - managedIdentity + oauth: + description: "OAuth defines the oauth config that is being used to authenticate. Cannot be set at the same time as `managedIdentity`. \n It requires Prometheus >= v2.48.0." + properties: + clientId: + description: '`clientID` is the clientId of the Azure Active Directory application that is being used to authenticate.' + minLength: 1 + type: string + clientSecret: + description: '`clientSecret` specifies a key of a Secret containing the client secret of the Azure Active Directory application that is being used to authenticate.' + properties: + key: + description: The key of the secret to select from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + tenantId: + description: '`tenantID` is the tenant ID of the Azure Active Directory application that is being used to authenticate.' + minLength: 1 + pattern: ^[0-9a-zA-Z-.]+$ + type: string + required: + - clientId + - clientSecret + - tenantId + type: object type: object basicAuth: description: "BasicAuth configuration for the URL. \n Cannot be set at the same time as `sigv4`, `authorization`, `oauth2`, or `azureAd`." properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -2817,7 +2863,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -2862,7 +2908,7 @@ spec: description: "OAuth2 configuration for the URL. \n It requires Prometheus >= v2.27.0. \n Cannot be set at the same time as `sigv4`, `authorization`, `basicAuth`, or `azureAd`." properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -2898,7 +2944,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -2916,15 +2962,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: diff --git a/apps/monitoring/manifests/prometheusOperator/0prometheusruleCustomResourceDefinition.yaml b/apps/monitoring/manifests/prometheusOperator/0prometheusruleCustomResourceDefinition.yaml index a3f82f5c7..5960ea80b 100644 --- a/apps/monitoring/manifests/prometheusOperator/0prometheusruleCustomResourceDefinition.yaml +++ b/apps/monitoring/manifests/prometheusOperator/0prometheusruleCustomResourceDefinition.yaml @@ -2,9 +2,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.68.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.13.0 + operator.prometheus.io/version: 0.70.0 name: prometheusrules.monitoring.coreos.com spec: group: monitoring.coreos.com diff --git a/apps/monitoring/manifests/prometheusOperator/0scrapeconfigCustomResourceDefinition.yaml b/apps/monitoring/manifests/prometheusOperator/0scrapeconfigCustomResourceDefinition.yaml index bdeb13555..62df115df 100644 --- a/apps/monitoring/manifests/prometheusOperator/0scrapeconfigCustomResourceDefinition.yaml +++ b/apps/monitoring/manifests/prometheusOperator/0scrapeconfigCustomResourceDefinition.yaml @@ -2,9 +2,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.68.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.13.0 + operator.prometheus.io/version: 0.70.0 name: scrapeconfigs.monitoring.coreos.com spec: group: monitoring.coreos.com @@ -58,11 +57,65 @@ spec: description: "Defines the authentication type. The value is case-insensitive. \n \"Basic\" is not a supported value. \n Default: \"Bearer\"" type: string type: object + azureSDConfigs: + description: AzureSDConfigs defines a list of Azure service discovery configurations. + items: + description: AzureSDConfig allow retrieving scrape targets from Azure VMs. See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#azure_sd_config + properties: + authenticationMethod: + description: '# The authentication method, either OAuth or ManagedIdentity. See https://docs.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/overview' + enum: + - OAuth + - ManagedIdentity + type: string + clientID: + description: Optional client ID. Only required with the OAuth authentication method. + type: string + clientSecret: + description: Optional client secret. Only required with the OAuth authentication method. + properties: + key: + description: The key of the secret to select from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + environment: + description: The Azure environment. + type: string + port: + description: The port to scrape metrics from. If using the public IP address, this must instead be specified in the relabeling rule. + type: integer + refreshInterval: + description: RefreshInterval configures the refresh interval at which Prometheus will re-read the instance list. + pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ + type: string + resourceGroup: + description: Optional resource group name. Limits discovery to this resource group. + type: string + subscriptionID: + description: The subscription ID. Always required. + minLength: 1 + type: string + tenantID: + description: Optional tenant ID. Only required with the OAuth authentication method. + type: string + required: + - subscriptionID + type: object + type: array basicAuth: description: BasicAuth information to use on every scrape request. properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -78,7 +131,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -99,7 +152,7 @@ spec: items: description: ConsulSDConfig defines a Consul service discovery configuration See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#consul_sd_config properties: - allow_stale: + allowStale: description: Allow stale Consul results (see https://www.consul.io/api/features/consistency.html). Will reduce load on Consul. If unset, Prometheus uses its default value. type: boolean authorization: @@ -129,7 +182,7 @@ spec: description: 'BasicAuth information to authenticate against the Consul Server. More info: https://prometheus.io/docs/operating/configuration/#endpoints' properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -145,7 +198,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -164,19 +217,19 @@ spec: datacenter: description: Consul Datacenter name, if not provided it will use the local Consul Agent Datacenter. type: string - enable_http2: + enableHTTP2: description: Whether to enable HTTP2. If unset, Prometheus uses its default value. type: boolean - follow_redirects: + followRedirects: description: Configure whether HTTP requests follow HTTP 3xx redirects. If unset, Prometheus uses its default value. type: boolean namespace: description: Namespaces are only supported in Consul Enterprise. type: string - no_proxy: + noProxy: description: Comma-separated string that can contain IPs, CIDR notation, domain names that should be excluded from proxying. IP and domain names can contain port numbers. type: string - node_meta: + nodeMeta: additionalProperties: type: string description: Node metadata key/value pairs to filter nodes for a given service. @@ -186,7 +239,7 @@ spec: description: Optional OAuth 2.0 configuration. properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -222,7 +275,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -240,15 +293,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -259,7 +312,7 @@ spec: partition: description: Admin Partitions are only supported in Consul Enterprise. type: string - proxy_connect_header: + proxyConnectHeader: additionalProperties: description: SecretKeySelector selects a key of a Secret. properties: @@ -275,16 +328,17 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic description: Specifies headers to send to proxies during CONNECT requests. type: object x-kubernetes-map-type: atomic - proxy_from_environment: + proxyFromEnvironment: description: Use proxy URL indicated by environment variables (HTTP_PROXY, https_proxy, HTTPs_PROXY, https_proxy, and no_proxy) If unset, Prometheus uses its default value. type: boolean - proxy_url: + proxyUrl: description: Optional proxy URL. type: string - refresh_interval: + refreshInterval: description: The time after which the provided names are refreshed. On large setup it might be a good idea to increase this value because the catalog will change all the time. If unset, Prometheus uses its default value. pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ type: string @@ -304,7 +358,7 @@ spec: type: string type: array x-kubernetes-list-type: atomic - tag_separator: + tagSeparator: description: The string by which Consul tags are joined into the tag label. If unset, Prometheus uses its default value. type: string tags: @@ -426,6 +480,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic required: - server type: object @@ -480,6 +535,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic filters: description: 'Filters can be used optionally to filter the instance list by other criteria. Available filter criteria can be found here: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html Filter API documentation: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Filter.html' items: @@ -524,6 +580,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object type: array fileSDConfigs: @@ -547,6 +604,37 @@ spec: - files type: object type: array + gceSDConfigs: + description: GCESDConfigs defines a list of GCE service discovery configurations. + items: + description: "GCESDConfig configures scrape targets from GCP GCE instances. The private IP address is used by default, but may be changed to the public IP address with relabeling. See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#gce_sd_config \n The GCE service discovery will load the Google Cloud credentials from the file specified by the GOOGLE_APPLICATION_CREDENTIALS environment variable. See https://cloud.google.com/kubernetes-engine/docs/tutorials/authenticating-to-cloud-platform \n A pre-requisite for using GCESDConfig is that a Secret containing valid Google Cloud credentials is mounted into the Prometheus or PrometheusAgent pod via the `.spec.secrets` field and that the GOOGLE_APPLICATION_CREDENTIALS environment variable is set to /etc/prometheus/secrets//." + properties: + filter: + description: 'Filter can be used optionally to filter the instance list by other criteria Syntax of this filter is described in the filter query parameter section: https://cloud.google.com/compute/docs/reference/latest/instances/list' + type: string + port: + description: The port to scrape metrics from. If using the public IP address, this must instead be specified in the relabeling rule. + type: integer + project: + description: The Google Cloud Project ID + minLength: 1 + type: string + refreshInterval: + description: RefreshInterval configures the refresh interval at which Prometheus will re-read the instance list. + pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ + type: string + tagSeparator: + description: The tag separator is used to separate the tags on concatenation + type: string + zone: + description: The zone of the scrape targets. If you need multiple zones use multiple GCESDConfigs. + minLength: 1 + type: string + required: + - project + - zone + type: object + type: array honorLabels: description: HonorLabels chooses the metric's labels on collisions with target labels. type: boolean @@ -585,7 +673,7 @@ spec: description: 'BasicAuth information to authenticate against the target HTTP endpoint. More info: https://prometheus.io/docs/operating/configuration/#endpoints' properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -601,7 +689,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -738,10 +826,53 @@ spec: description: KubernetesSDConfig allows retrieving scrape targets from Kubernetes' REST API. See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#kubernetes_sd_config properties: role: - description: Role of the Kubernetes entities that should be discovered. Currently the only supported role is "Node". + description: Role of the Kubernetes entities that should be discovered. enum: - Node + - node + - Service + - service + - Pod + - pod + - Endpoints + - endpoints + - EndpointSlice + - endpointslice + - Ingress + - ingress type: string + selectors: + description: Selector to select objects. + items: + description: K8SSelectorConfig is Kubernetes Selector Config + properties: + field: + type: string + label: + type: string + role: + description: Role is role of the service in Kubernetes. + enum: + - Node + - node + - Service + - service + - Pod + - pod + - Endpoints + - endpoints + - EndpointSlice + - endpointslice + - Ingress + - ingress + type: string + required: + - role + type: object + type: array + x-kubernetes-list-map-keys: + - role + x-kubernetes-list-type: map required: - role type: object @@ -1022,6 +1153,9 @@ spec: description: Used to verify the hostname for the targets. type: string type: object + trackTimestampsStaleness: + description: TrackTimestampsStaleness whether Prometheus tracks staleness of the metrics that have an explicit timestamp present in scraped data. Has no effect if `honorTimestamps` is false. It requires Prometheus >= v2.48.0. + type: boolean type: object required: - spec diff --git a/apps/monitoring/manifests/prometheusOperator/0servicemonitorCustomResourceDefinition.yaml b/apps/monitoring/manifests/prometheusOperator/0servicemonitorCustomResourceDefinition.yaml index 9f3a4186c..6275ca49d 100644 --- a/apps/monitoring/manifests/prometheusOperator/0servicemonitorCustomResourceDefinition.yaml +++ b/apps/monitoring/manifests/prometheusOperator/0servicemonitorCustomResourceDefinition.yaml @@ -2,9 +2,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.68.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.13.0 + operator.prometheus.io/version: 0.70.0 name: servicemonitors.monitoring.coreos.com spec: group: monitoring.coreos.com @@ -36,19 +35,19 @@ spec: description: Specification of desired Service selection for target discovery by Prometheus. properties: attachMetadata: - description: Attaches node metadata to discovered targets. Requires Prometheus v2.37.0 and above. + description: "`attachMetadata` defines additional metadata which is added to the discovered targets. \n It requires Prometheus >= v2.37.0." properties: node: - description: When set to true, Prometheus must have permissions to get Nodes. + description: When set to true, Prometheus must have the `get` permission on the `Nodes` objects. type: boolean type: object endpoints: - description: A list of endpoints allowed as part of this ServiceMonitor. + description: List of endpoints part of this ServiceMonitor. items: - description: Endpoint defines a scrapeable endpoint serving Prometheus metrics. + description: Endpoint defines an endpoint serving Prometheus metrics to be scraped by Prometheus. properties: authorization: - description: Authorization section for this endpoint + description: "`authorization` configures the Authorization header credentials to use when scraping the target. \n Cannot be set at the same time as `basicAuth`, or `oauth2`." properties: credentials: description: Selects a key of a Secret in the namespace that contains the credentials for authentication. @@ -71,10 +70,10 @@ spec: type: string type: object basicAuth: - description: 'BasicAuth allow an endpoint to authenticate over basic authentication More info: https://prometheus.io/docs/operating/configuration/#endpoints' + description: "`basicAuth` configures the Basic Authentication credentials to use when scraping the target. \n Cannot be set at the same time as `authorization`, or `oauth2`." properties: password: - description: The secret in the service monitor namespace that contains the password for authentication. + description: '`password` specifies a key of a Secret containing the password for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -90,7 +89,7 @@ spec: type: object x-kubernetes-map-type: atomic username: - description: The secret in the service monitor namespace that contains the username for authentication. + description: '`username` specifies a key of a Secret containing the username for authentication.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -107,10 +106,10 @@ spec: x-kubernetes-map-type: atomic type: object bearerTokenFile: - description: File to read bearer token for scraping targets. + description: "File to read bearer token for scraping the target. \n Deprecated: use `authorization` instead." type: string bearerTokenSecret: - description: Secret to mount to read bearer token for scraping targets. The secret needs to be in the same namespace as the service monitor and accessible by the Prometheus Operator. + description: "`bearerTokenSecret` specifies a key of a Secret containing the bearer token for scraping targets. The secret needs to be in the same namespace as the ServiceMonitor object and readable by the Prometheus Operator. \n Deprecated: use `authorization` instead." properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -126,26 +125,26 @@ spec: type: object x-kubernetes-map-type: atomic enableHttp2: - description: Whether to enable HTTP2. + description: '`enableHttp2` can be used to disable HTTP2 when scraping the target.' type: boolean filterRunning: - description: 'Drop pods that are not running. (Failed, Succeeded). Enabled by default. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase' + description: "When true, the pods which are not running (e.g. either in Failed or Succeeded state) are dropped during the target discovery. \n If unset, the filtering is enabled. \n More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase" type: boolean followRedirects: - description: FollowRedirects configures whether scrape requests follow HTTP 3xx redirects. + description: '`followRedirects` defines whether the scrape requests should follow HTTP 3xx redirects.' type: boolean honorLabels: - description: HonorLabels chooses the metric's labels on collisions with target labels. + description: When true, `honorLabels` preserves the metric's labels when they collide with the target's labels. type: boolean honorTimestamps: - description: HonorTimestamps controls whether Prometheus respects the timestamps present in scraped data. + description: '`honorTimestamps` controls whether Prometheus preserves the timestamps when exposed by the target.' type: boolean interval: - description: Interval at which metrics should be scraped If not specified Prometheus' global scrape interval is used. + description: "Interval at which Prometheus scrapes the metrics from the target. \n If empty, Prometheus uses the global scrape interval." pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ type: string metricRelabelings: - description: MetricRelabelConfigs to apply to samples before ingestion. + description: '`metricRelabelings` configures the relabeling rules to apply to the samples before ingestion.' items: description: "RelabelConfig allows dynamic rewriting of the label set for targets, alerts, scraped samples and remote write samples. \n More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config" properties: @@ -202,10 +201,10 @@ spec: type: object type: array oauth2: - description: OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer. + description: "`oauth2` configures the OAuth2 settings to use when scraping the target. \n It requires Prometheus >= 2.27.0. \n Cannot be set at the same time as `authorization`, or `basicAuth`." properties: clientId: - description: The secret or configmap containing the OAuth2 client id + description: '`clientId` specifies a key of a Secret or ConfigMap containing the OAuth2 client''s ID.' properties: configMap: description: ConfigMap containing data to use for the targets. @@ -241,7 +240,7 @@ spec: x-kubernetes-map-type: atomic type: object clientSecret: - description: The secret containing the OAuth2 client secret + description: '`clientSecret` specifies a key of a Secret containing the OAuth2 client''s secret.' properties: key: description: The key of the secret to select from. Must be a valid secret key. @@ -259,15 +258,15 @@ spec: endpointParams: additionalProperties: type: string - description: Parameters to append to the token URL + description: '`endpointParams` configures the HTTP parameters to append to the token URL.' type: object scopes: - description: OAuth2 scopes used for the token request + description: '`scopes` defines the OAuth2 scopes used for the token request.' items: type: string type: array tokenUrl: - description: The URL to fetch the token from + description: '`tokenURL` configures the URL to fetch the token from.' minLength: 1 type: string required: @@ -280,19 +279,19 @@ spec: items: type: string type: array - description: Optional HTTP URL parameters + description: params define optional HTTP URL parameters. type: object path: - description: HTTP path to scrape for metrics. If empty, Prometheus uses the default value (e.g. `/metrics`). + description: "HTTP path from which to scrape for metrics. \n If empty, Prometheus uses the default value (e.g. `/metrics`)." type: string port: - description: Name of the service port this endpoint refers to. Mutually exclusive with targetPort. + description: "Name of the Service port which this endpoint refers to. \n It takes precedence over `targetPort`." type: string proxyUrl: - description: ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. + description: '`proxyURL` configures the HTTP Proxy URL (e.g. "http://proxyserver:2195") to go through when scraping the target.' type: string relabelings: - description: 'RelabelConfigs to apply to samples before scraping. Prometheus Operator automatically adds relabelings for a few standard Kubernetes fields. The original scrape job''s name is available via the `__tmp_prometheus_job_name` label. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config' + description: "`relabelings` configures the relabeling rules to apply the target's metadata labels. \n The Operator automatically adds relabelings for a few standard Kubernetes fields. \n The original scrape job's name is available via the `__tmp_prometheus_job_name` label. \n More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config" items: description: "RelabelConfig allows dynamic rewriting of the label set for targets, alerts, scraped samples and remote write samples. \n More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config" properties: @@ -349,23 +348,23 @@ spec: type: object type: array scheme: - description: HTTP scheme to use for scraping. `http` and `https` are the expected values unless you rewrite the `__scheme__` label via relabeling. If empty, Prometheus uses the default value `http`. + description: "HTTP scheme to use for scraping. \n `http` and `https` are the expected values unless you rewrite the `__scheme__` label via relabeling. \n If empty, Prometheus uses the default value `http`." enum: - http - https type: string scrapeTimeout: - description: Timeout after which the scrape is ended If not specified, the Prometheus global scrape timeout is used unless it is less than `Interval` in which the latter is used. + description: "Timeout after which Prometheus considers the scrape to be failed. \n If empty, Prometheus uses the global scrape timeout unless it is less than the target's scrape interval value in which the latter is used." pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ type: string targetPort: anyOf: - type: integer - type: string - description: Name or number of the target port of the Pod behind the Service, the port must be specified with container port property. Mutually exclusive with port. + description: "Name or number of the target port of the `Pod` object behind the Service, the port must be specified with container port property. \n Deprecated: use `port` instead." x-kubernetes-int-or-string: true tlsConfig: - description: TLS configuration to use when scraping the endpoint + description: TLS configuration to use when scraping the target. properties: ca: description: Certificate authority used when verifying server certificates. @@ -471,29 +470,32 @@ spec: description: Used to verify the hostname for the targets. type: string type: object + trackTimestampsStaleness: + description: "`trackTimestampsStaleness` defines whether Prometheus tracks staleness of the metrics that have an explicit timestamp present in scraped data. Has no effect if `honorTimestamps` is false. \n It requires Prometheus >= v2.48.0." + type: boolean type: object type: array jobLabel: - description: "JobLabel selects the label from the associated Kubernetes service which will be used as the `job` label for all metrics. \n For example: If in `ServiceMonitor.spec.jobLabel: foo` and in `Service.metadata.labels.foo: bar`, then the `job=\"bar\"` label is added to all metrics. \n If the value of this field is empty or if the label doesn't exist for the given Service, the `job` label of the metrics defaults to the name of the Kubernetes Service." + description: "`jobLabel` selects the label from the associated Kubernetes `Service` object which will be used as the `job` label for all metrics. \n For example if `jobLabel` is set to `foo` and the Kubernetes `Service` object is labeled with `foo: bar`, then Prometheus adds the `job=\"bar\"` label to all ingested metrics. \n If the value of this field is empty or if the label doesn't exist for the given Service, the `job` label of the metrics defaults to the name of the associated Kubernetes `Service`." type: string keepDroppedTargets: description: "Per-scrape limit on the number of targets dropped by relabeling that will be kept in memory. 0 means no limit. \n It requires Prometheus >= v2.47.0." format: int64 type: integer labelLimit: - description: Per-scrape limit on number of labels that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. + description: "Per-scrape limit on number of labels that will be accepted for a sample. \n It requires Prometheus >= v2.27.0." format: int64 type: integer labelNameLengthLimit: - description: Per-scrape limit on length of labels name that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. + description: "Per-scrape limit on length of labels name that will be accepted for a sample. \n It requires Prometheus >= v2.27.0." format: int64 type: integer labelValueLengthLimit: - description: Per-scrape limit on length of labels value that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. + description: "Per-scrape limit on length of labels value that will be accepted for a sample. \n It requires Prometheus >= v2.27.0." format: int64 type: integer namespaceSelector: - description: Selector to select which namespaces the Kubernetes Endpoints objects are discovered from. + description: Selector to select which namespaces the Kubernetes `Endpoints` objects are discovered from. properties: any: description: Boolean describing whether all namespaces are selected in contrast to a list restricting them. @@ -505,16 +507,16 @@ spec: type: array type: object podTargetLabels: - description: PodTargetLabels transfers labels on the Kubernetes `Pod` onto the created metrics. + description: '`podTargetLabels` defines the labels which are transferred from the associated Kubernetes `Pod` object onto the ingested metrics.' items: type: string type: array sampleLimit: - description: SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. + description: '`sampleLimit` defines a per-scrape limit on the number of scraped samples that will be accepted.' format: int64 type: integer selector: - description: Selector to select Endpoints objects. + description: Label selector to select the Kubernetes `Endpoints` objects. properties: matchExpressions: description: matchExpressions is a list of label selector requirements. The requirements are ANDed. @@ -545,16 +547,15 @@ spec: type: object x-kubernetes-map-type: atomic targetLabels: - description: TargetLabels transfers labels from the Kubernetes `Service` onto the created metrics. + description: '`targetLabels` defines the labels which are transferred from the associated Kubernetes `Service` object onto the ingested metrics.' items: type: string type: array targetLimit: - description: TargetLimit defines a limit on the number of scraped targets that will be accepted. + description: '`targetLimit` defines a limit on the number of scraped targets that will be accepted.' format: int64 type: integer required: - - endpoints - selector type: object required: diff --git a/apps/monitoring/manifests/prometheusOperator/0thanosrulerCustomResourceDefinition.yaml b/apps/monitoring/manifests/prometheusOperator/0thanosrulerCustomResourceDefinition.yaml index 6749255f8..96e084c5f 100644 --- a/apps/monitoring/manifests/prometheusOperator/0thanosrulerCustomResourceDefinition.yaml +++ b/apps/monitoring/manifests/prometheusOperator/0thanosrulerCustomResourceDefinition.yaml @@ -2,9 +2,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.68.0 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.13.0 + operator.prometheus.io/version: 0.70.0 name: thanosrulers.monitoring.coreos.com spec: group: monitoring.coreos.com @@ -2489,7 +2488,7 @@ spec: description: When a ThanosRuler deployment is paused, no actions except for deletion will be performed on the underlying objects. type: boolean podMetadata: - description: PodMetadata contains Labels and Annotations gets propagated to the thanos ruler pods. + description: "PodMetadata configures labels and annotations which are propagated to the ThanosRuler pods. \n The following items are reserved and cannot be overridden: * \"app.kubernetes.io/name\" label, set to \"thanos-ruler\". * \"app.kubernetes.io/managed-by\" label, set to \"prometheus-operator\". * \"app.kubernetes.io/instance\" label, set to the name of the ThanosRuler instance. * \"thanos-ruler\" label, set to the name of the ThanosRuler instance. * \"kubectl.kubernetes.io/default-container\" annotation, set to \"thanos-ruler\"." properties: annotations: additionalProperties: diff --git a/apps/monitoring/manifests/prometheusOperator/clusterRole.yaml b/apps/monitoring/manifests/prometheusOperator/clusterRole.yaml index 1b3adad0f..6e6671d6d 100644 --- a/apps/monitoring/manifests/prometheusOperator/clusterRole.yaml +++ b/apps/monitoring/manifests/prometheusOperator/clusterRole.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 0.68.0 + app.kubernetes.io/version: 0.69.1 name: prometheus-operator rules: - apiGroups: diff --git a/apps/monitoring/manifests/prometheusOperator/clusterRoleBinding.yaml b/apps/monitoring/manifests/prometheusOperator/clusterRoleBinding.yaml index d91cab3d0..ebef7d0cf 100644 --- a/apps/monitoring/manifests/prometheusOperator/clusterRoleBinding.yaml +++ b/apps/monitoring/manifests/prometheusOperator/clusterRoleBinding.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 0.68.0 + app.kubernetes.io/version: 0.69.1 name: prometheus-operator roleRef: apiGroup: rbac.authorization.k8s.io diff --git a/apps/monitoring/manifests/prometheusOperator/deployment.yaml b/apps/monitoring/manifests/prometheusOperator/deployment.yaml index b2c1bae34..0c68a9a90 100644 --- a/apps/monitoring/manifests/prometheusOperator/deployment.yaml +++ b/apps/monitoring/manifests/prometheusOperator/deployment.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 0.68.0 + app.kubernetes.io/version: 0.69.1 name: prometheus-operator namespace: monitoring spec: @@ -24,17 +24,20 @@ spec: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 0.68.0 + app.kubernetes.io/version: 0.69.1 spec: automountServiceAccountToken: true containers: - args: - --kubelet-service=kube-system/kubelet - - --prometheus-config-reloader=quay.io/prometheus-operator/prometheus-config-reloader:v0.68.0 + - --prometheus-config-reloader=quay.io/prometheus-operator/prometheus-config-reloader:v0.69.1 - --log-level=debug - --config-reloader-cpu-request=2m - --config-reloader-memory-request=17Mi - image: quay.io/prometheus-operator/prometheus-operator:v0.68.0 + env: + - name: GOGC + value: "30" + image: quay.io/prometheus-operator/prometheus-operator:v0.69.1 name: prometheus-operator ports: - containerPort: 8080 diff --git a/apps/monitoring/manifests/prometheusOperator/networkPolicy.yaml b/apps/monitoring/manifests/prometheusOperator/networkPolicy.yaml index 5379003ec..fd7eacaa7 100644 --- a/apps/monitoring/manifests/prometheusOperator/networkPolicy.yaml +++ b/apps/monitoring/manifests/prometheusOperator/networkPolicy.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 0.68.0 + app.kubernetes.io/version: 0.69.1 name: prometheus-operator namespace: monitoring spec: diff --git a/apps/monitoring/manifests/prometheusOperator/prometheusRule.yaml b/apps/monitoring/manifests/prometheusOperator/prometheusRule.yaml index 12fdf282d..8124c3fee 100644 --- a/apps/monitoring/manifests/prometheusOperator/prometheusRule.yaml +++ b/apps/monitoring/manifests/prometheusOperator/prometheusRule.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 0.68.0 + app.kubernetes.io/version: 0.69.1 role: alert-rules name: prometheus-operator-rules namespace: monitoring diff --git a/apps/monitoring/manifests/prometheusOperator/service.yaml b/apps/monitoring/manifests/prometheusOperator/service.yaml index b622a1507..1bce746fe 100644 --- a/apps/monitoring/manifests/prometheusOperator/service.yaml +++ b/apps/monitoring/manifests/prometheusOperator/service.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 0.68.0 + app.kubernetes.io/version: 0.69.1 name: prometheus-operator namespace: monitoring spec: diff --git a/apps/monitoring/manifests/prometheusOperator/serviceAccount.yaml b/apps/monitoring/manifests/prometheusOperator/serviceAccount.yaml index acf5471f3..2ba64b5d4 100644 --- a/apps/monitoring/manifests/prometheusOperator/serviceAccount.yaml +++ b/apps/monitoring/manifests/prometheusOperator/serviceAccount.yaml @@ -6,6 +6,6 @@ metadata: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 0.68.0 + app.kubernetes.io/version: 0.69.1 name: prometheus-operator namespace: monitoring diff --git a/apps/monitoring/manifests/prometheusOperator/serviceMonitor.yaml b/apps/monitoring/manifests/prometheusOperator/serviceMonitor.yaml index f3fc3b0b9..740dfdf69 100644 --- a/apps/monitoring/manifests/prometheusOperator/serviceMonitor.yaml +++ b/apps/monitoring/manifests/prometheusOperator/serviceMonitor.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 0.68.0 + app.kubernetes.io/version: 0.69.1 name: prometheus-operator namespace: monitoring spec: @@ -21,4 +21,4 @@ spec: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 0.68.0 + app.kubernetes.io/version: 0.69.1 diff --git a/apps/monitoring/manifests/windowsExporter/prometheusRule.yaml b/apps/monitoring/manifests/windowsExporter/prometheusRule.yaml index 79248706c..cecb28426 100644 --- a/apps/monitoring/manifests/windowsExporter/prometheusRule.yaml +++ b/apps/monitoring/manifests/windowsExporter/prometheusRule.yaml @@ -11,45 +11,45 @@ spec: - name: windows.node.rules rules: - expr: | - count ( + count by (cluster) ( windows_system_system_up_time{job="windows-exporter"} ) record: node:windows_node:sum - expr: | - count by (instance) (sum by (instance, core) ( + count by (cluster, instance) (sum by (cluster, instance, core) ( windows_cpu_time_total{job="windows-exporter"} )) record: node:windows_node_num_cpu:sum - expr: | - 1 - avg(rate(windows_cpu_time_total{job="windows-exporter",mode="idle"}[1m])) + 1 - avg by (cluster) (rate(windows_cpu_time_total{job="windows-exporter",mode="idle"}[1m])) record: :windows_node_cpu_utilisation:avg1m - expr: | - 1 - avg by (instance) ( + 1 - avg by (cluster, instance) ( rate(windows_cpu_time_total{job="windows-exporter",mode="idle"}[1m]) ) record: node:windows_node_cpu_utilisation:avg1m - expr: | 1 - - sum(windows_memory_available_bytes{job="windows-exporter"}) + sum by (cluster) (windows_memory_available_bytes{job="windows-exporter"}) / - sum(windows_os_visible_memory_bytes{job="windows-exporter"}) + sum by (cluster) (windows_os_visible_memory_bytes{job="windows-exporter"}) record: ':windows_node_memory_utilisation:' - expr: | - sum(windows_memory_available_bytes{job="windows-exporter"} + windows_memory_cache_bytes{job="windows-exporter"}) + sum by (cluster) (windows_memory_available_bytes{job="windows-exporter"} + windows_memory_cache_bytes{job="windows-exporter"}) record: :windows_node_memory_MemFreeCached_bytes:sum - expr: | (windows_memory_cache_bytes{job="windows-exporter"} + windows_memory_modified_page_list_bytes{job="windows-exporter"} + windows_memory_standby_cache_core_bytes{job="windows-exporter"} + windows_memory_standby_cache_normal_priority_bytes{job="windows-exporter"} + windows_memory_standby_cache_reserve_bytes{job="windows-exporter"}) record: node:windows_node_memory_totalCached_bytes:sum - expr: | - sum(windows_os_visible_memory_bytes{job="windows-exporter"}) + sum by (cluster) (windows_os_visible_memory_bytes{job="windows-exporter"}) record: :windows_node_memory_MemTotal_bytes:sum - expr: | - sum by (instance) ( + sum by (cluster, instance) ( (windows_memory_available_bytes{job="windows-exporter"}) ) record: node:windows_node_memory_bytes_available:sum - expr: | - sum by (instance) ( + sum by (cluster, instance) ( windows_os_visible_memory_bytes{job="windows-exporter"} ) record: node:windows_node_memory_bytes_total:sum @@ -65,40 +65,40 @@ spec: irate(windows_memory_swap_page_operations_total{job="windows-exporter"}[5m]) record: node:windows_node_memory_swap_io_pages:irate - expr: | - avg(irate(windows_logical_disk_read_seconds_total{job="windows-exporter"}[1m]) + + avg by (cluster) (irate(windows_logical_disk_read_seconds_total{job="windows-exporter"}[1m]) + irate(windows_logical_disk_write_seconds_total{job="windows-exporter"}[1m]) ) record: :windows_node_disk_utilisation:avg_irate - expr: | - avg by (instance) ( + avg by (cluster, instance) ( (irate(windows_logical_disk_read_seconds_total{job="windows-exporter"}[1m]) + irate(windows_logical_disk_write_seconds_total{job="windows-exporter"}[1m])) ) record: node:windows_node_disk_utilisation:avg_irate - expr: | - max by (instance,volume)( + max by (cluster,instance,volume)( (windows_logical_disk_size_bytes{job="windows-exporter"} - windows_logical_disk_free_bytes{job="windows-exporter"}) / windows_logical_disk_size_bytes{job="windows-exporter"} ) record: 'node:windows_node_filesystem_usage:' - expr: | - max by (instance, volume) (windows_logical_disk_free_bytes{job="windows-exporter"} / windows_logical_disk_size_bytes{job="windows-exporter"}) + max by (cluster, instance, volume) (windows_logical_disk_free_bytes{job="windows-exporter"} / windows_logical_disk_size_bytes{job="windows-exporter"}) record: 'node:windows_node_filesystem_avail:' - expr: | - sum(irate(windows_net_bytes_total{job="windows-exporter"}[1m])) + sum by (cluster) (irate(windows_net_bytes_total{job="windows-exporter"}[1m])) record: :windows_node_net_utilisation:sum_irate - expr: | - sum by (instance) ( + sum by (cluster, instance) ( (irate(windows_net_bytes_total{job="windows-exporter"}[1m])) ) record: node:windows_node_net_utilisation:sum_irate - expr: | - sum(irate(windows_net_packets_received_discarded_total{job="windows-exporter"}[1m])) + - sum(irate(windows_net_packets_outbound_discarded_total{job="windows-exporter"}[1m])) + sum by (cluster) (irate(windows_net_packets_received_discarded_total{job="windows-exporter"}[1m])) + + sum by (cluster) (irate(windows_net_packets_outbound_discarded_total{job="windows-exporter"}[1m])) record: :windows_node_net_saturation:sum_irate - expr: | - sum by (instance) ( + sum by (cluster, instance) ( (irate(windows_net_packets_received_discarded_total{job="windows-exporter"}[1m]) + irate(windows_net_packets_outbound_discarded_total{job="windows-exporter"}[1m])) ) @@ -106,41 +106,41 @@ spec: - name: windows.pod.rules rules: - expr: | - windows_container_available{job="windows-exporter", container_id != ""} * on(container_id) group_left(container, pod, namespace) max(kube_pod_container_info{job="kube-state-metrics", container_id != ""}) by(container, container_id, pod, namespace) + windows_container_available{job="windows-exporter", container_id != ""} * on(container_id, cluster) group_left(container, pod, namespace) max(kube_pod_container_info{job="kube-state-metrics", container_id != ""}) by(container, container_id, pod, namespace, cluster) record: windows_pod_container_available - expr: | - windows_container_cpu_usage_seconds_total{job="windows-exporter", container_id != ""} * on(container_id) group_left(container, pod, namespace) max(kube_pod_container_info{job="kube-state-metrics", container_id != ""}) by(container, container_id, pod, namespace) + windows_container_cpu_usage_seconds_total{job="windows-exporter", container_id != ""} * on(container_id, cluster) group_left(container, pod, namespace) max(kube_pod_container_info{job="kube-state-metrics", container_id != ""}) by(container, container_id, pod, namespace, cluster) record: windows_container_total_runtime - expr: | - windows_container_memory_usage_commit_bytes{job="windows-exporter", container_id != ""} * on(container_id) group_left(container, pod, namespace) max(kube_pod_container_info{job="kube-state-metrics", container_id != ""}) by(container, container_id, pod, namespace) + windows_container_memory_usage_commit_bytes{job="windows-exporter", container_id != ""} * on(container_id, cluster) group_left(container, pod, namespace) max(kube_pod_container_info{job="kube-state-metrics", container_id != ""}) by(container, container_id, pod, namespace, cluster) record: windows_container_memory_usage - expr: | - windows_container_memory_usage_private_working_set_bytes{job="windows-exporter", container_id != ""} * on(container_id) group_left(container, pod, namespace) max(kube_pod_container_info{job="kube-state-metrics", container_id != ""}) by(container, container_id, pod, namespace) + windows_container_memory_usage_private_working_set_bytes{job="windows-exporter", container_id != ""} * on(container_id, cluster) group_left(container, pod, namespace) max(kube_pod_container_info{job="kube-state-metrics", container_id != ""}) by(container, container_id, pod, namespace, cluster) record: windows_container_private_working_set_usage - expr: | - windows_container_network_receive_bytes_total{job="windows-exporter", container_id != ""} * on(container_id) group_left(container, pod, namespace) max(kube_pod_container_info{job="kube-state-metrics", container_id != ""}) by(container, container_id, pod, namespace) + windows_container_network_receive_bytes_total{job="windows-exporter", container_id != ""} * on(container_id, cluster) group_left(container, pod, namespace) max(kube_pod_container_info{job="kube-state-metrics", container_id != ""}) by(container, container_id, pod, namespace, cluster) record: windows_container_network_received_bytes_total - expr: | - windows_container_network_transmit_bytes_total{job="windows-exporter", container_id != ""} * on(container_id) group_left(container, pod, namespace) max(kube_pod_container_info{job="kube-state-metrics", container_id != ""}) by(container, container_id, pod, namespace) + windows_container_network_transmit_bytes_total{job="windows-exporter", container_id != ""} * on(container_id, cluster) group_left(container, pod, namespace) max(kube_pod_container_info{job="kube-state-metrics", container_id != ""}) by(container, container_id, pod, namespace, cluster) record: windows_container_network_transmitted_bytes_total - expr: | - max by (namespace, pod, container) ( + max by (cluster, namespace, pod, container) ( kube_pod_container_resource_requests{resource="memory",job="kube-state-metrics"} - ) * on(container,pod,namespace) (windows_pod_container_available) + ) * on(container,pod,namespace,cluster) (windows_pod_container_available) record: kube_pod_windows_container_resource_memory_request - expr: | - kube_pod_container_resource_limits{resource="memory",job="kube-state-metrics"} * on(container,pod,namespace) (windows_pod_container_available) + kube_pod_container_resource_limits{resource="memory",job="kube-state-metrics"} * on(container,pod,namespace,cluster) (windows_pod_container_available) record: kube_pod_windows_container_resource_memory_limit - expr: | - max by (namespace, pod, container) ( + max by (cluster, namespace, pod, container) ( kube_pod_container_resource_requests{resource="cpu",job="kube-state-metrics"} - ) * on(container,pod,namespace) (windows_pod_container_available) + ) * on(container,pod,namespace,cluster) (windows_pod_container_available) record: kube_pod_windows_container_resource_cpu_cores_request - expr: | - kube_pod_container_resource_limits{resource="cpu",job="kube-state-metrics"} * on(container,pod,namespace) (windows_pod_container_available) + kube_pod_container_resource_limits{resource="cpu",job="kube-state-metrics"} * on(container,pod,namespace,cluster) (windows_pod_container_available) record: kube_pod_windows_container_resource_cpu_cores_limit - expr: | - sum by (namespace, pod, container) ( + sum by (cluster, namespace, pod, container) ( rate(windows_container_total_runtime{}[5m]) ) record: namespace_pod_container:windows_container_cpu_usage_seconds_total:sum_rate diff --git a/apps/opencost/release.yaml b/apps/opencost/release.yaml index 53cc59776..4725da5e0 100644 --- a/apps/opencost/release.yaml +++ b/apps/opencost/release.yaml @@ -7,7 +7,7 @@ spec: chart: spec: chart: opencost - version: "1.29.0" + version: "1.29.1" sourceRef: kind: HelmRepository name: opencost diff --git a/base/cert-manager/VERSION b/base/cert-manager/VERSION index 63e799cf4..a4cc55716 100644 --- a/base/cert-manager/VERSION +++ b/base/cert-manager/VERSION @@ -1 +1 @@ -1.14.1 +1.14.2 diff --git a/base/cert-manager/manifests/cert-manager.yaml b/base/cert-manager/manifests/cert-manager.yaml index 99ead8853..4f940cb12 100644 --- a/base/cert-manager/manifests/cert-manager.yaml +++ b/base/cert-manager/manifests/cert-manager.yaml @@ -27,7 +27,7 @@ metadata: app.kubernetes.io/name: 'cert-manager' app.kubernetes.io/instance: 'cert-manager' # Generated labels - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" spec: group: cert-manager.io names: @@ -225,7 +225,7 @@ metadata: app.kubernetes.io/name: 'cert-manager' app.kubernetes.io/instance: 'cert-manager' # Generated labels - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" spec: group: cert-manager.io names: @@ -670,7 +670,7 @@ metadata: app.kubernetes.io/name: 'cert-manager' app.kubernetes.io/instance: 'cert-manager' # Generated labels - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" spec: group: acme.cert-manager.io names: @@ -1796,7 +1796,7 @@ metadata: app.kubernetes.io/name: 'cert-manager' app.kubernetes.io/instance: "cert-manager" # Generated labels - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" spec: group: cert-manager.io names: @@ -3169,7 +3169,7 @@ metadata: app.kubernetes.io/name: 'cert-manager' app.kubernetes.io/instance: "cert-manager" # Generated labels - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" spec: group: cert-manager.io names: @@ -4542,7 +4542,7 @@ metadata: app.kubernetes.io/name: 'cert-manager' app.kubernetes.io/instance: 'cert-manager' # Generated labels - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" spec: group: acme.cert-manager.io names: @@ -4726,7 +4726,7 @@ metadata: app.kubernetes.io/name: cainjector app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "cainjector" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" --- # Source: cert-manager/templates/serviceaccount.yaml apiVersion: v1 @@ -4740,7 +4740,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" --- # Source: cert-manager/templates/webhook-serviceaccount.yaml apiVersion: v1 @@ -4754,7 +4754,7 @@ metadata: app.kubernetes.io/name: webhook app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "webhook" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" --- # Source: cert-manager/templates/cainjector-rbac.yaml apiVersion: rbac.authorization.k8s.io/v1 @@ -4766,7 +4766,7 @@ metadata: app.kubernetes.io/name: cainjector app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "cainjector" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rules: - apiGroups: ["cert-manager.io"] resources: ["certificates"] @@ -4798,7 +4798,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rules: - apiGroups: ["cert-manager.io"] resources: ["issuers", "issuers/status"] @@ -4824,7 +4824,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rules: - apiGroups: ["cert-manager.io"] resources: ["clusterissuers", "clusterissuers/status"] @@ -4850,7 +4850,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rules: - apiGroups: ["cert-manager.io"] resources: ["certificates", "certificates/status", "certificaterequests", "certificaterequests/status"] @@ -4885,7 +4885,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rules: - apiGroups: ["acme.cert-manager.io"] resources: ["orders", "orders/status"] @@ -4923,7 +4923,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rules: # Use to update challenge resource status - apiGroups: ["acme.cert-manager.io"] @@ -4983,7 +4983,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rules: - apiGroups: ["cert-manager.io"] resources: ["certificates", "certificaterequests"] @@ -5020,7 +5020,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true" rules: - apiGroups: ["cert-manager.io"] @@ -5037,7 +5037,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rbac.authorization.k8s.io/aggregate-to-view: "true" rbac.authorization.k8s.io/aggregate-to-edit: "true" rbac.authorization.k8s.io/aggregate-to-admin: "true" @@ -5060,7 +5060,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rbac.authorization.k8s.io/aggregate-to-edit: "true" rbac.authorization.k8s.io/aggregate-to-admin: "true" rules: @@ -5085,7 +5085,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "cert-manager" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rules: - apiGroups: ["cert-manager.io"] resources: ["signers"] @@ -5105,7 +5105,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "cert-manager" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rules: - apiGroups: ["certificates.k8s.io"] resources: ["certificatesigningrequests"] @@ -5131,7 +5131,7 @@ metadata: app.kubernetes.io/name: webhook app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "webhook" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rules: - apiGroups: ["authorization.k8s.io"] resources: ["subjectaccessreviews"] @@ -5147,7 +5147,7 @@ metadata: app.kubernetes.io/name: cainjector app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "cainjector" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole @@ -5167,7 +5167,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole @@ -5187,7 +5187,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole @@ -5207,7 +5207,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole @@ -5227,7 +5227,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole @@ -5247,7 +5247,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole @@ -5267,7 +5267,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole @@ -5287,7 +5287,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "cert-manager" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole @@ -5307,7 +5307,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "cert-manager" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole @@ -5327,7 +5327,7 @@ metadata: app.kubernetes.io/name: webhook app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "webhook" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole @@ -5350,7 +5350,7 @@ metadata: app.kubernetes.io/name: cainjector app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "cainjector" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rules: # Used for leader election by the controller # cert-manager-cainjector-leader-election is used by the CertificateBased injector controller @@ -5376,7 +5376,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rules: - apiGroups: ["coordination.k8s.io"] resources: ["leases"] @@ -5397,7 +5397,7 @@ metadata: app.kubernetes.io/name: webhook app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "webhook" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" rules: - apiGroups: [""] resources: ["secrets"] @@ -5422,7 +5422,7 @@ metadata: app.kubernetes.io/name: cainjector app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "cainjector" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" roleRef: apiGroup: rbac.authorization.k8s.io kind: Role @@ -5445,7 +5445,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" roleRef: apiGroup: rbac.authorization.k8s.io kind: Role @@ -5467,7 +5467,7 @@ metadata: app.kubernetes.io/name: webhook app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "webhook" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" roleRef: apiGroup: rbac.authorization.k8s.io kind: Role @@ -5489,7 +5489,7 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" spec: type: ClusterIP ports: @@ -5513,7 +5513,7 @@ metadata: app.kubernetes.io/name: webhook app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "webhook" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" spec: type: ClusterIP ports: @@ -5537,10 +5537,9 @@ metadata: app.kubernetes.io/name: cainjector app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "cainjector" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" spec: replicas: 1 - revisionHistoryLimit: selector: matchLabels: app.kubernetes.io/name: cainjector @@ -5553,7 +5552,7 @@ spec: app.kubernetes.io/name: cainjector app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "cainjector" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" spec: serviceAccountName: cert-manager-cainjector enableServiceLinks: false @@ -5563,7 +5562,7 @@ spec: type: RuntimeDefault containers: - name: cert-manager-cainjector - image: "quay.io/jetstack/cert-manager-cainjector:v1.14.1" + image: "quay.io/jetstack/cert-manager-cainjector:v1.14.2" imagePullPolicy: IfNotPresent args: - --v=2 @@ -5593,10 +5592,9 @@ metadata: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" spec: replicas: 1 - revisionHistoryLimit: selector: matchLabels: app.kubernetes.io/name: cert-manager @@ -5609,7 +5607,7 @@ spec: app.kubernetes.io/name: cert-manager app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "controller" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" annotations: prometheus.io/path: "/metrics" prometheus.io/scrape: 'true' @@ -5623,13 +5621,13 @@ spec: type: RuntimeDefault containers: - name: cert-manager-controller - image: "quay.io/jetstack/cert-manager-controller:v1.14.1" + image: "quay.io/jetstack/cert-manager-controller:v1.14.2" imagePullPolicy: IfNotPresent args: - --v=2 - --cluster-resource-namespace=$(POD_NAMESPACE) - --leader-election-namespace=kube-system - - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.14.1 + - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.14.2 - --max-concurrent-challenges=60 ports: - containerPort: 9402 @@ -5676,10 +5674,9 @@ metadata: app.kubernetes.io/name: webhook app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "webhook" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" spec: replicas: 1 - revisionHistoryLimit: selector: matchLabels: app.kubernetes.io/name: webhook @@ -5692,7 +5689,7 @@ spec: app.kubernetes.io/name: webhook app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "webhook" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" spec: serviceAccountName: cert-manager-webhook enableServiceLinks: false @@ -5702,7 +5699,7 @@ spec: type: RuntimeDefault containers: - name: cert-manager-webhook - image: "quay.io/jetstack/cert-manager-webhook:v1.14.1" + image: "quay.io/jetstack/cert-manager-webhook:v1.14.2" imagePullPolicy: IfNotPresent args: - --v=2 @@ -5764,7 +5761,7 @@ metadata: app.kubernetes.io/name: webhook app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "webhook" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" annotations: cert-manager.io/inject-ca-from-secret: "cert-manager/cert-manager-webhook-ca" webhooks: @@ -5803,7 +5800,7 @@ metadata: app.kubernetes.io/name: webhook app.kubernetes.io/instance: cert-manager app.kubernetes.io/component: "webhook" - app.kubernetes.io/version: "v1.14.1" + app.kubernetes.io/version: "v1.14.2" annotations: cert-manager.io/inject-ca-from-secret: "cert-manager/cert-manager-webhook-ca" webhooks: diff --git a/base/external-secrets/release.yaml b/base/external-secrets/release.yaml index 579de7eca..c98afe72c 100644 --- a/base/external-secrets/release.yaml +++ b/base/external-secrets/release.yaml @@ -8,7 +8,7 @@ spec: chart: spec: chart: external-secrets - version: "0.9.11" + version: "0.9.12" sourceRef: kind: HelmRepository name: external-secrets