1. A method of assigning resources of a computer cluster with resource sharing according to objectives, the method comprising: monitoring resources of each of a plurality of cloud nodes; providing information descriptive of the cloud node resources; receiving a reservation; determining whether resources are available to satisfy the reservation and any other pending reservations; if resources are available, using a rapid search to determine resource assignments for the reservation and any other pending reservations according to one or more objectives; and allocating resources according to the resource assignments.