mongodb分片+集群

原创 2016年08月29日 12:27:21

目前在一个机器上部署,IP:10.1.2.197,端口列表如下:

  端口   端口   端口
路由服务 27061 路由服务 27062 路由服务 27063
配置服务 27071 配置服务 27072 配置服务 27073
副本集1 27011 副本集2 27021 副本集3 27031
副本集1 27012 副本集2 27022 副本集3 27032
副本集1 27013 副本集2 27043 副本集3 27033


一、配置副本集

1、启动副本集的实例


2,副本集配置文件

dbpath=/usr/local/mongodb/data1_1
logpath=/usr/local/mongodb/log/mongodb1_1.log
port=27011
fork=true
shardsvr=true
replSet=rs1
注意:shardsvr=true必须加入,不然后续的设置分片会报错

3、配置3个副本集

> config = {  
                "_id": "rs1",  
                members: [  
                           { "_id": 0,  
                            "host": "10.1.2.197:27011"  
                           },  
       
                           { "_id": 1,  
                            "host": "10.1.2.197:27012"  
                           },  
       
                          { "_id": 2,  
                            "host": "10.1.2.197:27013"  
                           },  
 
 ] }
> rs.initiate(config)
...

二、配置config

1,启动config实例


2,config配置文件

dbpath=/usr/local/mongodb/config1
logpath=/usr/local/mongodb/log/config1.log
port=27071
fork=true
configsvr=true
注意:configsvr=true必须加入,不然后续的mongos启动多configdb时会报错


三、配置路由

1,启动路由进程


2,mongos配置文件

configdb=10.1.2.197:27071,10.1.2.197:27072,10.1.2.197:27073
logpath=/usr/local/mongodb/log/mongos1.log
port=27061
fork=true

3,配置路由
(1) 进入路由1

mongo --port 27061
(2) 进入admin库

mongos> use admin

(3) 配置分片信息

mongos> db.runCommand({addshard:"rs1/10.1.2.197:27011"})
{ "shardAdded" : "rs1", "ok" : 1 }
mongos> db.runCommand({addshard:"rs2/10.1.2.197:27021"})
{ "shardAdded" : "rs2", "ok" : 1 }
mongos> db.runCommand({addshard:"rs3/10.1.2.197:27031"})
{ "shardAdded" : "rs3", "ok" : 1 }

(4) 查看分片

mongos> db.runCommand({listshards:1}) 
{
	"shards" : [
		{
			"_id" : "rs1",
			"host" : "rs1/10.1.2.197:27011,10.1.2.197:27012,10.1.2.197:27013"
		},
		{
			"_id" : "rs2",
			"host" : "rs2/10.1.2.197:27021,10.1.2.197:27022,10.1.2.197:27023"
		},
		{
			"_id" : "rs3",
			"host" : "rs3/10.1.2.197:27031,10.1.2.197:27032,10.1.2.197:27033"
		}
	],
	"ok" : 1
}
(5) 配置分片的库
mongos> db.runCommand({"enablesharding":"test"})
{ "ok" : 1 }
(6) 配置分片的方式
mongos> db.runCommand({"shardcollection":"test.person","key":{_id:'hashed'}})
{ "collectionsharded" : "test.person", "ok" : 1 }

三、测试

mongos> use test
switched to db test
mongos> for(var i=0;i<10;i++){db.person.insert({name:"bluejoe"+i});} 
WriteResult({ "nInserted" : 1 })
1,登录rs1


2,登录rs2


3,登录rs3


版权声明:本文为博主原创文章,未经博主允许不得转载。

大话设计模式笔记(七)——模版方法模型

第十章 模版方法模型 含义 在父类中定义一个操作的算法骨架,将算法的一些步骤放到子类去实现。模版方法使得子类不改变算法结构的情况下即可重定义算法的特定步骤。 UML 需求:现有试卷一份,通过模版方...
  • luo4105
  • luo4105
  • 2017年08月01日 18:34
  • 279

Hive学习第三课 创建数据库和删除数据库

Hive是一种数据库技术,可以定义数据库和表来分析结构化数据。主题结构化数据分析是以表方式存储数据,并通过查询来分析。本章介绍如何创建Hive 数据库。配置单元包含一个名为 default 默认的数据...

Mongodb_集群分片部署

  • 2014年09月24日 14:52
  • 69KB
  • 下载

MongoDB的分片集群配置

1、分片 概念:在Mongodb里面存在另一种集群,就是分片技术,可以满足MongoDB数据量大量增长的需求。 当MongoDB存储海量的数据时,一台机器可能不足以存储数据也足以提供可接受的读写吞吐...
  • he90227
  • he90227
  • 2015年04月29日 17:59
  • 946

配置MongoDB集群分片

现在网上很多教程都在讲MongoDB分片配置,但大多都没有经过实战,胡乱转载。而且用的MongoDB版本不同各种配置眼花寮乱,让入门者莫衷一是。 最近我也做了MongoDB分片,贴出自己的配置。...

Mongodb集群之分片存储

上节咱们遗留了两个问题还没解决: 从节点每个上面的数据都是对数据库全部拷贝,从节点压力会不会过大?数据压力大到机器支撑不了的时候是否会自动扩展 在系统早期,数据量还小的时候不会引起太大的问题,但...

mongodb数据库集群及sharding分片配置

1.安装mongodb数据库 在主节点和从节点上都安装mongodb # rpm -ivh mongo-10gen-2.4.6-mongodb_1.x86_64.rpm mongo-10gen-ser...

MongoDB 3.4 高可用集群搭建(三)shard 分片

数据压力大到机器支撑不了的时候能否做到自动扩展? 在系统早期,数据量还小的时候不会引起太大的问题,但是随着数据量持续增多,后续迟早会出现一台机器硬件瓶颈问题的。而MongoDB主打的就是海量数...

搭建高可用mongodb集群(四)—— 分片

按照上一节中《搭建高可用mongodb集群(三)—— 深入副本集》搭建后还有两个问题没有解决: 从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大?数据压力大到机器支撑不了的时候能否...

MongoDB 3.4 高可用集群搭建(三)shard 分片

数据压力大到机器支撑不了的时候能否做到自动扩展? 在系统早期,数据量还小的时候不会引起太大的问题,但是随着数据量持续增多,后续迟早会出现一台机器硬件瓶颈问题的。而MongoDB主打的就是海量数据架构,...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:mongodb分片+集群
举报原因:
原因补充:

(最多只允许输入30个字)