1. A computer-implemented system for configuring at least a first availability manager and a second availability manager, the system comprising: a user interface, wherein the user interface receives from a user an availability management goal associated with at least: (a) the first availability manager, and (b) the second availability manager; a processing element in operative communication with the user interface, wherein the processing element determines, based at least in part upon the availability management goal: (a) at least one setting associated with the first availability manager, and (b) at least one setting associated with the second availability manager; and a control element in operative communication with: (a) the processing element, (b) the first availability manager, and (c) the second availability manager; wherein the control element receives from the processing element the at least one setting associated with the first availability manager and provides to the first availability manager the associated setting; wherein the control element receives from the processing element the at least one setting associated with the second availability manager and provides to the second availability manager the associated setting; wherein the first availability manager comprises a white box availability manager and the second availability manager comprises a black box availability manager; wherein the white box availability manager is configured to detect and respond to at least one failure associated with at least one application level resource; wherein the black box availability manager is configured to detect and respond to at least one failure associated with at least one virtual machine; wherein the white box availability manager is configured to perform at least one action that the black box availability manager is not configured to perform; wherein the white box availability manager and the black box availability manager are in a hierarchical composition such that the control element causes: (a) upon failure of a first virtual machine operating on a first physical server: (i) the white box availability manager to recover each affected application level resource on a second virtual machine that is distinct from the first virtual machine that has failed; (ii) the black box availability manager to recover the first virtual machine on the first physical server; and (iii) the white box availability manager to restart, when the first virtual machine recovers, the affected application level resources to maintain at least one anti-affinity constraint; (b) upon failure of the first physical server that had been running the first virtual machine: (i) the white box availability manager to recover each affected application level resource on a second virtual machine that is distinct from the first virtual machine that had been running on the first physical server; (ii) the black box availability manager to recover the first virtual machine on a second physical server that is distinct from the first physical server; and (iii) the white box availability manager to restart, when the first virtual machine recovers on the second physical server, the affected application level resources to maintain at least one anti-affinity constraint; wherein the white box availability manager and the black box availability manager are concurrently active; and wherein the white box availability manager and the black box availability manager are implemented at least in part as hardware.