AFAIK, there's no way to deploy a topology into certain type of machines.
Let's suppose there are 10 supervisors in a Storm cluster, 5 of them are tagged
"rack1", others "rack2"
This rack awarness can benefit users in two cases.
1) when "rack1" nodes are binded to certain domain, and inside topology, there
is a http spout which reads incoming data to that domain. It will be valuable
to make it possible to deploy topology into certain supervisors with a specific
tag.
2) as name suggests, if "rack1" exists in a same rack and when rack fails,
entire supervisors will die and topology will halt for a moment. It'll also be
advatangeous if there is a way to guarantee that workers running that topology
will not be in one rack.
and there might be another use cases as well.
Maybe I did not fully understand Storm features regarding this, please let me
know if I misunderstood.