由于周末在家手头没有虚拟机,所以在windows下单机完毕部署要求,并编写bat执行脚本。
1、创建配置文件及相关文件夹
总的启动脚本例如以下(startmc.bat):
rem m1

start mongod.exe --config=../config/m1/s1_1

start mongod.exe --config=../config/m1/s1_2

start mongod.exe --config=../config/m1/c1_1

start mongod.exe --config=../config/m1/a1_1

start mongod.exe --config=../config/m1/a1_2



rem m2

start mongod.exe --config=../config/m2/s2_1

start mongod.exe --config=../config/m2/s2_2

start mongod.exe --config=../config/m2/c2_1

start mongod.exe --config=../config/m2/a2_1

start mongod.exe --config=../config/m2/a2_2



rem m3

start mongod.exe --config=../config/m3/s3_1

start mongod.exe --config=../config/m3/s3_2

start mongod.exe --config=../config/m3/c3_1

start mongod.exe --config=../config/m3/a3_1

start mongod.exe --config=../config/m3/a3_2





start mongos.exe --config=../config/m1/s1

start mongos.exe --config=../config/m2/s2

start mongos.exe --config=../config/m3/s3
2、配置文件
配置文件分别分为几个集群目录,分别为m1、m2、m3
每一个目录下分别包括了两个分片(s*_1,s*_2)、一个config(c*_1)、一个mongos(s*)、两个仲裁节点(a*_1,a*_2)(以m1为例,其它两个目录相应log及db文件不一样,port号分别加1000):
a1_1(注意Windows下没有fork。所以在bat中使用start建立不同进程):
dbpath=../data/db/a1_1

logpath=../data/a1_1.log

port=8451

shardsvr=true

replSet=shard1

logappend=true

oplogSize=2048

storageEngine=wiredTiger

nojournal=true
a1_2:
dbpath=../data/db/a1_2

logpath=../data/a1_2.log

port=8452

shardsvr=true

replSet=shard2

logappend=true

oplogSize=2048

storageEngine=wiredTiger

nojournal=true
c1_1:

dbpath=../data/db/c1_1

logpath=../data/c1_1.log

port=8441

configsvr=true

logappend=true

oplogSize=2048

storageEngine=wiredTiger

nojournal=true
s1:
logpath=../data/s1.log

port=8440

chunkSize=100

logappend=true

configdb=localhost:8441,localhost:8541,localhost:8641

s1_1:
dbpath=../data/db/s1_1

logpath=../data/s1_1.log

port=8442

shardsvr=true

replSet=shard1

logappend=true

oplogSize=2048

storageEngine=wiredTiger

nojournal=true

s1_2:
dbpath=../data/db/s1_2

logpath=../data/s1_2.log

port=8443

shardsvr=true

replSet=shard2

logappend=true

oplogSize=2048

storageEngine=wiredTiger

nojournal=true


3、进行分片对应设置
use admin
config = {_id: 'shard1', members:[{_id:0,
host: 'localhost:8442'},{_id:1, host:'localhost:8542'},{_id:2,
host:'localhost:8642',slaveDelay:7200,priority:0},{_id:3,
host:'localhost:8451',arbiterOnly:true},{_id:4,
host:'localhost:8551',arbiterOnly:true},{_id:5,
host:'localhost:8651',arbiterOnly:true}]};
rs.initiate(config);
config = {_id: 'shard2', members:[{_id:0,
host: 'localhost:8443'},{_id:1, host:'localhost:8543'},{_id:2,
host:'localhost:8643',slaveDelay:7200,priority:0},{_id:3,
host:'localhost:8452',arbiterOnly:true},{_id:4,
host:'localhost:8552',arbiterOnly:true},{_id:5,
host:'localhost:8652',arbiterOnly:true}]};
rs.initiate(config);

use admin
db.runCommand( { addshard:"shard1/localhost:8442,localhost:8542",name:"s1"}
);
db.runCommand( { addshard:"shard2/localhost:8443,localhost:8543",name:"s2"}
);
db.runCommand( { listshards : 1 } )
3、文件夹结构及执行情况
配置文件文件夹(m1为例):

文件记录log

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

db目录

执行程序(15+3个进程)

分片情况:

