I have upgraded the RAM on my data nodes to 64GB and before restarting I decided to start using shard awareness.
I added the following to my elasticsearch.yml:
node.master: false
node.data: true
node.box_type: hot
node.zone: hot_zone
node.rack_id: OP-01-PM-3819
The thought here is because I have my ES nodes visualized on physical servers I wanted to make sure that no shards were on the same physical host.
I have 12 nodes on SSD's with 64 GB ram and 6TB HDDs with node.zone: hot box_type: hot and 3 nodes on spinning disk with 32 GB RAM and 64TB HDDs with node.zone: cold box_type: hot
The idea is that all new indexes are written to hot nodes and before aging out old indices I move them to cold nodes and close them.
When I restarted the cluster all shards have not reallocated themselves and my cluster is VERY unbalanced.
my cluster settings:
{
  "persistent": {
    "cluster": {
      "routing": {
        "rebalance": {
          "enable": "all"
        },
        "allocation": {
          "disable_allocation": "false",
          "allow_rebalance": "indices_primaries_active",
          "awareness": {
            "attributes": "rack_id,zone"
          },
          "enable": "all"
        }
      }
    },
    "threadpool": {
      "bulk": {
        "queue_size": "10000"
      }
    }
  },
  "transient": {
    "cluster": {
      "routing": {
        "rebalance": {
          "enable": "all"
        },
        "allocation": {
          "awareness": {
            "attributes": "rack_id,zone"
          },
          "allow_rebalance": "indices_primaries_active",
          "enable": "all"
        }
      }
    }
  }
}
What should I have set for the shards to reallocate appropriately.