MongoDB (and all its components, including the mongod processes for
shards and config servers) are designed to be started and then let run
as a daemon, and *not* to be stopped (except in cases like when
performing manual maintenance). In particular, this means you will
want to avoid using any tools like monit in configurations where they
might stop a mongod or mongos process automatically.
For a small cluster, it's not usually too difficult to manually assign
3 of the nodes to run config server mongod processes along side the
regular shard server mongods. When using the --shardsvr or --configsvr
command line flags, the mongods will start on alternate ports in order
to avoid conflicts (--shardsvr starts mongod using port 27018, and --
configsvr starts mongod using port 27019; either of these can be
overridden with a --port flag, as well).
For a larger cluster, you will want to investigate a configuration
management tool like Chef or Puppet, which can install and configure
MongoDB for you (to a certain extent; some tasks like setting up
replica sets, or adding new shards are still best done manually,
especially since they are infrequent).
You can certainly use tools like monit to monitor and alert you to the
status of the mongod processes, both for shard servers and config
servers.
- Dan