modified recipy, now it can vary both node size and shards per node