Skip to navigation

Power Control

View as Markdown

See Operations Overview for the conventions (in-band failures, registered vs. ephemeral targets) referenced below.

All power RPCs are synchronous. Registered-node power mutations hold an exclusive per-rack power guard and are refused while another one is in progress on the same rack.

RPCSync/AsyncBehaviorKey inputsKey outputs
SetPowerStateSyncApply one power operation to a single registered node.rack_id, node_id, operationstatus
BatchSetPowerStateSyncApply one operation to a caller-supplied ephemeral node set, independently per node.operation, nodes (with per-node endpoints + creds)NodeBatchResponse (node_results[], stats)
GetPowerStateSyncRead one registered node’s power state (read path, no guard).rack_id, node_idstatus, pstate
BatchGetPowerStateSyncRead power state for a caller-supplied ephemeral node set.nodesNodeBatchResponse + node_power_states[]

Invalid operation enums are rejected with INVALID_ARGUMENT. A batch’s overall status is Success only when zero nodes failed. Switch nodes require a BMC endpoint (Redfish) for power operations.