机器:ubuntu 2台

ip:

  • 192.168.0.131 host1
  • 192.168.0.132 host2

安装mongodb

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
echo "deb [ arch=amd64 ] http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list sudo apt-get update sudo apt-get install -y mongodb-org


文件目录

    port:

  •   27017 mongos 路由
  • 30000 configServer 配置服务
  • 27018 分片

    dbpath:

  • null mongos

  • /app/mongo/data/config/data configServer

  • /app/mongo/data/shard/data shard

将启动mongod配置文件放在/app/mongo/config目录下

1.configServer

在192.168.0.131

  
 mkdir -p /app/mongo/data/config/data
   mkdir -p /app/mongo/data/config/log
   vim /app/mongo/config/configserver.conf
   
dbpath=/app/mongo/data/config/data
   port=30000
   bind_ip=0.0.0.0
   configsvr=true
   replSet=conf

利用supervisor启停

[program:configdb]
command=mongod -f /app/mongo/config/configserver.conf
autostart=true
autorestart=true
stderr_logfile =/app/mongo/data/config/log/err.log
stdout_logfile =/app/mongo/data/config/log/out.log

在192.168.0.132 同样操作

登陆任意服务器客户端初始化config

 mongo --port 30000
config = {_id:"conf", members:[

  {_id:0, host:"192.168.0.131:30000"},

  {_id:1, host:"192.168.0.132:30000"}

  ]

};

rs.initiate(config);

2.路由mongos配置

在192.168.0.132

mkdir -p /app/mongo/data/mongos/log
 vim /app/mongo/config/mongos.conf
port = 27017
bind_ip=0.0.0.0
configdb=conf/192.168.0.131:30000,192.168.0.132:30000

利用supervisor启停

[program:mongos]
command=mongos -f /app/mongo/config/mongos.conf
autostart=true
autorestart=true
stdout_logfile = /app/mongo/data/mongos/log/out.log
stderr_logfile = /app/mongo/data/mongos/log/err.log
loglevel=info

3.分片

在192.168.0.131

mkdir -p /app/mongo/data/shard/data

mkdir -p /app/mongo/data/shard/logs
vim /app/mongo/config/mongod.conf dbpath=/app/mongo/data/shard/data
port=27018
bind_ip=0.0.0.0
shardsvr=true

利用supervisor启停

#mongod.conf
[program:mongod]
command=mongod -f /app/mongo/config/mongod.conf
autorestart=true
redirect_stderr=true
stdout_logfile = /app/mongo/data/shard/logs/mongod.log
loglevel=info
  supervisorctl reload

在192.168.0.132

mkdir -p /app/mongo/data/shard/data

mkdir -p /app/mongo/data/shard/logs

4.mongos上添加shard节点

mongo --port 27017
use admin
db.runCommand( {addshard : "192.168.0.131:27018"});
db.runCommand( {addshard : "192.168.0.132:27018"});

查看节点信息

db.runCommand( { listshards : 1 } );

为数据库添加分片主键(以db.col为例)

sh.enableSharding("db")
db.runCommand({"shardCollection":"db.col","key":{"_id":1}})
 
 

