您好,欢迎访问一九零五行业门户网

配置MongoDB3.04集群分片

网上大部分都是的mongo2.x集群分片了,咱写个3.04的。由于公司采用磁盘阵列冗余存储,所以不考虑数据备份问题只是简单的分片存储
网上大部分都是的mongo2.x集群分片了,咱写个3.04的。
由于公司采用磁盘阵列冗余存储,所以不考虑数据备份问题只是简单的分片存储数据进行测试的。
配置结构如图:
服务器配置:
cpu双核、8g内存、/shard目录挂载500g硬盘。
服务器列表:
ip
职能
192.168.6.117
config、mongos
192.168.6.118
client
192.168.6.119
client
192.168.6.147
client
192.168.6.160
client
首先打开这5台机器执行如下相同命令:
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.4.tgz
tar zxvf mongodb-linux-x86_64-3.0.4.tgz
cp -rf mongodb-linux-x86_64-3.0.4 /usr/local/
依次打开118、119、147、160四台机器执行如下命令(注意:使用118替换指定的119):
mkdir /shard/shard11 9
chmod -r 777 /shard/shard119
/usr/local/mongodb-3.0.4/bin/mongod -shardsvr -port 27017 -dbpath=/shard/shard119/ --storageengine wiredtiger -logpath=/shard/shard119.log --fork
然后启动。在终端中分别执行检查mongod进程是否成功启动:
ps aux | grep mongo
如果任何一台没有启动成功,重复上面的,直到找出原因。
ok,现在我们成功的分别在4台计算机上启动了1个mongod实例,mongod是真正存储数据的进程。集群中还需要一个配置服务器,用来存储在各个节点中共享的配置信息,存储数据的元信息[metadata],也如上面我结构图中config.
打开117服务器执行如下命令:
mkdir /data/config
/usr/local/mongodb-3.0.4/bin/mongod -configsvr -dbpath=/data/config -port 20000 -logpath=/data/config.log --fork
当以上都启动成功,我们可以开启mongos服务了。mongo也是在117上执行。
/usr/local/mongodb-3.0.4/bin/mongos -configdb 192.168.6.117:20000 -port 30000 -chunksize 100 -logpath=/data/mongos.log --fork
注意-configdb所对应的ip地址和端口应该为config里设置的所在ip及端口。-chunksize设置分片大小主机默认200,,我们可以设置成100即100m。
如果顺利的话,你在117能看到两个mongo上运行的进程,执行查看:ps -ef  | grep mong。表明mongo分片安装完毕。
下面开始配置mongo分片:
连接操作数据库:
/usr/local/mongodb-3.0.4/bin/mongo 192.168.6.117:30000/admin
注意:以下都是在mongo命令行下完成的操作:
添加分片服务器:
db.runcommand({addshard:192.168.6.118:27017})
db.runcommand({addshard:192.168.6.119:27017})
db.runcommand({addshard:192.168.6.147:27017})
db.runcommand({addshard:192.168.6.160:27017})
设置分片数据库:
db.runcommand({enablesharding: qiaodazhao})
使用数据库:
use qiaodazhao
设置表分片基于字段hash:
sh.shardcollection(qiaodazhao.resume_meta_data,{_id:hashed})
设置表分片基于字段(注意这种形式与以上作用相同):
db.runcommand({shardcollection:qiaodazhao.things, key:{_id:1}})
打印数据库分片信息:
db.printshardingstatus()
打印服务器信息:
db.serverstatus()
创建表索引:
db.resume_meta_data.ensureindex({org_name:1},{background:true})
查看表索引:
db.resume_meta_data.getindexes()
打印信息这里就不截图了。
mongodb常用操作命令整理 
mongodb 3.0 正式版发布下载 
centos编译安装mongodb
centos 编译安装 mongodb与mongodb的php扩展
centos 6 使用 yum 安装mongodb及服务器端配置
ubuntu 13.04下安装mongodb2.4.3
mongodb入门必读(概念与实战并重)
ubunu 14.04下mongodb的安装指南
《mongodb 权威指南》(mongodb: the definitive guide)英文文字版[pdf]
nagios监控mongodb分片集群服务实战
基于centos 6.5操作系统搭建mongodb服务
mongodb 的详细介绍:请点这里
mongodb 的下载地址:请点这里
本文永久更新链接地址:
其它类似信息

推荐信息