OpenStack Ironic — Cleaning (Automated + Manual)

OpenStack Ironic — Cleaning (Automated + Manual) A workflow diagram generated by Archify. 01 / Entry point — API verb 02 / Conductor step engine 03 / On the machine EX / Hold · abort · failure Building the step list provide (MANAGEABLE) · Entry point — API verb provide (MANAGEABLE) delete / undeploy · Entry point — API verb delete / undeploy clean + your step list · Entry point — API verb clean + your step list Collect clean steps · Conductor step engine › Building the step list Collect clean steps Sort by priority · Conductor step engine › Building the step list Sort by priority Ramdisk needed? · Conductor step engine › Building the step list Ramdisk needed? Run one step at a time · Conductor step engine Run one step at a time Done: AVAILABLE · Conductor step engine Done: AVAILABLE Boot the IPA ramdisk · On the machine Boot the IPA ramdisk CLEANWAIT (async) · On the machine CLEANWAIT (async) CLEANHOLD (paused) · Hold · abort · failure CLEANHOLD (paused) CLEANFAIL · Hold · abort · failure CLEANFAIL enabled steps unhold agent is up user step list sorted list automated clean in-band step out-of-band only no steps left step raised hold step returns CLEANWAIT after tear-down abort continue_node_clean Legend Agent logic Policy Tool action Cloud service External system

Walkthrough 1/2 — automated cleaning

  • • 1. You call provide on a MANAGEABLE node
  • • 2. The conductor asks every interface for clean steps
  • • 3. It sorts them, highest priority first
  • • 4. Out-of-band steps talk only to the BMC
  • • 5. In-band steps need the IPA ramdisk booted first

Walkthrough 2/2 — running the list

  • • 6. The conductor runs one step at a time
  • • 7. An async step parks the node in CLEANWAIT
  • • 8. List empty: the node becomes AVAILABLE
  • • 9. Manual cleaning ends in MANAGEABLE instead

What to remember

  • • A server keeps the last tenant's disks, RAID, BIOS, firmware
  • • Any failure lands in CLEANFAIL and turns maintenance on