From 65554a7f820cd3a219b3268f342352618a45d5e4 Mon Sep 17 00:00:00 2001 From: Malte Viering Date: Thu, 19 Mar 2026 15:27:32 +0100 Subject: [PATCH 1/2] Enable failover-reservations-controller in nova --- helm/bundles/cortex-nova/values.yaml | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/helm/bundles/cortex-nova/values.yaml b/helm/bundles/cortex-nova/values.yaml index b89045619..8646d499b 100644 --- a/helm/bundles/cortex-nova/values.yaml +++ b/helm/bundles/cortex-nova/values.yaml @@ -136,6 +136,7 @@ cortex-scheduling-controllers: - hypervisor-overcommit-controller - explanation-controller - reservations-controller + - failover-reservations-controller enabledTasks: - nova-decisions-cleanup-task # Endpoints configuration for reservations controller @@ -146,6 +147,30 @@ cortex-scheduling-controllers: # are multiple mappings applying to the same hypervisors, the last mapping # in this list will override the previous ones. overcommitMappings: [] + # Failover reservations controller configuration + # Name of the Datasource CRD that provides database connection info for Nova VM data + datasourceName: nova-servers + # URL of the nova external scheduler API for placement decisions + schedulerURL: "http://localhost:8080/scheduler/nova/external" + # Maps flavor name patterns (glob) to required failover count + # Example: {"hana_*": 2, "m1.xlarge": 1} + flavorFailoverRequirements: + "*": 2 + # How often to check for missing failover reservations (periodic bulk reconciliation) + # 35s = 35000000000 nanoseconds + reconcileInterval: 35000000000 + # Used when maxVMsToProcess limits processing, allows faster catch-up + # 100ms = 100000000 nanoseconds + shortReconcileInterval: 100000000 + # Tag for failover reservations (for identification and cleanup) + creator: cortex-failover-controller + # Limits VMs processed per cycle. Set to 0 to process all VMs. + maxVMsToProcess: 25 + # If true, uses hypervisor CRD as source of truth for VM location instead of postgres + trustHypervisorLocation: true + # How often to re-validate acknowledged failover reservations + # 30m = 1800000000000 nanoseconds + revalidationInterval: 1800000000000 cortex-knowledge-controllers: <<: *cortex @@ -169,4 +194,4 @@ cortex-knowledge-controllers: # Custom configuration for the cortex postgres chart. cortex-postgres: - fullnameOverride: cortex-nova-postgresql \ No newline at end of file + fullnameOverride: cortex-nova-postgresql From fcf2aee322a18ec4e3b0e734be707e52f4e8d3a6 Mon Sep 17 00:00:00 2001 From: Malte Viering Date: Thu, 19 Mar 2026 15:28:15 +0100 Subject: [PATCH 2/2] Bump core to 0.0.28 and bundles to 0.0.41 --- helm/bundles/cortex-cinder/Chart.yaml | 6 +++--- helm/bundles/cortex-crds/Chart.yaml | 4 ++-- helm/bundles/cortex-ironcore/Chart.yaml | 4 ++-- helm/bundles/cortex-manila/Chart.yaml | 6 +++--- helm/bundles/cortex-nova/Chart.yaml | 6 +++--- helm/bundles/cortex-pods/Chart.yaml | 4 ++-- helm/library/cortex/Chart.yaml | 2 +- 7 files changed, 16 insertions(+), 16 deletions(-) diff --git a/helm/bundles/cortex-cinder/Chart.yaml b/helm/bundles/cortex-cinder/Chart.yaml index c3c0a71ed..941a63ce8 100644 --- a/helm/bundles/cortex-cinder/Chart.yaml +++ b/helm/bundles/cortex-cinder/Chart.yaml @@ -5,7 +5,7 @@ apiVersion: v2 name: cortex-cinder description: A Helm chart deploying Cortex for Cinder. type: application -version: 0.0.40 +version: 0.0.41 appVersion: 0.1.0 dependencies: # from: file://../../library/cortex-postgres @@ -16,12 +16,12 @@ dependencies: # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.0.27 + version: 0.0.28 alias: cortex-knowledge-controllers # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.0.27 + version: 0.0.28 alias: cortex-scheduling-controllers # Owner info adds a configmap to the kubernetes cluster with information on diff --git a/helm/bundles/cortex-crds/Chart.yaml b/helm/bundles/cortex-crds/Chart.yaml index 11655de3c..b13e4a98e 100644 --- a/helm/bundles/cortex-crds/Chart.yaml +++ b/helm/bundles/cortex-crds/Chart.yaml @@ -5,13 +5,13 @@ apiVersion: v2 name: cortex-crds description: A Helm chart deploying Cortex CRDs. type: application -version: 0.0.40 +version: 0.0.41 appVersion: 0.1.0 dependencies: # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.0.27 + version: 0.0.28 # Owner info adds a configmap to the kubernetes cluster with information on # the service owner. This makes it easier to find out who to contact in case diff --git a/helm/bundles/cortex-ironcore/Chart.yaml b/helm/bundles/cortex-ironcore/Chart.yaml index 23a54b054..2adfc15a9 100644 --- a/helm/bundles/cortex-ironcore/Chart.yaml +++ b/helm/bundles/cortex-ironcore/Chart.yaml @@ -5,13 +5,13 @@ apiVersion: v2 name: cortex-ironcore description: A Helm chart deploying Cortex for IronCore. type: application -version: 0.0.40 +version: 0.0.41 appVersion: 0.1.0 dependencies: # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.0.27 + version: 0.0.28 # Owner info adds a configmap to the kubernetes cluster with information on # the service owner. This makes it easier to find out who to contact in case diff --git a/helm/bundles/cortex-manila/Chart.yaml b/helm/bundles/cortex-manila/Chart.yaml index 500041513..b56e3c06a 100644 --- a/helm/bundles/cortex-manila/Chart.yaml +++ b/helm/bundles/cortex-manila/Chart.yaml @@ -5,7 +5,7 @@ apiVersion: v2 name: cortex-manila description: A Helm chart deploying Cortex for Manila. type: application -version: 0.0.40 +version: 0.0.41 appVersion: 0.1.0 dependencies: # from: file://../../library/cortex-postgres @@ -16,12 +16,12 @@ dependencies: # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.0.27 + version: 0.0.28 alias: cortex-knowledge-controllers # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.0.27 + version: 0.0.28 alias: cortex-scheduling-controllers # Owner info adds a configmap to the kubernetes cluster with information on diff --git a/helm/bundles/cortex-nova/Chart.yaml b/helm/bundles/cortex-nova/Chart.yaml index 4ac7f479d..78df60787 100644 --- a/helm/bundles/cortex-nova/Chart.yaml +++ b/helm/bundles/cortex-nova/Chart.yaml @@ -5,7 +5,7 @@ apiVersion: v2 name: cortex-nova description: A Helm chart deploying Cortex for Nova. type: application -version: 0.0.40 +version: 0.0.41 appVersion: 0.1.0 dependencies: # from: file://../../library/cortex-postgres @@ -16,12 +16,12 @@ dependencies: # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.0.27 + version: 0.0.28 alias: cortex-knowledge-controllers # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.0.27 + version: 0.0.28 alias: cortex-scheduling-controllers # Owner info adds a configmap to the kubernetes cluster with information on diff --git a/helm/bundles/cortex-pods/Chart.yaml b/helm/bundles/cortex-pods/Chart.yaml index 6775a5b99..762a5c9fb 100644 --- a/helm/bundles/cortex-pods/Chart.yaml +++ b/helm/bundles/cortex-pods/Chart.yaml @@ -5,13 +5,13 @@ apiVersion: v2 name: cortex-pods description: A Helm chart deploying Cortex for Pods. type: application -version: 0.0.40 +version: 0.0.41 appVersion: 0.1.0 dependencies: # from: file://../../library/cortex - name: cortex repository: oci://ghcr.io/cobaltcore-dev/cortex/charts - version: 0.0.27 + version: 0.0.28 # Owner info adds a configmap to the kubernetes cluster with information on # the service owner. This makes it easier to find out who to contact in case diff --git a/helm/library/cortex/Chart.yaml b/helm/library/cortex/Chart.yaml index 6927e89db..dc035e901 100644 --- a/helm/library/cortex/Chart.yaml +++ b/helm/library/cortex/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: cortex description: A Helm chart to distribute cortex. type: application -version: 0.0.27 +version: 0.0.28 appVersion: "sha-d3329f3a" icon: "https://example.com/icon.png" dependencies: []