Slow node recovery in ElasticSearch 2.3.3

We have a small 3 node cluster. Two indices, .scripts and our own index.

size: 65.2Mi (65.2Mi)
docs: 18,447 (18,447)

We have 679 aliases on the single index. In total, we have 15 shards in one index and 3 shards in the other. The boxes are using 5gb heap and have total 8 gb per box (host: CentOS 6.6, VMs out in AWS)

The recovery time starting today has dropped dramatically. Yesterday its fine, and in smaller environments its fine as well. So I was wondering, is this just too much data? The rebalancing of the shards took about 35 minutes.