Yes, Be sure about MongoDB version because related to
sh.shardCollection there is bug in some version of MongoDB, as per MongoDB jira blog there is Bug mongos blocks db during shardCollection While shardCollection is running, accesses to the same database (via the same mongos) will block until shardCollection finishes, at which point they run. However, accessing the database is possible via other mongos. On the affected mongos, accesses to other databases are fine.
The affects Version/s : 2.4.14, 2.6.12, 2.8.0-rc4, 3.0.14
As Google group blog documentation here Choosing the correct shard key is extremely important for a sharded cluster deployment. If the shard key you are using involves a date element, the key will be monotonically increasing. This may result in a “hot shard”, i.e. there will be a shard that is more active compared to others. This could limit your insert rate, and the cluster will constantly need to split chunks and rebalance, since all inserts could go into a single chunk.
For further your ref here, here