1. A method for performing automatic placement of clients in a distributed computer system, the method comprising: selecting an affinity constraint associated with a first set of clients; determining whether any of the clients associated with the affinity constraint is associated with any anti-affinity constraint; removing a cluster of host computers that cannot satisfy the any anti-affinity constraint from a list of compatible clusters of host computers in the distributed computer system, the compatible clusters being clusters that are compatible with the clients associated with the affinity constraint; selecting an affinity cluster from the list of compatible clusters to place the clients associated with the affinity constraint; selecting an anti-affinity constraint associated with a second set of clients; and selecting at least one cluster in the distributed computer system to place the clients associated with the anti-affinity constraint.