Ironic Node Onboarding: enroll to available

Ironic Node Onboarding: enroll to available A sequence diagram generated by Archify. POST /v1/nodes (driver=redfish) provision_state = ENROLL PATCH /v1/nodes/{id} driver_info PUT states/provision target=manage RPC do_provisioning_action(manage) ENROLL -> VERIFYING (automatic) power.validate(task) Redfish / IPMI session + power query POWER ON / POWER OFF VERIFYING -> MANAGEABLE (done) Any error fires 'fail' instead and the node drops straight back to ENROLL. PUT states/provision target=inspect INSPECTING -> MANAGEABLE (done) PUT states/provision target=provide RPC do_provisioning_action(provide) MANAGEABLE -> CLEANING (automatic) prepare_cleaning: boot IPA ramdisk CLEANING -> CLEANWAIT (wait) POST /v1/heartbeat/{node} clean steps: erase_devices_metadata CLEANING -> AVAILABLE (done) AVAILABLE is the only provision state Nova will schedule an instance onto. 1 - enroll: the node row is created 2 - manage: the conductor verifies the BMC 3 - inspect: an optional API verb 4 - provide: automated cleaning, then AVAILABLE Operator / CLI · Sequence participant Operator / CLI ironic-api · Sequence participant ironic-api ironic-conductor · Sequence participant ironic-conductor node.provision_state · Sequence participant node.provision_state power interface · Sequence participant power interface BMC (Redfish/IPMI) · Sequence participant BMC (Redfish/IPMI) IPA ramdisk (node) · Sequence participant IPA ramdisk (node) Legend request return security async trace default message

Walkthrough 1/2 — enroll to manageable

  • • 1. You create the node with a driver and BMC credentials.
  • • 2. enroll = a database row Ironic has never contacted.
  • • 3. You send manage. The node moves to verifying.
  • • 4. The conductor dials the BMC for the current power state.
  • • 5. Good credentials give manageable; bad ones return to enroll.
  • • 6. Optional inspect: IPA reports CPU, RAM, disks and NICs.

Walkthrough 2/2 — manageable to available

  • • 7. Inspection writes properties and one port per NIC.
  • • 8. You send provide when the node should be schedulable.
  • • 9. provide runs automated cleaning first, always.
  • • 10. Cleaning wipes disks, may reset RAID and firmware.
  • • 11. Success gives available: the node can now be deployed.
  • • 12. Failure gives clean failed plus maintenance, on purpose.

The three verbs that matter

  • • manage — prove the BMC credentials really work.
  • • inspect — let the hardware describe itself.
  • • provide — declare it fit; cleaning is the entry price.