Manual Chapter : Platform Health Assessment Suite Overview

Platform Health Assessment Suite Overview

The Platform Health Assessment Suite is a collection of heuristic scripts that check the health of your F5OS platform before you start an upgrade. These scripts detect issues that could cause upgrade failures or extended outages.

The scripts run inside the Health Engine, collect platform health data, and produce structured results. Each script addresses one specific platform health concern and operates independently of the others.

F5OS chassis upgrades in production environments can fail or cause extended outages when pre-existing platform health issues go undetected before the upgrade begins. Common issues include:

  • Degraded ETCD clusters: Rebooting a controller during a rolling upgrade can drop the cluster below quorum, halting configuration and state operations.
  • Broken inter-controller networking: Communication loss between controllers breaks the upgrade handshake, causing the upgrade to hang or fail silently.
  • Missing team0 trunks: A missing bonded management interface isolates the controller, which may not recover after reboot.
  • Desynchronized LACP members: Desynchronized members on management link aggregation groups (LAGs) break failover when a controller reboots, resulting in complete management-plane loss.
  • Expired certificates: Expired system certificates mid-upgrade break peer communications and authentication, potentially leaving the system unrecoverable.
  • Memory-leaking services: A service that crashes due to an out-of-memory (OOM) condition during the reboot cycle can leave network interfaces unconfigured, isolating the controller.

The health assessment suite detects these conditions before you start the upgrade so you can resolve them first.

The Health Engine is the execution framework for all health check scripts. It:

  • Dispatches scripts and runs them in parallel
  • Enforces per-script timeouts
  • Aggregates results from all scripts
  • Surfaces action recommendations

The Engine does not perform corrective actions itself. It surfaces recommendations that the platform alarm and event subsystem acts on.

Each script is a self-contained check that contains domain-specific assessment logic. Scripts:

  • Are read-only — they do not modify system configuration or operational state.
  • Produce structured JSON output following a common contract. For details, see Heuristic script inventory and JSON contract reference.
  • Emit action recommendations that the Engine surfaces for the platform to act on.
  • Use a fail-safe approach — if a check cannot complete, the script returns an error with a critical-severity result so that “cannot verify” is treated as unsafe.

Scripts are organized by platform role using a prefix-based naming model. For the complete naming convention and script inventory, see Heuristic script inventory and JSON contract reference.

  • Scripts run on the active controller only.
  • Scripts that need standby controller data query it remotely from the active controller. They do not run on the standby controller.
  • For per-script and suite-level performance limits, see Performance requirements.

The suite includes checks for the following areas:

Health Check Description
ETCD cluster quorum Verifies ETCD member health and quorum status
Inter-controller network Checks high availability (HA) heartbeat, Configuration Database (CDB) replication, and controller-to-controller reachability
Controller-to-blade network Verifies backplane connectivity and NFS mount accessibility for all blades
team0 trunk status Confirms team0 bonded management interface existence and link state
OKD/K3s cluster health Checks node status, system-namespace pods, and scheduler health
Certificate and token expiry Identifies expired or soon-to-expire system certificates
LACP member synchronization Verifies LACP member port states for LAG interfaces
Crypto and key integrity Runs Linux Kernel Runtime Guard (LKRG) health checks and verifies image signatures
NetworkManager and service memory Checks NetworkManager health and detects memory leaks in platform services
ISO image health Verifies ISO import status on both controllers
Upgrade and rollback status Reports whether the last upgrade or rollback succeeded or failed
Service health fault detection Detects services that have stopped running and raises alerts

For detailed information about each check, see Pre-upgrade health checks reference.

  • Scripts log execution start, completion, and results to the Health Engine’s internal log in structured JSON format. Scripts do not write to syslog directly.
  • Scripts do not generate Simple Network Management Protocol (SNMP) traps or alerts directly.
  • Script results are persisted in the Health Engine’s cache directory and included in QKView.

For details on log entry format, see Run pre-upgrade health checks.

  • Scripts run within the Health Engine’s process context and inherit the Engine’s permissions.
  • Scripts are read-only and must not modify system configuration or change operational state.
  • Script output is only exposed to authenticated administrators through the pre-check report.