Migrate Config Servers with Different Hostnames¶
Sharded clusters use a group of three config servers to store cluster meta data, and all three config servers must be available to support cluster metadata changes that include chunk splits and migrations. If one of the config servers is unavailable or inoperable, you must replace it as soon as possible.
This procedure migrates a config server in a sharded cluster to a new server that uses a different hostname. Use this procedure only if the config server will not be accessible via the same hostname. If possible, avoid changing the hostname so that you can instead use the procedure to migrate a config server and use the same hostname.
Changing a config server’s hostname requires downtime and requires restarting every process in the sharded cluster.
While migrating config servers, always make sure that
mongos instances have three config servers specified in
configDB setting at all times. Also ensure that
you specify the config servers in the same order for each
Disable the cluster balancer process temporarily. See Disable the Balancer for more information.
Shut down the config server to migrate.
This renders all config data for the sharded cluster “read only.”
Copy the contents of
dbPathfrom the old config server to the new config server. For example, to copy the contents of
dbPathto a machine named
mongodb.config2.example.net, use a command that resembles the following:
rsync -az /data/configdb mongodb.config2.example.net:/data/configdb
Start the config server instance on the new system. The default invocation is:
Shut down all existing MongoDB processes. This includes:
Restart all shard
mongodinstances for the two existing non-migrated config servers.
Re-enable the balancer to allow the cluster to resume normal balancing operations. See the Disable the Balancer section for more information on managing the balancer process.