Universal Resource Broker Architecture¶
What Are Resource Brokers?¶
Resource Brokers are a DRP abstraction that decouples machine lifecycle automation from the specifics of where and how machines are allocated. Automation (such as a Cluster workflow) makes a non-differentiated request to a Resource Broker to allocate or release machines. The broker handles the implementation details.
This enables: - Cloud-agnostic automation — the same workflow runs against AWS, Azure, or bare metal - Pool abstraction — brokers can front pools of physical machines to provide cloud-like allocation - Multi-region support — different brokers represent different clouds or regions
Broker Architecture¶
A Resource Broker receives work orders from DRP workflows requesting:
- allocate — provision a machine and register it with DRP
- release — decommission a machine and remove it from DRP
The broker implementation decides how to fulfill these requests (API call to a cloud, IPMI power-on for bare metal, VM creation, etc.).
Work Orders¶
Brokers interact with DRP via Work Orders — task objects that track the requested allocation or release operation. Work Orders have their own state machine independent of machine job state.
Relationship to Clusters¶
Resource Brokers commonly serve Cluster workflows: 1. A cluster requests machines via a work order to a broker 2. The broker allocates machines and registers them with DRP 3. The cluster manages the machines through their lifecycle 4. On teardown, the cluster releases machines back through the broker
See Universal Cluster Architecture for the cluster side.
Operational Details¶
For step-by-step instructions on using Resource Brokers, see Universal Resource Broker Operations.
For the model reference, see Resource Broker Model.