您的位置:首页 > 数据库 > Mongodb

MongoDB之Replica Sets + Sharding

2014-11-21 15:32 393 查看
MongoDB Auto-Sharding 解决了海量存储和动态扩容的问题,但离实际生产环境所需的高可靠、高可用还有些距离,所以有了” Replica Sets + Sharding”的解决方案:

Shard:

使用 Replica Sets,确保每个数据节点都具有备份、自动容错转移、自动恢复能力。

Config:

使用 3 个配置服务器,确保元数据完整性

Route:

使用 3 个路由进程,实现负载平衡,提高客户端接入性能



开放端口如下:




1 配置 shard1 所用到的 Replica
Sets

ServerA:

mongod --shardsvr --replSet shard1 --port 27017 --dbpath /data/shard1_1 --logpath /data/shard1_1/shard1_1.log --logappend –fork

serverB:

mongod --shardsvr --replSet shard1 --port 27017 --dbpath /data/shard1_1 --logpath /data/shard1_1/shard1_1.log --logappend –fork

serverC:

mongod --shardsvr --replSet shard1 --port 27017 --dbpath /data/shard1_1 --logpath /data/shard1_1/shard1_1.log --logappend --fork

用 mongo 连接其中一台机器的 27017 端口的 mongod,初始化 Replica Sets“shard1”






2 配置 shard2 所用到的 Replica Sets

同上,配置share2。


3 配置 3 台 Config
Server

mongod --configsvr --dbpath /data/config --logappend --fork --port 20000 --logpath /data/config/config.log


4 配置 3 台 Route
Process

mongos --configdb 192.168.3.231:20000,192.168.3.232:20000,192.168.3.233:20000 --port 30000 --chunkSize
1 --logpath /data/mongos.log --logappend --fork


5 配置 Shard
Cluster

连接到其中一台机器的端口 30000 的 mongos 进程,并切换到 admin 数据库做以下配置



激活数据库及集合的分片



PS: http://sheperd.blog.163.com/blog/static/1952551192011912111424237/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: