MongoDB集群配置帮助文档

上传人:汽*** 文档编号:548782365 上传时间:2023-04-11 格式:DOC 页数:11 大小:153KB
返回 下载 相关 举报
MongoDB集群配置帮助文档_第1页
第1页 / 共11页
MongoDB集群配置帮助文档_第2页
第2页 / 共11页
MongoDB集群配置帮助文档_第3页
第3页 / 共11页
MongoDB集群配置帮助文档_第4页
第4页 / 共11页
MongoDB集群配置帮助文档_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《MongoDB集群配置帮助文档》由会员分享,可在线阅读,更多相关《MongoDB集群配置帮助文档(11页珍藏版)》请在金锄头文库上搜索。

1、 . . . . MongoDB集群帮助手册2016年5月修订记录版本修订说明作者审核审核日期V1.0MongoDB集群帮助手册一、Mongodb集群架构简介这是一种可以水平扩展的模式,在数据量很大时特给力,实际大规模应用一般会采用这种架构去构建monodb系统。要构建一个 MongoDB Sharding Cluster,需要三种角色:l Shard Server: mongod 实例,用于存储实际的数据块,实际生产环境中一个shard server角色可由几台机器组个一个relica set承当,防止主机单点故障l Config Server: mongod 实例,存储了整个 Cluste

2、r Metadata,其中包括 chunk 信息。l Route Server: mongos 实例,前端路由,客户端由此接入,且让整个集群看上去像单一数据库,前端应用可以透明使用。本例架构示例图:1. 分别在3台机器运行一个mongod实例(称为mongod shard11,mongod shard12,mongod shard13)组织replica set1,作为cluster的shard1 2. 分别在3台机器运行一个mongod实例(称为mongod shard21,mongod shard22,mongod shard23)组织replica set2,作为cluster的shar

3、d2 3. 每台机器运行一个mongod实例,作为3个config server 4. 每台机器运行一个mongs进程,用于客户端连接 主机IP端口信息Server110.1.1.1mongod shard11:27017mongod shard12:27018mongod config1:20000mongs1:30000Server210.1.1.2mongod shard12:27017mongod shard22:27018mongod config2:20000mongs2:30000Server310.1.1.3mongod shard13:27017mongod shard23:

4、27018mongod config3:20000mongs3:30000二、集群配置2.1软件准备1. 安装monodb软件su mongodbtar zxvf mongodb-linux-x86_64-1.6.2.tar创建数据目录根据本例sharding架构图所示,在各台sever上创建shard数据文件目录Server1:su monodbcd /monodbmkdir -p data/shard11mkdir -p data/shard21Server2:su monodbcd /monodbmkdir -p data/shard11mkdir -p data/shard22Serv

5、er3:su monodbcd /monodbmkdir -p data/shard13mkdir -p data/shard232.2配置relica sets(复制集)1. 配置shard1所用到的replica sets:Server1:cd /mongodb/mongodb-linux-x86_64-1.6.2/bin./mongod shardsvr replSet shard1 port 27017 dbpath /mongodb/data/shard11 oplogSize 100 logpath /mongodb/data/shard11.log logappend forkS

6、erver2:cd /mongodb/mongodb-linux-x86_64-1.6.2/bin./mongod shardsvr replSet shard1 port 27017 dbpath /mongodb/data/shard12 oplogSize 100 logpath /mongodb/data/shard12.log logappend forkServer3:cd /mongodb/mongodb-linux-x86_64-1.6.2/bin./mongod shardsvr replSet shard1 port 27017 dbpath /mongodb/data/s

7、hard13 oplogSize 100 logpath /mongodb/data/shard13.log logappend fork初始化replica set用mongo连接其中一个mongod,执行: config = _id: shard1, members: _id: 0, host: 10.1.1.1:27017, _id: 1, host: 10.1.1.2:27017, _id: 2, host: 10.1.1.3:27017 rs.initiate(config);同样方法,配置shard2用到的replica sets:server1:cd /mongodb/mongo

8、db-linux-x86_64-1.6.2/bin./mongod shardsvr replSet shard2 port 27018 dbpath /mongodb/data/shard21 oplogSize 100 logpath /mongodb/data/shard21.log logappend forkserver2:cd /mongodb/mongodb-linux-x86_64-1.6.2/bin./mongod shardsvr replSet shard2 port 27018 dbpath /mongodb/data/shard22 oplogSize 100 log

9、path /mongodb/data/shard22.log logappend forkserver3:cd /mongodb/mongodb-linux-x86_64-1.6.2/bin./mongod shardsvr replSet shard2 port 27018 dbpath /mongodb/data/shard23 oplogSize 100 logpath /mongodb/data/shard23.log logappend fork初始化replica set用mongo连接其中一个mongod,执行: config = _id: shard2, members: _i

10、d: 0, host: 10.1.1.1:27018, _id: 1, host: 10.1.1.2:27018, _id: 2, host: 10.1.1.3:27018 rs.initiate(config);到此就配置好了二个replica sets,也就是准备好了二个shards2.3配置三台config serverServer1:mkdir -p /mongodb/data/config./mongod configsvr dbpath /mongodb/data/config port 20000 logpath /mongodb/data/config.log logappen

11、d fork #config server也需要dbpathServer2:mkdir -p /mongodb/data/config./mongod configsvr dbpath /mongodb/data/config port 20000 logpath /mongodb/data/config.log logappend forkServer3:mkdir -p /mongodb/data/config./mongod configsvr dbpath /mongodb/data/config port 20000 logpath /mongodb/data/config.log

12、logappend fork2.4配置mongs在server1,server2,server3上分别执行:./mongos configdb 10.1.1.1:20000,10.1.1.2:20000,10.1.1.3:20000 port 30000 chunkSize 5 logpath /mongodb/data/mongos.log logappend fork#mongs不需要dbpath2.5添加复制集连接到其中一个mongos进程,并切换到admin数据库做以下配置1.连接到mongs,并切换到admin./mongo 10.1.1.1:30000/admindbAdmin2.

13、加入shards如里shard是单台服务器,用db.runCommand( addshard : “:” )这样的命令加入,如果shard是replica sets,用replicaSetName/:port,serverhostname2:port,这样的格式表示,例如本例执行:db.runCommand( addshard : “shard1/10.1.1.1:27017,10.1.1.2:27017,10.1.1.3:27017,name:”s1,maxsize:20480 );db.runCommand( addshard : “shard2/10.1.1.1:27018,10.1.1

14、.2:27018,10.1.1.3:27018,name:”s2,maxsize:20480 );注意:在添加第二个shard时,出现error:test database 已经存在的错误,这里用mongo命令连接到第二个replica set,用db.dropDatabase()命令把test数据库给删除然后就可加入3.可选参数Name:用于指定每个shard的名字,不指定的话系统将自动分配maxSize:指定各个shard可使用的最大磁盘空间,单位megabytes4.Listing shardsdb.runCommand( listshards : 1 )如果列出了以上二个你加的shards,表示shards已经配置成功5.2.6数据库分片以与Collecton分片1、激活数据库分片命

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号