if using 1.2.*, Bloom filters are in native memory so not pressuring your heap, how many data do you have per node ? If this value is big, you have samples index in the heap consuming a lot of memory, for sure, and growing as your data per node grow.
Solutions : increase the heap if < 8GB and / or reduce sampling index_interval: 128 to a bigger value (256 - 512) and /or wait for 2.0.* which, of the top of my head, should move the sampling in native memory allowing heap size to be independent from the data size per node.
This should alleviate things. Yet these are only guesses since I know almost nothing about your cluster...
Hope this help somehow.