设为首页 收藏本站
查看: 1014|回复: 0

[经验分享] 配置MongoDB3.04集群分片

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-12-22 14:18:41 | 显示全部楼层 |阅读模式
配置MongoDB3.04集群分片
[日期:2015-07-08]来源:Linux社区  作者:e421083458[字体:大 中 小]


  网上大部分都是的mongo2.x集群分片了,咱写个3.04的。
由于公司采用磁盘阵列冗余存储,所以不考虑数据备份问题只是简单的分片存储数据进行测试的。
配置结构如图:
DSC0000.png
  服务器配置:
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常用操作命令整理  http://www.iyunv.com/Linux/2015-07/119596.htm
  MongoDB 3.0 正式版发布下载  http://www.iyunv.com/Linux/2015-03/114414.htm
  CentOS编译安装MongoDB http://www.iyunv.com/Linux/2012-02/53834.htm
  CentOS 编译安装 MongoDB与mongoDB的php扩展 http://www.iyunv.com/Linux/2012-02/53833.htm
  CentOS 6 使用 yum 安装MongoDB及服务器端配置 http://www.iyunv.com/Linux/2012-08/68196.htm
  Ubuntu 13.04下安装MongoDB2.4.3 http://www.iyunv.com/Linux/2013-05/84227.htm
  MongoDB入门必读(概念与实战并重) http://www.iyunv.com/Linux/2013-07/87105.htm
  Ubunu 14.04下MongoDB的安装指南 http://www.iyunv.com/Linux/2014-08/105364.htm
  《MongoDB 权威指南》(MongoDB: The Definitive Guide)英文文字版[PDF] http://www.iyunv.com/Linux/2012-07/66735.htm
  Nagios监控MongoDB分片集群服务实战 http://www.iyunv.com/Linux/2014-10/107826.htm
  基于CentOS 6.5操作系统搭建MongoDB服务 http://www.iyunv.com/Linux/2014-11/108900.htm
  MongoDB 的详细介绍:请点这里
MongoDB 的下载地址:请点这里
  本文永久更新链接地址:http://www.iyunv.com/Linux/2015-07/119597.htm
DSC0001.gif

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-154850-1-1.html 上篇帖子: MongoDB常用操作命令整理 下篇帖子: mongodb cluster
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表