SRM features five priority groups. VMs in the P1 group are booted in parallel first, then the P2 VMs, and so on. If more precision is needed, dependencies inside of a priority group can be defined and SRM will “listen” for VMware Tools heartbeats on the first VM before booting any dependent VMs. This helps ensure the first VM is not just powered on first, but actually up and running before dependent VMs are powered on. SRM has the ability to run scripts from the SRM server to automate DR workflow items outside of VMs, e.g. VIP change in load balancer. SRM can also execute scripts inside of VMs. A public API for SRM is available.