= Orbit Management Framework = Consists of three major software components: * [wiki:Internal/Infrastructure/OMF#GridServices Grid Services] * [wiki:Internal/Infrastructure/OMF#NodeHandler Node Handler] * [wiki:Internal/Infrastructure/OMF#NodeAgent Node Agent] === Grid Services === All testbed services are based on [wiki:Internal/Infrastructure/OMF/GridServicesApi ORBIT Grid Services API]. The services are 1. [wiki:Internal/Infrastructure/OMF/GridServices/CMC Chassis Manager Controller (CMC) Service] 2. [wiki:Internal/Infrastructure/OMF/FrisbeeGridService Frisbee Service] 3. [wiki:Internal/Infrastructure/OMF/GridServices/Inventory Inventory Service] 4. [wiki:Internal/Infrastructure/OMF/LoginGridService Login Service] 5. [wiki:Internal/Infrastructure/OMF/OMLGridService OML Service] 6. [wiki:Internal/Infrastructure/OMF/PXEGridService PXE Service] 7. [wiki:Internal/Infrastructure/OMF/InterferenceGridService Interference Service] === Node Handler === The nodehandler is the central experiment controller. A central '''!NodeHandler''' process communicates with '''!NodeAgents''', one on each active node in the testbed. The '''!NodeHandler''' is hosted on one of the testbed's utility servers (typically called console). Applications are loaded and executed by a '''!NodeAgent''' on instructions from the '''!NodeHandler'''. These instructions will also include the initial property settings for the applications. In addition to providing interfaces for experiment execution, nodehandler also provides the following built in commands: * [wiki:Internal/Infrastructure/OMF/NodeHandler/Commands/LoadNode load - Install a given disk image on the nodes in a testbed] * [wiki:Internal/Infrastructure/OMF/NodeHandler/Commands/SaveNode save - Saving node image] * [wiki:Internal/Infrastructure/OMF/NodeHandler/Commands/TellNode tell - Switch ON/OFF the nodes in a testbed] * [wiki:Internal/Infrastructure/OMF/NodeHandler/Commands/StatNode stat - Returns the status of the nodes in a testbed] === Node Agent === Component that runs on a node and is in the receiving side of the !NodeHandler commands.