In this topic the shards and config server were single member replicasets.
The timing of the shard snapshots could have a difference of one hour, inherently this will cause an inconsistent backup of the cluster, and if the balancer is not disabled a further difference between the config server and the shards.

A restore of those backups would have each component at a different point on the timeline.

For a sharded cluster a fsynclock is still required to prevent writes to the cluster.

With a self-managed deployment Cloud-Manager and Ops-Manager provide backups without needing to stop the balance or writes. This comes at a cost however.