一键部署MongoDB集群Windows版的更多相关文章

  1. 在Docker中安装和部署MongoDB集群

    此文已由作者袁欢授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 在Docker中安装mongodb 采用的mongodb镜像:https://registry.hub.doc ...

  2. centos7下安装部署mongodb集群(副本集模式)

    环境需求:Mongodb集群有三种模式:  Replica Set, Sharding,Master-Slaver.  这里部署的是Replica Set模式. 测试环境: 这里副本集(Replica ...

  3. 在CentOS6.6上以replSet方式部署MongoDB集群

    此文已由作者袁欢授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 部署方式在3台centos6.6系统上以Replica Set方式部署mongodb3.0.2集群. 官方参考 ...

  4. 一键部署ETCD集群脚本

    这里使用三个节点,系统版本为CentOS7 # vim deploy-etcd.sh #!/bin/bash set -x set -e #更改这里的IP, 只支持部署3个节点etcd集群 decla ...

  5. 一键部署etcd集群

    这里使用三个节点,系统版本为CentOS7 # vim deploy-etcd.sh #!/bin/bash set -x set -e #更改这里的IP, 只支持部署3个节点etcd集群 decla ...

  6. 【k8s】使用Terraform一键部署EKS集群

    本文适用范文 使用AWS海外账号 对aws.terraform.k8s有一定的了解 新建一个独立的VPC Terraform简介 terraform是一个云端的资源编排工具,官方对自己的定位:Terr ...

  7. shell脚本一键安装redis集群[最终版]

    直接上shell了. #!/bin/bash #---------------------------------------------------------------------------- ...

  8. CentOS6.8部署MongoDB集群及支持auth认证

    三个节点的副本集如下图所示: 实验目的: 配置MongoDB的3节点副本集 3个节点的副本集都要开启auth认证,并且开启认证后,能互相通信 第一步 - 准备环境 准备三个虚拟机,其中一个用作Prim ...

  9. 一键部署etcd集群管理脚本

    一.编写脚本 1 #!/bin/sh 2 # 安装 3 # ./run.sh etcd03 etcd01=http://192.168.2.44:2380,etcd02=http://192.168. ...

随机推荐

  1. 基于EM的多直线拟合实现及思考

    作者:桂. 时间:2017-03-22  06:13:50 链接:http://www.cnblogs.com/xingshansi/p/6597796.html 声明:欢迎被转载,不过记得注明出处哦 ...

  2. go系列之数组

    数组 数组是同一类型元素的集合.例如,整数集合 5,8,9,79,76 形成一个数组.Go 语言中不允许混合不同类型的元素,例如包含字符串和整数的数组.(译者注:当然,如果是 interface{} ...

  3. 并发编程之socketserver模块

    一.socketserver模块介绍 基于tcp套接字,关键的就是两个循环,一个是链接循环,一个是通信循环 socketserver模块中分两大类:srever类(解决链接问题)和request类(解 ...

  4. TCP协议具体解释(上)

     TCP协议具体解释 3.1 TCP服务的特点 TCP协议相对于UDP协议的特点是面向连接.字节流和可靠传输. 使用TCP协议通信的两方必须先建立链接.然后才干開始数据的读写.两方都必须为该链接分 ...

  5. [Jobdu] 题目1369:字符串的排列

    题目描述: 输入一个字符串,按字典序打印出该字符串中字符的所有排列.例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba. 输入: 每个 ...

  6. C#用ado.net访问EXCEL的常见问题及解决方法

    C#用ado.net访问EXCEL的常见问题及解决方法,除了像sql server,access常见的数据库,其实Excel文件也可以做为数据库访问. ado.net访问excel的实例: OleDb ...

  7. Install haroopad on centos7

    1.Install libs sudo yum install systemd-libs -y 2.Download haroopad goto haroopad1 download bin pack ...

  8. 说说http协议中的编码和解码

    http://www.csdn1 2 3.com/html/itweb/20130730/29422_29378_29408.htm ****************************** 一. ...

  9. 請問 localtime() 為什麼不會造成 memory leak?

    http://www.programmer-club.com.tw/ShowSameTitleN/vc/22380.html ************************************* ...

  10. How to Use HTML5 FUll Screen API(如何使用HTML5全屏接口) 【精】

    原文链接:http://www.sitepoint.com/use-html5-full-screen-api/ 如果你不太喜欢变化太快的东西,那么web开发可能不适合你.我曾在2012年末有写过Fu ...