Skip to content

Change Management

Balaji Shankaran edited this page Oct 4, 2026 · 2 revisions

Change management

Rollback

POST /config-jobs/{jobId}/rollback undoes a job with a new write job built from its snapshots, in reverse order. If the values have changed since, the answer is 409 CONFIG_CHANGED_SINCE unless force; dryRun returns the plan. 422 ROLLBACK_NOT_POSSIBLE says why a job can't be undone (for example purged snapshots). GET /managed-entities/{ref}/config-history/diff compares two snapshots; POST /config-history/purge applies retention (RAN_NF_OAM_CM_SNAPSHOT_RETENTION_DAYS, 0 = keep for ever).

Staged rollout

POST /config-jobs takes waveSize, wavePauseSeconds, gateMaxNewAlarms and onGateFailure (halt or revert). After each wave a health gate checks rejected sub-changes and new critical/major alarms. A failed gate halts the job or reverts the applied waves. Drive a halted job with /continue, /halt, /abort. Since 0.3.0 the ran-nf-oam-worker service advances jobs whose pause has elapsed by itself (POST /config-jobs/advance-due is still there). A job can carry a kpiGuard (kpi, baselineMinutes, observationMinutes, maxRegressionPercent, direction, revert) that checks the KPI after the job and, if asked, rolls back the regressed elements.

KPIs

  • PUT /kpi-definitions/{name}: a formula over PM counters (parsed, never evaluated by Python). GET /kpis/{name} computes it per cell, element, sector group, incident zone or overall.
  • POST /kpi-definitions/standard seeds six KPIs over this build's counters: dl_prb_utilization, rrc_connected_ues_mean, dl_ue_throughput, handover_failure_rate, handover_success_rate, handover_ping_pong_rate. An operator-edited definition is kept. These are not the TS 28.554 definitions.
  • POST /kpis/{name}/publish delivers a KPI as DME records of type RAN.KPI.<name>, so an rApp reads it like any other data. Since 0.3.0 a KPI schedule (PUT /kpi-schedules/{id}: kpi, intervalSeconds, lookbackSeconds, groupBy) publishes it on a timer; the ran-nf-oam-worker service runs the schedules.
  • POST /config-jobs/{jobId}/kpi-check compares a KPI before and after a job and can roll back the regressed elements.

Topology

GET /topology/links classifies neighbour relations (INTRA_ELEMENT, INTER_ELEMENT, AMBIGUOUS, EXTERNAL); GET /topology/relation?a=&b= says how two managed objects stand in the containment tree. Names are this build's own, not the TEIV model.

The operator GUI

Since 0.3.0 the GUI covers change management: the config-job drawer shows a staged job's waves and why it halted, an operator can continue, halt or abort it, and roll it back after a preview that names any value changed since (a forced rollback is a separate, explicit choice); the KPI guard's result is shown on the job. KPI definitions and schedules are edited under KPIs, and the Safeguards page shows each rApp instance's limits, usage and stop state, with Stop and Lift buttons.

Clone this wiki locally