翻译或纠错本页面
迁移配置服务器到不同的域名¶
概述¶
集群使用三个配置服务器存储集群的元信息,只有这三个配置服务器都可用时,集群的元信息才可以概念,包括数据块分裂与数据块迁移.如果一个配置服务器不能访问或者出现故障,应该尽快替换掉.
这篇教程将 doc:集群 </core/sharding> 中的一个 配置服务器 迁移到一个使用不同域名的新系统中.只有在配置服务器不能使用原来的域名时使用,尽可能不要替换配置服务器的域名,参见 迁移配置服务器到相同的域名机器上.
注意事项¶
改变 配置服务器的 的域名 需要宕机时间 ,并且需要充气集群中的每个实例.
在迁移配置服务器时,要确保所有的 mongos 都配置了三台配置服务器,且这三台配置服务器在 configDB 配置中使用了相同的顺序.
过程¶
暂时禁用集群的均衡,参见 禁用均衡器 获得更多细节.
关闭配置服务器
这使得集群所有的配置服务器变得只读.
拷贝旧配置服务器的 dbPath 目录到新的配置服务器上.
举例
比如,为了将 dbPath 拷贝到名为 mongodb.config2.example.net 的机器上,你需要使用像这样的命令:
rsync -az /data/configdb mongodb.config2.example.net:/data/configdb
启动新系统的配置服务器,默认的指令为:
mongod --configsvr
关闭集群中所有的MongoDB实例,包括:
重启分片上所有的 mongod 实例.
重启所有的 mongos 实例.
重新启用集群的均衡过程,恢复正常的数据迁移任务.参见 禁用均衡器 章节获得管理均衡过程的更多细节.