1. A non-transitory computer-readable storage medium containing program instructions for managing host computers that run virtual machines into host-groups within a cluster, wherein execution of the program instructions by one or more processors causes the one or more processors to perform steps comprising: determining if a virtual machine entity needs additional resources; and if the virtual machine entity needs additional resources, mapping an available host computer to a host-group with which the virtual machine entity is associated; wherein if two or more virtual machine entities need additional resources, the available host computer is mapped to one of the two or more host-groups associated with the virtual machine entities in accordance with a predefined order of preference as provided by the available host computer, which orders host-groups for the available host computer in order to arbitrate conflicts between the two or more host-groups associated with the virtual machine entities.