From ee306034a2c0467b863825b749456f0d12d33a04 Mon Sep 17 00:00:00 2001
From: Laurent Pouilloux <laurent.pouilloux@inria.fr>
Date: Mon, 17 Mar 2025 13:27:09 +0100
Subject: [PATCH 1/3] [energy saving] update cluster schema and add current
 configuration for all clusters

---
 .../sites/grenoble/clusters/chartreuse2/chartreuse2.json     | 1 +
 data/grid5000/sites/grenoble/clusters/dahu/dahu.json         | 1 +
 data/grid5000/sites/grenoble/clusters/drac/drac.json         | 1 +
 data/grid5000/sites/grenoble/clusters/kinovis/kinovis.json   | 1 +
 data/grid5000/sites/grenoble/clusters/nessie/nessie.json     | 1 +
 data/grid5000/sites/grenoble/clusters/servan/servan.json     | 1 +
 data/grid5000/sites/grenoble/clusters/troll/troll.json       | 1 +
 data/grid5000/sites/grenoble/clusters/yeti/yeti.json         | 1 +
 data/grid5000/sites/lille/clusters/chiclet/chiclet.json      | 1 +
 data/grid5000/sites/lille/clusters/chifflot/chifflot.json    | 1 +
 data/grid5000/sites/lille/clusters/chirop/chirop.json        | 1 +
 data/grid5000/sites/lille/clusters/chuc/chuc.json            | 1 +
 data/grid5000/sites/louvain/clusters/spirou/spirou.json      | 1 +
 .../sites/luxembourg/clusters/petitprince/petitprince.json   | 1 +
 data/grid5000/sites/lyon/clusters/gemini/gemini.json         | 1 +
 data/grid5000/sites/lyon/clusters/hercule/hercule.json       | 1 +
 data/grid5000/sites/lyon/clusters/hydra/hydra.json           | 1 +
 data/grid5000/sites/lyon/clusters/neowise/neowise.json       | 1 +
 data/grid5000/sites/lyon/clusters/nova/nova.json             | 1 +
 data/grid5000/sites/lyon/clusters/orion/orion.json           | 1 +
 data/grid5000/sites/lyon/clusters/pyxis/pyxis.json           | 1 +
 data/grid5000/sites/lyon/clusters/sagittaire/sagittaire.json | 1 +
 data/grid5000/sites/lyon/clusters/sirius/sirius.json         | 1 +
 data/grid5000/sites/lyon/clusters/taurus/taurus.json         | 1 +
 data/grid5000/sites/nancy/clusters/graffiti/graffiti.json    | 1 +
 data/grid5000/sites/nancy/clusters/grappe/grappe.json        | 1 +
 data/grid5000/sites/nancy/clusters/grat/grat.json            | 1 +
 .../grid5000/sites/nancy/clusters/gratouille/gratouille.json | 1 +
 data/grid5000/sites/nancy/clusters/grdix/grdix.json          | 1 +
 data/grid5000/sites/nancy/clusters/grele/grele.json          | 1 +
 data/grid5000/sites/nancy/clusters/gres/gres.json            | 1 +
 data/grid5000/sites/nancy/clusters/gros/gros.json            | 1 +
 data/grid5000/sites/nancy/clusters/grosminet/grosminet.json  | 1 +
 data/grid5000/sites/nancy/clusters/grostiti/grostiti.json    | 1 +
 data/grid5000/sites/nancy/clusters/grouille/grouille.json    | 1 +
 data/grid5000/sites/nancy/clusters/grue/grue.json            | 1 +
 data/grid5000/sites/nancy/clusters/gruss/gruss.json          | 1 +
 data/grid5000/sites/nancy/clusters/grvingt/grvingt.json      | 1 +
 data/grid5000/sites/nantes/clusters/econome/econome.json     | 1 +
 data/grid5000/sites/nantes/clusters/ecotype/ecotype.json     | 1 +
 data/grid5000/sites/rennes/clusters/abacus1/abacus1.json     | 1 +
 data/grid5000/sites/rennes/clusters/abacus10/abacus10.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus11/abacus11.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus12/abacus12.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus14/abacus14.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus16/abacus16.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus17/abacus17.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus18/abacus18.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus19/abacus19.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus2/abacus2.json     | 1 +
 data/grid5000/sites/rennes/clusters/abacus20/abacus20.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus21/abacus21.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus22/abacus22.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus25/abacus25.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus26/abacus26.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus27/abacus27.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus28/abacus28.json   | 1 +
 data/grid5000/sites/rennes/clusters/abacus3/abacus3.json     | 1 +
 data/grid5000/sites/rennes/clusters/abacus4/abacus4.json     | 1 +
 data/grid5000/sites/rennes/clusters/abacus5/abacus5.json     | 1 +
 data/grid5000/sites/rennes/clusters/abacus8/abacus8.json     | 1 +
 data/grid5000/sites/rennes/clusters/abacus9/abacus9.json     | 1 +
 data/grid5000/sites/rennes/clusters/paradoxe/paradoxe.json   | 1 +
 data/grid5000/sites/rennes/clusters/parasilo/parasilo.json   | 1 +
 data/grid5000/sites/rennes/clusters/roazhon1/roazhon1.json   | 1 +
 data/grid5000/sites/rennes/clusters/roazhon10/roazhon10.json | 1 +
 data/grid5000/sites/rennes/clusters/roazhon11/roazhon11.json | 1 +
 data/grid5000/sites/rennes/clusters/roazhon12/roazhon12.json | 1 +
 data/grid5000/sites/rennes/clusters/roazhon13/roazhon13.json | 1 +
 data/grid5000/sites/rennes/clusters/roazhon2/roazhon2.json   | 1 +
 data/grid5000/sites/rennes/clusters/roazhon3/roazhon3.json   | 1 +
 data/grid5000/sites/rennes/clusters/roazhon4/roazhon4.json   | 1 +
 data/grid5000/sites/rennes/clusters/roazhon5/roazhon5.json   | 1 +
 data/grid5000/sites/rennes/clusters/roazhon6/roazhon6.json   | 1 +
 data/grid5000/sites/rennes/clusters/roazhon7/roazhon7.json   | 1 +
 data/grid5000/sites/rennes/clusters/roazhon8/roazhon8.json   | 1 +
 data/grid5000/sites/rennes/clusters/roazhon9/roazhon9.json   | 1 +
 data/grid5000/sites/sophia/clusters/esterel1/esterel1.json   | 1 +
 data/grid5000/sites/sophia/clusters/esterel10/esterel10.json | 1 +
 data/grid5000/sites/sophia/clusters/esterel2/esterel2.json   | 1 +
 data/grid5000/sites/sophia/clusters/esterel41/esterel41.json | 1 +
 data/grid5000/sites/sophia/clusters/esterel5/esterel5.json   | 1 +
 data/grid5000/sites/sophia/clusters/esterel7/esterel7.json   | 1 +
 .../sites/sophia/clusters/mercantour2/mercantour2.json       | 1 +
 .../sites/sophia/clusters/mercantour5/mercantour5.json       | 1 +
 .../sites/sophia/clusters/mercantour6/mercantour6.json       | 1 +
 data/grid5000/sites/sophia/clusters/musa/musa.json           | 1 +
 data/grid5000/sites/sophia/clusters/uvb/uvb.json             | 1 +
 .../sites/strasbourg/clusters/fleckenstein/fleckenstein.json | 1 +
 data/grid5000/sites/toulouse/clusters/estats/estats.json     | 1 +
 data/grid5000/sites/toulouse/clusters/montcalm/montcalm.json | 1 +
 .../sites/grenoble/clusters/chartreuse2/chartreuse2.yaml     | 1 +
 input/grid5000/sites/grenoble/clusters/dahu/dahu.yaml        | 1 +
 input/grid5000/sites/grenoble/clusters/drac/drac.yaml        | 1 +
 input/grid5000/sites/grenoble/clusters/kinovis/kinovis.yaml  | 1 +
 input/grid5000/sites/grenoble/clusters/troll/troll.yaml      | 1 +
 input/grid5000/sites/grenoble/clusters/yeti/yeti.yaml        | 1 +
 input/grid5000/sites/lille/clusters/chiclet/chiclet.yaml     | 1 +
 input/grid5000/sites/lille/clusters/chifflot/chifflot.yaml   | 1 +
 input/grid5000/sites/lille/clusters/chirop/chirop.yaml       | 1 +
 input/grid5000/sites/lille/clusters/chuc/chuc.yaml           | 1 +
 .../sites/luxembourg/clusters/petitprince/petitprince.yaml   | 1 +
 input/grid5000/sites/lyon/clusters/gemini/gemini.yaml        | 1 +
 input/grid5000/sites/lyon/clusters/hercule/hercule.yaml      | 1 +
 input/grid5000/sites/lyon/clusters/hydra/hydra.yaml          | 1 +
 input/grid5000/sites/lyon/clusters/nova/nova.yaml            | 1 +
 input/grid5000/sites/lyon/clusters/orion/orion.yaml          | 1 +
 input/grid5000/sites/lyon/clusters/taurus/taurus.yaml        | 1 +
 input/grid5000/sites/nancy/clusters/graffiti/graffiti.yaml   | 1 +
 input/grid5000/sites/nancy/clusters/grappe/grappe.yaml       | 1 +
 .../grid5000/sites/nancy/clusters/gratouille/gratouille.yaml | 1 +
 input/grid5000/sites/nancy/clusters/grdix/grdix.yaml         | 1 +
 input/grid5000/sites/nancy/clusters/grele/grele.yaml         | 1 +
 input/grid5000/sites/nancy/clusters/gres/gres.yaml           | 1 +
 input/grid5000/sites/nancy/clusters/gros/gros.yaml           | 1 +
 input/grid5000/sites/nancy/clusters/grosminet/grosminet.yaml | 1 +
 input/grid5000/sites/nancy/clusters/grostiti/grostiti.yaml   | 1 +
 input/grid5000/sites/nancy/clusters/grouille/grouille.yaml   | 1 +
 input/grid5000/sites/nancy/clusters/grue/grue.yaml           | 1 +
 input/grid5000/sites/nancy/clusters/gruss/gruss.yaml         | 1 +
 input/grid5000/sites/nancy/clusters/grvingt/grvingt.yaml     | 1 +
 input/grid5000/sites/nantes/clusters/econome/econome.yaml    | 1 +
 input/grid5000/sites/nantes/clusters/ecotype/ecotype.yaml    | 1 +
 input/grid5000/sites/rennes/clusters/abacus1/abacus1.yaml    | 1 +
 input/grid5000/sites/rennes/clusters/abacus10/abacus10.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus11/abacus11.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus12/abacus12.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus14/abacus14.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus16/abacus16.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus17/abacus17.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus18/abacus18.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus19/abacus19.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus2/abacus2.yaml    | 1 +
 input/grid5000/sites/rennes/clusters/abacus20/abacus20.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus21/abacus21.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus22/abacus22.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus25/abacus25.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus26/abacus26.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus27/abacus27.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus28/abacus28.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/abacus3/abacus3.yaml    | 1 +
 input/grid5000/sites/rennes/clusters/abacus4/abacus4.yaml    | 1 +
 input/grid5000/sites/rennes/clusters/abacus5/abacus5.yaml    | 1 +
 input/grid5000/sites/rennes/clusters/abacus8/abacus8.yaml    | 1 +
 input/grid5000/sites/rennes/clusters/abacus9/abacus9.yaml    | 1 +
 input/grid5000/sites/rennes/clusters/paradoxe/paradoxe.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/parasilo/parasilo.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/roazhon1/roazhon1.yaml  | 1 +
 .../grid5000/sites/rennes/clusters/roazhon10/roazhon10.yaml  | 1 +
 .../grid5000/sites/rennes/clusters/roazhon11/roazhon11.yaml  | 1 +
 .../grid5000/sites/rennes/clusters/roazhon12/roazhon12.yaml  | 1 +
 .../grid5000/sites/rennes/clusters/roazhon13/roazhon13.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/roazhon2/roazhon2.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/roazhon3/roazhon3.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/roazhon4/roazhon4.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/roazhon5/roazhon5.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/roazhon6/roazhon6.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/roazhon7/roazhon7.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/roazhon8/roazhon8.yaml  | 1 +
 input/grid5000/sites/rennes/clusters/roazhon9/roazhon9.yaml  | 1 +
 .../grid5000/sites/sophia/clusters/esterel41/esterel41.yaml  | 1 +
 .../sites/sophia/clusters/mercantour2/mercantour2.yaml       | 1 +
 .../sites/sophia/clusters/mercantour5/mercantour5.yaml       | 1 +
 input/grid5000/sites/sophia/clusters/musa/musa.yaml          | 1 +
 input/grid5000/sites/sophia/clusters/uvb/uvb.yaml            | 1 +
 .../sites/strasbourg/clusters/fleckenstein/fleckenstein.yaml | 1 +
 input/grid5000/sites/toulouse/clusters/estats/estats.yaml    | 1 +
 .../grid5000/sites/toulouse/clusters/montcalm/montcalm.yaml  | 1 +
 lib/refrepo/gen/reference-api.rb                             | 5 +++++
 lib/refrepo/valid/input/schemas/schema-cluster.yaml          | 3 ++-
 170 files changed, 175 insertions(+), 1 deletion(-)

diff --git a/data/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.json b/data/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.json
index 54435993100..58f7d1a1c3b 100644
--- a/data/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.json
+++ b/data/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 13 Jan 2025 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2016-11-14",
diff --git a/data/grid5000/sites/grenoble/clusters/dahu/dahu.json b/data/grid5000/sites/grenoble/clusters/dahu/dahu.json
index 6f2b525bc7c..b5d63332416 100644
--- a/data/grid5000/sites/grenoble/clusters/dahu/dahu.json
+++ b/data/grid5000/sites/grenoble/clusters/dahu/dahu.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 22 Mar 2018 00:00:00 GMT",
+  "energy_keep_alive": 3,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2017-12-12",
diff --git a/data/grid5000/sites/grenoble/clusters/drac/drac.json b/data/grid5000/sites/grenoble/clusters/drac/drac.json
index 668f2793b3e..d469edc329a 100644
--- a/data/grid5000/sites/grenoble/clusters/drac/drac.json
+++ b/data/grid5000/sites/grenoble/clusters/drac/drac.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 05 Oct 2020 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": true,
   "kavlan": true,
   "manufactured_at": "2016-10-17",
diff --git a/data/grid5000/sites/grenoble/clusters/kinovis/kinovis.json b/data/grid5000/sites/grenoble/clusters/kinovis/kinovis.json
index d403c79524f..d7954b17c3b 100644
--- a/data/grid5000/sites/grenoble/clusters/kinovis/kinovis.json
+++ b/data/grid5000/sites/grenoble/clusters/kinovis/kinovis.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Mon, 10 Feb 2025 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2024-06-26",
diff --git a/data/grid5000/sites/grenoble/clusters/nessie/nessie.json b/data/grid5000/sites/grenoble/clusters/nessie/nessie.json
index 2da47e9157e..ca6d161b717 100644
--- a/data/grid5000/sites/grenoble/clusters/nessie/nessie.json
+++ b/data/grid5000/sites/grenoble/clusters/nessie/nessie.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Fri, 08 Nov 2024 00:00:00 GMT",
+  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2024-08-19",
diff --git a/data/grid5000/sites/grenoble/clusters/servan/servan.json b/data/grid5000/sites/grenoble/clusters/servan/servan.json
index f39dc148d37..032a9adfd6e 100644
--- a/data/grid5000/sites/grenoble/clusters/servan/servan.json
+++ b/data/grid5000/sites/grenoble/clusters/servan/servan.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Wed, 15 Dec 2021 00:00:00 GMT",
+  "energy_keep_alive": 0,
   "exotic": true,
   "kavlan": true,
   "manufactured_at": "2021-12-10",
diff --git a/data/grid5000/sites/grenoble/clusters/troll/troll.json b/data/grid5000/sites/grenoble/clusters/troll/troll.json
index 98f66806953..74e5eaf916c 100644
--- a/data/grid5000/sites/grenoble/clusters/troll/troll.json
+++ b/data/grid5000/sites/grenoble/clusters/troll/troll.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 23 Dec 2019 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": true,
   "kavlan": true,
   "manufactured_at": "2019-11-21",
diff --git a/data/grid5000/sites/grenoble/clusters/yeti/yeti.json b/data/grid5000/sites/grenoble/clusters/yeti/yeti.json
index 7e9a0d38718..252a3fb9b65 100644
--- a/data/grid5000/sites/grenoble/clusters/yeti/yeti.json
+++ b/data/grid5000/sites/grenoble/clusters/yeti/yeti.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 16 Jan 2018 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": true,
   "kavlan": true,
   "manufactured_at": "2017-12-26",
diff --git a/data/grid5000/sites/lille/clusters/chiclet/chiclet.json b/data/grid5000/sites/lille/clusters/chiclet/chiclet.json
index feb61b3ed03..b6b8fd9e2ff 100644
--- a/data/grid5000/sites/lille/clusters/chiclet/chiclet.json
+++ b/data/grid5000/sites/lille/clusters/chiclet/chiclet.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 06 Aug 2018 00:00:00 GMT",
+  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2018-07-27",
diff --git a/data/grid5000/sites/lille/clusters/chifflot/chifflot.json b/data/grid5000/sites/lille/clusters/chifflot/chifflot.json
index c0a0659558c..dec30f8286f 100644
--- a/data/grid5000/sites/lille/clusters/chifflot/chifflot.json
+++ b/data/grid5000/sites/lille/clusters/chifflot/chifflot.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 01 Aug 2018 00:00:00 GMT",
+  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2018-07-17",
diff --git a/data/grid5000/sites/lille/clusters/chirop/chirop.json b/data/grid5000/sites/lille/clusters/chirop/chirop.json
index 2a03bb2c59f..9324fced9a0 100644
--- a/data/grid5000/sites/lille/clusters/chirop/chirop.json
+++ b/data/grid5000/sites/lille/clusters/chirop/chirop.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Thu, 25 Jan 2024 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2023-05-02",
diff --git a/data/grid5000/sites/lille/clusters/chuc/chuc.json b/data/grid5000/sites/lille/clusters/chuc/chuc.json
index 9e7205b4a9e..0f333699299 100644
--- a/data/grid5000/sites/lille/clusters/chuc/chuc.json
+++ b/data/grid5000/sites/lille/clusters/chuc/chuc.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Mon, 22 Jan 2024 00:00:00 GMT",
+  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2023-05-02",
diff --git a/data/grid5000/sites/louvain/clusters/spirou/spirou.json b/data/grid5000/sites/louvain/clusters/spirou/spirou.json
index 86647da7492..06792fd56e4 100644
--- a/data/grid5000/sites/louvain/clusters/spirou/spirou.json
+++ b/data/grid5000/sites/louvain/clusters/spirou/spirou.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Wed, 02 Oct 2024 00:00:00 GMT",
+  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2024-01-01",
diff --git a/data/grid5000/sites/luxembourg/clusters/petitprince/petitprince.json b/data/grid5000/sites/luxembourg/clusters/petitprince/petitprince.json
index c123832a7ee..3b72d736a93 100644
--- a/data/grid5000/sites/luxembourg/clusters/petitprince/petitprince.json
+++ b/data/grid5000/sites/luxembourg/clusters/petitprince/petitprince.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 10 Sep 2013 00:00:00 GMT",
+  "energy_keep_alive": 4,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2012-10-30",
diff --git a/data/grid5000/sites/lyon/clusters/gemini/gemini.json b/data/grid5000/sites/lyon/clusters/gemini/gemini.json
index 82b0258815b..c83b176a71d 100644
--- a/data/grid5000/sites/lyon/clusters/gemini/gemini.json
+++ b/data/grid5000/sites/lyon/clusters/gemini/gemini.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Sun, 01 Sep 2019 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": true,
   "kavlan": true,
   "manufactured_at": "2019-06-12",
diff --git a/data/grid5000/sites/lyon/clusters/hercule/hercule.json b/data/grid5000/sites/lyon/clusters/hercule/hercule.json
index 0c9328d77f8..0f3734a0f2e 100644
--- a/data/grid5000/sites/lyon/clusters/hercule/hercule.json
+++ b/data/grid5000/sites/lyon/clusters/hercule/hercule.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 02 Oct 2012 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2012-07-19",
diff --git a/data/grid5000/sites/lyon/clusters/hydra/hydra.json b/data/grid5000/sites/lyon/clusters/hydra/hydra.json
index f03ae1a5cac..8707eaad7a1 100644
--- a/data/grid5000/sites/lyon/clusters/hydra/hydra.json
+++ b/data/grid5000/sites/lyon/clusters/hydra/hydra.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Thu, 15 Feb 2024 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": true,
   "kavlan": true,
   "manufactured_at": "2024-02-15",
diff --git a/data/grid5000/sites/lyon/clusters/neowise/neowise.json b/data/grid5000/sites/lyon/clusters/neowise/neowise.json
index aecc8f0b0c5..3f1b72999e6 100644
--- a/data/grid5000/sites/lyon/clusters/neowise/neowise.json
+++ b/data/grid5000/sites/lyon/clusters/neowise/neowise.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 17 May 2021 00:00:00 GMT",
+  "energy_keep_alive": 0,
   "exotic": true,
   "kavlan": true,
   "manufactured_at": "2021-05-17",
diff --git a/data/grid5000/sites/lyon/clusters/nova/nova.json b/data/grid5000/sites/lyon/clusters/nova/nova.json
index bb23ef335f7..c719afa579a 100644
--- a/data/grid5000/sites/lyon/clusters/nova/nova.json
+++ b/data/grid5000/sites/lyon/clusters/nova/nova.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 01 Dec 2016 00:00:00 GMT",
+  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2016-10-28",
diff --git a/data/grid5000/sites/lyon/clusters/orion/orion.json b/data/grid5000/sites/lyon/clusters/orion/orion.json
index c8467d30492..a8dae6ddf2c 100644
--- a/data/grid5000/sites/lyon/clusters/orion/orion.json
+++ b/data/grid5000/sites/lyon/clusters/orion/orion.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 14 Sep 2012 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2012-07-16",
diff --git a/data/grid5000/sites/lyon/clusters/pyxis/pyxis.json b/data/grid5000/sites/lyon/clusters/pyxis/pyxis.json
index c7802c7e074..431b671ce2b 100644
--- a/data/grid5000/sites/lyon/clusters/pyxis/pyxis.json
+++ b/data/grid5000/sites/lyon/clusters/pyxis/pyxis.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Mon, 06 Jan 2020 00:00:00 GMT",
+  "energy_keep_alive": 0,
   "exotic": true,
   "kavlan": true,
   "manufactured_at": "2019-11-07",
