欢迎来到天天文库
浏览记录
ID:9315780
大小:404.75 KB
页数:8页
时间:2018-04-27
《linux系统下mongodb的集群部署》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、Mongodb是时下流行的NoSql数据库,它的存储方式是文档式存储,并不是Key-Value形式。关于Mongodb的特点,这里就不多介绍了,大家可以去看看官方说明:http://docs.mongodb.org/manual/ 今天主要来说说Mongodb的三种集群方式的搭建:ReplicaSet/Sharding/Master-Slaver。这里只说明最简单的集群搭建方式(生产环境),如果有多个节点可以此类推或者查看官方文档。OS是Ubuntu_x64系统,客户端用的是Java客户端。Mongodb版本是mongodb-linux-x86_64-2.2.2.tgzRepl
2、icaSet 中文翻译叫做副本集,不过我并不喜欢把英文翻译成中文,总是感觉怪怪的。其实简单来说就是集群当中包含了多份数据,保证主节点挂掉了,备节点能继续提供数据服务,提供的前提就是数据需要和主节点一致。如下图: Mongodb(M)表示主节点,Mongodb(S)表示备节点,Mongodb(A)表示仲裁节点。主备节点存储数据,仲裁节点不存储数据。客户端同时连接主节点与备节点,不连接仲裁节点。 默认设置下,主节点提供所有增删查改服务,备节点不提供任何服务。但是可以通过设置使备节点提供查询服务,这样就可以减少主节点的压力,当客户端进行数据查询时,请求自动转到备节
3、点上。这个设置叫做ReadPreferenceModes,同时Java客户端提供了简单的配置方式,可以不必直接对数据库进行操作。 仲裁节点是一种特殊的节点,它本身并不存储数据,主要的作用是决定哪一个备节点在主节点挂掉之后提升为主节点,所以客户端不需要连接此节点。这里虽然只有一个备节点,但是仍然需要一个仲裁节点来提升备节点级别。我开始也不相信必须要有仲裁节点,但是自己也试过没仲裁节点的话,主节点挂了备节点还是备节点,所以咱们还是需要它的。介绍完了集群方案,那么现在就开始搭建了。1.建立数据文件夹一般情况下不会把数据目录建立在mongodb的解压目录下,不过这里方便起见,就建在mo
4、ngodb解压目录下吧。[plain] viewplaincopy1.mkdir -p /mongodb/data/master 2.mkdir -p /mongodb/data/slaver 3.mkdir -p /mongodb/data/arbiter 4.#三个目录分别对应主,备,仲裁节点 2.建立配置文件由于配置比较多,所以我们将配置写到文件里。[plain] viewplaincopy1.#master.conf 2.dbpath=/mongodb/data/master 3.logpath=/mongodb/log/master.log 4.pidfi
5、lepath=/mongodb/master.pid 5.directoryperdb=true 6.logappend=true 7.replSet=testrs 8.bind_ip=10.10.148.130 9.port=27017 10.oplogSize=10000 11.fork=true 12.noprealloc=true [plain] viewplaincopy1.#slaver.conf 2.dbpath=/mongodb/data/slaver 3.logpath=/mongodb/log/slaver.log 4.pidfilepath=
6、/mongodb/slaver.pid 5.directoryperdb=true 6.logappend=true 7.replSet=testrs 8.bind_ip=10.10.148.131 9.port=27017 10.oplogSize=10000 11.fork=true 12.noprealloc=true [plain] viewplaincopy1.#arbiter.conf 1.dbpath=/mongodb/data/arbiter 2.logpath=/mongodb/log/arbiter.log 3.pidfilepath=/mon
7、godb/arbiter.pid 4.directoryperdb=true 5.logappend=true 6.replSet=testrs 7.bind_ip=10.10.148.132 8.port=27017 9.oplogSize=10000 10.fork=true 11.noprealloc=true 参数解释:dbpath:数据存放目录logpath:日志存放路径pidfilepath:进程文件,
此文档下载收益归作者所有