From 138f7a5ef8420fda9c0058fd1729b42c5a7f142e Mon Sep 17 00:00:00 2001 From: Peter Hunt Date: Tue, 7 Apr 2026 14:58:44 -0400 Subject: [PATCH 1/2] prom rules: add alert for nodes using runc relies on a cri-o metric that's emitted when the cluster is using runc Signed-off-by: Peter Hunt --- ...00_90_machine-config_01_prometheus-rules.yaml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/install/0000_90_machine-config_01_prometheus-rules.yaml b/install/0000_90_machine-config_01_prometheus-rules.yaml index ae987b0e4e..16de9bb88a 100644 --- a/install/0000_90_machine-config_01_prometheus-rules.yaml +++ b/install/0000_90_machine-config_01_prometheus-rules.yaml @@ -15,6 +15,22 @@ spec: rules: - expr: sum(os_image_url_override) record: os_image_url_override:sum + - name: runc-deprecated + rules: + - alert: RuncDeprecated + expr: | + count(container_runtime_crio_default_runtime{runtime="runc"}) > 0 + for: 10m + labels: + namespace: openshift-machine-config-operator + severity: info + annotations: + summary: "This cluster is using the deprecated runc container runtime" + description: >- + The runc OCI runtime has been deprecated and support will be removed in a future release. Migrate to crun before upgrading to a future OpenShift release. + See https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/machine_configuration/machine-configs-custom#config-container-runtime_machine-configs-custom + for migration steps. + runbook_url: https://github.com/openshift/runbooks/blob/master/alerts/machine-config-operator/RuncDeprecated.md - name: mcc-drain-error rules: - alert: MCCDrainError From 6c48b964fb7c5ce13bc824d56e75e2b47c6b6845 Mon Sep 17 00:00:00 2001 From: Peter Hunt Date: Wed, 22 Apr 2026 14:50:13 -0400 Subject: [PATCH 2/2] crio: enable default_runtime metric Signed-off-by: Peter Hunt --- .../arbiter/01-arbiter-container-runtime/_base/files/crio.yaml | 3 ++- .../master/01-master-container-runtime/_base/files/crio.yaml | 3 ++- .../worker/01-worker-container-runtime/_base/files/crio.yaml | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/templates/arbiter/01-arbiter-container-runtime/_base/files/crio.yaml b/templates/arbiter/01-arbiter-container-runtime/_base/files/crio.yaml index 9157ad0049..7b3b522044 100644 --- a/templates/arbiter/01-arbiter-container-runtime/_base/files/crio.yaml +++ b/templates/arbiter/01-arbiter-container-runtime/_base/files/crio.yaml @@ -101,5 +101,6 @@ contents: "image_pulls_failure_total", "image_layer_reuse_total", "containers_oom_count_total", - "processes_defunct" + "processes_defunct", + "default_runtime" ] diff --git a/templates/master/01-master-container-runtime/_base/files/crio.yaml b/templates/master/01-master-container-runtime/_base/files/crio.yaml index 914489da78..315172252d 100644 --- a/templates/master/01-master-container-runtime/_base/files/crio.yaml +++ b/templates/master/01-master-container-runtime/_base/files/crio.yaml @@ -103,5 +103,6 @@ contents: "image_pulls_failure_total", "image_layer_reuse_total", "containers_oom_count_total", - "processes_defunct" + "processes_defunct", + "default_runtime" ] diff --git a/templates/worker/01-worker-container-runtime/_base/files/crio.yaml b/templates/worker/01-worker-container-runtime/_base/files/crio.yaml index e8cb1f9222..7829a1c7a5 100644 --- a/templates/worker/01-worker-container-runtime/_base/files/crio.yaml +++ b/templates/worker/01-worker-container-runtime/_base/files/crio.yaml @@ -103,5 +103,6 @@ contents: "image_pulls_failure_total", "image_layer_reuse_total", "containers_oom_count_total", - "processes_defunct" + "processes_defunct", + "default_runtime" ]