github.com/ferranbt/nomad@v0.9.3-0.20190607002617-85c449b7667c/website/source/guides/operating-a-job/advanced-scheduling/advanced-scheduling.html.md (about) 1 --- 2 layout: "guides" 3 page_title: "Advanced Scheduling Features" 4 sidebar_current: "guides-advanced-scheduling" 5 description: |- 6 Introduce advanced scheduling features including affinity and spread. 7 --- 8 9 # Advanced Scheduling with Nomad 10 11 The Nomad [scheduler][scheduling] 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: 12 13 - Expressing preference for a certain class of nodes for a specific application via the [affinity stanza][affinity-stanza]. 14 15 - Spreading allocations across a datacenter, rack or any other node attribute or metadata with the [spread stanza][spread-stanza]. 16 17 Please refer to the guides below for using affinity and spread in Nomad 0.9. 18 19 - [Affinity][affinity-guide] 20 - [Spread][spread-guide] 21 22 [affinity-guide]: /guides/operating-a-job/advanced-scheduling/affinity.html 23 [affinity-stanza]: /docs/job-specification/affinity.html 24 [spread-guide]: /guides/operating-a-job/advanced-scheduling/spread.html 25 [spread-stanza]: /docs/job-specification/spread.html 26 [scheduling]: /docs/internals/scheduling/scheduling.html 27