mongodb sharding(六)之configservers 与 shards

1. 当其中的某一个shard不可用时,整个分片集群就都不可用。只有config库能够读写,并且数据迁移与分块都会停止。

 

 如上图,集群中有三个shard.现在我把shard0001这个shard停掉再进行查询操作时发现操作失败

 

 从这里可以看出,如果某一个shard仅仅只有一个mongod进程而不是replSet模式,那么当这个进程宕机后整个集群都不可用。所以每个shard一定要是replSet模式。

2. 将已宕掉的configServer重新添加进来。

 (一)恢复它的数据。从正在运行的configsServers当中选中一个,拷贝它的数据目录文件。

 (二)启动。查看mongos日志。

3. 添加新的configServer

 (一)拷贝数据。将正在运行的停掉。拷贝它的数据目录文件到新configServer的数据目录。(必须先停掉选中的configServer.只有这个时候 config的数据是只读不可更改的。这时拷贝才是最安全的。)需要注意的是, configServer的数量只有1,3这两种情况。不然启动会报错。

 (二)依次停掉mongs,mongds.

 (三)启动configServers。查看日志是否正常启动。(包括之前已存在和新添加的。)

 (四)启动mongs,修改原先的configdb参数值。

 (五)启动mongods。

posted @ 2012-12-31 17:50  雪刚  阅读(542)  评论(0编辑  收藏