mongodb3.4.15集群搭建的更多相关文章

  1. mongodb3.6集群搭建:分片+副本集

    mongodb是最常用的noSql数据库,在数据库排名中已经上升到了前五.这篇文章介绍如何搭建高可用的mongodb(分片+副本)集群. 在搭建集群之前,需要首先了解几个概念:路由,分片.副本集.配置 ...

  2. Zookeeper3.4.10 + ActiveMQ-5.15.0 集群搭建

    网上的教程真的是凤毛麟角,就不想说啥了,一次一次把我带入坑. 好了关于Zookeeper的搭建已经说好了,本文说说基于Zookeeper的MQ集群. 第一步.将mq安装包上传到CentOS7,并解压 ...

  3. mongoDB3.4的sharding集群搭建及JavaAPI的简易使用

    第一部分 在搭建mongoDB之前,我们要考虑几个小问题: 1.我们搭建集群的目的是什么?是多备份提高容错和系统可用性还是横向拓展存储大规模数据还是两者兼有? 如果是为了多备份那么选择replicat ...

  4. mongodb3集群搭建

    三台服务器:先设置hosts 10.0.0.231 node1 10.0.0.232 node2 10.0.0.233 node3 1:下载 mongodb-linux-x86_64-rhel70-3 ...

  5. MongoDB3.2 集群搭建

    一.集群的理论知识 1.1 集群成员 MongoDB的集群类似于GreenPlum集群,由一个入口节点负责任务分发与结果统计,分片结节负责执行任务.不同GP,多了一个config servers. 集 ...

  6. MongoDB 3.4 高可用集群搭建(二)replica set 副本集

    转自:http://www.lanceyan.com/tech/mongodb/mongodb_repset1.html 在上一篇文章<MongoDB 3.4 高可用集群搭建(一):主从模式&g ...

  7. 【Data Cluster】真机环境下MySQL数据库集群搭建

    真机环境下MySQL-Cluster搭建文档  摘要:本年伊始阶段,由于实验室对不同数据库性能测试需求,才出现MySQL集群搭建.购置主机,交换机,双绞线等一系列准备工作就绪,也就开始集群搭建.起初笔 ...

  8. Mongodb集群搭建的三种方式

    转自:http://blog.csdn.net/luonanqin/article/details/8497860 MongoDB是时下流行的NoSql数据库,它的存储方式是文档式存储,并不是Key- ...

  9. kafka集群搭建和使用Java写kafka生产者消费者

    1 kafka集群搭建 1.zookeeper集群  搭建在110, 111,112 2.kafka使用3个节点110, 111,112 修改配置文件config/server.properties ...

随机推荐

  1. PBOCIC读芯片卡流程

    https://blog.csdn.net/kxd_ysheng/article/details/21178101?_t=t PBOCIC读芯片卡流程,参考上面的博客,整理了一下PBOCIC卡读流程. ...

  2. hdu 5012 模拟+bfs

    http://acm.hdu.edu.cn/showproblem.php?pid=5012 模拟出骰子四种反转方式,bfs,最多不会走超过6步 #include <cstdio> #in ...

  3. 取得 APP 自己的版本号 (跨 4 个平台)

    http://www.cnblogs.com/onechen/p/3627942.html XE7 源码下载:[原创]取得APP自己的版本号(狠跨4个平台)XE7.zip XE6 源码下载:[原创]取 ...

  4. unusedjs

    查看js的有效使用情况: https://github.com/gmetais/unusedjs Installation You need to open your console and writ ...

  5. 在Windows 7上安装Team Foundation Server(TFS)的代理服务器(Agent)

    自2009年微软发布Windows 7以来,经过8年的市场验证,Windows 7已经成为史上应用最为广泛的操作系统.但是面对技术变化的日新月异,2015年微软正式停止了对Windows 7的主流支持 ...

  6. LinkServer--服务器选项

    1. RPC和RPC out 当RPC和RPC out被设置为true时,允许调用远程服务器的存储过程 2.为RPC启用针对分布式事务的升级 使用该选项可通过 Microsoft 分布式事务处理协调器 ...

  7. AI_ 视频监控-人体移动捕捉监测

    总目录地址:AI 系列 总目录 需要最新源码,或技术提问,请加QQ群:538327407 我的各种github 开源项目和代码:https://github.com/linbin524 需求 为了实现 ...

  8. telerik:RadGrid 表格中删除数据

    <telerik:RadGrid OnItemCommand=" Height="490px" Culture="zh-CN" CssClass ...

  9. C#克隆

    克隆方法是原型设计模式中必须使用的方式,它将返回一个与当前对象数据一致的对象.正如其名,犹如一个模子雕刻而出.克隆类型分为两种:浅克隆.深克隆. 1.浅克隆 浅克隆方式是最简单.最直接的方式.只需要类 ...

  10. 单线程任务 Task.Factory.StartNew 封装

    代码: using log4net; using SunCreate.CombatPlatform.Security; using System; using System.Collections.G ...