The Nomad scheduler uses a bin-packing algorithm to optimize the resource utilization and density of applications in your Nomad cluster. Nomad 0.9 adds new features to allow operators more fine-grained control over allocation placement. This enables use cases similar to the following:
Expressing preference for a certain class of nodes for a specific application via the affinity stanza.
Spreading allocations across a datacenter, rack or any other node attribute or metadata with the spread stanza.
Please refer to the tutorials below for using affinity and spread in Nomad 0.9.