收藏 分享(赏)

mongodb分片与副本集详细配置方案.docx

上传人:11xg27ws 文档编号:7860225 上传时间:2019-05-27 格式:DOCX 页数:7 大小:254.65KB
下载 相关 举报
mongodb分片与副本集详细配置方案.docx_第1页
第1页 / 共7页
mongodb分片与副本集详细配置方案.docx_第2页
第2页 / 共7页
mongodb分片与副本集详细配置方案.docx_第3页
第3页 / 共7页
mongodb分片与副本集详细配置方案.docx_第4页
第4页 / 共7页
mongodb分片与副本集详细配置方案.docx_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、分片与副本集配置方案服务器:服务器 1:10.120.131.201服务器 2:10.120.131.203服务器 3:10.120.131.204两个分片:shard1,shard2。每个分片都是一个副本集。shard1 包含四个节点:10.120.131.201:10000,10.120.131.203:10000,10.120.131.204:10000,10.120.131.204:10001,其中 10.120.131.204:10001 为仲裁节点,仲裁节点不参与数据复制,只参与投票。shard2 包含四个节点:10.120.131.201:10100,10.120.131.203

2、:10100,10.120.131.204:10100,10.120.131.204:10101,其中 10.120.131.204:10101 为仲裁节点。系统包含三个角色:Shard server:mongod 的实例,用于存储实际的数据块,对应着系统架构图中的两个分片(副本集) 。Config server:mongod 实例,用于存储整个 cluster metadata,包含了 chunk 块的信息。Route server(路由): mongos 实例,前端路由,客户端由此接入,让整个集群看上去像一个单一的数据库。服务器系统架构图如下:配置过程:服务器 1:进入 mongodb 的

3、文件夹中 (/home/software/mongodb2.4.8)。创建data 文件夹,并进入到 data 文件夹中。创建文件夹:shard11,shard12。分为 shard1,shard2 在服务器 1 上的数据存储文件夹。创建 config 文件夹,用于存储 cluster metadata。代码:mkdir data,进入 data 文件夹:mkdir shard11,mkdir shard12,mkdir config服务器 2:进入 mongodb 的文件夹中 (/home/software/mongodb2.4.8)。创建data 文件夹,并进入到 data 文件夹中。创建

4、文件夹:shard21,shard22。分为 shard1,shard2 在服务器 2 上的数据存储文件夹。创建 config 文件夹,用于存储 cluster metadata。代码:mkdir data,进入 data 文件夹:mkdir shard21,mkdir shard22,mkdir config服务器 3:进入 mongodb 的文件夹中 (/home/software/mongodb2.4.8)。创建data 文件夹,并进入到 data 文件夹中。创建文件夹:shard31,shard32。分为 shard1,shard2 在服务器 3 上的数据存储文件夹。创建文件夹:sha

5、rd31_arb,shard32_arb,分别为 shard1 与shard2 的仲裁节点。创建 config 文件夹,用于存储 cluster metadata。代码:mkdir data,进入 data 文件夹:mkdir shard31,mkdir shard32, mkdir shard31_arb,mkdir shard32_arb,mkdir config.配置副本集:配置副本集 shard1:在服务器 1 上启动 mongod:./mongod -shardsvr -replSet shard1 -dbpath /home/software/mongodb2.4.8/data/s

6、hard11 -port 10000 -logpath /home/software/mongodb2.4.8/data/shard11.log -fork -nojournal在服务器 2 上启动 mongod:./mongod -shardsvr -replSet shard1 -dbpath /home/software/mongodb2.4.8/data/shard21 -port 10000 -logpath /home/software/mongodb2.4.8/data/shard21.log -fork nojournal在服务器 3 上启动两个 mongod:./mongod

7、 -shardsvr -replSet shard1 -dbpath /home/software/mongodb2.4.8/data/shard31 -port 10000 -logpath /home/software/mongodb2.4.8/data/shard31.log -fork nojournal ./mongod -shardsvr -replSet shard1 -dbpath /home/software/mongodb2.4.8/data/shard31_arb -port 10001 -logpath /home/software/mongodb2.4.8/data/

8、shard31_arb.log -fork -nojournal初始化副本集 shard1:用 mongo 连接任意一个 mongod(仲裁节点除外): ./momgo -port 10000 并执行:config=_id:”shard1”,members:_id:0,host:”10.120.131.201:10000”,_id:1,host:”10.120.131.203:10000”,_id:2,host:”10.120.131.204:10000”,_id:3,host:”10.120.131.204:10001,”arbiterOnly”:truers.initiate(config

9、)用同样的方法配置副本集 shard2:在服务器 1 上启动 mongod:./mongod -shardsvr -replSet shard2 -dbpath /home/software/mongodb2.4.8/data/shard12 -port 10100 -logpath /home/software/mongodb2.4.8/data/shard12.log -fork -nojournal在服务器 2 上启动 mongod:./mongod -shardsvr -replSet shard2 -dbpath /home/software/mongodb2.4.8/data/sh

10、ard22 -port 10100 -logpath /home/software/mongodb2.4.8/data/shard22.log -fork nojournal在服务器 3 上启动两个 mongod:./mongod -shardsvr -replSet shard2 -dbpath /home/software/mongodb2.4.8/data/shard32 -port 10100 -logpath /home/software/mongodb2.4.8/data/shard32.log -fork nojournal ./mongod -shardsvr -replSet

11、 shard2 -dbpath /home/software/mongodb2.4.8/data/shard32_arb -port 10101 -logpath /home/software/mongodb2.4.8/data/shard32_arb.log -fork -nojournal初始化副本集 shard1:用 mongo 连接任意一个 mongod(仲裁节点除外): ./momgo -port 10100 并执行:config=_id:”shard2”,members:_id:0,host:”10.120.131.201:10100”,_id:1,host:”10.120.131

12、.203:10100”,_id:2,host:”10.120.131.204:10100”,_id:3,host:”10.120.131.204:10101,”arbiterOnly”:truers.initiate(config)配置三台 config server在三台服务器上分别启动 mongod(仲裁节点不需要配置 config):./mongod -configsvr -dbpath /home/software/mongodb2.4.8/data/config -port 20000 -logpath /home/software/mongodb2.4.8/data/config.

13、log -logappend -fork在三台服务器上分别启动 mongos:./mongos -configdb 10.120.131.201:20000,10.120.131.203:20000,10.120.131.204:20000 -port 30000 -chunkSize 1 -logpath /home/software/mongodb2.4.8/data/mongos.log -logappend -fork连接 mongos:./mongo port 30000配置分片:切换到 adminuse admin加入 shards:db.runCommand( addshard:

14、”replicaSetName/:,:”)db.runCommand(addshard:”shard1/10.120.131.201:10000,10.120.131.203:10000,10.120.131.204:10000”,name:”s1”);db.runCommand(addshard:”shard2/10.120.131.201:10100,10.120.131.203:10100,10.120.131.204:10100”,name:”s2”);对数据库 dbtest 进行分片:db.runCommand(enablesharding:”dbtest”)如果不执行这一步,则一个数据库只能在一个片上,执行了这一步之后,一个数据库的不同集合将会放在不同的片上。一个数据库的一个集合会放在同一个片上,如果要将同一个集合(mycol,包含两个字段:year,value)放在不同的片上,还需要将集合进行分片,指定分片键(year) ,执行下一步:db.runCommand(shardcollection:”db.mycol”,key:year:1)此时对数据 dbtest 的 mycol 集合分片完毕。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报