diff --git a/data/grid5000/sites/lyon/clusters/sagittaire/sagittaire.json b/data/grid5000/sites/lyon/clusters/sagittaire/sagittaire.json
index dc1c2a5b744..379ae90d166 100644
--- a/data/grid5000/sites/lyon/clusters/sagittaire/sagittaire.json
+++ b/data/grid5000/sites/lyon/clusters/sagittaire/sagittaire.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Sat, 01 Jul 2006 00:00:00 GMT",
+  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2006-07-01",
diff --git a/data/grid5000/sites/lyon/clusters/sirius/sirius.json b/data/grid5000/sites/lyon/clusters/sirius/sirius.json
index c678b698529..482bc0c42eb 100644
--- a/data/grid5000/sites/lyon/clusters/sirius/sirius.json
+++ b/data/grid5000/sites/lyon/clusters/sirius/sirius.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Thu, 18 Nov 2021 00:00:00 GMT",
+  "energy_keep_alive": 0,
   "exotic": true,
   "kavlan": true,
   "manufactured_at": "2021-11-24",
diff --git a/data/grid5000/sites/lyon/clusters/taurus/taurus.json b/data/grid5000/sites/lyon/clusters/taurus/taurus.json
index b847f3a3fce..b0a8d40fbb6 100644
--- a/data/grid5000/sites/lyon/clusters/taurus/taurus.json
+++ b/data/grid5000/sites/lyon/clusters/taurus/taurus.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 14 Sep 2012 00:00:00 GMT",
+  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2012-07-16",
diff --git a/data/grid5000/sites/nancy/clusters/graffiti/graffiti.json b/data/grid5000/sites/nancy/clusters/graffiti/graffiti.json
index d15b611375d..7b7b6d6eec6 100644
--- a/data/grid5000/sites/nancy/clusters/graffiti/graffiti.json
+++ b/data/grid5000/sites/nancy/clusters/graffiti/graffiti.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 07 Jun 2019 00:00:00 GMT",
+  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2019-05-27",
diff --git a/data/grid5000/sites/nancy/clusters/grappe/grappe.json b/data/grid5000/sites/nancy/clusters/grappe/grappe.json
index 29ede9ee472..c34769c699c 100644
--- a/data/grid5000/sites/nancy/clusters/grappe/grappe.json
+++ b/data/grid5000/sites/nancy/clusters/grappe/grappe.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 20 Aug 2020 00:00:00 GMT",
+  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2020-07-09",
diff --git a/data/grid5000/sites/nancy/clusters/grat/grat.json b/data/grid5000/sites/nancy/clusters/grat/grat.json
index a476ba93a5d..ae68f5af081 100644
--- a/data/grid5000/sites/nancy/clusters/grat/grat.json
+++ b/data/grid5000/sites/nancy/clusters/grat/grat.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Wed, 07 Sep 2022 00:00:00 GMT",
+  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2022-06-22",
diff --git a/data/grid5000/sites/nancy/clusters/gratouille/gratouille.json b/data/grid5000/sites/nancy/clusters/gratouille/gratouille.json
index 6f0d164166c..eea320827ef 100644
--- a/data/grid5000/sites/nancy/clusters/gratouille/gratouille.json
+++ b/data/grid5000/sites/nancy/clusters/gratouille/gratouille.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 26 Jun 2017 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2017-06-07",
diff --git a/data/grid5000/sites/nancy/clusters/grdix/grdix.json b/data/grid5000/sites/nancy/clusters/grdix/grdix.json
index 9fa67c1f4a0..ccbfe5fa2ea 100644
--- a/data/grid5000/sites/nancy/clusters/grdix/grdix.json
+++ b/data/grid5000/sites/nancy/clusters/grdix/grdix.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Fri, 27 Sep 2024 00:00:00 GMT",
+  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2024-09-02",
diff --git a/data/grid5000/sites/nancy/clusters/grele/grele.json b/data/grid5000/sites/nancy/clusters/grele/grele.json
index 3da17dfaa82..04a728e9930 100644
--- a/data/grid5000/sites/nancy/clusters/grele/grele.json
+++ b/data/grid5000/sites/nancy/clusters/grele/grele.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 26 Jun 2017 00:00:00 GMT",
+  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2017-06-07",
diff --git a/data/grid5000/sites/nancy/clusters/gres/gres.json b/data/grid5000/sites/nancy/clusters/gres/gres.json
index 32e041c8aae..b0bb3b3bf3f 100644
--- a/data/grid5000/sites/nancy/clusters/gres/gres.json
+++ b/data/grid5000/sites/nancy/clusters/gres/gres.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Fri, 23 Aug 2024 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2024-08-07",
diff --git a/data/grid5000/sites/nancy/clusters/gros/gros.json b/data/grid5000/sites/nancy/clusters/gros/gros.json
index 88446b3d452..c366c49249d 100644
--- a/data/grid5000/sites/nancy/clusters/gros/gros.json
+++ b/data/grid5000/sites/nancy/clusters/gros/gros.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 04 Sep 2019 00:00:00 GMT",
+  "energy_keep_alive": 12,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2019-07-16",
diff --git a/data/grid5000/sites/nancy/clusters/grosminet/grosminet.json b/data/grid5000/sites/nancy/clusters/grosminet/grosminet.json
index 3ad46287f72..1b8786cbc2e 100644
--- a/data/grid5000/sites/nancy/clusters/grosminet/grosminet.json
+++ b/data/grid5000/sites/nancy/clusters/grosminet/grosminet.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Tue, 05 Dec 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2023-11-30",
diff --git a/data/grid5000/sites/nancy/clusters/grostiti/grostiti.json b/data/grid5000/sites/nancy/clusters/grostiti/grostiti.json
index 29ab960240d..83c21d636b6 100644
--- a/data/grid5000/sites/nancy/clusters/grostiti/grostiti.json
+++ b/data/grid5000/sites/nancy/clusters/grostiti/grostiti.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 10 Jan 2024 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2015-10-23",
diff --git a/data/grid5000/sites/nancy/clusters/grouille/grouille.json b/data/grid5000/sites/nancy/clusters/grouille/grouille.json
index 1561166e264..a63df615025 100644
--- a/data/grid5000/sites/nancy/clusters/grouille/grouille.json
+++ b/data/grid5000/sites/nancy/clusters/grouille/grouille.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 13 Jan 2021 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": true,
   "kavlan": true,
   "manufactured_at": "2020-12-07",
diff --git a/data/grid5000/sites/nancy/clusters/grue/grue.json b/data/grid5000/sites/nancy/clusters/grue/grue.json
index 4eef69b2373..461deff425d 100644
--- a/data/grid5000/sites/nancy/clusters/grue/grue.json
+++ b/data/grid5000/sites/nancy/clusters/grue/grue.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 25 Nov 2019 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2019-11-15",
diff --git a/data/grid5000/sites/nancy/clusters/gruss/gruss.json b/data/grid5000/sites/nancy/clusters/gruss/gruss.json
index 59fb1bc4f75..8952b8b5879 100644
--- a/data/grid5000/sites/nancy/clusters/gruss/gruss.json
+++ b/data/grid5000/sites/nancy/clusters/gruss/gruss.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 26 Aug 2021 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2021-06-24",
diff --git a/data/grid5000/sites/nancy/clusters/grvingt/grvingt.json b/data/grid5000/sites/nancy/clusters/grvingt/grvingt.json
index 5a5697aa151..8eb528f286b 100644
--- a/data/grid5000/sites/nancy/clusters/grvingt/grvingt.json
+++ b/data/grid5000/sites/nancy/clusters/grvingt/grvingt.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 11 Apr 2018 00:00:00 GMT",
+  "energy_keep_alive": 5,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2018-04-01",
diff --git a/data/grid5000/sites/nantes/clusters/econome/econome.json b/data/grid5000/sites/nantes/clusters/econome/econome.json
index b8e8af2d1c0..a337b6f1ae5 100644
--- a/data/grid5000/sites/nantes/clusters/econome/econome.json
+++ b/data/grid5000/sites/nantes/clusters/econome/econome.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 16 Apr 2014 00:00:00 GMT",
+  "energy_keep_alive": 5,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2012-06-28",
diff --git a/data/grid5000/sites/nantes/clusters/ecotype/ecotype.json b/data/grid5000/sites/nantes/clusters/ecotype/ecotype.json
index a290777fe6d..cd497a48bc4 100644
--- a/data/grid5000/sites/nantes/clusters/ecotype/ecotype.json
+++ b/data/grid5000/sites/nantes/clusters/ecotype/ecotype.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 16 Oct 2017 00:00:00 GMT",
+  "energy_keep_alive": 12,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2017-07-11",
diff --git a/data/grid5000/sites/rennes/clusters/abacus1/abacus1.json b/data/grid5000/sites/rennes/clusters/abacus1/abacus1.json
index 03ed4a2be37..f92cec83034 100644
--- a/data/grid5000/sites/rennes/clusters/abacus1/abacus1.json
+++ b/data/grid5000/sites/rennes/clusters/abacus1/abacus1.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2016-07-27",
diff --git a/data/grid5000/sites/rennes/clusters/abacus10/abacus10.json b/data/grid5000/sites/rennes/clusters/abacus10/abacus10.json
index 55a97a4d30f..f997ea13292 100644
--- a/data/grid5000/sites/rennes/clusters/abacus10/abacus10.json
+++ b/data/grid5000/sites/rennes/clusters/abacus10/abacus10.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 30 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2018-12-03",
diff --git a/data/grid5000/sites/rennes/clusters/abacus11/abacus11.json b/data/grid5000/sites/rennes/clusters/abacus11/abacus11.json
index 0a3527b557e..d649f29b5bb 100644
--- a/data/grid5000/sites/rennes/clusters/abacus11/abacus11.json
+++ b/data/grid5000/sites/rennes/clusters/abacus11/abacus11.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2018-12-03",
diff --git a/data/grid5000/sites/rennes/clusters/abacus12/abacus12.json b/data/grid5000/sites/rennes/clusters/abacus12/abacus12.json
index 87fd40de09b..0997bf6290a 100644
--- a/data/grid5000/sites/rennes/clusters/abacus12/abacus12.json
+++ b/data/grid5000/sites/rennes/clusters/abacus12/abacus12.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 17 Nov 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2019-10-28",
diff --git a/data/grid5000/sites/rennes/clusters/abacus14/abacus14.json b/data/grid5000/sites/rennes/clusters/abacus14/abacus14.json
index 925c500a130..228ef0b7df9 100644
--- a/data/grid5000/sites/rennes/clusters/abacus14/abacus14.json
+++ b/data/grid5000/sites/rennes/clusters/abacus14/abacus14.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 08 Nov 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2019-09-26",
diff --git a/data/grid5000/sites/rennes/clusters/abacus16/abacus16.json b/data/grid5000/sites/rennes/clusters/abacus16/abacus16.json
index c0aac9f50e4..4c183f3df65 100644
--- a/data/grid5000/sites/rennes/clusters/abacus16/abacus16.json
+++ b/data/grid5000/sites/rennes/clusters/abacus16/abacus16.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 16 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2019-09-26",
diff --git a/data/grid5000/sites/rennes/clusters/abacus17/abacus17.json b/data/grid5000/sites/rennes/clusters/abacus17/abacus17.json
index 3db92966310..a05243727a1 100644
--- a/data/grid5000/sites/rennes/clusters/abacus17/abacus17.json
+++ b/data/grid5000/sites/rennes/clusters/abacus17/abacus17.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 17 Nov 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2020-11-25",
diff --git a/data/grid5000/sites/rennes/clusters/abacus18/abacus18.json b/data/grid5000/sites/rennes/clusters/abacus18/abacus18.json
index 515c8b06821..fa0a843093f 100644
--- a/data/grid5000/sites/rennes/clusters/abacus18/abacus18.json
+++ b/data/grid5000/sites/rennes/clusters/abacus18/abacus18.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 11 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2020-11-13",
diff --git a/data/grid5000/sites/rennes/clusters/abacus19/abacus19.json b/data/grid5000/sites/rennes/clusters/abacus19/abacus19.json
index 31ffcde813f..6efc5099222 100644
--- a/data/grid5000/sites/rennes/clusters/abacus19/abacus19.json
+++ b/data/grid5000/sites/rennes/clusters/abacus19/abacus19.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 17 Nov 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2020-11-12",
diff --git a/data/grid5000/sites/rennes/clusters/abacus2/abacus2.json b/data/grid5000/sites/rennes/clusters/abacus2/abacus2.json
index 321f3a22d67..ce34353a71f 100644
--- a/data/grid5000/sites/rennes/clusters/abacus2/abacus2.json
+++ b/data/grid5000/sites/rennes/clusters/abacus2/abacus2.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 10 Nov 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2017-08-15",
diff --git a/data/grid5000/sites/rennes/clusters/abacus20/abacus20.json b/data/grid5000/sites/rennes/clusters/abacus20/abacus20.json
index bbd5cb79302..54138767956 100644
--- a/data/grid5000/sites/rennes/clusters/abacus20/abacus20.json
+++ b/data/grid5000/sites/rennes/clusters/abacus20/abacus20.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 11 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2020-12-29",
diff --git a/data/grid5000/sites/rennes/clusters/abacus21/abacus21.json b/data/grid5000/sites/rennes/clusters/abacus21/abacus21.json
index 7c851285414..28916fd328f 100644
--- a/data/grid5000/sites/rennes/clusters/abacus21/abacus21.json
+++ b/data/grid5000/sites/rennes/clusters/abacus21/abacus21.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2021-08-02",
diff --git a/data/grid5000/sites/rennes/clusters/abacus22/abacus22.json b/data/grid5000/sites/rennes/clusters/abacus22/abacus22.json
index 22d1463b4f4..281ef050dee 100644
--- a/data/grid5000/sites/rennes/clusters/abacus22/abacus22.json
+++ b/data/grid5000/sites/rennes/clusters/abacus22/abacus22.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Mon, 04 Dec 2023 00:00:00 GMT",
+  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2022-01-14",
diff --git a/data/grid5000/sites/rennes/clusters/abacus25/abacus25.json b/data/grid5000/sites/rennes/clusters/abacus25/abacus25.json
index 75c7f5859df..54a16c86b36 100644
--- a/data/grid5000/sites/rennes/clusters/abacus25/abacus25.json
+++ b/data/grid5000/sites/rennes/clusters/abacus25/abacus25.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Mon, 05 Jun 2023 00:00:00 GMT",
+  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2022-10-24",
diff --git a/data/grid5000/sites/rennes/clusters/abacus26/abacus26.json b/data/grid5000/sites/rennes/clusters/abacus26/abacus26.json
index 52c6cc47176..ce26caebe31 100644
--- a/data/grid5000/sites/rennes/clusters/abacus26/abacus26.json
+++ b/data/grid5000/sites/rennes/clusters/abacus26/abacus26.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Fri, 17 Jan 2025 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2024-10-08",
diff --git a/data/grid5000/sites/rennes/clusters/abacus27/abacus27.json b/data/grid5000/sites/rennes/clusters/abacus27/abacus27.json
index 17086c8d584..1ded80cdd57 100644
--- a/data/grid5000/sites/rennes/clusters/abacus27/abacus27.json
+++ b/data/grid5000/sites/rennes/clusters/abacus27/abacus27.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Wed, 15 Jan 2025 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2024-11-26",
diff --git a/data/grid5000/sites/rennes/clusters/abacus28/abacus28.json b/data/grid5000/sites/rennes/clusters/abacus28/abacus28.json
index 8df3f37f77b..3c4cef95767 100644
--- a/data/grid5000/sites/rennes/clusters/abacus28/abacus28.json
+++ b/data/grid5000/sites/rennes/clusters/abacus28/abacus28.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Wed, 05 Feb 2025 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2020-12-05",
diff --git a/data/grid5000/sites/rennes/clusters/abacus3/abacus3.json b/data/grid5000/sites/rennes/clusters/abacus3/abacus3.json
index 068cf0903cd..44d21f85fd6 100644
--- a/data/grid5000/sites/rennes/clusters/abacus3/abacus3.json
+++ b/data/grid5000/sites/rennes/clusters/abacus3/abacus3.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 13 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2017-07-05",
diff --git a/data/grid5000/sites/rennes/clusters/abacus4/abacus4.json b/data/grid5000/sites/rennes/clusters/abacus4/abacus4.json
index 283e15fcd37..3d813c65b6d 100644
--- a/data/grid5000/sites/rennes/clusters/abacus4/abacus4.json
+++ b/data/grid5000/sites/rennes/clusters/abacus4/abacus4.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 09 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2017-11-13",
diff --git a/data/grid5000/sites/rennes/clusters/abacus5/abacus5.json b/data/grid5000/sites/rennes/clusters/abacus5/abacus5.json
index de4a2089408..11cba193ece 100644
--- a/data/grid5000/sites/rennes/clusters/abacus5/abacus5.json
+++ b/data/grid5000/sites/rennes/clusters/abacus5/abacus5.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2018-05-06",
diff --git a/data/grid5000/sites/rennes/clusters/abacus8/abacus8.json b/data/grid5000/sites/rennes/clusters/abacus8/abacus8.json
index 59d4574aa42..8401b9e8136 100644
--- a/data/grid5000/sites/rennes/clusters/abacus8/abacus8.json
+++ b/data/grid5000/sites/rennes/clusters/abacus8/abacus8.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 17 Nov 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2018-11-09",
diff --git a/data/grid5000/sites/rennes/clusters/abacus9/abacus9.json b/data/grid5000/sites/rennes/clusters/abacus9/abacus9.json
index 9a1ca8ac31d..a0dc6eacb9a 100644
--- a/data/grid5000/sites/rennes/clusters/abacus9/abacus9.json
+++ b/data/grid5000/sites/rennes/clusters/abacus9/abacus9.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 06 Nov 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2018-12-12",
diff --git a/data/grid5000/sites/rennes/clusters/paradoxe/paradoxe.json b/data/grid5000/sites/rennes/clusters/paradoxe/paradoxe.json
index abdedad0a59..67fc6436713 100644
--- a/data/grid5000/sites/rennes/clusters/paradoxe/paradoxe.json
+++ b/data/grid5000/sites/rennes/clusters/paradoxe/paradoxe.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Tue, 02 Jan 2024 00:00:00 GMT",
+  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2023-05-27",
diff --git a/data/grid5000/sites/rennes/clusters/parasilo/parasilo.json b/data/grid5000/sites/rennes/clusters/parasilo/parasilo.json
index 93aa37e26f4..aa5339808b1 100644
--- a/data/grid5000/sites/rennes/clusters/parasilo/parasilo.json
+++ b/data/grid5000/sites/rennes/clusters/parasilo/parasilo.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 13 Jan 2015 00:00:00 GMT",
+  "energy_keep_alive": 5,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2015-01-13",
diff --git a/data/grid5000/sites/rennes/clusters/roazhon1/roazhon1.json b/data/grid5000/sites/rennes/clusters/roazhon1/roazhon1.json
index 1fcaa4dadde..6853a73e4a9 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon1/roazhon1.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon1/roazhon1.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2018-09-20",
diff --git a/data/grid5000/sites/rennes/clusters/roazhon10/roazhon10.json b/data/grid5000/sites/rennes/clusters/roazhon10/roazhon10.json
index 73b0ca9bae1..9f6a5bd347e 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon10/roazhon10.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon10/roazhon10.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2019-09-25",
diff --git a/data/grid5000/sites/rennes/clusters/roazhon11/roazhon11.json b/data/grid5000/sites/rennes/clusters/roazhon11/roazhon11.json
index 571c6a257dd..2489da12c59 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon11/roazhon11.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon11/roazhon11.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2012-09-14",
diff --git a/data/grid5000/sites/rennes/clusters/roazhon12/roazhon12.json b/data/grid5000/sites/rennes/clusters/roazhon12/roazhon12.json
index 7451fde88f5..56d6d10e4de 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon12/roazhon12.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon12/roazhon12.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2012-09-14",
diff --git a/data/grid5000/sites/rennes/clusters/roazhon13/roazhon13.json b/data/grid5000/sites/rennes/clusters/roazhon13/roazhon13.json
index a337b620547..882deb478c1 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon13/roazhon13.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon13/roazhon13.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 06 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2019-09-25",
diff --git a/data/grid5000/sites/rennes/clusters/roazhon2/roazhon2.json b/data/grid5000/sites/rennes/clusters/roazhon2/roazhon2.json
index 0ccab51d315..11a6f4982e8 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon2/roazhon2.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon2/roazhon2.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 06 Sep 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2018-10-22",
diff --git a/data/grid5000/sites/rennes/clusters/roazhon3/roazhon3.json b/data/grid5000/sites/rennes/clusters/roazhon3/roazhon3.json
index 219ed3dd393..0199687806e 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon3/roazhon3.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon3/roazhon3.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2018-11-12",
diff --git a/data/grid5000/sites/rennes/clusters/roazhon4/roazhon4.json b/data/grid5000/sites/rennes/clusters/roazhon4/roazhon4.json
index 9bdcb973f8a..5fe9d86aa58 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon4/roazhon4.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon4/roazhon4.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 06 Sep 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2020-12-01",
diff --git a/data/grid5000/sites/rennes/clusters/roazhon5/roazhon5.json b/data/grid5000/sites/rennes/clusters/roazhon5/roazhon5.json
index 1241a730f9b..84109d2e7f4 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon5/roazhon5.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon5/roazhon5.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 13 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2015-04-06",
diff --git a/data/grid5000/sites/rennes/clusters/roazhon6/roazhon6.json b/data/grid5000/sites/rennes/clusters/roazhon6/roazhon6.json
index ae278660a74..a049330581f 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon6/roazhon6.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon6/roazhon6.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2017-10-25",
diff --git a/data/grid5000/sites/rennes/clusters/roazhon7/roazhon7.json b/data/grid5000/sites/rennes/clusters/roazhon7/roazhon7.json
index 7bd5e1b0c2c..4170396c60f 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon7/roazhon7.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon7/roazhon7.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 20 Dec 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2017-06-27",
diff --git a/data/grid5000/sites/rennes/clusters/roazhon8/roazhon8.json b/data/grid5000/sites/rennes/clusters/roazhon8/roazhon8.json
index e968d5577e6..c10d87e1fe4 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon8/roazhon8.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon8/roazhon8.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2017-06-22",
diff --git a/data/grid5000/sites/rennes/clusters/roazhon9/roazhon9.json b/data/grid5000/sites/rennes/clusters/roazhon9/roazhon9.json
index 8cc991fbd65..e2e0155e1ac 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon9/roazhon9.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon9/roazhon9.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 09 Oct 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2017-12-15",
diff --git a/data/grid5000/sites/sophia/clusters/esterel1/esterel1.json b/data/grid5000/sites/sophia/clusters/esterel1/esterel1.json
index a203cbfc115..427d1eab514 100644
--- a/data/grid5000/sites/sophia/clusters/esterel1/esterel1.json
+++ b/data/grid5000/sites/sophia/clusters/esterel1/esterel1.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Thu, 13 Mar 2025 00:00:00 GMT",
+  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2016-11-01",
diff --git a/data/grid5000/sites/sophia/clusters/esterel10/esterel10.json b/data/grid5000/sites/sophia/clusters/esterel10/esterel10.json
index c89292bee65..8287491e7d0 100644
--- a/data/grid5000/sites/sophia/clusters/esterel10/esterel10.json
+++ b/data/grid5000/sites/sophia/clusters/esterel10/esterel10.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 19 Dec 2024 00:00:00 GMT",
+  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2017-11-15",
diff --git a/data/grid5000/sites/sophia/clusters/esterel2/esterel2.json b/data/grid5000/sites/sophia/clusters/esterel2/esterel2.json
index 4ba8df1d005..87efda9eeec 100644
--- a/data/grid5000/sites/sophia/clusters/esterel2/esterel2.json
+++ b/data/grid5000/sites/sophia/clusters/esterel2/esterel2.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 12 Mar 2025 00:00:00 GMT",
+  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2016-05-04",
diff --git a/data/grid5000/sites/sophia/clusters/esterel41/esterel41.json b/data/grid5000/sites/sophia/clusters/esterel41/esterel41.json
index fbbf8fcd803..94605d17930 100644
--- a/data/grid5000/sites/sophia/clusters/esterel41/esterel41.json
+++ b/data/grid5000/sites/sophia/clusters/esterel41/esterel41.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Sat, 25 Jan 2025 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2024-03-01",
diff --git a/data/grid5000/sites/sophia/clusters/esterel5/esterel5.json b/data/grid5000/sites/sophia/clusters/esterel5/esterel5.json
index 40d5351452f..f926d9a848b 100644
--- a/data/grid5000/sites/sophia/clusters/esterel5/esterel5.json
+++ b/data/grid5000/sites/sophia/clusters/esterel5/esterel5.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 25 Feb 2025 00:00:00 GMT",
+  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2016-06-08",
diff --git a/data/grid5000/sites/sophia/clusters/esterel7/esterel7.json b/data/grid5000/sites/sophia/clusters/esterel7/esterel7.json
index 8733363784e..212a95db63c 100644
--- a/data/grid5000/sites/sophia/clusters/esterel7/esterel7.json
+++ b/data/grid5000/sites/sophia/clusters/esterel7/esterel7.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 06 Mar 2025 00:00:00 GMT",
+  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2017-05-23",
diff --git a/data/grid5000/sites/sophia/clusters/mercantour2/mercantour2.json b/data/grid5000/sites/sophia/clusters/mercantour2/mercantour2.json
index c78ea4d1f32..fbb72c88235 100644
--- a/data/grid5000/sites/sophia/clusters/mercantour2/mercantour2.json
+++ b/data/grid5000/sites/sophia/clusters/mercantour2/mercantour2.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 16 Jan 2025 00:00:00 GMT",
+  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2015-09-01",
diff --git a/data/grid5000/sites/sophia/clusters/mercantour5/mercantour5.json b/data/grid5000/sites/sophia/clusters/mercantour5/mercantour5.json
index 24dc03297f6..ef368565d19 100644
--- a/data/grid5000/sites/sophia/clusters/mercantour5/mercantour5.json
+++ b/data/grid5000/sites/sophia/clusters/mercantour5/mercantour5.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 24 Feb 2025 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2019-07-30",
diff --git a/data/grid5000/sites/sophia/clusters/mercantour6/mercantour6.json b/data/grid5000/sites/sophia/clusters/mercantour6/mercantour6.json
index f71460db0dd..f87d04e7f37 100644
--- a/data/grid5000/sites/sophia/clusters/mercantour6/mercantour6.json
+++ b/data/grid5000/sites/sophia/clusters/mercantour6/mercantour6.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 27 Feb 2025 00:00:00 GMT",
+  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2020-10-05",
diff --git a/data/grid5000/sites/sophia/clusters/musa/musa.json b/data/grid5000/sites/sophia/clusters/musa/musa.json
index f9df1c0ce13..26894975f20 100644
--- a/data/grid5000/sites/sophia/clusters/musa/musa.json
+++ b/data/grid5000/sites/sophia/clusters/musa/musa.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Thu, 16 Jan 2025 00:00:00 GMT",
+  "energy_keep_alive": 3,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2024-12-09",
diff --git a/data/grid5000/sites/sophia/clusters/uvb/uvb.json b/data/grid5000/sites/sophia/clusters/uvb/uvb.json
index 74c345a739b..cc0c862cfad 100644
--- a/data/grid5000/sites/sophia/clusters/uvb/uvb.json
+++ b/data/grid5000/sites/sophia/clusters/uvb/uvb.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 04 Jan 2011 00:00:00 GMT",
+  "energy_keep_alive": 3,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2011-01-04",
diff --git a/data/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.json b/data/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.json
index 746370ed4b4..e5d621756df 100644
--- a/data/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.json
+++ b/data/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Tue, 01 Aug 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
   "manufactured_at": "2022-12-14",
