分片集群环境包括下面几个components:
Shard Server:
存储实际数据的分片,每个Shard可以为一个mongod实例,也可以为一组mongod实例构成的Replica Set,
3.6版本以上默认需要每个shard都是Replica Set,否则配置失败.
Route(mongos):
前端路由,作为应用和集群的访问接口,mongos返回应用请求的数据而应用不必关系数据到底在哪个分片上
Config Server:
存储分片集群的配置信息和metadata,包括:shard节点的配置信息,集群中所有DB和collection的sharding
配置信息,chunk在各shard的分布情况,每个chunk的shard key范围等,3.4版本以上也需要部署成为Replica
Shard Server:
存储实际数据的分片,每个Shard可以为一个mongod实例,也可以为一组mongod实例构成的Replica Set,
3.6版本以上默认需要每个shard都是Replica Set,否则配置失败.
Route(mongos):
前端路由,作为应用和集群的访问接口,mongos返回应用请求的数据而应用不必关系数据到底在哪个分片上
Config Server:
存储分片集群的配置信息和metadata,包括:shard节点的配置信息,集群中所有DB和collection的sharding
配置信息,chunk在各shard的分布情况,每个chunk的shard key范围等,3.4版本以上也需要部署成为Replica
Set.
1>配置启动shard server:
mkdir -p /data/s10
mkdir -p /data/s11
mkdir -p /data/s20
mkdir -p /data/s21
./mongod --shardsvr --port 21000 --dbpath=/data/s10 --fork --logpath=/data/s10.log --directoryperdb --replSet yoo1
./mongod --shardsvr --port 21001 --dbpath=/data/s11 --fork --logpath=/data/s11.log --directoryperdb --replSet yoo1
./mongod --shardsvr --port 22000 --dbpath=/data/s20 --fork --logpath=/data/s20.log --directoryperdb --replSet yoo2
./mongod --shardsvr --port 22001 --dbpath=/data/s21 --fork --logpath=/data/s21.log --directoryperdb --replSet yoo2
./mongo 127.