1. A computer-implemented method for resource availability management of a distributed system, comprising: under control of one or more computer systems configured with executable instructions, storing a plurality of best practice graphs associated with operation of the one or more computer systems; receiving information describing one or more aspects of operation of a configuration of customer devices, wherein the configuration of customer devices includes at least a cluster of resource instances; generating, based at least in part on the received information, a relative usage graph for the configuration of customer devices, wherein the relative usage graph includes nodes representing each of at least a subset of the resource instances included in the graph, and at least an edge linking each node, the edge representing a relative usage between connected nodes; performing a comparison of the relative usage graph with at least a subset of the best practice graphs to select an ideal best practice graph from the best practice graphs; determining, based at least in part on the selected ideal best practice graph, one or more resource availability risks for the configuration of customer devices, wherein at least one of the one or more resource availability risks comprises a risk of unavailability of a resource instance or a risk of breakage of a link between resource instances; and providing to a device for display, the determined one or more resource availability risks.