diff --git a/data/grid5000/sites/toulouse/clusters/estats/estats.json b/data/grid5000/sites/toulouse/clusters/estats/estats.json
index 20fad92a2d0..e896213bd17 100644
--- a/data/grid5000/sites/toulouse/clusters/estats/estats.json
+++ b/data/grid5000/sites/toulouse/clusters/estats/estats.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Tue, 13 Jun 2023 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": true,
   "kavlan": false,
   "manufactured_at": "2022-12-01",
diff --git a/data/grid5000/sites/toulouse/clusters/montcalm/montcalm.json b/data/grid5000/sites/toulouse/clusters/montcalm/montcalm.json
index b9d089ae74c..000776ba84b 100644
--- a/data/grid5000/sites/toulouse/clusters/montcalm/montcalm.json
+++ b/data/grid5000/sites/toulouse/clusters/montcalm/montcalm.json
@@ -1,6 +1,7 @@
 {
   "boot_type": "uefi",
   "created_at": "Thu, 01 Dec 2022 00:00:00 GMT",
+  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
   "manufactured_at": "2022-11-06",
diff --git a/input/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.yaml b/input/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.yaml
index 268192ecfdd..2391cfa73f2 100644
--- a/input/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.yaml
+++ b/input/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.yaml
@@ -2,6 +2,7 @@
 model: Dell PowerEdge C6320
 created_at: 2025-01-13
 kavlan: true 
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/grenoble/clusters/dahu/dahu.yaml b/input/grid5000/sites/grenoble/clusters/dahu/dahu.yaml
index 2d3edfafda6..6e70571219f 100644
--- a/input/grid5000/sites/grenoble/clusters/dahu/dahu.yaml
+++ b/input/grid5000/sites/grenoble/clusters/dahu/dahu.yaml
@@ -3,6 +3,7 @@ model: Dell PowerEdge C6420
 created_at: 2018-03-22 11:00:00 GMT
 priority: '201800'
 kavlan: true
+energy_keep_alive: 3
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/grenoble/clusters/drac/drac.yaml b/input/grid5000/sites/grenoble/clusters/drac/drac.yaml
index b516541824b..8974088b4c2 100644
--- a/input/grid5000/sites/grenoble/clusters/drac/drac.yaml
+++ b/input/grid5000/sites/grenoble/clusters/drac/drac.yaml
@@ -2,6 +2,7 @@
 model: IBM PowerNV S822LC (8335-GTB)
 created_at: 2020-10-05
 kavlan: true
+energy_keep_alive: 1
 exotic: true
 redfish: false
 boot_type: bios
diff --git a/input/grid5000/sites/grenoble/clusters/kinovis/kinovis.yaml b/input/grid5000/sites/grenoble/clusters/kinovis/kinovis.yaml
index d9530e4ef14..c16709cc022 100644
--- a/input/grid5000/sites/grenoble/clusters/kinovis/kinovis.yaml
+++ b/input/grid5000/sites/grenoble/clusters/kinovis/kinovis.yaml
@@ -2,6 +2,7 @@
 model: HPE Proliant DL380 Gen11
 created_at: 2025-02-10
 kavlan: true
+energy_keep_alive: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/grenoble/clusters/troll/troll.yaml b/input/grid5000/sites/grenoble/clusters/troll/troll.yaml
index 1b8216fdc11..21936fecc8f 100644
--- a/input/grid5000/sites/grenoble/clusters/troll/troll.yaml
+++ b/input/grid5000/sites/grenoble/clusters/troll/troll.yaml
@@ -3,6 +3,7 @@ model: Dell PowerEdge R640
 created_at: 2019-12-23
 exotic: true
 kavlan: true
+energy_keep_alive: 1
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/grenoble/clusters/yeti/yeti.yaml b/input/grid5000/sites/grenoble/clusters/yeti/yeti.yaml
index 407dcfe8c42..3eaa4a31907 100644
--- a/input/grid5000/sites/grenoble/clusters/yeti/yeti.yaml
+++ b/input/grid5000/sites/grenoble/clusters/yeti/yeti.yaml
@@ -3,6 +3,7 @@
 model: Dell PowerEdge R940
 created_at: 2018-01-16 15:00:00 GMT
 kavlan: true
+energy_keep_alive: 1
 exotic: true
 boot_type: bios
 queues:
diff --git a/input/grid5000/sites/lille/clusters/chiclet/chiclet.yaml b/input/grid5000/sites/lille/clusters/chiclet/chiclet.yaml
index 3a3be7ec9fe..ef61d1e5129 100644
--- a/input/grid5000/sites/lille/clusters/chiclet/chiclet.yaml
+++ b/input/grid5000/sites/lille/clusters/chiclet/chiclet.yaml
@@ -3,6 +3,7 @@ model: Dell PowerEdge R7425
 created_at: 2018-08-06
 priority: '201850'
 kavlan: true
+energy_keep_alive: 2
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/lille/clusters/chifflot/chifflot.yaml b/input/grid5000/sites/lille/clusters/chifflot/chifflot.yaml
index 631cc65892e..403c75a3c46 100644
--- a/input/grid5000/sites/lille/clusters/chifflot/chifflot.yaml
+++ b/input/grid5000/sites/lille/clusters/chifflot/chifflot.yaml
@@ -3,6 +3,7 @@ model: Dell PowerEdge R740
 created_at: 2018-08-01
 priority: '201870'
 kavlan: true
+energy_keep_alive: 2
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/lille/clusters/chirop/chirop.yaml b/input/grid5000/sites/lille/clusters/chirop/chirop.yaml
index 1d9b3e5b295..309cd9882ce 100644
--- a/input/grid5000/sites/lille/clusters/chirop/chirop.yaml
+++ b/input/grid5000/sites/lille/clusters/chirop/chirop.yaml
@@ -1,6 +1,7 @@
 model: DL360 Gen10+
 created_at: 2024-01-25
 kavlan: true
+energy_keep_alive: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/lille/clusters/chuc/chuc.yaml b/input/grid5000/sites/lille/clusters/chuc/chuc.yaml
index 6ab89629a1e..fa0aacfd195 100644
--- a/input/grid5000/sites/lille/clusters/chuc/chuc.yaml
+++ b/input/grid5000/sites/lille/clusters/chuc/chuc.yaml
@@ -1,6 +1,7 @@
 model: Apollo 6500 Gen10 Plus
 created_at: 2024-1-22
 kavlan: true
+energy_keep_alive: 2
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/luxembourg/clusters/petitprince/petitprince.yaml b/input/grid5000/sites/luxembourg/clusters/petitprince/petitprince.yaml
index 484c9d38d8d..49e96377799 100644
--- a/input/grid5000/sites/luxembourg/clusters/petitprince/petitprince.yaml
+++ b/input/grid5000/sites/luxembourg/clusters/petitprince/petitprince.yaml
@@ -2,6 +2,7 @@
 model: Dell PowerEdge M620
 created_at: 2013-09-10
 kavlan: true
+energy_keep_alive: 4
 redfish: false
 boot_type: bios
 queues:
diff --git a/input/grid5000/sites/lyon/clusters/gemini/gemini.yaml b/input/grid5000/sites/lyon/clusters/gemini/gemini.yaml
index 4c8ef2b240e..9d1c1d767a2 100644
--- a/input/grid5000/sites/lyon/clusters/gemini/gemini.yaml
+++ b/input/grid5000/sites/lyon/clusters/gemini/gemini.yaml
@@ -3,6 +3,7 @@ model: Nvidia DGX-1
 created_at: 2019-09-01
 exotic: true
 kavlan: true
+energy_keep_alive: 1
 redfish: false
 boot_type: uefi
 queues:
diff --git a/input/grid5000/sites/lyon/clusters/hercule/hercule.yaml b/input/grid5000/sites/lyon/clusters/hercule/hercule.yaml
index 0ff97093fb3..71f00445c29 100644
--- a/input/grid5000/sites/lyon/clusters/hercule/hercule.yaml
+++ b/input/grid5000/sites/lyon/clusters/hercule/hercule.yaml
@@ -3,6 +3,7 @@ model: Dell PowerEdge C6220
 created_at: 2012-10-02 12:00 GMT
 priority: '201299'
 kavlan: true
+energy_keep_alive: 1
 redfish: false
 boot_type: bios
 queues:
diff --git a/input/grid5000/sites/lyon/clusters/hydra/hydra.yaml b/input/grid5000/sites/lyon/clusters/hydra/hydra.yaml
index ecbbc633859..41ff489cfb1 100644
--- a/input/grid5000/sites/lyon/clusters/hydra/hydra.yaml
+++ b/input/grid5000/sites/lyon/clusters/hydra/hydra.yaml
@@ -2,6 +2,7 @@
 model: NVIDIA Grace Hopper
 created_at: 2024-02-15
 kavlan: true
+energy_keep_alive: 1
 boot_type: uefi
 exotic: true
 queues:
diff --git a/input/grid5000/sites/lyon/clusters/nova/nova.yaml b/input/grid5000/sites/lyon/clusters/nova/nova.yaml
index 3e4ddc4bbca..07705afd51a 100644
--- a/input/grid5000/sites/lyon/clusters/nova/nova.yaml
+++ b/input/grid5000/sites/lyon/clusters/nova/nova.yaml
@@ -3,6 +3,7 @@ model: Dell PowerEdge R430
 created_at: 2016-12-01 12:00:00 GMT
 priority: '201700'
 kavlan: true
+energy_keep_alive: 2
 boot_type: bios
 queues:
   - default
diff --git a/input/grid5000/sites/lyon/clusters/orion/orion.yaml b/input/grid5000/sites/lyon/clusters/orion/orion.yaml
index d1a60621eb7..84c531d2dfc 100644
--- a/input/grid5000/sites/lyon/clusters/orion/orion.yaml
+++ b/input/grid5000/sites/lyon/clusters/orion/orion.yaml
@@ -3,6 +3,7 @@ model: Dell PowerEdge R720
 created_at: 2012-09-14 12:00:00 GMT
 priority: '201299'
 kavlan: true
+energy_keep_alive: 1
 boot_type: bios
 queues:
   - default
diff --git a/input/grid5000/sites/lyon/clusters/taurus/taurus.yaml b/input/grid5000/sites/lyon/clusters/taurus/taurus.yaml
index 343124a986e..fe4dc068604 100644
--- a/input/grid5000/sites/lyon/clusters/taurus/taurus.yaml
+++ b/input/grid5000/sites/lyon/clusters/taurus/taurus.yaml
@@ -2,6 +2,7 @@
 model: Dell PowerEdge R720
 created_at: 2012-09-14 12:00:00 GMT
 kavlan: true
+energy_keep_alive: 2
 boot_type: bios
 queues:
   - default
diff --git a/input/grid5000/sites/nancy/clusters/graffiti/graffiti.yaml b/input/grid5000/sites/nancy/clusters/graffiti/graffiti.yaml
index ba30ee790a9..b34f463f82e 100644
--- a/input/grid5000/sites/nancy/clusters/graffiti/graffiti.yaml
+++ b/input/grid5000/sites/nancy/clusters/graffiti/graffiti.yaml
@@ -2,6 +2,7 @@
 model: Dell PowerEdge T640
 created_at: 2019-06-07
 kavlan: true
+energy_keep_alive: 2
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/nancy/clusters/grappe/grappe.yaml b/input/grid5000/sites/nancy/clusters/grappe/grappe.yaml
index 15f38bf4266..82359b2e602 100644
--- a/input/grid5000/sites/nancy/clusters/grappe/grappe.yaml
+++ b/input/grid5000/sites/nancy/clusters/grappe/grappe.yaml
@@ -2,6 +2,7 @@
 model: Dell PowerEdge R640
 created_at: 2020-08-20
 kavlan: true
+energy_keep_alive: 2
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/nancy/clusters/gratouille/gratouille.yaml b/input/grid5000/sites/nancy/clusters/gratouille/gratouille.yaml
index 778d34063fa..7ed279b24fb 100644
--- a/input/grid5000/sites/nancy/clusters/gratouille/gratouille.yaml
+++ b/input/grid5000/sites/nancy/clusters/gratouille/gratouille.yaml
@@ -3,6 +3,7 @@
 model: Dell PowerEdge R730
 created_at: 2017-06-26
 kavlan: true
+energy_keep_alive: 1
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/nancy/clusters/grdix/grdix.yaml b/input/grid5000/sites/nancy/clusters/grdix/grdix.yaml
index 3d394f8aef2..25daf92d975 100644
--- a/input/grid5000/sites/nancy/clusters/grdix/grdix.yaml
+++ b/input/grid5000/sites/nancy/clusters/grdix/grdix.yaml
@@ -2,6 +2,7 @@
 model: ProLiant DL365 Gen11
 created_at: 2024-09-27
 kavlan: true
+energy_keep_alive: 2
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/nancy/clusters/grele/grele.yaml b/input/grid5000/sites/nancy/clusters/grele/grele.yaml
index 2265c664d7c..b52ae488dde 100644
--- a/input/grid5000/sites/nancy/clusters/grele/grele.yaml
+++ b/input/grid5000/sites/nancy/clusters/grele/grele.yaml
@@ -3,6 +3,7 @@
 model: Dell PowerEdge R730
 created_at: 2017-06-26
 kavlan: true
+energy_keep_alive: 2
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/nancy/clusters/gres/gres.yaml b/input/grid5000/sites/nancy/clusters/gres/gres.yaml
index 7562ada7d8e..14194d7e68d 100644
--- a/input/grid5000/sites/nancy/clusters/gres/gres.yaml
+++ b/input/grid5000/sites/nancy/clusters/gres/gres.yaml
@@ -2,6 +2,7 @@
 model: ProLiant DL385 Gen11
 created_at: 2024-08-23
 kavlan: true
+energy_keep_alive: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/nancy/clusters/gros/gros.yaml b/input/grid5000/sites/nancy/clusters/gros/gros.yaml
index be25ac4d47c..89952d51366 100644
--- a/input/grid5000/sites/nancy/clusters/gros/gros.yaml
+++ b/input/grid5000/sites/nancy/clusters/gros/gros.yaml
@@ -2,6 +2,7 @@
 model: Dell PowerEdge R640
 created_at: 2019-09-04
 kavlan: true
+energy_keep_alive: 12
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/nancy/clusters/grosminet/grosminet.yaml b/input/grid5000/sites/nancy/clusters/grosminet/grosminet.yaml
index ebe5ea9fe37..19a86edb5bd 100644
--- a/input/grid5000/sites/nancy/clusters/grosminet/grosminet.yaml
+++ b/input/grid5000/sites/nancy/clusters/grosminet/grosminet.yaml
@@ -1,6 +1,7 @@
 model: Proliant DL560 Gen10
 created_at: 2023-12-05
 kavlan: true
+energy_keep_alive: 1
 boot_type: uefi 
 exotic: false
 queues:
diff --git a/input/grid5000/sites/nancy/clusters/grostiti/grostiti.yaml b/input/grid5000/sites/nancy/clusters/grostiti/grostiti.yaml
index c97f8fe067c..56a82101367 100644
--- a/input/grid5000/sites/nancy/clusters/grostiti/grostiti.yaml
+++ b/input/grid5000/sites/nancy/clusters/grostiti/grostiti.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R930
 created_at: 2024-01-10
 kavlan: true
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/nancy/clusters/grouille/grouille.yaml b/input/grid5000/sites/nancy/clusters/grouille/grouille.yaml
index 5d82598ef85..ab6208fae89 100644
--- a/input/grid5000/sites/nancy/clusters/grouille/grouille.yaml
+++ b/input/grid5000/sites/nancy/clusters/grouille/grouille.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R7525
 created_at: 2021-01-13
 kavlan: true
+energy_keep_alive: 1
 exotic: true
 boot_type: bios
 queues:
diff --git a/input/grid5000/sites/nancy/clusters/grue/grue.yaml b/input/grid5000/sites/nancy/clusters/grue/grue.yaml
index 8c1a3e8ec3b..7b1fc334854 100644
--- a/input/grid5000/sites/nancy/clusters/grue/grue.yaml
+++ b/input/grid5000/sites/nancy/clusters/grue/grue.yaml
@@ -2,6 +2,7 @@
 model: Dell PowerEdge R7425
 created_at: 2019-11-25
 kavlan: true
+energy_keep_alive: 1
 boot_type: bios
 queues:
   - production
diff --git a/input/grid5000/sites/nancy/clusters/gruss/gruss.yaml b/input/grid5000/sites/nancy/clusters/gruss/gruss.yaml
index 8d87046c66b..360a1e28e23 100644
--- a/input/grid5000/sites/nancy/clusters/gruss/gruss.yaml
+++ b/input/grid5000/sites/nancy/clusters/gruss/gruss.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R7525
 created_at: 2021-08-26
 kavlan: true
+energy_keep_alive: 1
 exotic: false
 boot_type: bios
 queues:
diff --git a/input/grid5000/sites/nancy/clusters/grvingt/grvingt.yaml b/input/grid5000/sites/nancy/clusters/grvingt/grvingt.yaml
index 1c4f3fcae3b..96a4e99610c 100644
--- a/input/grid5000/sites/nancy/clusters/grvingt/grvingt.yaml
+++ b/input/grid5000/sites/nancy/clusters/grvingt/grvingt.yaml
@@ -2,6 +2,7 @@
 model: Dell PowerEdge C6420
 created_at: 2018-04-11
 kavlan: true
+energy_keep_alive: 5
 boot_type: bios
 priority: '201701'
 queues:
diff --git a/input/grid5000/sites/nantes/clusters/econome/econome.yaml b/input/grid5000/sites/nantes/clusters/econome/econome.yaml
index 0cb1f4ab9dc..221fddabd68 100644
--- a/input/grid5000/sites/nantes/clusters/econome/econome.yaml
+++ b/input/grid5000/sites/nantes/clusters/econome/econome.yaml
@@ -2,6 +2,7 @@
 model: Dell PowerEdge C6220
 created_at: 2014-04-16
 kavlan: true
+energy_keep_alive: 5
 redfish: false
 boot_type: bios
 queues:
diff --git a/input/grid5000/sites/nantes/clusters/ecotype/ecotype.yaml b/input/grid5000/sites/nantes/clusters/ecotype/ecotype.yaml
index dafd78a14dd..e91871ece6e 100644
--- a/input/grid5000/sites/nantes/clusters/ecotype/ecotype.yaml
+++ b/input/grid5000/sites/nantes/clusters/ecotype/ecotype.yaml
@@ -3,6 +3,7 @@
 model: Dell PowerEdge R630
 created_at: 2017-10-16 17:40:55.149032
 kavlan: true
+energy_keep_alive: 12
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/rennes/clusters/abacus1/abacus1.yaml b/input/grid5000/sites/rennes/clusters/abacus1/abacus1.yaml
index 42b4f5c3579..82e88e51014 100644
--- a/input/grid5000/sites/rennes/clusters/abacus1/abacus1.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus1/abacus1.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R730
 created_at: 2023-10-24
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus10/abacus10.yaml b/input/grid5000/sites/rennes/clusters/abacus10/abacus10.yaml
index d8987e37674..fe2e6cf7764 100644
--- a/input/grid5000/sites/rennes/clusters/abacus10/abacus10.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus10/abacus10.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge T640
 created_at: 2023-10-30
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus11/abacus11.yaml b/input/grid5000/sites/rennes/clusters/abacus11/abacus11.yaml
index 07ee03cc956..4d4ae130af6 100644
--- a/input/grid5000/sites/rennes/clusters/abacus11/abacus11.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus11/abacus11.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge T640
 created_at: 2023-10-24
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus12/abacus12.yaml b/input/grid5000/sites/rennes/clusters/abacus12/abacus12.yaml
index 7b14056b161..1b5e393cc92 100644
--- a/input/grid5000/sites/rennes/clusters/abacus12/abacus12.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus12/abacus12.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R740
 created_at: 2023-11-17
 kavlan: true
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus14/abacus14.yaml b/input/grid5000/sites/rennes/clusters/abacus14/abacus14.yaml
index 61fe17fa953..89567bdaeb8 100644
--- a/input/grid5000/sites/rennes/clusters/abacus14/abacus14.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus14/abacus14.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge C4140
 created_at: 2023-11-08
 kavlan: true
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus16/abacus16.yaml b/input/grid5000/sites/rennes/clusters/abacus16/abacus16.yaml
index fab99cdd684..3c33050b1a9 100644
--- a/input/grid5000/sites/rennes/clusters/abacus16/abacus16.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus16/abacus16.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge C4140
 created_at: 2023-10-16
 kavlan: true
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus17/abacus17.yaml b/input/grid5000/sites/rennes/clusters/abacus17/abacus17.yaml
index f561b40ea20..6fb4308411b 100644
--- a/input/grid5000/sites/rennes/clusters/abacus17/abacus17.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus17/abacus17.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R7525
 created_at: 2023-11-17
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus18/abacus18.yaml b/input/grid5000/sites/rennes/clusters/abacus18/abacus18.yaml
index 459a58e0424..01f8f9bed94 100644
--- a/input/grid5000/sites/rennes/clusters/abacus18/abacus18.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus18/abacus18.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R7525
 created_at: 2023-10-11
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus19/abacus19.yaml b/input/grid5000/sites/rennes/clusters/abacus19/abacus19.yaml
index 80019612c25..91bd274fd1e 100644
--- a/input/grid5000/sites/rennes/clusters/abacus19/abacus19.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus19/abacus19.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R740
 created_at: 2023-11-17
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus2/abacus2.yaml b/input/grid5000/sites/rennes/clusters/abacus2/abacus2.yaml
index c952b6a9f2f..1674263705b 100644
--- a/input/grid5000/sites/rennes/clusters/abacus2/abacus2.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus2/abacus2.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R730
 created_at: 2023-11-10
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus20/abacus20.yaml b/input/grid5000/sites/rennes/clusters/abacus20/abacus20.yaml
index 942b57a182a..ff97d7221ba 100644
--- a/input/grid5000/sites/rennes/clusters/abacus20/abacus20.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus20/abacus20.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge T640
 created_at: 2023-10-11
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus21/abacus21.yaml b/input/grid5000/sites/rennes/clusters/abacus21/abacus21.yaml
index bfe6aef1d09..d3d18c4e46a 100644
--- a/input/grid5000/sites/rennes/clusters/abacus21/abacus21.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus21/abacus21.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R7525
 created_at: 2023-10-24
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus22/abacus22.yaml b/input/grid5000/sites/rennes/clusters/abacus22/abacus22.yaml
index e0992d53361..a9b95d18611 100644
--- a/input/grid5000/sites/rennes/clusters/abacus22/abacus22.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus22/abacus22.yaml
@@ -1,6 +1,7 @@
 model: ProLiant DL385 Gen10 Plus v2
 created_at: 2023-12-04
 kavlan: false
+energy_keep_alive: 2
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus25/abacus25.yaml b/input/grid5000/sites/rennes/clusters/abacus25/abacus25.yaml
index e03aefb25fa..ec9b22ff54a 100644
--- a/input/grid5000/sites/rennes/clusters/abacus25/abacus25.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus25/abacus25.yaml
@@ -1,6 +1,7 @@
 model: HPE ProLiant DL385 Gen10+ v2
 created_at: 2023-06-05
 kavlan: false
+energy_keep_alive: 2
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus26/abacus26.yaml b/input/grid5000/sites/rennes/clusters/abacus26/abacus26.yaml
index aa79b179701..0e325795ce8 100644
--- a/input/grid5000/sites/rennes/clusters/abacus26/abacus26.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus26/abacus26.yaml
@@ -2,6 +2,7 @@
 model: HPE ProLiant DL380 Gen11
 created_at: 2025-01-17
 kavlan: false
+energy_keep_alive: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus27/abacus27.yaml b/input/grid5000/sites/rennes/clusters/abacus27/abacus27.yaml
index 3a5d533ffea..0cfcd40c554 100644
--- a/input/grid5000/sites/rennes/clusters/abacus27/abacus27.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus27/abacus27.yaml
@@ -2,6 +2,7 @@
 model: ProLiant DL385 Gen11
 created_at: 2025-01-15
 kavlan: true
+energy_keep_alive: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus28/abacus28.yaml b/input/grid5000/sites/rennes/clusters/abacus28/abacus28.yaml
index ee5dfe20e8d..c8bb72b201c 100644
--- a/input/grid5000/sites/rennes/clusters/abacus28/abacus28.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus28/abacus28.yaml
@@ -2,6 +2,7 @@
 model: Dell PowerEdge C4140
 created_at: 2025-02-05
 kavlan: true
+energy_keep_alive: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus3/abacus3.yaml b/input/grid5000/sites/rennes/clusters/abacus3/abacus3.yaml
index ddf2305c818..bccb68f8b85 100644
--- a/input/grid5000/sites/rennes/clusters/abacus3/abacus3.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus3/abacus3.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge T640
 created_at: 2023-10-13
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus4/abacus4.yaml b/input/grid5000/sites/rennes/clusters/abacus4/abacus4.yaml
index a709005c47d..a55bc24a4d3 100644
--- a/input/grid5000/sites/rennes/clusters/abacus4/abacus4.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus4/abacus4.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R740
 created_at: 2023-10-09
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus5/abacus5.yaml b/input/grid5000/sites/rennes/clusters/abacus5/abacus5.yaml
index 7e5b4874c17..f3b6d609a76 100644
--- a/input/grid5000/sites/rennes/clusters/abacus5/abacus5.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus5/abacus5.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R740
 created_at: 2023-10-24
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus8/abacus8.yaml b/input/grid5000/sites/rennes/clusters/abacus8/abacus8.yaml
index 0da298d7d08..bf8ab48f8cc 100644
--- a/input/grid5000/sites/rennes/clusters/abacus8/abacus8.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus8/abacus8.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R7920
 created_at: 2023-11-17
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus9/abacus9.yaml b/input/grid5000/sites/rennes/clusters/abacus9/abacus9.yaml
index 2a2ea38e7df..c2d43965492 100644
--- a/input/grid5000/sites/rennes/clusters/abacus9/abacus9.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus9/abacus9.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge C4140
 created_at: 2023-11-06
 kavlan: true
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/paradoxe/paradoxe.yaml b/input/grid5000/sites/rennes/clusters/paradoxe/paradoxe.yaml
index 86e6547df5e..3a362141455 100644
--- a/input/grid5000/sites/rennes/clusters/paradoxe/paradoxe.yaml
+++ b/input/grid5000/sites/rennes/clusters/paradoxe/paradoxe.yaml
@@ -1,6 +1,7 @@
 model: HPE Proliant DL360 Gen10+
 created_at: 2024-01-02
 kavlan: true
+energy_keep_alive: 2
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/parasilo/parasilo.yaml b/input/grid5000/sites/rennes/clusters/parasilo/parasilo.yaml
index 8d54ba7e1b7..e0310a0e0a6 100644
--- a/input/grid5000/sites/rennes/clusters/parasilo/parasilo.yaml
+++ b/input/grid5000/sites/rennes/clusters/parasilo/parasilo.yaml
@@ -2,6 +2,7 @@
 model: Dell PowerEdge R630
 created_at: 2015-01-13
 kavlan: true
+energy_keep_alive: 5
 boot_type: bios
 queues:
   - default
diff --git a/input/grid5000/sites/rennes/clusters/roazhon1/roazhon1.yaml b/input/grid5000/sites/rennes/clusters/roazhon1/roazhon1.yaml
index 1135d69ef85..b8a387da7f7 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon1/roazhon1.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon1/roazhon1.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R640
 created_at: 2023-10-24
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon10/roazhon10.yaml b/input/grid5000/sites/rennes/clusters/roazhon10/roazhon10.yaml
index 91d508ad733..7fb698f7f87 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon10/roazhon10.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon10/roazhon10.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge MX740c
 created_at: 2023-10-24
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon11/roazhon11.yaml b/input/grid5000/sites/rennes/clusters/roazhon11/roazhon11.yaml
index 2288623d7ee..2aa8ab70e80 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon11/roazhon11.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon11/roazhon11.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge C6220
 created_at: 2023-10-24
 kavlan: false
+energy_keep_alive: 1
 redfish: false
 boot_type: bios
 exotic: false
diff --git a/input/grid5000/sites/rennes/clusters/roazhon12/roazhon12.yaml b/input/grid5000/sites/rennes/clusters/roazhon12/roazhon12.yaml
index 0291aee7c22..52469110609 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon12/roazhon12.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon12/roazhon12.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge C6220
 created_at: 2023-10-24
 kavlan: false
+energy_keep_alive: 1
 redfish: false
 boot_type: bios
 exotic: false
diff --git a/input/grid5000/sites/rennes/clusters/roazhon13/roazhon13.yaml b/input/grid5000/sites/rennes/clusters/roazhon13/roazhon13.yaml
index f48a71e0cd7..185995950e1 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon13/roazhon13.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon13/roazhon13.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge C6420
 created_at: 2023-10-06
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon2/roazhon2.yaml b/input/grid5000/sites/rennes/clusters/roazhon2/roazhon2.yaml
index b0decd4f84d..acfb49d70fc 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon2/roazhon2.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon2/roazhon2.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R640
 created_at: 2023-09-06
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon3/roazhon3.yaml b/input/grid5000/sites/rennes/clusters/roazhon3/roazhon3.yaml
index b9014446592..65c12bd91a5 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon3/roazhon3.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon3/roazhon3.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R640
 created_at: 2023-10-24
 kavlan: true
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon4/roazhon4.yaml b/input/grid5000/sites/rennes/clusters/roazhon4/roazhon4.yaml
index 109a49efea8..c8d0858f2b1 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon4/roazhon4.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon4/roazhon4.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge R7525
 created_at: 2023-09-06
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon5/roazhon5.yaml b/input/grid5000/sites/rennes/clusters/roazhon5/roazhon5.yaml
index bde056dc473..dbdf5c14aad 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon5/roazhon5.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon5/roazhon5.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge M630
 created_at: 2023-10-13
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon6/roazhon6.yaml b/input/grid5000/sites/rennes/clusters/roazhon6/roazhon6.yaml
index 0c35096a00a..daf93f4eb99 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon6/roazhon6.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon6/roazhon6.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge M630
 created_at: 2023-10-24
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon7/roazhon7.yaml b/input/grid5000/sites/rennes/clusters/roazhon7/roazhon7.yaml
index 9e6a6a5e095..b55e8d4b6f5 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon7/roazhon7.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon7/roazhon7.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge C6320
 created_at: 2023-12-20
 kavlan: true
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon8/roazhon8.yaml b/input/grid5000/sites/rennes/clusters/roazhon8/roazhon8.yaml
index 1787e6bc8dd..60e8ce21e9f 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon8/roazhon8.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon8/roazhon8.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge C6320
 created_at: 2023-10-24
 kavlan: true
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon9/roazhon9.yaml b/input/grid5000/sites/rennes/clusters/roazhon9/roazhon9.yaml
index 6a44c774220..c01b2bded74 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon9/roazhon9.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon9/roazhon9.yaml
@@ -1,6 +1,7 @@
 model: Dell PowerEdge C6420
 created_at: 2023-10-09
 kavlan: true
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/sophia/clusters/esterel41/esterel41.yaml b/input/grid5000/sites/sophia/clusters/esterel41/esterel41.yaml
index 52319d7dbca..42f7eb9804f 100644
--- a/input/grid5000/sites/sophia/clusters/esterel41/esterel41.yaml
+++ b/input/grid5000/sites/sophia/clusters/esterel41/esterel41.yaml
@@ -2,6 +2,7 @@
 model: DL380 Gen11
 created_at: 2025-01-25
 kavlan: false
+energy_keep_alive: 1
 boot_type: uefi 
 exotic: false 
 queues:
diff --git a/input/grid5000/sites/sophia/clusters/mercantour2/mercantour2.yaml b/input/grid5000/sites/sophia/clusters/mercantour2/mercantour2.yaml
index b40a3325b05..f2929cb51d3 100644
--- a/input/grid5000/sites/sophia/clusters/mercantour2/mercantour2.yaml
+++ b/input/grid5000/sites/sophia/clusters/mercantour2/mercantour2.yaml
@@ -2,6 +2,7 @@
 model: Dell PowerEdge C6220 II
 created_at: 2025-01-16
 kavlan: true
+energy_keep_alive: 2
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/sophia/clusters/mercantour5/mercantour5.yaml b/input/grid5000/sites/sophia/clusters/mercantour5/mercantour5.yaml
index d9243deb26e..89625a36839 100644
--- a/input/grid5000/sites/sophia/clusters/mercantour5/mercantour5.yaml
+++ b/input/grid5000/sites/sophia/clusters/mercantour5/mercantour5.yaml
@@ -2,6 +2,7 @@
 model: Dell PowerEdge C6420
 created_at: 2025-02-24
 kavlan: false
+energy_keep_alive: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/sophia/clusters/musa/musa.yaml b/input/grid5000/sites/sophia/clusters/musa/musa.yaml
index 61d47818dcb..1d3eca1fef7 100644
--- a/input/grid5000/sites/sophia/clusters/musa/musa.yaml
+++ b/input/grid5000/sites/sophia/clusters/musa/musa.yaml
@@ -2,6 +2,7 @@
 model: ProLiant DL385 Gen11
 created_at: 2025-01-16
 kavlan: true
+energy_keep_alive: 3
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/sophia/clusters/uvb/uvb.yaml b/input/grid5000/sites/sophia/clusters/uvb/uvb.yaml
index e91addf3b05..436c4a927a4 100644
--- a/input/grid5000/sites/sophia/clusters/uvb/uvb.yaml
+++ b/input/grid5000/sites/sophia/clusters/uvb/uvb.yaml
@@ -2,6 +2,7 @@
 model: Dell PowerEdge C6100
 created_at: 2011-01-04
 kavlan: true
+energy_keep_alive: 3
 redfish: false
 boot_type: bios
 queues:
diff --git a/input/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.yaml b/input/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.yaml
index bb38e97a305..620a2b3a7a7 100644
--- a/input/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.yaml
+++ b/input/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.yaml
@@ -1,6 +1,7 @@
 model: HPE Proliant DL360 Gen10+
 created_at: 2023-08-01
 kavlan: false
+energy_keep_alive: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/toulouse/clusters/estats/estats.yaml b/input/grid5000/sites/toulouse/clusters/estats/estats.yaml
index f549c0db1ff..c8cf8d6f6f8 100644
--- a/input/grid5000/sites/toulouse/clusters/estats/estats.yaml
+++ b/input/grid5000/sites/toulouse/clusters/estats/estats.yaml
@@ -1,6 +1,7 @@
 model: Connecttech/Nvidia Jetson AGX Xavier
 created_at: 2023-06-13
 kavlan: false
+energy_keep_alive: 1
 boot_type: uefi
 exotic: true
 queues:
diff --git a/input/grid5000/sites/toulouse/clusters/montcalm/montcalm.yaml b/input/grid5000/sites/toulouse/clusters/montcalm/montcalm.yaml
index ce419be41be..604b57ac6ce 100644
--- a/input/grid5000/sites/toulouse/clusters/montcalm/montcalm.yaml
+++ b/input/grid5000/sites/toulouse/clusters/montcalm/montcalm.yaml
@@ -1,6 +1,7 @@
 model: HPE Proliant DL360 Gen10+
 created_at: 2022-12-01
 kavlan: true
+energy_keep_alive: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/lib/refrepo/gen/reference-api.rb b/lib/refrepo/gen/reference-api.rb
index 70cbc542478..ad23be0c520 100644
--- a/lib/refrepo/gen/reference-api.rb
+++ b/lib/refrepo/gen/reference-api.rb
@@ -180,6 +180,11 @@ def generate_reference_api
         end
       end
 
+      #
+      # if not defined, create the energy_keep_alive value to 0, that means that no nodes will be maintain up
+      #
+      cluster['energy_keep_alive'] = 0 if cluster['energy_keep_alive'].nil?
+
       #
       # Write node info
       #
diff --git a/lib/refrepo/valid/input/schemas/schema-cluster.yaml b/lib/refrepo/valid/input/schemas/schema-cluster.yaml
index 9a4517943c2..2e2aae1ffb3 100644
--- a/lib/refrepo/valid/input/schemas/schema-cluster.yaml
+++ b/lib/refrepo/valid/input/schemas/schema-cluster.yaml
@@ -5,9 +5,10 @@ created_at: required  # string or date ?
 exotic: boolean
 boot_type: string
 kavlan: boolean
+energy_keep_alive: optional_integer
 redfish: boolean
 queues: array
 priority: optional_string
 metrics: optional_array
 type: string
-uid: string
\ No newline at end of file
+uid: string
-- 
GitLab


From 03048b306add2b5a1db98177f409307ac5d92188 Mon Sep 17 00:00:00 2001
From: Laurent Pouilloux <laurent.pouilloux@inria.fr>
Date: Mon, 17 Mar 2025 13:32:16 +0100
Subject: [PATCH 2/3] [puppet][clusters] add energy_keep_alive value

---
 lib/refrepo/gen/puppet/clusters.rb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/lib/refrepo/gen/puppet/clusters.rb b/lib/refrepo/gen/puppet/clusters.rb
index 692f3240011..aceb6d0b726 100644
--- a/lib/refrepo/gen/puppet/clusters.rb
+++ b/lib/refrepo/gen/puppet/clusters.rb
@@ -26,6 +26,7 @@ def generate_puppet_clusters(options)
             queue = f_node['supported_job_types']['queues'].select{|q| q != 'admin'}[0]
             disk_reservation = f_node['storage_devices'].filter{|d| d.key?('reservation')}.length > 0
             gpu = f_node.key?('gpu_devices')
+            energy_keep_alive = c_hash['energy_keep_alive']
             if ! f_node.key?('chassis')
                 puts "no chassis field for #{f_node['uid']}, has g5k-checks data been imported ?" 
                 warrantied = false
@@ -35,6 +36,7 @@ def generate_puppet_clusters(options)
             c_data = {"queue" => queue, 
                 "disk_reservation" => disk_reservation,
                 "gpu" => gpu,
+                "energy_keep_alive" => energy_keep_alive,
                 "warrantied" => warrantied}
             if hiera[s_uid][c_uid] != c_data
                 diff = hiera[s_uid][c_uid].dup.delete_if { |k, v| c_data[k] == v }.merge!(c_data.dup.delete_if { |k, _v| hiera[s_uid][c_uid].has_key?(k) })
-- 
GitLab


From 34ef776f67c9132d6d87886ce2cadeb67aec9e03 Mon Sep 17 00:00:00 2001
From: Laurent Pouilloux <laurent.pouilloux@inria.fr>
Date: Wed, 19 Mar 2025 22:13:36 +0100
Subject: [PATCH 3/3] [energy saving] rename value at clusters level + update
 schema + fix comment

---
 .../sites/grenoble/clusters/chartreuse2/chartreuse2.json      | 2 +-
 data/grid5000/sites/grenoble/clusters/dahu/dahu.json          | 2 +-
 data/grid5000/sites/grenoble/clusters/drac/drac.json          | 2 +-
 data/grid5000/sites/grenoble/clusters/kinovis/kinovis.json    | 2 +-
 data/grid5000/sites/grenoble/clusters/nessie/nessie.json      | 2 +-
 data/grid5000/sites/grenoble/clusters/servan/servan.json      | 2 +-
 data/grid5000/sites/grenoble/clusters/troll/troll.json        | 2 +-
 data/grid5000/sites/grenoble/clusters/yeti/yeti.json          | 2 +-
 data/grid5000/sites/lille/clusters/chiclet/chiclet.json       | 2 +-
 data/grid5000/sites/lille/clusters/chifflot/chifflot.json     | 2 +-
 data/grid5000/sites/lille/clusters/chirop/chirop.json         | 2 +-
 data/grid5000/sites/lille/clusters/chuc/chuc.json             | 2 +-
 data/grid5000/sites/louvain/clusters/spirou/spirou.json       | 2 +-
 .../sites/luxembourg/clusters/petitprince/petitprince.json    | 2 +-
 data/grid5000/sites/lyon/clusters/gemini/gemini.json          | 2 +-
 data/grid5000/sites/lyon/clusters/hercule/hercule.json        | 2 +-
 data/grid5000/sites/lyon/clusters/hydra/hydra.json            | 2 +-
 data/grid5000/sites/lyon/clusters/neowise/neowise.json        | 2 +-
 data/grid5000/sites/lyon/clusters/nova/nova.json              | 2 +-
 data/grid5000/sites/lyon/clusters/orion/orion.json            | 2 +-
 data/grid5000/sites/lyon/clusters/pyxis/pyxis.json            | 2 +-
 data/grid5000/sites/lyon/clusters/sagittaire/sagittaire.json  | 2 +-
 data/grid5000/sites/lyon/clusters/sirius/sirius.json          | 2 +-
 data/grid5000/sites/lyon/clusters/taurus/taurus.json          | 2 +-
 data/grid5000/sites/nancy/clusters/graffiti/graffiti.json     | 2 +-
 data/grid5000/sites/nancy/clusters/grappe/grappe.json         | 2 +-
 data/grid5000/sites/nancy/clusters/grat/grat.json             | 2 +-
 data/grid5000/sites/nancy/clusters/gratouille/gratouille.json | 2 +-
 data/grid5000/sites/nancy/clusters/grdix/grdix.json           | 2 +-
 data/grid5000/sites/nancy/clusters/grele/grele.json           | 2 +-
 data/grid5000/sites/nancy/clusters/gres/gres.json             | 2 +-
 data/grid5000/sites/nancy/clusters/gros/gros.json             | 2 +-
 data/grid5000/sites/nancy/clusters/grosminet/grosminet.json   | 2 +-
 data/grid5000/sites/nancy/clusters/grostiti/grostiti.json     | 2 +-
 data/grid5000/sites/nancy/clusters/grouille/grouille.json     | 2 +-
 data/grid5000/sites/nancy/clusters/grue/grue.json             | 2 +-
 data/grid5000/sites/nancy/clusters/gruss/gruss.json           | 2 +-
 data/grid5000/sites/nancy/clusters/grvingt/grvingt.json       | 2 +-
 data/grid5000/sites/nantes/clusters/econome/econome.json      | 2 +-
 data/grid5000/sites/nantes/clusters/ecotype/ecotype.json      | 2 +-
 data/grid5000/sites/rennes/clusters/abacus1/abacus1.json      | 2 +-
 data/grid5000/sites/rennes/clusters/abacus10/abacus10.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus11/abacus11.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus12/abacus12.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus14/abacus14.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus16/abacus16.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus17/abacus17.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus18/abacus18.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus19/abacus19.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus2/abacus2.json      | 2 +-
 data/grid5000/sites/rennes/clusters/abacus20/abacus20.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus21/abacus21.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus22/abacus22.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus25/abacus25.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus26/abacus26.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus27/abacus27.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus28/abacus28.json    | 2 +-
 data/grid5000/sites/rennes/clusters/abacus3/abacus3.json      | 2 +-
 data/grid5000/sites/rennes/clusters/abacus4/abacus4.json      | 2 +-
 data/grid5000/sites/rennes/clusters/abacus5/abacus5.json      | 2 +-
 data/grid5000/sites/rennes/clusters/abacus8/abacus8.json      | 2 +-
 data/grid5000/sites/rennes/clusters/abacus9/abacus9.json      | 2 +-
 data/grid5000/sites/rennes/clusters/paradoxe/paradoxe.json    | 2 +-
 data/grid5000/sites/rennes/clusters/parasilo/parasilo.json    | 2 +-
 data/grid5000/sites/rennes/clusters/roazhon1/roazhon1.json    | 2 +-
 data/grid5000/sites/rennes/clusters/roazhon10/roazhon10.json  | 2 +-
 data/grid5000/sites/rennes/clusters/roazhon11/roazhon11.json  | 2 +-
 data/grid5000/sites/rennes/clusters/roazhon12/roazhon12.json  | 2 +-
 data/grid5000/sites/rennes/clusters/roazhon13/roazhon13.json  | 2 +-
 data/grid5000/sites/rennes/clusters/roazhon2/roazhon2.json    | 2 +-
 data/grid5000/sites/rennes/clusters/roazhon3/roazhon3.json    | 2 +-
 data/grid5000/sites/rennes/clusters/roazhon4/roazhon4.json    | 2 +-
 data/grid5000/sites/rennes/clusters/roazhon5/roazhon5.json    | 2 +-
 data/grid5000/sites/rennes/clusters/roazhon6/roazhon6.json    | 2 +-
 data/grid5000/sites/rennes/clusters/roazhon7/roazhon7.json    | 2 +-
 data/grid5000/sites/rennes/clusters/roazhon8/roazhon8.json    | 2 +-
 data/grid5000/sites/rennes/clusters/roazhon9/roazhon9.json    | 2 +-
 data/grid5000/sites/sophia/clusters/esterel1/esterel1.json    | 2 +-
 data/grid5000/sites/sophia/clusters/esterel10/esterel10.json  | 2 +-
 data/grid5000/sites/sophia/clusters/esterel2/esterel2.json    | 2 +-
 data/grid5000/sites/sophia/clusters/esterel41/esterel41.json  | 2 +-
 data/grid5000/sites/sophia/clusters/esterel5/esterel5.json    | 2 +-
 data/grid5000/sites/sophia/clusters/esterel7/esterel7.json    | 2 +-
 .../sites/sophia/clusters/mercantour2/mercantour2.json        | 2 +-
 .../sites/sophia/clusters/mercantour5/mercantour5.json        | 2 +-
 .../sites/sophia/clusters/mercantour6/mercantour6.json        | 2 +-
 data/grid5000/sites/sophia/clusters/musa/musa.json            | 2 +-
 data/grid5000/sites/sophia/clusters/uvb/uvb.json              | 2 +-
 .../sites/strasbourg/clusters/fleckenstein/fleckenstein.json  | 2 +-
 data/grid5000/sites/toulouse/clusters/estats/estats.json      | 2 +-
 data/grid5000/sites/toulouse/clusters/montcalm/montcalm.json  | 2 +-
 .../sites/grenoble/clusters/chartreuse2/chartreuse2.yaml      | 2 +-
 input/grid5000/sites/grenoble/clusters/dahu/dahu.yaml         | 2 +-
 input/grid5000/sites/grenoble/clusters/drac/drac.yaml         | 2 +-
 input/grid5000/sites/grenoble/clusters/kinovis/kinovis.yaml   | 2 +-
 input/grid5000/sites/grenoble/clusters/troll/troll.yaml       | 2 +-
 input/grid5000/sites/grenoble/clusters/yeti/yeti.yaml         | 2 +-
 input/grid5000/sites/lille/clusters/chiclet/chiclet.yaml      | 2 +-
 input/grid5000/sites/lille/clusters/chifflot/chifflot.yaml    | 2 +-
 input/grid5000/sites/lille/clusters/chirop/chirop.yaml        | 2 +-
 input/grid5000/sites/lille/clusters/chuc/chuc.yaml            | 2 +-
 .../sites/luxembourg/clusters/petitprince/petitprince.yaml    | 2 +-
 input/grid5000/sites/lyon/clusters/gemini/gemini.yaml         | 2 +-
 input/grid5000/sites/lyon/clusters/hercule/hercule.yaml       | 2 +-
 input/grid5000/sites/lyon/clusters/hydra/hydra.yaml           | 2 +-
 input/grid5000/sites/lyon/clusters/nova/nova.yaml             | 2 +-
 input/grid5000/sites/lyon/clusters/orion/orion.yaml           | 2 +-
 input/grid5000/sites/lyon/clusters/taurus/taurus.yaml         | 2 +-
 input/grid5000/sites/nancy/clusters/graffiti/graffiti.yaml    | 2 +-
 input/grid5000/sites/nancy/clusters/grappe/grappe.yaml        | 2 +-
 .../grid5000/sites/nancy/clusters/gratouille/gratouille.yaml  | 2 +-
 input/grid5000/sites/nancy/clusters/grdix/grdix.yaml          | 2 +-
 input/grid5000/sites/nancy/clusters/grele/grele.yaml          | 2 +-
 input/grid5000/sites/nancy/clusters/gres/gres.yaml            | 2 +-
 input/grid5000/sites/nancy/clusters/gros/gros.yaml            | 2 +-
 input/grid5000/sites/nancy/clusters/grosminet/grosminet.yaml  | 2 +-
 input/grid5000/sites/nancy/clusters/grostiti/grostiti.yaml    | 2 +-
 input/grid5000/sites/nancy/clusters/grouille/grouille.yaml    | 2 +-
 input/grid5000/sites/nancy/clusters/grue/grue.yaml            | 2 +-
 input/grid5000/sites/nancy/clusters/gruss/gruss.yaml          | 2 +-
 input/grid5000/sites/nancy/clusters/grvingt/grvingt.yaml      | 2 +-
 input/grid5000/sites/nantes/clusters/econome/econome.yaml     | 2 +-
 input/grid5000/sites/nantes/clusters/ecotype/ecotype.yaml     | 2 +-
 input/grid5000/sites/rennes/clusters/abacus1/abacus1.yaml     | 2 +-
 input/grid5000/sites/rennes/clusters/abacus10/abacus10.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus11/abacus11.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus12/abacus12.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus14/abacus14.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus16/abacus16.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus17/abacus17.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus18/abacus18.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus19/abacus19.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus2/abacus2.yaml     | 2 +-
 input/grid5000/sites/rennes/clusters/abacus20/abacus20.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus21/abacus21.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus22/abacus22.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus25/abacus25.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus26/abacus26.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus27/abacus27.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus28/abacus28.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/abacus3/abacus3.yaml     | 2 +-
 input/grid5000/sites/rennes/clusters/abacus4/abacus4.yaml     | 2 +-
 input/grid5000/sites/rennes/clusters/abacus5/abacus5.yaml     | 2 +-
 input/grid5000/sites/rennes/clusters/abacus8/abacus8.yaml     | 2 +-
 input/grid5000/sites/rennes/clusters/abacus9/abacus9.yaml     | 2 +-
 input/grid5000/sites/rennes/clusters/paradoxe/paradoxe.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/parasilo/parasilo.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/roazhon1/roazhon1.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/roazhon10/roazhon10.yaml | 2 +-
 input/grid5000/sites/rennes/clusters/roazhon11/roazhon11.yaml | 2 +-
 input/grid5000/sites/rennes/clusters/roazhon12/roazhon12.yaml | 2 +-
 input/grid5000/sites/rennes/clusters/roazhon13/roazhon13.yaml | 2 +-
 input/grid5000/sites/rennes/clusters/roazhon2/roazhon2.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/roazhon3/roazhon3.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/roazhon4/roazhon4.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/roazhon5/roazhon5.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/roazhon6/roazhon6.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/roazhon7/roazhon7.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/roazhon8/roazhon8.yaml   | 2 +-
 input/grid5000/sites/rennes/clusters/roazhon9/roazhon9.yaml   | 2 +-
 input/grid5000/sites/sophia/clusters/esterel41/esterel41.yaml | 2 +-
 .../sites/sophia/clusters/mercantour2/mercantour2.yaml        | 2 +-
 .../sites/sophia/clusters/mercantour5/mercantour5.yaml        | 2 +-
 input/grid5000/sites/sophia/clusters/musa/musa.yaml           | 2 +-
 input/grid5000/sites/sophia/clusters/uvb/uvb.yaml             | 2 +-
 .../sites/strasbourg/clusters/fleckenstein/fleckenstein.yaml  | 2 +-
 input/grid5000/sites/toulouse/clusters/estats/estats.yaml     | 2 +-
 input/grid5000/sites/toulouse/clusters/montcalm/montcalm.yaml | 2 +-
 lib/refrepo/gen/puppet/clusters.rb                            | 4 ++--
 lib/refrepo/gen/reference-api.rb                              | 4 ++--
 lib/refrepo/valid/input/schemas/schema-cluster.yaml           | 2 +-
 171 files changed, 173 insertions(+), 173 deletions(-)

diff --git a/data/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.json b/data/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.json
index 58f7d1a1c3b..7d7a28d1100 100644
--- a/data/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.json
+++ b/data/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 13 Jan 2025 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2016-11-14",
   "metrics": [
     {
diff --git a/data/grid5000/sites/grenoble/clusters/dahu/dahu.json b/data/grid5000/sites/grenoble/clusters/dahu/dahu.json
index b5d63332416..183400420d0 100644
--- a/data/grid5000/sites/grenoble/clusters/dahu/dahu.json
+++ b/data/grid5000/sites/grenoble/clusters/dahu/dahu.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 22 Mar 2018 00:00:00 GMT",
-  "energy_keep_alive": 3,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 3,
   "manufactured_at": "2017-12-12",
   "metrics": [
     {
diff --git a/data/grid5000/sites/grenoble/clusters/drac/drac.json b/data/grid5000/sites/grenoble/clusters/drac/drac.json
index d469edc329a..ad014ba11bf 100644
--- a/data/grid5000/sites/grenoble/clusters/drac/drac.json
+++ b/data/grid5000/sites/grenoble/clusters/drac/drac.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 05 Oct 2020 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": true,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2016-10-17",
   "metrics": [
     {
diff --git a/data/grid5000/sites/grenoble/clusters/kinovis/kinovis.json b/data/grid5000/sites/grenoble/clusters/kinovis/kinovis.json
index d7954b17c3b..77b3ee8eebe 100644
--- a/data/grid5000/sites/grenoble/clusters/kinovis/kinovis.json
+++ b/data/grid5000/sites/grenoble/clusters/kinovis/kinovis.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Mon, 10 Feb 2025 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2024-06-26",
   "metrics": [
     {
diff --git a/data/grid5000/sites/grenoble/clusters/nessie/nessie.json b/data/grid5000/sites/grenoble/clusters/nessie/nessie.json
index ca6d161b717..1b67ef8dcdc 100644
--- a/data/grid5000/sites/grenoble/clusters/nessie/nessie.json
+++ b/data/grid5000/sites/grenoble/clusters/nessie/nessie.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Fri, 08 Nov 2024 00:00:00 GMT",
-  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 0,
   "manufactured_at": "2024-08-19",
   "metrics": [
 
diff --git a/data/grid5000/sites/grenoble/clusters/servan/servan.json b/data/grid5000/sites/grenoble/clusters/servan/servan.json
index 032a9adfd6e..c0c27f0f5d4 100644
--- a/data/grid5000/sites/grenoble/clusters/servan/servan.json
+++ b/data/grid5000/sites/grenoble/clusters/servan/servan.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Wed, 15 Dec 2021 00:00:00 GMT",
-  "energy_keep_alive": 0,
   "exotic": true,
   "kavlan": true,
+  "keep_alive_nodes_count": 0,
   "manufactured_at": "2021-12-10",
   "metrics": [
     {
diff --git a/data/grid5000/sites/grenoble/clusters/troll/troll.json b/data/grid5000/sites/grenoble/clusters/troll/troll.json
index 74e5eaf916c..40e1cc1f522 100644
--- a/data/grid5000/sites/grenoble/clusters/troll/troll.json
+++ b/data/grid5000/sites/grenoble/clusters/troll/troll.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 23 Dec 2019 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": true,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2019-11-21",
   "metrics": [
     {
diff --git a/data/grid5000/sites/grenoble/clusters/yeti/yeti.json b/data/grid5000/sites/grenoble/clusters/yeti/yeti.json
index 252a3fb9b65..0d164fff1c7 100644
--- a/data/grid5000/sites/grenoble/clusters/yeti/yeti.json
+++ b/data/grid5000/sites/grenoble/clusters/yeti/yeti.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 16 Jan 2018 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": true,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2017-12-26",
   "metrics": [
     {
diff --git a/data/grid5000/sites/lille/clusters/chiclet/chiclet.json b/data/grid5000/sites/lille/clusters/chiclet/chiclet.json
index b6b8fd9e2ff..bfa4bfe859c 100644
--- a/data/grid5000/sites/lille/clusters/chiclet/chiclet.json
+++ b/data/grid5000/sites/lille/clusters/chiclet/chiclet.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 06 Aug 2018 00:00:00 GMT",
-  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 2,
   "manufactured_at": "2018-07-27",
   "metrics": [
     {
diff --git a/data/grid5000/sites/lille/clusters/chifflot/chifflot.json b/data/grid5000/sites/lille/clusters/chifflot/chifflot.json
index dec30f8286f..2170a4f43ea 100644
--- a/data/grid5000/sites/lille/clusters/chifflot/chifflot.json
+++ b/data/grid5000/sites/lille/clusters/chifflot/chifflot.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 01 Aug 2018 00:00:00 GMT",
-  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 2,
   "manufactured_at": "2018-07-17",
   "metrics": [
     {
diff --git a/data/grid5000/sites/lille/clusters/chirop/chirop.json b/data/grid5000/sites/lille/clusters/chirop/chirop.json
index 9324fced9a0..002080f8f62 100644
--- a/data/grid5000/sites/lille/clusters/chirop/chirop.json
+++ b/data/grid5000/sites/lille/clusters/chirop/chirop.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Thu, 25 Jan 2024 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2023-05-02",
   "metrics": [
     {
diff --git a/data/grid5000/sites/lille/clusters/chuc/chuc.json b/data/grid5000/sites/lille/clusters/chuc/chuc.json
index 0f333699299..6c74eaf256e 100644
--- a/data/grid5000/sites/lille/clusters/chuc/chuc.json
+++ b/data/grid5000/sites/lille/clusters/chuc/chuc.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Mon, 22 Jan 2024 00:00:00 GMT",
-  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 2,
   "manufactured_at": "2023-05-02",
   "metrics": [
     {
diff --git a/data/grid5000/sites/louvain/clusters/spirou/spirou.json b/data/grid5000/sites/louvain/clusters/spirou/spirou.json
index 06792fd56e4..b12ff3c765b 100644
--- a/data/grid5000/sites/louvain/clusters/spirou/spirou.json
+++ b/data/grid5000/sites/louvain/clusters/spirou/spirou.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Wed, 02 Oct 2024 00:00:00 GMT",
-  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 0,
   "manufactured_at": "2024-01-01",
   "metrics": [
 
diff --git a/data/grid5000/sites/luxembourg/clusters/petitprince/petitprince.json b/data/grid5000/sites/luxembourg/clusters/petitprince/petitprince.json
index 3b72d736a93..754e2744b2c 100644
--- a/data/grid5000/sites/luxembourg/clusters/petitprince/petitprince.json
+++ b/data/grid5000/sites/luxembourg/clusters/petitprince/petitprince.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 10 Sep 2013 00:00:00 GMT",
-  "energy_keep_alive": 4,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 4,
   "manufactured_at": "2012-10-30",
   "metrics": [
     {
diff --git a/data/grid5000/sites/lyon/clusters/gemini/gemini.json b/data/grid5000/sites/lyon/clusters/gemini/gemini.json
index c83b176a71d..435732f6f7d 100644
--- a/data/grid5000/sites/lyon/clusters/gemini/gemini.json
+++ b/data/grid5000/sites/lyon/clusters/gemini/gemini.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Sun, 01 Sep 2019 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": true,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2019-06-12",
   "metrics": [
     {
diff --git a/data/grid5000/sites/lyon/clusters/hercule/hercule.json b/data/grid5000/sites/lyon/clusters/hercule/hercule.json
index 0f3734a0f2e..32454617767 100644
--- a/data/grid5000/sites/lyon/clusters/hercule/hercule.json
+++ b/data/grid5000/sites/lyon/clusters/hercule/hercule.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 02 Oct 2012 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2012-07-19",
   "metrics": [
     {
diff --git a/data/grid5000/sites/lyon/clusters/hydra/hydra.json b/data/grid5000/sites/lyon/clusters/hydra/hydra.json
index 8707eaad7a1..df0cedf7bda 100644
--- a/data/grid5000/sites/lyon/clusters/hydra/hydra.json
+++ b/data/grid5000/sites/lyon/clusters/hydra/hydra.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Thu, 15 Feb 2024 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": true,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2024-02-15",
   "metrics": [
     {
diff --git a/data/grid5000/sites/lyon/clusters/neowise/neowise.json b/data/grid5000/sites/lyon/clusters/neowise/neowise.json
index 3f1b72999e6..14ee2920aff 100644
--- a/data/grid5000/sites/lyon/clusters/neowise/neowise.json
+++ b/data/grid5000/sites/lyon/clusters/neowise/neowise.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 17 May 2021 00:00:00 GMT",
-  "energy_keep_alive": 0,
   "exotic": true,
   "kavlan": true,
+  "keep_alive_nodes_count": 0,
   "manufactured_at": "2021-05-17",
   "metrics": [
     {
diff --git a/data/grid5000/sites/lyon/clusters/nova/nova.json b/data/grid5000/sites/lyon/clusters/nova/nova.json
index c719afa579a..7e48bc077dc 100644
--- a/data/grid5000/sites/lyon/clusters/nova/nova.json
+++ b/data/grid5000/sites/lyon/clusters/nova/nova.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 01 Dec 2016 00:00:00 GMT",
-  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 2,
   "manufactured_at": "2016-10-28",
   "metrics": [
     {
diff --git a/data/grid5000/sites/lyon/clusters/orion/orion.json b/data/grid5000/sites/lyon/clusters/orion/orion.json
index a8dae6ddf2c..73d6791f577 100644
--- a/data/grid5000/sites/lyon/clusters/orion/orion.json
+++ b/data/grid5000/sites/lyon/clusters/orion/orion.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 14 Sep 2012 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2012-07-16",
   "metrics": [
     {
diff --git a/data/grid5000/sites/lyon/clusters/pyxis/pyxis.json b/data/grid5000/sites/lyon/clusters/pyxis/pyxis.json
index 431b671ce2b..71b1095a3cd 100644
--- a/data/grid5000/sites/lyon/clusters/pyxis/pyxis.json
+++ b/data/grid5000/sites/lyon/clusters/pyxis/pyxis.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Mon, 06 Jan 2020 00:00:00 GMT",
-  "energy_keep_alive": 0,
   "exotic": true,
   "kavlan": true,
+  "keep_alive_nodes_count": 0,
   "manufactured_at": "2019-11-07",
   "metrics": [
     {
diff --git a/data/grid5000/sites/lyon/clusters/sagittaire/sagittaire.json b/data/grid5000/sites/lyon/clusters/sagittaire/sagittaire.json
index 379ae90d166..22feb3eadad 100644
--- a/data/grid5000/sites/lyon/clusters/sagittaire/sagittaire.json
+++ b/data/grid5000/sites/lyon/clusters/sagittaire/sagittaire.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Sat, 01 Jul 2006 00:00:00 GMT",
-  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 0,
   "manufactured_at": "2006-07-01",
   "metrics": [
     {
diff --git a/data/grid5000/sites/lyon/clusters/sirius/sirius.json b/data/grid5000/sites/lyon/clusters/sirius/sirius.json
index 482bc0c42eb..f5210cf7d81 100644
--- a/data/grid5000/sites/lyon/clusters/sirius/sirius.json
+++ b/data/grid5000/sites/lyon/clusters/sirius/sirius.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Thu, 18 Nov 2021 00:00:00 GMT",
-  "energy_keep_alive": 0,
   "exotic": true,
   "kavlan": true,
+  "keep_alive_nodes_count": 0,
   "manufactured_at": "2021-11-24",
   "metrics": [
     {
diff --git a/data/grid5000/sites/lyon/clusters/taurus/taurus.json b/data/grid5000/sites/lyon/clusters/taurus/taurus.json
index b0a8d40fbb6..3db437c4b23 100644
--- a/data/grid5000/sites/lyon/clusters/taurus/taurus.json
+++ b/data/grid5000/sites/lyon/clusters/taurus/taurus.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 14 Sep 2012 00:00:00 GMT",
-  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 2,
   "manufactured_at": "2012-07-16",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nancy/clusters/graffiti/graffiti.json b/data/grid5000/sites/nancy/clusters/graffiti/graffiti.json
index 7b7b6d6eec6..184e03a9eb5 100644
--- a/data/grid5000/sites/nancy/clusters/graffiti/graffiti.json
+++ b/data/grid5000/sites/nancy/clusters/graffiti/graffiti.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 07 Jun 2019 00:00:00 GMT",
-  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 2,
   "manufactured_at": "2019-05-27",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nancy/clusters/grappe/grappe.json b/data/grid5000/sites/nancy/clusters/grappe/grappe.json
index c34769c699c..2f82821a850 100644
--- a/data/grid5000/sites/nancy/clusters/grappe/grappe.json
+++ b/data/grid5000/sites/nancy/clusters/grappe/grappe.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 20 Aug 2020 00:00:00 GMT",
-  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 2,
   "manufactured_at": "2020-07-09",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nancy/clusters/grat/grat.json b/data/grid5000/sites/nancy/clusters/grat/grat.json
index ae68f5af081..b01d6e53c7b 100644
--- a/data/grid5000/sites/nancy/clusters/grat/grat.json
+++ b/data/grid5000/sites/nancy/clusters/grat/grat.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Wed, 07 Sep 2022 00:00:00 GMT",
-  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 0,
   "manufactured_at": "2022-06-22",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nancy/clusters/gratouille/gratouille.json b/data/grid5000/sites/nancy/clusters/gratouille/gratouille.json
index eea320827ef..3990bbd1753 100644
--- a/data/grid5000/sites/nancy/clusters/gratouille/gratouille.json
+++ b/data/grid5000/sites/nancy/clusters/gratouille/gratouille.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 26 Jun 2017 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2017-06-07",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nancy/clusters/grdix/grdix.json b/data/grid5000/sites/nancy/clusters/grdix/grdix.json
index ccbfe5fa2ea..6a0aa3f8176 100644
--- a/data/grid5000/sites/nancy/clusters/grdix/grdix.json
+++ b/data/grid5000/sites/nancy/clusters/grdix/grdix.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Fri, 27 Sep 2024 00:00:00 GMT",
-  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 2,
   "manufactured_at": "2024-09-02",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nancy/clusters/grele/grele.json b/data/grid5000/sites/nancy/clusters/grele/grele.json
index 04a728e9930..ee969cd587d 100644
--- a/data/grid5000/sites/nancy/clusters/grele/grele.json
+++ b/data/grid5000/sites/nancy/clusters/grele/grele.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 26 Jun 2017 00:00:00 GMT",
-  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 2,
   "manufactured_at": "2017-06-07",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nancy/clusters/gres/gres.json b/data/grid5000/sites/nancy/clusters/gres/gres.json
index b0bb3b3bf3f..ce39373d232 100644
--- a/data/grid5000/sites/nancy/clusters/gres/gres.json
+++ b/data/grid5000/sites/nancy/clusters/gres/gres.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Fri, 23 Aug 2024 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2024-08-07",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nancy/clusters/gros/gros.json b/data/grid5000/sites/nancy/clusters/gros/gros.json
index c366c49249d..35f9a492c61 100644
--- a/data/grid5000/sites/nancy/clusters/gros/gros.json
+++ b/data/grid5000/sites/nancy/clusters/gros/gros.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 04 Sep 2019 00:00:00 GMT",
-  "energy_keep_alive": 12,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 12,
   "manufactured_at": "2019-07-16",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nancy/clusters/grosminet/grosminet.json b/data/grid5000/sites/nancy/clusters/grosminet/grosminet.json
index 1b8786cbc2e..c8fd6ac112a 100644
--- a/data/grid5000/sites/nancy/clusters/grosminet/grosminet.json
+++ b/data/grid5000/sites/nancy/clusters/grosminet/grosminet.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Tue, 05 Dec 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2023-11-30",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nancy/clusters/grostiti/grostiti.json b/data/grid5000/sites/nancy/clusters/grostiti/grostiti.json
index 83c21d636b6..ff3f9cc31e6 100644
--- a/data/grid5000/sites/nancy/clusters/grostiti/grostiti.json
+++ b/data/grid5000/sites/nancy/clusters/grostiti/grostiti.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 10 Jan 2024 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2015-10-23",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nancy/clusters/grouille/grouille.json b/data/grid5000/sites/nancy/clusters/grouille/grouille.json
index a63df615025..ba016f1adb1 100644
--- a/data/grid5000/sites/nancy/clusters/grouille/grouille.json
+++ b/data/grid5000/sites/nancy/clusters/grouille/grouille.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 13 Jan 2021 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": true,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2020-12-07",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nancy/clusters/grue/grue.json b/data/grid5000/sites/nancy/clusters/grue/grue.json
index 461deff425d..648fae48ed5 100644
--- a/data/grid5000/sites/nancy/clusters/grue/grue.json
+++ b/data/grid5000/sites/nancy/clusters/grue/grue.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 25 Nov 2019 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2019-11-15",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nancy/clusters/gruss/gruss.json b/data/grid5000/sites/nancy/clusters/gruss/gruss.json
index 8952b8b5879..6948eb0af1e 100644
--- a/data/grid5000/sites/nancy/clusters/gruss/gruss.json
+++ b/data/grid5000/sites/nancy/clusters/gruss/gruss.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 26 Aug 2021 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2021-06-24",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nancy/clusters/grvingt/grvingt.json b/data/grid5000/sites/nancy/clusters/grvingt/grvingt.json
index 8eb528f286b..54a68d6a3c2 100644
--- a/data/grid5000/sites/nancy/clusters/grvingt/grvingt.json
+++ b/data/grid5000/sites/nancy/clusters/grvingt/grvingt.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 11 Apr 2018 00:00:00 GMT",
-  "energy_keep_alive": 5,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 5,
   "manufactured_at": "2018-04-01",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nantes/clusters/econome/econome.json b/data/grid5000/sites/nantes/clusters/econome/econome.json
index a337b6f1ae5..54c4f1b00a2 100644
--- a/data/grid5000/sites/nantes/clusters/econome/econome.json
+++ b/data/grid5000/sites/nantes/clusters/econome/econome.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 16 Apr 2014 00:00:00 GMT",
-  "energy_keep_alive": 5,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 5,
   "manufactured_at": "2012-06-28",
   "metrics": [
     {
diff --git a/data/grid5000/sites/nantes/clusters/ecotype/ecotype.json b/data/grid5000/sites/nantes/clusters/ecotype/ecotype.json
index cd497a48bc4..2a64abc83e9 100644
--- a/data/grid5000/sites/nantes/clusters/ecotype/ecotype.json
+++ b/data/grid5000/sites/nantes/clusters/ecotype/ecotype.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 16 Oct 2017 00:00:00 GMT",
-  "energy_keep_alive": 12,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 12,
   "manufactured_at": "2017-07-11",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus1/abacus1.json b/data/grid5000/sites/rennes/clusters/abacus1/abacus1.json
index f92cec83034..3c1023b337a 100644
--- a/data/grid5000/sites/rennes/clusters/abacus1/abacus1.json
+++ b/data/grid5000/sites/rennes/clusters/abacus1/abacus1.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2016-07-27",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus10/abacus10.json b/data/grid5000/sites/rennes/clusters/abacus10/abacus10.json
index f997ea13292..50497e04e9f 100644
--- a/data/grid5000/sites/rennes/clusters/abacus10/abacus10.json
+++ b/data/grid5000/sites/rennes/clusters/abacus10/abacus10.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 30 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2018-12-03",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus11/abacus11.json b/data/grid5000/sites/rennes/clusters/abacus11/abacus11.json
index d649f29b5bb..3e11f5a92d3 100644
--- a/data/grid5000/sites/rennes/clusters/abacus11/abacus11.json
+++ b/data/grid5000/sites/rennes/clusters/abacus11/abacus11.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2018-12-03",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus12/abacus12.json b/data/grid5000/sites/rennes/clusters/abacus12/abacus12.json
index 0997bf6290a..977fb025156 100644
--- a/data/grid5000/sites/rennes/clusters/abacus12/abacus12.json
+++ b/data/grid5000/sites/rennes/clusters/abacus12/abacus12.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 17 Nov 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2019-10-28",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus14/abacus14.json b/data/grid5000/sites/rennes/clusters/abacus14/abacus14.json
index 228ef0b7df9..6ea70b5d50f 100644
--- a/data/grid5000/sites/rennes/clusters/abacus14/abacus14.json
+++ b/data/grid5000/sites/rennes/clusters/abacus14/abacus14.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 08 Nov 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2019-09-26",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus16/abacus16.json b/data/grid5000/sites/rennes/clusters/abacus16/abacus16.json
index 4c183f3df65..6baecf40ead 100644
--- a/data/grid5000/sites/rennes/clusters/abacus16/abacus16.json
+++ b/data/grid5000/sites/rennes/clusters/abacus16/abacus16.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 16 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2019-09-26",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus17/abacus17.json b/data/grid5000/sites/rennes/clusters/abacus17/abacus17.json
index a05243727a1..6d007e47a38 100644
--- a/data/grid5000/sites/rennes/clusters/abacus17/abacus17.json
+++ b/data/grid5000/sites/rennes/clusters/abacus17/abacus17.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 17 Nov 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2020-11-25",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus18/abacus18.json b/data/grid5000/sites/rennes/clusters/abacus18/abacus18.json
index fa0a843093f..db957d3bb9e 100644
--- a/data/grid5000/sites/rennes/clusters/abacus18/abacus18.json
+++ b/data/grid5000/sites/rennes/clusters/abacus18/abacus18.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 11 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2020-11-13",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus19/abacus19.json b/data/grid5000/sites/rennes/clusters/abacus19/abacus19.json
index 6efc5099222..0898eac8a58 100644
--- a/data/grid5000/sites/rennes/clusters/abacus19/abacus19.json
+++ b/data/grid5000/sites/rennes/clusters/abacus19/abacus19.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 17 Nov 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2020-11-12",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus2/abacus2.json b/data/grid5000/sites/rennes/clusters/abacus2/abacus2.json
index ce34353a71f..25e1271342e 100644
--- a/data/grid5000/sites/rennes/clusters/abacus2/abacus2.json
+++ b/data/grid5000/sites/rennes/clusters/abacus2/abacus2.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 10 Nov 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2017-08-15",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus20/abacus20.json b/data/grid5000/sites/rennes/clusters/abacus20/abacus20.json
index 54138767956..ab378ba388f 100644
--- a/data/grid5000/sites/rennes/clusters/abacus20/abacus20.json
+++ b/data/grid5000/sites/rennes/clusters/abacus20/abacus20.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 11 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2020-12-29",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus21/abacus21.json b/data/grid5000/sites/rennes/clusters/abacus21/abacus21.json
index 28916fd328f..f4635c03100 100644
--- a/data/grid5000/sites/rennes/clusters/abacus21/abacus21.json
+++ b/data/grid5000/sites/rennes/clusters/abacus21/abacus21.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2021-08-02",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus22/abacus22.json b/data/grid5000/sites/rennes/clusters/abacus22/abacus22.json
index 281ef050dee..5acb22d728e 100644
--- a/data/grid5000/sites/rennes/clusters/abacus22/abacus22.json
+++ b/data/grid5000/sites/rennes/clusters/abacus22/abacus22.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Mon, 04 Dec 2023 00:00:00 GMT",
-  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 2,
   "manufactured_at": "2022-01-14",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus25/abacus25.json b/data/grid5000/sites/rennes/clusters/abacus25/abacus25.json
index 54a16c86b36..c5480d32623 100644
--- a/data/grid5000/sites/rennes/clusters/abacus25/abacus25.json
+++ b/data/grid5000/sites/rennes/clusters/abacus25/abacus25.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Mon, 05 Jun 2023 00:00:00 GMT",
-  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 2,
   "manufactured_at": "2022-10-24",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus26/abacus26.json b/data/grid5000/sites/rennes/clusters/abacus26/abacus26.json
index ce26caebe31..f77043463c2 100644
--- a/data/grid5000/sites/rennes/clusters/abacus26/abacus26.json
+++ b/data/grid5000/sites/rennes/clusters/abacus26/abacus26.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Fri, 17 Jan 2025 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2024-10-08",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus27/abacus27.json b/data/grid5000/sites/rennes/clusters/abacus27/abacus27.json
index 1ded80cdd57..83f39ec0924 100644
--- a/data/grid5000/sites/rennes/clusters/abacus27/abacus27.json
+++ b/data/grid5000/sites/rennes/clusters/abacus27/abacus27.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Wed, 15 Jan 2025 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2024-11-26",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus28/abacus28.json b/data/grid5000/sites/rennes/clusters/abacus28/abacus28.json
index 3c4cef95767..ee2c125c466 100644
--- a/data/grid5000/sites/rennes/clusters/abacus28/abacus28.json
+++ b/data/grid5000/sites/rennes/clusters/abacus28/abacus28.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Wed, 05 Feb 2025 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2020-12-05",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus3/abacus3.json b/data/grid5000/sites/rennes/clusters/abacus3/abacus3.json
index 44d21f85fd6..aa646c27831 100644
--- a/data/grid5000/sites/rennes/clusters/abacus3/abacus3.json
+++ b/data/grid5000/sites/rennes/clusters/abacus3/abacus3.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 13 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2017-07-05",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus4/abacus4.json b/data/grid5000/sites/rennes/clusters/abacus4/abacus4.json
index 3d813c65b6d..420e488b283 100644
--- a/data/grid5000/sites/rennes/clusters/abacus4/abacus4.json
+++ b/data/grid5000/sites/rennes/clusters/abacus4/abacus4.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 09 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2017-11-13",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus5/abacus5.json b/data/grid5000/sites/rennes/clusters/abacus5/abacus5.json
index 11cba193ece..92c2ba008c2 100644
--- a/data/grid5000/sites/rennes/clusters/abacus5/abacus5.json
+++ b/data/grid5000/sites/rennes/clusters/abacus5/abacus5.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2018-05-06",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus8/abacus8.json b/data/grid5000/sites/rennes/clusters/abacus8/abacus8.json
index 8401b9e8136..227a2ee39ee 100644
--- a/data/grid5000/sites/rennes/clusters/abacus8/abacus8.json
+++ b/data/grid5000/sites/rennes/clusters/abacus8/abacus8.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 17 Nov 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2018-11-09",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/abacus9/abacus9.json b/data/grid5000/sites/rennes/clusters/abacus9/abacus9.json
index a0dc6eacb9a..411337438e6 100644
--- a/data/grid5000/sites/rennes/clusters/abacus9/abacus9.json
+++ b/data/grid5000/sites/rennes/clusters/abacus9/abacus9.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 06 Nov 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2018-12-12",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/paradoxe/paradoxe.json b/data/grid5000/sites/rennes/clusters/paradoxe/paradoxe.json
index 67fc6436713..8be83675394 100644
--- a/data/grid5000/sites/rennes/clusters/paradoxe/paradoxe.json
+++ b/data/grid5000/sites/rennes/clusters/paradoxe/paradoxe.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Tue, 02 Jan 2024 00:00:00 GMT",
-  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 2,
   "manufactured_at": "2023-05-27",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/parasilo/parasilo.json b/data/grid5000/sites/rennes/clusters/parasilo/parasilo.json
index aa5339808b1..b1fdd2b4e1d 100644
--- a/data/grid5000/sites/rennes/clusters/parasilo/parasilo.json
+++ b/data/grid5000/sites/rennes/clusters/parasilo/parasilo.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 13 Jan 2015 00:00:00 GMT",
-  "energy_keep_alive": 5,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 5,
   "manufactured_at": "2015-01-13",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/roazhon1/roazhon1.json b/data/grid5000/sites/rennes/clusters/roazhon1/roazhon1.json
index 6853a73e4a9..df39c9683fa 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon1/roazhon1.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon1/roazhon1.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2018-09-20",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/roazhon10/roazhon10.json b/data/grid5000/sites/rennes/clusters/roazhon10/roazhon10.json
index 9f6a5bd347e..08bb9d978cd 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon10/roazhon10.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon10/roazhon10.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2019-09-25",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/roazhon11/roazhon11.json b/data/grid5000/sites/rennes/clusters/roazhon11/roazhon11.json
index 2489da12c59..fa48533b4cf 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon11/roazhon11.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon11/roazhon11.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2012-09-14",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/roazhon12/roazhon12.json b/data/grid5000/sites/rennes/clusters/roazhon12/roazhon12.json
index 56d6d10e4de..400c508651a 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon12/roazhon12.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon12/roazhon12.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2012-09-14",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/roazhon13/roazhon13.json b/data/grid5000/sites/rennes/clusters/roazhon13/roazhon13.json
index 882deb478c1..63b2e468cf0 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon13/roazhon13.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon13/roazhon13.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 06 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2019-09-25",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/roazhon2/roazhon2.json b/data/grid5000/sites/rennes/clusters/roazhon2/roazhon2.json
index 11a6f4982e8..eebed7d79ec 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon2/roazhon2.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon2/roazhon2.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 06 Sep 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2018-10-22",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/roazhon3/roazhon3.json b/data/grid5000/sites/rennes/clusters/roazhon3/roazhon3.json
index 0199687806e..8166f7033d7 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon3/roazhon3.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon3/roazhon3.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2018-11-12",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/roazhon4/roazhon4.json b/data/grid5000/sites/rennes/clusters/roazhon4/roazhon4.json
index 5fe9d86aa58..b19237c342c 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon4/roazhon4.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon4/roazhon4.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 06 Sep 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2020-12-01",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/roazhon5/roazhon5.json b/data/grid5000/sites/rennes/clusters/roazhon5/roazhon5.json
index 84109d2e7f4..b233adf57c2 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon5/roazhon5.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon5/roazhon5.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Fri, 13 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2015-04-06",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/roazhon6/roazhon6.json b/data/grid5000/sites/rennes/clusters/roazhon6/roazhon6.json
index a049330581f..c947e1fc5de 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon6/roazhon6.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon6/roazhon6.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2017-10-25",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/roazhon7/roazhon7.json b/data/grid5000/sites/rennes/clusters/roazhon7/roazhon7.json
index 4170396c60f..e707bea8f88 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon7/roazhon7.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon7/roazhon7.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 20 Dec 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2017-06-27",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/roazhon8/roazhon8.json b/data/grid5000/sites/rennes/clusters/roazhon8/roazhon8.json
index c10d87e1fe4..e2d2b0f3942 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon8/roazhon8.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon8/roazhon8.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 24 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2017-06-22",
   "metrics": [
     {
diff --git a/data/grid5000/sites/rennes/clusters/roazhon9/roazhon9.json b/data/grid5000/sites/rennes/clusters/roazhon9/roazhon9.json
index e2e0155e1ac..e7899b7f308 100644
--- a/data/grid5000/sites/rennes/clusters/roazhon9/roazhon9.json
+++ b/data/grid5000/sites/rennes/clusters/roazhon9/roazhon9.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 09 Oct 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2017-12-15",
   "metrics": [
     {
diff --git a/data/grid5000/sites/sophia/clusters/esterel1/esterel1.json b/data/grid5000/sites/sophia/clusters/esterel1/esterel1.json
index 427d1eab514..25ba9b4ac90 100644
--- a/data/grid5000/sites/sophia/clusters/esterel1/esterel1.json
+++ b/data/grid5000/sites/sophia/clusters/esterel1/esterel1.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Thu, 13 Mar 2025 00:00:00 GMT",
-  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 0,
   "manufactured_at": "2016-11-01",
   "metrics": [
     {
diff --git a/data/grid5000/sites/sophia/clusters/esterel10/esterel10.json b/data/grid5000/sites/sophia/clusters/esterel10/esterel10.json
index 8287491e7d0..9b79903e2d3 100644
--- a/data/grid5000/sites/sophia/clusters/esterel10/esterel10.json
+++ b/data/grid5000/sites/sophia/clusters/esterel10/esterel10.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 19 Dec 2024 00:00:00 GMT",
-  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 0,
   "manufactured_at": "2017-11-15",
   "metrics": [
     {
diff --git a/data/grid5000/sites/sophia/clusters/esterel2/esterel2.json b/data/grid5000/sites/sophia/clusters/esterel2/esterel2.json
index 87efda9eeec..0418aeae59b 100644
--- a/data/grid5000/sites/sophia/clusters/esterel2/esterel2.json
+++ b/data/grid5000/sites/sophia/clusters/esterel2/esterel2.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Wed, 12 Mar 2025 00:00:00 GMT",
-  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 0,
   "manufactured_at": "2016-05-04",
   "metrics": [
     {
diff --git a/data/grid5000/sites/sophia/clusters/esterel41/esterel41.json b/data/grid5000/sites/sophia/clusters/esterel41/esterel41.json
index 94605d17930..b0092366050 100644
--- a/data/grid5000/sites/sophia/clusters/esterel41/esterel41.json
+++ b/data/grid5000/sites/sophia/clusters/esterel41/esterel41.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Sat, 25 Jan 2025 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2024-03-01",
   "metrics": [
     {
diff --git a/data/grid5000/sites/sophia/clusters/esterel5/esterel5.json b/data/grid5000/sites/sophia/clusters/esterel5/esterel5.json
index f926d9a848b..0230f0cf582 100644
--- a/data/grid5000/sites/sophia/clusters/esterel5/esterel5.json
+++ b/data/grid5000/sites/sophia/clusters/esterel5/esterel5.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 25 Feb 2025 00:00:00 GMT",
-  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 0,
   "manufactured_at": "2016-06-08",
   "metrics": [
     {
diff --git a/data/grid5000/sites/sophia/clusters/esterel7/esterel7.json b/data/grid5000/sites/sophia/clusters/esterel7/esterel7.json
index 212a95db63c..4e23fd0a472 100644
--- a/data/grid5000/sites/sophia/clusters/esterel7/esterel7.json
+++ b/data/grid5000/sites/sophia/clusters/esterel7/esterel7.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 06 Mar 2025 00:00:00 GMT",
-  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 0,
   "manufactured_at": "2017-05-23",
   "metrics": [
     {
diff --git a/data/grid5000/sites/sophia/clusters/mercantour2/mercantour2.json b/data/grid5000/sites/sophia/clusters/mercantour2/mercantour2.json
index fbb72c88235..a00549f1004 100644
--- a/data/grid5000/sites/sophia/clusters/mercantour2/mercantour2.json
+++ b/data/grid5000/sites/sophia/clusters/mercantour2/mercantour2.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 16 Jan 2025 00:00:00 GMT",
-  "energy_keep_alive": 2,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 2,
   "manufactured_at": "2015-09-01",
   "metrics": [
     {
diff --git a/data/grid5000/sites/sophia/clusters/mercantour5/mercantour5.json b/data/grid5000/sites/sophia/clusters/mercantour5/mercantour5.json
index ef368565d19..670146028ea 100644
--- a/data/grid5000/sites/sophia/clusters/mercantour5/mercantour5.json
+++ b/data/grid5000/sites/sophia/clusters/mercantour5/mercantour5.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Mon, 24 Feb 2025 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2019-07-30",
   "metrics": [
     {
diff --git a/data/grid5000/sites/sophia/clusters/mercantour6/mercantour6.json b/data/grid5000/sites/sophia/clusters/mercantour6/mercantour6.json
index f87d04e7f37..8be4b944147 100644
--- a/data/grid5000/sites/sophia/clusters/mercantour6/mercantour6.json
+++ b/data/grid5000/sites/sophia/clusters/mercantour6/mercantour6.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Thu, 27 Feb 2025 00:00:00 GMT",
-  "energy_keep_alive": 0,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 0,
   "manufactured_at": "2020-10-05",
   "metrics": [
     {
diff --git a/data/grid5000/sites/sophia/clusters/musa/musa.json b/data/grid5000/sites/sophia/clusters/musa/musa.json
index 26894975f20..a3f8cc4f4b4 100644
--- a/data/grid5000/sites/sophia/clusters/musa/musa.json
+++ b/data/grid5000/sites/sophia/clusters/musa/musa.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Thu, 16 Jan 2025 00:00:00 GMT",
-  "energy_keep_alive": 3,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 3,
   "manufactured_at": "2024-12-09",
   "metrics": [
     {
diff --git a/data/grid5000/sites/sophia/clusters/uvb/uvb.json b/data/grid5000/sites/sophia/clusters/uvb/uvb.json
index cc0c862cfad..aa02670a1bd 100644
--- a/data/grid5000/sites/sophia/clusters/uvb/uvb.json
+++ b/data/grid5000/sites/sophia/clusters/uvb/uvb.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "bios",
   "created_at": "Tue, 04 Jan 2011 00:00:00 GMT",
-  "energy_keep_alive": 3,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 3,
   "manufactured_at": "2011-01-04",
   "metrics": [
     {
diff --git a/data/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.json b/data/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.json
index e5d621756df..9c2f3752c8b 100644
--- a/data/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.json
+++ b/data/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Tue, 01 Aug 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2022-12-14",
   "metrics": [
     {
diff --git a/data/grid5000/sites/toulouse/clusters/estats/estats.json b/data/grid5000/sites/toulouse/clusters/estats/estats.json
index e896213bd17..8096bc05798 100644
--- a/data/grid5000/sites/toulouse/clusters/estats/estats.json
+++ b/data/grid5000/sites/toulouse/clusters/estats/estats.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Tue, 13 Jun 2023 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": true,
   "kavlan": false,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2022-12-01",
   "metrics": [
 
diff --git a/data/grid5000/sites/toulouse/clusters/montcalm/montcalm.json b/data/grid5000/sites/toulouse/clusters/montcalm/montcalm.json
index 000776ba84b..d70178bae26 100644
--- a/data/grid5000/sites/toulouse/clusters/montcalm/montcalm.json
+++ b/data/grid5000/sites/toulouse/clusters/montcalm/montcalm.json
@@ -1,9 +1,9 @@
 {
   "boot_type": "uefi",
   "created_at": "Thu, 01 Dec 2022 00:00:00 GMT",
-  "energy_keep_alive": 1,
   "exotic": false,
   "kavlan": true,
+  "keep_alive_nodes_count": 1,
   "manufactured_at": "2022-11-06",
   "metrics": [
     {
diff --git a/input/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.yaml b/input/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.yaml
index 2391cfa73f2..b69260c85c9 100644
--- a/input/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.yaml
+++ b/input/grid5000/sites/grenoble/clusters/chartreuse2/chartreuse2.yaml
@@ -2,7 +2,7 @@
 model: Dell PowerEdge C6320
 created_at: 2025-01-13
 kavlan: true 
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/grenoble/clusters/dahu/dahu.yaml b/input/grid5000/sites/grenoble/clusters/dahu/dahu.yaml
index 6e70571219f..9b2be2ef2e1 100644
--- a/input/grid5000/sites/grenoble/clusters/dahu/dahu.yaml
+++ b/input/grid5000/sites/grenoble/clusters/dahu/dahu.yaml
@@ -3,7 +3,7 @@ model: Dell PowerEdge C6420
 created_at: 2018-03-22 11:00:00 GMT
 priority: '201800'
 kavlan: true
-energy_keep_alive: 3
+keep_alive_nodes_count: 3
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/grenoble/clusters/drac/drac.yaml b/input/grid5000/sites/grenoble/clusters/drac/drac.yaml
index 8974088b4c2..983a20fe035 100644
--- a/input/grid5000/sites/grenoble/clusters/drac/drac.yaml
+++ b/input/grid5000/sites/grenoble/clusters/drac/drac.yaml
@@ -2,7 +2,7 @@
 model: IBM PowerNV S822LC (8335-GTB)
 created_at: 2020-10-05
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 exotic: true
 redfish: false
 boot_type: bios
diff --git a/input/grid5000/sites/grenoble/clusters/kinovis/kinovis.yaml b/input/grid5000/sites/grenoble/clusters/kinovis/kinovis.yaml
index c16709cc022..afb8df8ff62 100644
--- a/input/grid5000/sites/grenoble/clusters/kinovis/kinovis.yaml
+++ b/input/grid5000/sites/grenoble/clusters/kinovis/kinovis.yaml
@@ -2,7 +2,7 @@
 model: HPE Proliant DL380 Gen11
 created_at: 2025-02-10
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/grenoble/clusters/troll/troll.yaml b/input/grid5000/sites/grenoble/clusters/troll/troll.yaml
index 21936fecc8f..595689c1999 100644
--- a/input/grid5000/sites/grenoble/clusters/troll/troll.yaml
+++ b/input/grid5000/sites/grenoble/clusters/troll/troll.yaml
@@ -3,7 +3,7 @@ model: Dell PowerEdge R640
 created_at: 2019-12-23
 exotic: true
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/grenoble/clusters/yeti/yeti.yaml b/input/grid5000/sites/grenoble/clusters/yeti/yeti.yaml
index 3eaa4a31907..f4bf5be17a7 100644
--- a/input/grid5000/sites/grenoble/clusters/yeti/yeti.yaml
+++ b/input/grid5000/sites/grenoble/clusters/yeti/yeti.yaml
@@ -3,7 +3,7 @@
 model: Dell PowerEdge R940
 created_at: 2018-01-16 15:00:00 GMT
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 exotic: true
 boot_type: bios
 queues:
diff --git a/input/grid5000/sites/lille/clusters/chiclet/chiclet.yaml b/input/grid5000/sites/lille/clusters/chiclet/chiclet.yaml
index ef61d1e5129..22536efd795 100644
--- a/input/grid5000/sites/lille/clusters/chiclet/chiclet.yaml
+++ b/input/grid5000/sites/lille/clusters/chiclet/chiclet.yaml
@@ -3,7 +3,7 @@ model: Dell PowerEdge R7425
 created_at: 2018-08-06
 priority: '201850'
 kavlan: true
-energy_keep_alive: 2
+keep_alive_nodes_count: 2
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/lille/clusters/chifflot/chifflot.yaml b/input/grid5000/sites/lille/clusters/chifflot/chifflot.yaml
index 403c75a3c46..f778d21a099 100644
--- a/input/grid5000/sites/lille/clusters/chifflot/chifflot.yaml
+++ b/input/grid5000/sites/lille/clusters/chifflot/chifflot.yaml
@@ -3,7 +3,7 @@ model: Dell PowerEdge R740
 created_at: 2018-08-01
 priority: '201870'
 kavlan: true
-energy_keep_alive: 2
+keep_alive_nodes_count: 2
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/lille/clusters/chirop/chirop.yaml b/input/grid5000/sites/lille/clusters/chirop/chirop.yaml
index 309cd9882ce..3fd4a4a536d 100644
--- a/input/grid5000/sites/lille/clusters/chirop/chirop.yaml
+++ b/input/grid5000/sites/lille/clusters/chirop/chirop.yaml
@@ -1,7 +1,7 @@
 model: DL360 Gen10+
 created_at: 2024-01-25
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/lille/clusters/chuc/chuc.yaml b/input/grid5000/sites/lille/clusters/chuc/chuc.yaml
index fa0aacfd195..bad5e33bae3 100644
--- a/input/grid5000/sites/lille/clusters/chuc/chuc.yaml
+++ b/input/grid5000/sites/lille/clusters/chuc/chuc.yaml
@@ -1,7 +1,7 @@
 model: Apollo 6500 Gen10 Plus
 created_at: 2024-1-22
 kavlan: true
-energy_keep_alive: 2
+keep_alive_nodes_count: 2
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/luxembourg/clusters/petitprince/petitprince.yaml b/input/grid5000/sites/luxembourg/clusters/petitprince/petitprince.yaml
index 49e96377799..73d7c38be39 100644
--- a/input/grid5000/sites/luxembourg/clusters/petitprince/petitprince.yaml
+++ b/input/grid5000/sites/luxembourg/clusters/petitprince/petitprince.yaml
@@ -2,7 +2,7 @@
 model: Dell PowerEdge M620
 created_at: 2013-09-10
 kavlan: true
-energy_keep_alive: 4
+keep_alive_nodes_count: 4
 redfish: false
 boot_type: bios
 queues:
diff --git a/input/grid5000/sites/lyon/clusters/gemini/gemini.yaml b/input/grid5000/sites/lyon/clusters/gemini/gemini.yaml
index 9d1c1d767a2..1a0804262f6 100644
--- a/input/grid5000/sites/lyon/clusters/gemini/gemini.yaml
+++ b/input/grid5000/sites/lyon/clusters/gemini/gemini.yaml
@@ -3,7 +3,7 @@ model: Nvidia DGX-1
 created_at: 2019-09-01
 exotic: true
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 redfish: false
 boot_type: uefi
 queues:
diff --git a/input/grid5000/sites/lyon/clusters/hercule/hercule.yaml b/input/grid5000/sites/lyon/clusters/hercule/hercule.yaml
index 71f00445c29..71e853eb9c6 100644
--- a/input/grid5000/sites/lyon/clusters/hercule/hercule.yaml
+++ b/input/grid5000/sites/lyon/clusters/hercule/hercule.yaml
@@ -3,7 +3,7 @@ model: Dell PowerEdge C6220
 created_at: 2012-10-02 12:00 GMT
 priority: '201299'
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 redfish: false
 boot_type: bios
 queues:
diff --git a/input/grid5000/sites/lyon/clusters/hydra/hydra.yaml b/input/grid5000/sites/lyon/clusters/hydra/hydra.yaml
index 41ff489cfb1..9c65036f5d6 100644
--- a/input/grid5000/sites/lyon/clusters/hydra/hydra.yaml
+++ b/input/grid5000/sites/lyon/clusters/hydra/hydra.yaml
@@ -2,7 +2,7 @@
 model: NVIDIA Grace Hopper
 created_at: 2024-02-15
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: uefi
 exotic: true
 queues:
diff --git a/input/grid5000/sites/lyon/clusters/nova/nova.yaml b/input/grid5000/sites/lyon/clusters/nova/nova.yaml
index 07705afd51a..4e67d0a48ad 100644
--- a/input/grid5000/sites/lyon/clusters/nova/nova.yaml
+++ b/input/grid5000/sites/lyon/clusters/nova/nova.yaml
@@ -3,7 +3,7 @@ model: Dell PowerEdge R430
 created_at: 2016-12-01 12:00:00 GMT
 priority: '201700'
 kavlan: true
-energy_keep_alive: 2
+keep_alive_nodes_count: 2
 boot_type: bios
 queues:
   - default
diff --git a/input/grid5000/sites/lyon/clusters/orion/orion.yaml b/input/grid5000/sites/lyon/clusters/orion/orion.yaml
index 84c531d2dfc..070589fe628 100644
--- a/input/grid5000/sites/lyon/clusters/orion/orion.yaml
+++ b/input/grid5000/sites/lyon/clusters/orion/orion.yaml
@@ -3,7 +3,7 @@ model: Dell PowerEdge R720
 created_at: 2012-09-14 12:00:00 GMT
 priority: '201299'
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 queues:
   - default
diff --git a/input/grid5000/sites/lyon/clusters/taurus/taurus.yaml b/input/grid5000/sites/lyon/clusters/taurus/taurus.yaml
index fe4dc068604..832e2616b27 100644
--- a/input/grid5000/sites/lyon/clusters/taurus/taurus.yaml
+++ b/input/grid5000/sites/lyon/clusters/taurus/taurus.yaml
@@ -2,7 +2,7 @@
 model: Dell PowerEdge R720
 created_at: 2012-09-14 12:00:00 GMT
 kavlan: true
-energy_keep_alive: 2
+keep_alive_nodes_count: 2
 boot_type: bios
 queues:
   - default
diff --git a/input/grid5000/sites/nancy/clusters/graffiti/graffiti.yaml b/input/grid5000/sites/nancy/clusters/graffiti/graffiti.yaml
index b34f463f82e..7c124ff760d 100644
--- a/input/grid5000/sites/nancy/clusters/graffiti/graffiti.yaml
+++ b/input/grid5000/sites/nancy/clusters/graffiti/graffiti.yaml
@@ -2,7 +2,7 @@
 model: Dell PowerEdge T640
 created_at: 2019-06-07
 kavlan: true
-energy_keep_alive: 2
+keep_alive_nodes_count: 2
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/nancy/clusters/grappe/grappe.yaml b/input/grid5000/sites/nancy/clusters/grappe/grappe.yaml
index 82359b2e602..a8fc120a566 100644
--- a/input/grid5000/sites/nancy/clusters/grappe/grappe.yaml
+++ b/input/grid5000/sites/nancy/clusters/grappe/grappe.yaml
@@ -2,7 +2,7 @@
 model: Dell PowerEdge R640
 created_at: 2020-08-20
 kavlan: true
-energy_keep_alive: 2
+keep_alive_nodes_count: 2
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/nancy/clusters/gratouille/gratouille.yaml b/input/grid5000/sites/nancy/clusters/gratouille/gratouille.yaml
index 7ed279b24fb..11fd4df07d6 100644
--- a/input/grid5000/sites/nancy/clusters/gratouille/gratouille.yaml
+++ b/input/grid5000/sites/nancy/clusters/gratouille/gratouille.yaml
@@ -3,7 +3,7 @@
 model: Dell PowerEdge R730
 created_at: 2017-06-26
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/nancy/clusters/grdix/grdix.yaml b/input/grid5000/sites/nancy/clusters/grdix/grdix.yaml
index 25daf92d975..ec196bfbf67 100644
--- a/input/grid5000/sites/nancy/clusters/grdix/grdix.yaml
+++ b/input/grid5000/sites/nancy/clusters/grdix/grdix.yaml
@@ -2,7 +2,7 @@
 model: ProLiant DL365 Gen11
 created_at: 2024-09-27
 kavlan: true
-energy_keep_alive: 2
+keep_alive_nodes_count: 2
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/nancy/clusters/grele/grele.yaml b/input/grid5000/sites/nancy/clusters/grele/grele.yaml
index b52ae488dde..8a4529365c9 100644
--- a/input/grid5000/sites/nancy/clusters/grele/grele.yaml
+++ b/input/grid5000/sites/nancy/clusters/grele/grele.yaml
@@ -3,7 +3,7 @@
 model: Dell PowerEdge R730
 created_at: 2017-06-26
 kavlan: true
-energy_keep_alive: 2
+keep_alive_nodes_count: 2
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/nancy/clusters/gres/gres.yaml b/input/grid5000/sites/nancy/clusters/gres/gres.yaml
index 14194d7e68d..927476f3987 100644
--- a/input/grid5000/sites/nancy/clusters/gres/gres.yaml
+++ b/input/grid5000/sites/nancy/clusters/gres/gres.yaml
@@ -2,7 +2,7 @@
 model: ProLiant DL385 Gen11
 created_at: 2024-08-23
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/nancy/clusters/gros/gros.yaml b/input/grid5000/sites/nancy/clusters/gros/gros.yaml
index 89952d51366..4f31c00c6b8 100644
--- a/input/grid5000/sites/nancy/clusters/gros/gros.yaml
+++ b/input/grid5000/sites/nancy/clusters/gros/gros.yaml
@@ -2,7 +2,7 @@
 model: Dell PowerEdge R640
 created_at: 2019-09-04
 kavlan: true
-energy_keep_alive: 12
+keep_alive_nodes_count: 12
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/nancy/clusters/grosminet/grosminet.yaml b/input/grid5000/sites/nancy/clusters/grosminet/grosminet.yaml
index 19a86edb5bd..f74a2cce177 100644
--- a/input/grid5000/sites/nancy/clusters/grosminet/grosminet.yaml
+++ b/input/grid5000/sites/nancy/clusters/grosminet/grosminet.yaml
@@ -1,7 +1,7 @@
 model: Proliant DL560 Gen10
 created_at: 2023-12-05
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: uefi 
 exotic: false
 queues:
diff --git a/input/grid5000/sites/nancy/clusters/grostiti/grostiti.yaml b/input/grid5000/sites/nancy/clusters/grostiti/grostiti.yaml
index 56a82101367..97c7b3ffd4a 100644
--- a/input/grid5000/sites/nancy/clusters/grostiti/grostiti.yaml
+++ b/input/grid5000/sites/nancy/clusters/grostiti/grostiti.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R930
 created_at: 2024-01-10
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/nancy/clusters/grouille/grouille.yaml b/input/grid5000/sites/nancy/clusters/grouille/grouille.yaml
index ab6208fae89..917e4577613 100644
--- a/input/grid5000/sites/nancy/clusters/grouille/grouille.yaml
+++ b/input/grid5000/sites/nancy/clusters/grouille/grouille.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R7525
 created_at: 2021-01-13
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 exotic: true
 boot_type: bios
 queues:
diff --git a/input/grid5000/sites/nancy/clusters/grue/grue.yaml b/input/grid5000/sites/nancy/clusters/grue/grue.yaml
index 7b1fc334854..e4e979e06ac 100644
--- a/input/grid5000/sites/nancy/clusters/grue/grue.yaml
+++ b/input/grid5000/sites/nancy/clusters/grue/grue.yaml
@@ -2,7 +2,7 @@
 model: Dell PowerEdge R7425
 created_at: 2019-11-25
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 queues:
   - production
diff --git a/input/grid5000/sites/nancy/clusters/gruss/gruss.yaml b/input/grid5000/sites/nancy/clusters/gruss/gruss.yaml
index 360a1e28e23..bf0676d0146 100644
--- a/input/grid5000/sites/nancy/clusters/gruss/gruss.yaml
+++ b/input/grid5000/sites/nancy/clusters/gruss/gruss.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R7525
 created_at: 2021-08-26
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 exotic: false
 boot_type: bios
 queues:
diff --git a/input/grid5000/sites/nancy/clusters/grvingt/grvingt.yaml b/input/grid5000/sites/nancy/clusters/grvingt/grvingt.yaml
index 96a4e99610c..909deca2552 100644
--- a/input/grid5000/sites/nancy/clusters/grvingt/grvingt.yaml
+++ b/input/grid5000/sites/nancy/clusters/grvingt/grvingt.yaml
@@ -2,7 +2,7 @@
 model: Dell PowerEdge C6420
 created_at: 2018-04-11
 kavlan: true
-energy_keep_alive: 5
+keep_alive_nodes_count: 5
 boot_type: bios
 priority: '201701'
 queues:
diff --git a/input/grid5000/sites/nantes/clusters/econome/econome.yaml b/input/grid5000/sites/nantes/clusters/econome/econome.yaml
index 221fddabd68..0b4785c99dd 100644
--- a/input/grid5000/sites/nantes/clusters/econome/econome.yaml
+++ b/input/grid5000/sites/nantes/clusters/econome/econome.yaml
@@ -2,7 +2,7 @@
 model: Dell PowerEdge C6220
 created_at: 2014-04-16
 kavlan: true
-energy_keep_alive: 5
+keep_alive_nodes_count: 5
 redfish: false
 boot_type: bios
 queues:
diff --git a/input/grid5000/sites/nantes/clusters/ecotype/ecotype.yaml b/input/grid5000/sites/nantes/clusters/ecotype/ecotype.yaml
index e91871ece6e..8bd888632d0 100644
--- a/input/grid5000/sites/nantes/clusters/ecotype/ecotype.yaml
+++ b/input/grid5000/sites/nantes/clusters/ecotype/ecotype.yaml
@@ -3,7 +3,7 @@
 model: Dell PowerEdge R630
 created_at: 2017-10-16 17:40:55.149032
 kavlan: true
-energy_keep_alive: 12
+keep_alive_nodes_count: 12
 boot_type: bios
 queues:
   - admin
diff --git a/input/grid5000/sites/rennes/clusters/abacus1/abacus1.yaml b/input/grid5000/sites/rennes/clusters/abacus1/abacus1.yaml
index 82e88e51014..2cb30c07dbc 100644
--- a/input/grid5000/sites/rennes/clusters/abacus1/abacus1.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus1/abacus1.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R730
 created_at: 2023-10-24
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus10/abacus10.yaml b/input/grid5000/sites/rennes/clusters/abacus10/abacus10.yaml
index fe2e6cf7764..61f42eff71c 100644
--- a/input/grid5000/sites/rennes/clusters/abacus10/abacus10.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus10/abacus10.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge T640
 created_at: 2023-10-30
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus11/abacus11.yaml b/input/grid5000/sites/rennes/clusters/abacus11/abacus11.yaml
index 4d4ae130af6..79fc9a024dd 100644
--- a/input/grid5000/sites/rennes/clusters/abacus11/abacus11.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus11/abacus11.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge T640
 created_at: 2023-10-24
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus12/abacus12.yaml b/input/grid5000/sites/rennes/clusters/abacus12/abacus12.yaml
index 1b5e393cc92..9fdb5787194 100644
--- a/input/grid5000/sites/rennes/clusters/abacus12/abacus12.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus12/abacus12.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R740
 created_at: 2023-11-17
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus14/abacus14.yaml b/input/grid5000/sites/rennes/clusters/abacus14/abacus14.yaml
index 89567bdaeb8..e65e6925eb1 100644
--- a/input/grid5000/sites/rennes/clusters/abacus14/abacus14.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus14/abacus14.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge C4140
 created_at: 2023-11-08
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus16/abacus16.yaml b/input/grid5000/sites/rennes/clusters/abacus16/abacus16.yaml
index 3c33050b1a9..18a7ff1acbe 100644
--- a/input/grid5000/sites/rennes/clusters/abacus16/abacus16.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus16/abacus16.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge C4140
 created_at: 2023-10-16
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus17/abacus17.yaml b/input/grid5000/sites/rennes/clusters/abacus17/abacus17.yaml
index 6fb4308411b..5299a108df5 100644
--- a/input/grid5000/sites/rennes/clusters/abacus17/abacus17.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus17/abacus17.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R7525
 created_at: 2023-11-17
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus18/abacus18.yaml b/input/grid5000/sites/rennes/clusters/abacus18/abacus18.yaml
index 01f8f9bed94..094e64f4174 100644
--- a/input/grid5000/sites/rennes/clusters/abacus18/abacus18.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus18/abacus18.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R7525
 created_at: 2023-10-11
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus19/abacus19.yaml b/input/grid5000/sites/rennes/clusters/abacus19/abacus19.yaml
index 91bd274fd1e..8d564a46941 100644
--- a/input/grid5000/sites/rennes/clusters/abacus19/abacus19.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus19/abacus19.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R740
 created_at: 2023-11-17
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus2/abacus2.yaml b/input/grid5000/sites/rennes/clusters/abacus2/abacus2.yaml
index 1674263705b..fbfeb0b4233 100644
--- a/input/grid5000/sites/rennes/clusters/abacus2/abacus2.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus2/abacus2.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R730
 created_at: 2023-11-10
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus20/abacus20.yaml b/input/grid5000/sites/rennes/clusters/abacus20/abacus20.yaml
index ff97d7221ba..473aeb28125 100644
--- a/input/grid5000/sites/rennes/clusters/abacus20/abacus20.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus20/abacus20.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge T640
 created_at: 2023-10-11
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus21/abacus21.yaml b/input/grid5000/sites/rennes/clusters/abacus21/abacus21.yaml
index d3d18c4e46a..4c96974c858 100644
--- a/input/grid5000/sites/rennes/clusters/abacus21/abacus21.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus21/abacus21.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R7525
 created_at: 2023-10-24
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus22/abacus22.yaml b/input/grid5000/sites/rennes/clusters/abacus22/abacus22.yaml
index a9b95d18611..dd45ad50aff 100644
--- a/input/grid5000/sites/rennes/clusters/abacus22/abacus22.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus22/abacus22.yaml
@@ -1,7 +1,7 @@
 model: ProLiant DL385 Gen10 Plus v2
 created_at: 2023-12-04
 kavlan: false
-energy_keep_alive: 2
+keep_alive_nodes_count: 2
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus25/abacus25.yaml b/input/grid5000/sites/rennes/clusters/abacus25/abacus25.yaml
index ec9b22ff54a..2f3412edf44 100644
--- a/input/grid5000/sites/rennes/clusters/abacus25/abacus25.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus25/abacus25.yaml
@@ -1,7 +1,7 @@
 model: HPE ProLiant DL385 Gen10+ v2
 created_at: 2023-06-05
 kavlan: false
-energy_keep_alive: 2
+keep_alive_nodes_count: 2
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus26/abacus26.yaml b/input/grid5000/sites/rennes/clusters/abacus26/abacus26.yaml
index 0e325795ce8..13a6610d8b0 100644
--- a/input/grid5000/sites/rennes/clusters/abacus26/abacus26.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus26/abacus26.yaml
@@ -2,7 +2,7 @@
 model: HPE ProLiant DL380 Gen11
 created_at: 2025-01-17
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus27/abacus27.yaml b/input/grid5000/sites/rennes/clusters/abacus27/abacus27.yaml
index 0cfcd40c554..3eb77ddc208 100644
--- a/input/grid5000/sites/rennes/clusters/abacus27/abacus27.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus27/abacus27.yaml
@@ -2,7 +2,7 @@
 model: ProLiant DL385 Gen11
 created_at: 2025-01-15
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus28/abacus28.yaml b/input/grid5000/sites/rennes/clusters/abacus28/abacus28.yaml
index c8bb72b201c..eb8f2c975e2 100644
--- a/input/grid5000/sites/rennes/clusters/abacus28/abacus28.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus28/abacus28.yaml
@@ -2,7 +2,7 @@
 model: Dell PowerEdge C4140
 created_at: 2025-02-05
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus3/abacus3.yaml b/input/grid5000/sites/rennes/clusters/abacus3/abacus3.yaml
index bccb68f8b85..02a9c8f7fa0 100644
--- a/input/grid5000/sites/rennes/clusters/abacus3/abacus3.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus3/abacus3.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge T640
 created_at: 2023-10-13
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus4/abacus4.yaml b/input/grid5000/sites/rennes/clusters/abacus4/abacus4.yaml
index a55bc24a4d3..284e779683c 100644
--- a/input/grid5000/sites/rennes/clusters/abacus4/abacus4.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus4/abacus4.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R740
 created_at: 2023-10-09
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus5/abacus5.yaml b/input/grid5000/sites/rennes/clusters/abacus5/abacus5.yaml
index f3b6d609a76..ad0abc764a3 100644
--- a/input/grid5000/sites/rennes/clusters/abacus5/abacus5.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus5/abacus5.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R740
 created_at: 2023-10-24
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus8/abacus8.yaml b/input/grid5000/sites/rennes/clusters/abacus8/abacus8.yaml
index bf8ab48f8cc..4b25791bb85 100644
--- a/input/grid5000/sites/rennes/clusters/abacus8/abacus8.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus8/abacus8.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R7920
 created_at: 2023-11-17
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/abacus9/abacus9.yaml b/input/grid5000/sites/rennes/clusters/abacus9/abacus9.yaml
index c2d43965492..67a909619db 100644
--- a/input/grid5000/sites/rennes/clusters/abacus9/abacus9.yaml
+++ b/input/grid5000/sites/rennes/clusters/abacus9/abacus9.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge C4140
 created_at: 2023-11-06
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/paradoxe/paradoxe.yaml b/input/grid5000/sites/rennes/clusters/paradoxe/paradoxe.yaml
index 3a362141455..2565f48c496 100644
--- a/input/grid5000/sites/rennes/clusters/paradoxe/paradoxe.yaml
+++ b/input/grid5000/sites/rennes/clusters/paradoxe/paradoxe.yaml
@@ -1,7 +1,7 @@
 model: HPE Proliant DL360 Gen10+
 created_at: 2024-01-02
 kavlan: true
-energy_keep_alive: 2
+keep_alive_nodes_count: 2
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/parasilo/parasilo.yaml b/input/grid5000/sites/rennes/clusters/parasilo/parasilo.yaml
index e0310a0e0a6..6fa540a1299 100644
--- a/input/grid5000/sites/rennes/clusters/parasilo/parasilo.yaml
+++ b/input/grid5000/sites/rennes/clusters/parasilo/parasilo.yaml
@@ -2,7 +2,7 @@
 model: Dell PowerEdge R630
 created_at: 2015-01-13
 kavlan: true
-energy_keep_alive: 5
+keep_alive_nodes_count: 5
 boot_type: bios
 queues:
   - default
diff --git a/input/grid5000/sites/rennes/clusters/roazhon1/roazhon1.yaml b/input/grid5000/sites/rennes/clusters/roazhon1/roazhon1.yaml
index b8a387da7f7..23d28c824a1 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon1/roazhon1.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon1/roazhon1.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R640
 created_at: 2023-10-24
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon10/roazhon10.yaml b/input/grid5000/sites/rennes/clusters/roazhon10/roazhon10.yaml
index 7fb698f7f87..f0c676d8af3 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon10/roazhon10.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon10/roazhon10.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge MX740c
 created_at: 2023-10-24
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon11/roazhon11.yaml b/input/grid5000/sites/rennes/clusters/roazhon11/roazhon11.yaml
index 2aa8ab70e80..553bd26a484 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon11/roazhon11.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon11/roazhon11.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge C6220
 created_at: 2023-10-24
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 redfish: false
 boot_type: bios
 exotic: false
diff --git a/input/grid5000/sites/rennes/clusters/roazhon12/roazhon12.yaml b/input/grid5000/sites/rennes/clusters/roazhon12/roazhon12.yaml
index 52469110609..4c25737f979 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon12/roazhon12.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon12/roazhon12.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge C6220
 created_at: 2023-10-24
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 redfish: false
 boot_type: bios
 exotic: false
diff --git a/input/grid5000/sites/rennes/clusters/roazhon13/roazhon13.yaml b/input/grid5000/sites/rennes/clusters/roazhon13/roazhon13.yaml
index 185995950e1..8fbf88e6577 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon13/roazhon13.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon13/roazhon13.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge C6420
 created_at: 2023-10-06
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon2/roazhon2.yaml b/input/grid5000/sites/rennes/clusters/roazhon2/roazhon2.yaml
index acfb49d70fc..7bb71670ee7 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon2/roazhon2.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon2/roazhon2.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R640
 created_at: 2023-09-06
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon3/roazhon3.yaml b/input/grid5000/sites/rennes/clusters/roazhon3/roazhon3.yaml
index 65c12bd91a5..8b144da955f 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon3/roazhon3.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon3/roazhon3.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R640
 created_at: 2023-10-24
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon4/roazhon4.yaml b/input/grid5000/sites/rennes/clusters/roazhon4/roazhon4.yaml
index c8d0858f2b1..4b1be1110dc 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon4/roazhon4.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon4/roazhon4.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge R7525
 created_at: 2023-09-06
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon5/roazhon5.yaml b/input/grid5000/sites/rennes/clusters/roazhon5/roazhon5.yaml
index dbdf5c14aad..da0327e6f2f 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon5/roazhon5.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon5/roazhon5.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge M630
 created_at: 2023-10-13
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon6/roazhon6.yaml b/input/grid5000/sites/rennes/clusters/roazhon6/roazhon6.yaml
index daf93f4eb99..db65f5be182 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon6/roazhon6.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon6/roazhon6.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge M630
 created_at: 2023-10-24
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon7/roazhon7.yaml b/input/grid5000/sites/rennes/clusters/roazhon7/roazhon7.yaml
index b55e8d4b6f5..6e0fb1c8aff 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon7/roazhon7.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon7/roazhon7.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge C6320
 created_at: 2023-12-20
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon8/roazhon8.yaml b/input/grid5000/sites/rennes/clusters/roazhon8/roazhon8.yaml
index 60e8ce21e9f..5681a4c1e04 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon8/roazhon8.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon8/roazhon8.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge C6320
 created_at: 2023-10-24
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/rennes/clusters/roazhon9/roazhon9.yaml b/input/grid5000/sites/rennes/clusters/roazhon9/roazhon9.yaml
index c01b2bded74..da3205d7c83 100644
--- a/input/grid5000/sites/rennes/clusters/roazhon9/roazhon9.yaml
+++ b/input/grid5000/sites/rennes/clusters/roazhon9/roazhon9.yaml
@@ -1,7 +1,7 @@
 model: Dell PowerEdge C6420
 created_at: 2023-10-09
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/sophia/clusters/esterel41/esterel41.yaml b/input/grid5000/sites/sophia/clusters/esterel41/esterel41.yaml
index 42f7eb9804f..95cdb0bbaba 100644
--- a/input/grid5000/sites/sophia/clusters/esterel41/esterel41.yaml
+++ b/input/grid5000/sites/sophia/clusters/esterel41/esterel41.yaml
@@ -2,7 +2,7 @@
 model: DL380 Gen11
 created_at: 2025-01-25
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: uefi 
 exotic: false 
 queues:
diff --git a/input/grid5000/sites/sophia/clusters/mercantour2/mercantour2.yaml b/input/grid5000/sites/sophia/clusters/mercantour2/mercantour2.yaml
index f2929cb51d3..3256cc48431 100644
--- a/input/grid5000/sites/sophia/clusters/mercantour2/mercantour2.yaml
+++ b/input/grid5000/sites/sophia/clusters/mercantour2/mercantour2.yaml
@@ -2,7 +2,7 @@
 model: Dell PowerEdge C6220 II
 created_at: 2025-01-16
 kavlan: true
-energy_keep_alive: 2
+keep_alive_nodes_count: 2
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/sophia/clusters/mercantour5/mercantour5.yaml b/input/grid5000/sites/sophia/clusters/mercantour5/mercantour5.yaml
index 89625a36839..8a58072adff 100644
--- a/input/grid5000/sites/sophia/clusters/mercantour5/mercantour5.yaml
+++ b/input/grid5000/sites/sophia/clusters/mercantour5/mercantour5.yaml
@@ -2,7 +2,7 @@
 model: Dell PowerEdge C6420
 created_at: 2025-02-24
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: bios
 exotic: false
 queues:
diff --git a/input/grid5000/sites/sophia/clusters/musa/musa.yaml b/input/grid5000/sites/sophia/clusters/musa/musa.yaml
index 1d3eca1fef7..38e1a55cec0 100644
--- a/input/grid5000/sites/sophia/clusters/musa/musa.yaml
+++ b/input/grid5000/sites/sophia/clusters/musa/musa.yaml
@@ -2,7 +2,7 @@
 model: ProLiant DL385 Gen11
 created_at: 2025-01-16
 kavlan: true
-energy_keep_alive: 3
+keep_alive_nodes_count: 3
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/sophia/clusters/uvb/uvb.yaml b/input/grid5000/sites/sophia/clusters/uvb/uvb.yaml
index 436c4a927a4..952997796e0 100644
--- a/input/grid5000/sites/sophia/clusters/uvb/uvb.yaml
+++ b/input/grid5000/sites/sophia/clusters/uvb/uvb.yaml
@@ -2,7 +2,7 @@
 model: Dell PowerEdge C6100
 created_at: 2011-01-04
 kavlan: true
-energy_keep_alive: 3
+keep_alive_nodes_count: 3
 redfish: false
 boot_type: bios
 queues:
diff --git a/input/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.yaml b/input/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.yaml
index 620a2b3a7a7..6b351ad3bb4 100644
--- a/input/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.yaml
+++ b/input/grid5000/sites/strasbourg/clusters/fleckenstein/fleckenstein.yaml
@@ -1,7 +1,7 @@
 model: HPE Proliant DL360 Gen10+
 created_at: 2023-08-01
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/input/grid5000/sites/toulouse/clusters/estats/estats.yaml b/input/grid5000/sites/toulouse/clusters/estats/estats.yaml
index c8cf8d6f6f8..ecf74c57c7a 100644
--- a/input/grid5000/sites/toulouse/clusters/estats/estats.yaml
+++ b/input/grid5000/sites/toulouse/clusters/estats/estats.yaml
@@ -1,7 +1,7 @@
 model: Connecttech/Nvidia Jetson AGX Xavier
 created_at: 2023-06-13
 kavlan: false
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: uefi
 exotic: true
 queues:
diff --git a/input/grid5000/sites/toulouse/clusters/montcalm/montcalm.yaml b/input/grid5000/sites/toulouse/clusters/montcalm/montcalm.yaml
index 604b57ac6ce..619f3912547 100644
--- a/input/grid5000/sites/toulouse/clusters/montcalm/montcalm.yaml
+++ b/input/grid5000/sites/toulouse/clusters/montcalm/montcalm.yaml
@@ -1,7 +1,7 @@
 model: HPE Proliant DL360 Gen10+
 created_at: 2022-12-01
 kavlan: true
-energy_keep_alive: 1
+keep_alive_nodes_count: 1
 boot_type: uefi
 exotic: false
 queues:
diff --git a/lib/refrepo/gen/puppet/clusters.rb b/lib/refrepo/gen/puppet/clusters.rb
index aceb6d0b726..2452f0daedf 100644
--- a/lib/refrepo/gen/puppet/clusters.rb
+++ b/lib/refrepo/gen/puppet/clusters.rb
@@ -26,7 +26,7 @@ def generate_puppet_clusters(options)
             queue = f_node['supported_job_types']['queues'].select{|q| q != 'admin'}[0]
             disk_reservation = f_node['storage_devices'].filter{|d| d.key?('reservation')}.length > 0
             gpu = f_node.key?('gpu_devices')
-            energy_keep_alive = c_hash['energy_keep_alive']
+            keep_alive_nodes_count = c_hash['keep_alive_nodes_count']
             if ! f_node.key?('chassis')
                 puts "no chassis field for #{f_node['uid']}, has g5k-checks data been imported ?" 
                 warrantied = false
@@ -36,7 +36,7 @@ def generate_puppet_clusters(options)
             c_data = {"queue" => queue, 
                 "disk_reservation" => disk_reservation,
                 "gpu" => gpu,
-                "energy_keep_alive" => energy_keep_alive,
+                "keep_alive_nodes_count" => keep_alive_nodes_count,
                 "warrantied" => warrantied}
             if hiera[s_uid][c_uid] != c_data
                 diff = hiera[s_uid][c_uid].dup.delete_if { |k, v| c_data[k] == v }.merge!(c_data.dup.delete_if { |k, _v| hiera[s_uid][c_uid].has_key?(k) })
diff --git a/lib/refrepo/gen/reference-api.rb b/lib/refrepo/gen/reference-api.rb
index ad23be0c520..ec0853f4259 100644
--- a/lib/refrepo/gen/reference-api.rb
+++ b/lib/refrepo/gen/reference-api.rb
@@ -181,9 +181,9 @@ def generate_reference_api
       end
 
       #
-      # if not defined, create the energy_keep_alive value to 0, that means that no nodes will be maintain up
+      # if not defined, create the energy_keep_alive value to 0, that means that no nodes will be kept up
       #
-      cluster['energy_keep_alive'] = 0 if cluster['energy_keep_alive'].nil?
+      cluster['keep_alive_nodes_count'] = 0 if cluster['keep_alive_nodes_count'].nil?
 
       #
       # Write node info
diff --git a/lib/refrepo/valid/input/schemas/schema-cluster.yaml b/lib/refrepo/valid/input/schemas/schema-cluster.yaml
index 2e2aae1ffb3..ad39e2ec2b3 100644
--- a/lib/refrepo/valid/input/schemas/schema-cluster.yaml
+++ b/lib/refrepo/valid/input/schemas/schema-cluster.yaml
@@ -5,7 +5,7 @@ created_at: required  # string or date ?
 exotic: boolean
 boot_type: string
 kavlan: boolean
-energy_keep_alive: optional_integer
+keep_alive_nodes_count: optional_integer
 redfish: boolean
 queues: array
 priority: optional_string
-- 
GitLab