1. A computer-implemented method of recovering from a failure in a data environment, comprising: under control of one or more computer systems configured with executable instructions, periodically sending a status request from at least one event processor in a control environment to each of a plurality of host managers in a data environment, each host manager responsible for monitoring a status of at least one data instance in the data environment; analyzing, in the control environment, a response received from each host manager to determine whether a potential problem exists with one of the host managers or data instances in the data environment; and when a potential problem is determined to exist, determining an appropriate recovery workflow to be executed for the potential problem and causing at least one task of the determined recovery workflow to be executed in the data environment.