diff --git a/jsonnet/kube-prometheus/versions.json b/jsonnet/kube-prometheus/versions.json index 6fc23f9f42b158776931b3e913e890650d06691d..bfc5466565addef93827ba99e3238e5c99be8717 100644 --- a/jsonnet/kube-prometheus/versions.json +++ b/jsonnet/kube-prometheus/versions.json @@ -1,7 +1,7 @@ { "alertmanager": "0.24.0", "blackboxExporter": "0.20.0", - "grafana": "8.4.5", + "grafana": "8.4.6", "kubeStateMetrics": "2.4.2", "nodeExporter": "1.3.1", "prometheus": "2.34.0", diff --git a/jsonnetfile.lock.json b/jsonnetfile.lock.json index f889febd5eb71c11f897ac3eb9b063b4f4dc57da..81e9e7a2977368cdcba8b257af2158820bc17856 100644 --- a/jsonnetfile.lock.json +++ b/jsonnetfile.lock.json @@ -18,7 +18,7 @@ "subdir": "contrib/mixin" } }, - "version": "0c9a4e0f93ad9a7d83e8f5ec215baa856616c76b", + "version": "81491914fbfbfcc041e175beb20f2cf3f575557e", "sum": "zhLYhUNcXNkMRfJhMUX0UiOpi8TOuLmUqJfO9NFKFkg=" }, { @@ -48,7 +48,7 @@ "subdir": "grafana-builder" } }, - "version": "6caac96014a123fe32072cc309c57a1ab5141f10", + "version": "28e90490f768aaf14d5bcb15ed2f6ab4e3efe725", "sum": "0KkygBQd/AFzUvVzezE4qF/uDYgrwUXVpZfINBti0oc=" }, { @@ -58,8 +58,8 @@ "subdir": "" } }, - "version": "f2b5aab16039e7aa78c1b39aad1ec63d87eca85e", - "sum": "0x5qkZAgoM78WqZgmGFthmXREiDQUQYk5HYdjqOVgKs=" + "version": "62ad10fe9ceb53c6b846871997abbfe8e0bd7cf5", + "sum": "6gD9F29f8T2a71n35Y61P7TBiF5NQuhk4JUwEafsA1E=" }, { "source": { @@ -68,7 +68,7 @@ "subdir": "lib/promgrafonnet" } }, - "version": "f2b5aab16039e7aa78c1b39aad1ec63d87eca85e", + "version": "62ad10fe9ceb53c6b846871997abbfe8e0bd7cf5", "sum": "zv7hXGui6BfHzE9wPatHI/AGZa4A2WKo6pq7ZdqBsps=" }, { @@ -98,7 +98,7 @@ "subdir": "jsonnet/mixin" } }, - "version": "371192cdc95e4596c4f07591ff65104d8c85bad9", + "version": "b0628d00ee84230c24560736060e1ca45e7fc429", "sum": "joc3gM74r0q658bmpfTbeAr0Nce4gTBv0rf3I+2J0rQ=", "name": "prometheus-operator-mixin" }, @@ -109,8 +109,8 @@ "subdir": "jsonnet/prometheus-operator" } }, - "version": "371192cdc95e4596c4f07591ff65104d8c85bad9", - "sum": "NqiD9mjw2dbS/xXSv5q+JAxU4v+YtQDnwpkSqNFD/pQ=" + "version": "b0628d00ee84230c24560736060e1ca45e7fc429", + "sum": "mYU7yZz9AkpjVw+YrqebZOx+WON1jJZewVtVoUTXsx0=" }, { "source": { @@ -140,7 +140,7 @@ "subdir": "documentation/prometheus-mixin" } }, - "version": "6555cc68caf8d8f323056e497ae7bb1e32a81667", + "version": "4deb1a90d2f1300bb92938aa3c5949fffc7b7ce4", "sum": "APXOIP3B3dZ3Tyh7L2UhyWR8Vbf5+9adTLz/ya7n6uU=", "name": "prometheus" }, @@ -151,7 +151,7 @@ "subdir": "config/crd/bases" } }, - "version": "a200511fb84bcf855a06e3c2b989fc892007c6a8", + "version": "ac027a4a3dd7526a3afe80fc7e48cfec62436d81", "sum": "GQ0GFKGdIWKx1b78VRs6jtC4SMqkBjT5jl65QUjPKK4=" }, { @@ -161,7 +161,7 @@ "subdir": "mixin" } }, - "version": "95aa03bf2a3cb7dc41709d151c5a7df26e726816", + "version": "81218afa5b01d44d20db8be599c88127e2cdf646", "sum": "dBm9ML50quhu6dwTIgfNmVruMqfaUeQVCO/6EKtQLxE=", "name": "thanos-mixin" }, diff --git a/manifests/grafana-config.yaml b/manifests/grafana-config.yaml index 947bad302ab4fd1e63a1244b3a6e454eb1b121a2..7f014358915b31576834f1c9d74d59f291248b69 100644 --- a/manifests/grafana-config.yaml +++ b/manifests/grafana-config.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-config namespace: monitoring stringData: diff --git a/manifests/grafana-dashboardDatasources.yaml b/manifests/grafana-dashboardDatasources.yaml index 802d464ae5d4d7a3717bae0f7367f492b9d3121f..15b281c0d26ed0c955c710c6670e04cae985611b 100644 --- a/manifests/grafana-dashboardDatasources.yaml +++ b/manifests/grafana-dashboardDatasources.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-datasources namespace: monitoring stringData: diff --git a/manifests/grafana-dashboardDefinitions.yaml b/manifests/grafana-dashboardDefinitions.yaml index ad2e4ac4741ca51ef866cc6150aed64b86b61bf3..28566270141cabeaa99573f75e0d412fb45fb312 100644 --- a/manifests/grafana-dashboardDefinitions.yaml +++ b/manifests/grafana-dashboardDefinitions.yaml @@ -596,7 +596,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-alertmanager-overview namespace: monitoring - apiVersion: v1 @@ -2357,7 +2357,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-apiserver namespace: monitoring - apiVersion: v1 @@ -4228,7 +4228,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-cluster-total namespace: monitoring - apiVersion: v1 @@ -5407,7 +5407,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-controller-manager namespace: monitoring - apiVersion: v1 @@ -6032,7 +6032,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-grafana-overview namespace: monitoring - apiVersion: v1 @@ -9109,7 +9109,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-k8s-resources-cluster namespace: monitoring - apiVersion: v1 @@ -11895,7 +11895,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-k8s-resources-namespace namespace: monitoring - apiVersion: v1 @@ -12910,7 +12910,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-k8s-resources-node namespace: monitoring - apiVersion: v1 @@ -15368,7 +15368,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-k8s-resources-pod namespace: monitoring - apiVersion: v1 @@ -17381,7 +17381,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-k8s-resources-workload namespace: monitoring - apiVersion: v1 @@ -19559,7 +19559,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-k8s-resources-workloads-namespace namespace: monitoring - apiVersion: v1 @@ -21802,7 +21802,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-kubelet namespace: monitoring - apiVersion: v1 @@ -23255,7 +23255,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-namespace-by-pod namespace: monitoring - apiVersion: v1 @@ -24980,7 +24980,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-namespace-by-workload namespace: monitoring - apiVersion: v1 @@ -26032,7 +26032,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-node-cluster-rsrc-use namespace: monitoring - apiVersion: v1 @@ -27110,7 +27110,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-node-rsrc-use namespace: monitoring - apiVersion: v1 @@ -28090,7 +28090,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-nodes namespace: monitoring - apiVersion: v1 @@ -28666,7 +28666,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-persistentvolumesusage namespace: monitoring - apiVersion: v1 @@ -29883,7 +29883,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-pod-total namespace: monitoring - apiVersion: v1 @@ -31542,7 +31542,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-prometheus-remote-write namespace: monitoring - apiVersion: v1 @@ -32766,7 +32766,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-prometheus namespace: monitoring - apiVersion: v1 @@ -34026,7 +34026,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-proxy namespace: monitoring - apiVersion: v1 @@ -35127,7 +35127,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-scheduler namespace: monitoring - apiVersion: v1 @@ -36554,7 +36554,7 @@ items: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboard-workload-total namespace: monitoring kind: ConfigMapList diff --git a/manifests/grafana-dashboardSources.yaml b/manifests/grafana-dashboardSources.yaml index 7bbf3eeda349357b2d7a781d414e6fa1b52f31e8..76c2432f7565c28c1124d48a17d8445332a9ec0c 100644 --- a/manifests/grafana-dashboardSources.yaml +++ b/manifests/grafana-dashboardSources.yaml @@ -22,6 +22,6 @@ metadata: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana-dashboards namespace: monitoring diff --git a/manifests/grafana-deployment.yaml b/manifests/grafana-deployment.yaml index 2c9fda149d173b52515ba8059f1ef3e4d71c56e2..ab18bf60bc6fa7ade4d7f85c0f4b74c9cbfb4bce 100644 --- a/manifests/grafana-deployment.yaml +++ b/manifests/grafana-deployment.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana namespace: monitoring spec: @@ -18,19 +18,19 @@ spec: template: metadata: annotations: - checksum/grafana-config: 813d4bf6c9d7cac884a9fa2261205c2d - checksum/grafana-dashboardproviders: e9459f6ac64d3855b06645176035b1f2 - checksum/grafana-datasources: 57939af14bc401215e5364bbe0f81094 + checksum/grafana-config: 8d5b3c2525a34c4827d3571f064e61a2 + checksum/grafana-dashboardproviders: 6fadd1f7543b97b3e500fed3670ffaca + checksum/grafana-datasources: 21f2493ee382d5e300f7bbb126261cec labels: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 spec: automountServiceAccountToken: false containers: - env: [] - image: grafana/grafana:8.4.5 + image: grafana/grafana:8.4.6 name: grafana ports: - containerPort: 3000 diff --git a/manifests/grafana-networkPolicy.yaml b/manifests/grafana-networkPolicy.yaml index d78c1160e2cfebfb7b68cf3145f8d03491b9557d..f01e6cdbff4714e3e3a4753a5b29170112320786 100644 --- a/manifests/grafana-networkPolicy.yaml +++ b/manifests/grafana-networkPolicy.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana namespace: monitoring spec: diff --git a/manifests/grafana-prometheusRule.yaml b/manifests/grafana-prometheusRule.yaml index 0c522a748173ab375a7d72f5b6308a11fa36bd98..7a6a51ede2c15d000c6057fbe9b4aeff88e6f699 100644 --- a/manifests/grafana-prometheusRule.yaml +++ b/manifests/grafana-prometheusRule.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 prometheus: k8s role: alert-rules name: grafana-rules diff --git a/manifests/grafana-service.yaml b/manifests/grafana-service.yaml index 7342bb4f05e96efd46cf712890d93618de9facb9..0e5f6644630f60e045aa1610958806b60bbf230f 100644 --- a/manifests/grafana-service.yaml +++ b/manifests/grafana-service.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana namespace: monitoring spec: diff --git a/manifests/grafana-serviceAccount.yaml b/manifests/grafana-serviceAccount.yaml index ce7352875d25f6f5868741b9fe4a637f533c16a4..d6e8805982eac2b76c410d98e2d3a7be19b35095 100644 --- a/manifests/grafana-serviceAccount.yaml +++ b/manifests/grafana-serviceAccount.yaml @@ -6,6 +6,6 @@ metadata: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana namespace: monitoring diff --git a/manifests/grafana-serviceMonitor.yaml b/manifests/grafana-serviceMonitor.yaml index a9a41140a9c710054377265a983357d9a61b1215..64e08e74bca29233d50c9c0ba9e9cc840ff71392 100644 --- a/manifests/grafana-serviceMonitor.yaml +++ b/manifests/grafana-serviceMonitor.yaml @@ -5,7 +5,7 @@ metadata: app.kubernetes.io/component: grafana app.kubernetes.io/name: grafana app.kubernetes.io/part-of: kube-prometheus - app.kubernetes.io/version: 8.4.5 + app.kubernetes.io/version: 8.4.6 name: grafana namespace: monitoring spec: diff --git a/manifests/kubernetesControlPlane-prometheusRule.yaml b/manifests/kubernetesControlPlane-prometheusRule.yaml index cd95da790eb9dd39fc0e647290aab02ef9a3dd76..09467e86fc7cae2ed89a7382a2598ece1884923e 100644 --- a/manifests/kubernetesControlPlane-prometheusRule.yaml +++ b/manifests/kubernetesControlPlane-prometheusRule.yaml @@ -421,6 +421,53 @@ spec: for: 1h labels: severity: warning + - alert: KubePersistentVolumeInodesFillingUp + annotations: + description: The PersistentVolume claimed by {{ $labels.persistentvolumeclaim + }} in Namespace {{ $labels.namespace }} only has {{ $value | humanizePercentage + }} free inodes. + runbook_url: https://runbooks.prometheus-operator.dev/runbooks/kubernetes/kubepersistentvolumeinodesfillingup + summary: PersistentVolumeInodes are filling up. + expr: | + ( + kubelet_volume_stats_inodes_free{job="kubelet", metrics_path="/metrics"} + / + kubelet_volume_stats_inodes{job="kubelet", metrics_path="/metrics"} + ) < 0.03 + and + kubelet_volume_stats_inodes_used{job="kubelet", metrics_path="/metrics"} > 0 + unless on(namespace, persistentvolumeclaim) + kube_persistentvolumeclaim_access_mode{ access_mode="ReadOnlyMany"} == 1 + unless on(namespace, persistentvolumeclaim) + kube_persistentvolumeclaim_labels{label_excluded_from_alerts="true"} == 1 + for: 1m + labels: + severity: critical + - alert: KubePersistentVolumeInodesFillingUp + annotations: + description: Based on recent sampling, the PersistentVolume claimed by {{ + $labels.persistentvolumeclaim }} in Namespace {{ $labels.namespace }} is + expected to run out of inodes within four days. Currently {{ $value | humanizePercentage + }} of its inodes are free. + runbook_url: https://runbooks.prometheus-operator.dev/runbooks/kubernetes/kubepersistentvolumeinodesfillingup + summary: PersistentVolumeInodes are filling up. + expr: | + ( + kubelet_volume_stats_inodes_free{job="kubelet", metrics_path="/metrics"} + / + kubelet_volume_stats_inodes{job="kubelet", metrics_path="/metrics"} + ) < 0.15 + and + kubelet_volume_stats_inodes_used{job="kubelet", metrics_path="/metrics"} > 0 + and + predict_linear(kubelet_volume_stats_inodes_free{job="kubelet", metrics_path="/metrics"}[6h], 4 * 24 * 3600) < 0 + unless on(namespace, persistentvolumeclaim) + kube_persistentvolumeclaim_access_mode{ access_mode="ReadOnlyMany"} == 1 + unless on(namespace, persistentvolumeclaim) + kube_persistentvolumeclaim_labels{label_excluded_from_alerts="true"} == 1 + for: 1h + labels: + severity: warning - alert: KubePersistentVolumeErrors annotations: description: The persistent volume {{ $labels.persistentvolume }} has status diff --git a/manifests/prometheusOperator-clusterRole.yaml b/manifests/prometheusOperator-clusterRole.yaml index 5e4b01b1541d7a7a2fcf6a24428a16f760a400c9..62f1aa681b3b8ae64661d4406e2ec1252bb0340b 100644 --- a/manifests/prometheusOperator-clusterRole.yaml +++ b/manifests/prometheusOperator-clusterRole.yaml @@ -16,6 +16,7 @@ rules: - alertmanagerconfigs - prometheuses - prometheuses/finalizers + - prometheuses/status - thanosrulers - thanosrulers/finalizers - servicemonitors diff --git a/manifests/setup/0podmonitorCustomResourceDefinition.yaml b/manifests/setup/0podmonitorCustomResourceDefinition.yaml index be76658f705bf5ffc901e4c98823d2b3f5a9d62e..f3788ef2a5a63983a833eaeddd1bdc557efabe36 100644 --- a/manifests/setup/0podmonitorCustomResourceDefinition.yaml +++ b/manifests/setup/0podmonitorCustomResourceDefinition.yaml @@ -182,7 +182,9 @@ spec: the timestamps present in scraped data. type: boolean interval: - description: Interval at which metrics should be scraped + description: Interval at which metrics should be scraped If + not specified Prometheus' global scrape interval 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 metricRelabelings: description: MetricRelabelConfigs to apply to samples before @@ -411,7 +413,9 @@ spec: description: HTTP scheme to use for scraping. type: string scrapeTimeout: - description: Timeout after which the scrape is ended + description: Timeout after which the scrape is ended If not + specified, the Prometheus global scrape interval 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: diff --git a/manifests/setup/0probeCustomResourceDefinition.yaml b/manifests/setup/0probeCustomResourceDefinition.yaml index 04dd46d23199869302adb76ae5f887b33709e492..492ee8bee972193b59002253edf7be9b945ac152 100644 --- a/manifests/setup/0probeCustomResourceDefinition.yaml +++ b/manifests/setup/0probeCustomResourceDefinition.yaml @@ -131,6 +131,7 @@ spec: interval: description: Interval at which targets are probed using the configured prober. If not specified Prometheus' global scrape interval 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 jobName: description: The job name assigned to scraped metrics by default. @@ -321,6 +322,8 @@ spec: type: integer scrapeTimeout: description: Timeout for scraping metrics from the Prometheus exporter. + If not specified, the Prometheus global scrape interval 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 targetLimit: description: TargetLimit defines a limit on the number of scraped diff --git a/manifests/setup/0prometheusCustomResourceDefinition.yaml b/manifests/setup/0prometheusCustomResourceDefinition.yaml index 8f5b65a6c837243c479497db4882137d3c124351..3b1ffabfbe6b86b57c75e63fd87b4bf58d90aceb 100644 --- a/manifests/setup/0prometheusCustomResourceDefinition.yaml +++ b/manifests/setup/0prometheusCustomResourceDefinition.yaml @@ -2733,7 +2733,9 @@ spec: format: int64 type: integer evaluationInterval: - description: 'Interval between consecutive evaluations. Default: `1m`' + default: 30s + description: 'Interval between consecutive evaluations. Default: `30s`' + 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 excludedFromEnforcement: description: List of references to PodMonitor, ServiceMonitor, Probe @@ -4346,6 +4348,7 @@ spec: type: integer timeout: description: Maximum time a query may take before being aborted. + 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 type: object queryLogFile: @@ -4553,6 +4556,7 @@ spec: type: boolean remoteTimeout: description: Timeout for requests to the remote read endpoint. + 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 requiredMatchers: additionalProperties: @@ -4798,6 +4802,7 @@ spec: sendInterval: description: How frequently metric metadata is sent to the remote storage. + 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 type: object name: @@ -4936,6 +4941,7 @@ spec: type: object remoteTimeout: description: Timeout for requests to the remote write endpoint. + 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 sendExemplars: description: Enables sending of exemplars over remote write. @@ -5230,6 +5236,7 @@ spec: is '24h' if retentionSize is not set, and must match the regular expression `[0-9]+(ms|s|m|h|d|w|y)` (milliseconds seconds minutes hours days weeks years). + 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 retentionSize: description: Maximum amount of disk space used by blocks. @@ -5359,11 +5366,14 @@ spec: type: object type: object scrapeInterval: - description: 'Interval between consecutive scrapes. Default: `1m`' + default: 30s + description: 'Interval between consecutive scrapes. Default: `30s`' + 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 scrapeTimeout: description: Number of seconds to wait for target to respond before erroring. + 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 secrets: description: Secrets is a list of Secrets in the same namespace as @@ -6409,6 +6419,7 @@ spec: readyTimeout: description: ReadyTimeout is the maximum time Thanos sidecar will wait for Prometheus to start. Eg 10m + 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 resources: description: Resources defines the resource requirements for the @@ -8343,14 +8354,43 @@ spec: type: object status: description: 'Most recent observed status of the Prometheus cluster. Read-only. - Not included when requesting from the apiserver, only from the Prometheus - Operator API itself. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status' + More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status' properties: availableReplicas: description: Total number of available pods (ready for at least minReadySeconds) targeted by this Prometheus deployment. format: int32 type: integer + conditions: + description: The current state of the Prometheus deployment. + items: + description: PrometheusCondition represents the state of the resources + associated with the Prometheus resource. + properties: + lastTransitionTime: + description: lastTransitionTime is the time of the last update + to the current status property. + format: date-time + type: string + message: + description: Human-readable message indicating details for the + condition's last transition. + type: string + reason: + description: Reason for the condition's last transition. + type: string + status: + description: status of the condition. + type: string + type: + description: Type of the condition being reported. + type: string + required: + - lastTransitionTime + - status + - type + type: object + type: array paused: description: Represents whether any actions on the underlying managed objects are being performed. Only delete actions will be performed. @@ -8360,6 +8400,41 @@ spec: Prometheus deployment (their labels match the selector). format: int32 type: integer + shardStatuses: + description: The list has one entry per shard. Each entry provides + a summary of the shard status. + items: + properties: + availableReplicas: + description: Total number of available pods (ready for at least + minReadySeconds) targeted by this shard. + format: int32 + type: integer + replicas: + description: Total number of pods targeted by this shard. + format: int32 + type: integer + shardID: + description: Identifier of the shard. + type: string + unavailableReplicas: + description: Total number of unavailable pods targeted by this + shard. + format: int32 + type: integer + updatedReplicas: + description: Total number of non-terminated pods targeted by + this shard that have the desired spec. + format: int32 + type: integer + required: + - availableReplicas + - replicas + - shardID + - unavailableReplicas + - updatedReplicas + type: object + type: array unavailableReplicas: description: Total number of unavailable pods targeted by this Prometheus deployment. @@ -8382,7 +8457,8 @@ spec: type: object served: true storage: true - subresources: {} + subresources: + status: {} status: acceptedNames: kind: "" diff --git a/manifests/setup/0servicemonitorCustomResourceDefinition.yaml b/manifests/setup/0servicemonitorCustomResourceDefinition.yaml index f0a4089a128e245689100dccc34340952cdd6af3..f9887bca44fe632afc29cc22897a46e151421d2a 100644 --- a/manifests/setup/0servicemonitorCustomResourceDefinition.yaml +++ b/manifests/setup/0servicemonitorCustomResourceDefinition.yaml @@ -151,7 +151,9 @@ spec: the timestamps present in scraped data. type: boolean interval: - description: Interval at which metrics should be scraped + description: Interval at which metrics should be scraped If + not specified Prometheus' global scrape interval 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 metricRelabelings: description: MetricRelabelConfigs to apply to samples before @@ -380,7 +382,10 @@ spec: description: HTTP scheme to use for scraping. type: string scrapeTimeout: - description: Timeout after which the scrape is ended + 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. + 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: