准备三台机器,系统:windows 8

192.168.1.1
192.168.1.2
192.168.1.3

每台机器上安装mongodb 服务,步骤:

  1. 下载以下文件并依次执行安装
  2. clearcompressionflag.exe
    Windows8.-KB2919442-x64.msu
    Windows8.-KB2932046-x64.msu
    Windows8.-KB2934018-x64.msu
    Windows8.-KB2937592-x64.msu
    Windows8.-KB2938439-x64.msu
    Windows8.-KB2959977-x64.msu
    Windows8.1-KB2919355-x64.msu
    Windows8.-KB2999226-x64.msu
  3. 下载 vc_redist.x64.exe 并安装
  4. 下载文件 mongodb-win32-x86_64-2008plus-ssl-4.0.6-singed.mis 并安装。如果报错 无法启动服务,那么到mongodb 安装目录,这里是  C:\Program Files\MongoDB\Server\4.0\bin 内修改配置文件mongod.cfg,注释掉  mp 配置项(最后一行)。
  5. 修改配置文件 mongod.cfg,增加如下配置, XXX 是副本集名称。
  6. replication:
    replSetName: XXX
  7. 重启mongodb 服务,使配置生效
  8. 命令行打开 mongo
  9. mongo --host 192.168.1.1
  10. 执行以下语句, arbiterOnly:true 表示节点仅用作仲裁节点,如果此节点需要存储数据,则不设置 arbiterOnly,默认为 false。
  11. > config={ _id:'XXX', members:[ {_id:,host:'192.168.1.1:27017'}, {_id:,host:'192.168.1.2:27017'}, {_id:,host:'192.168.1.3:27017',arbiterOnly:true}]}
    ...
    > rs.initiate(config)
  12. 查看 设置状态
  13. > rs.status()

集群搭建参考 https://www.cnblogs.com/ityouknow/p/7344005.html

集群认证:https://blog.csdn.net/uncle_david/article/details/78713551

下面是我的配置文件

# conf/config.conf
## 配置文件内容 mongodb 4.0
pidfilepath = D:/mongodb-cluster/config/log/configsrv.pid
dbpath = D:/mongodb-cluster/config/data
logpath = D:/mongodb-cluster/config/log/congigsrv.log
logappend = true bind_ip = 0.0.0.0
port =
# fork = true #declare this is a config db of a cluster;
configsvr = true #副本集名称
replSet=configs #设置最大连接数
maxConns= keyFile = D:/mongodb-cluster/conf/key.file
auth = true

分片配置文件和路由配置文件就不再列出来了,通过上面两个链接的博客内容,很容易得到。

另外在列出搭建集群时常用的命令以及 js 代码,方便复制粘贴,

mongod -f D:\mongodb-cluster\conf\config.conf
mongod -f D:\mongodb-cluster\conf\shard1.conf
mongod -f D:\mongodb-cluster\conf\shard2.conf
mongod -f D:\mongodb-cluster\conf\shard3.conf
mongos -f D:\mongodb-cluster\conf\mongos.conf config = {_id:"configs", members: [{_id:, host:"192.168.2.171:21000"}, {_id:, host: "192.168.2.172:21000"}, {_id:,host:"192.168.2.173:21000"}]}
config = {_id : "shard1", members : [{_id : , host : "192.168.2.171:27001" },{_id : , host : "192.168.2.172:27001" },{_id : , host : "192.168.2.173:27001" , arbiterOnly: true }]}
config = {_id : "shard2", members : [{_id : , host : "192.168.2.171:27002", arbiterOnly: true },{_id : , host : "192.168.2.172:27002" },{_id : , host : "192.168.2.173:27002" }]}
config = {_id : "shard3", members : [{_id : , host : "192.168.2.171:27003" },{_id : , host : "192.168.2.172:27003" , arbiterOnly: true },{_id : , host : "192.168.2.173:27003" }]} sh.addShard("shard1/192.168.2.171:27001,192.168.2.172:27001,192.168.2.173:27001")
sh.addShard("shard2/192.168.2.171:27002,192.168.2.172:27002,192.168.2.173:27002")
sh.addShard("shard3/192.168.2.171:27003,192.168.2.172:27003,192.168.2.173:27003") // auth:
db.createUser(
{
user:"xxx",
pwd:"xxx",
roles:[{role:"root",db:"admin"}]
}
)

添加副本集  rs.initiate(config); 时要注意,分片内某节点如果设置为  arbiterOnly:true ,那么不能在这个节点上连接 mongodb 实例,否则会报错,以上面配置为例,分片 2 这个副本集创建时,是在 192.168.2.172 上执行的,如下

# 在 192.168.2.172 节点上执行以下命令
mongo --port
config = {_id : "shard2", members : [{_id : , host : "192.168.2.171:27002", arbiterOnly: true },{_id : , host : "192.168.2.172:27002" },{_id : , host : "192.168.2.173:27002" }]}
rs.initiate(config);

其他命令我都是在  192.168.2.171 上的 mongo shell 里执行。

也有地方建议不使用仲裁节点,同时配置副本集中节点数量为奇数,

config = {_id : "shard1", members : [{_id : , host : "192.168.2.171:27001" },{_id : , host : "192.168.2.172:27001" },{_id : , host : "192.168.2.173:27001"  }]}

mongodb windows 集群搭建的更多相关文章

  1. Mongodb Windows 集群

    我在一台Windows机器下搭建了一个 Replica Sets + Sharding 测试集群环境,以此作为我后续对于Mongodb更进一步学习的实验平台. 只有一台windows机器,配置方案:1 ...

  2. MongoDB分布式集群搭建

    最近在做一个关于车险的项目,由于数据量较大,实验室的Boss决定采用HBase+ES/MongoDB这两种方案,并做性能对比,本人负责MongoDB方案.为了满足海量数据的存储要求,需要搭建一个分布式 ...

  3. mongodb分布式集群搭建手记

    一.架构简介 目标单机搭建mongodb分布式集群(副本集 + 分片集群),演示mongodb分布式集群的安装部署.简单操作. 说明在同一个vm启动由两个分片组成的分布式集群,每个分片都是一个PSS( ...

  4. MongoDB分片集群搭建及扩容

    ### 实验:分片集群搭建及扩容#### 实验目标及流程 * 目标:学习如何搭建一个两分片的分片集群 * 环境:3台Linux虚拟机器,4Core 8GB * 步骤: * 配置域名解析 * 准备分片目 ...

  5. MongoDB 分片集群搭建

    一.概述 分片是一种在多台机器上分配数据的方法.MongoDB使用分片来支持具有非常大的数据集和高吞吐量操作.有两种解决系统增长的方法:垂直扩展和水平扩展. 垂直扩展涉及增加单个服务器的容量,例如使用 ...

  6. MongoDB ReplicaSet 集群搭建

    说明 本文创建的集群的名字为test,在同一台机器上创建了三个mongo实例,端口不同即可. 安装mongodb的教程,之前总结过,请参考:CentOS安装MongoDB笔记 创建实例 # 本机默认原 ...

  7. MongoDB分布式集群搭建(分片加副本集)

    # 环境准备 服务器 # 环境搭建 文件配置和目录添加 新建目录的操作要在三台机器中进行,为配置服务器新建数据目录和日志目录 mkdir -p $MONGODB_HOME/config/data mk ...

  8. mongodb sharding集群搭建

    创建虚拟机,如果是使用copy的方式安装系统,记得修改机器名,否则所有的机器名称都一样,会造成安装失败 同时关闭掉防火墙,将所有的机器的时间调成一致,master和slave的heartbeat间隔不 ...

  9. mongodb副本集群搭建

    一.环境介绍 1.机器信息 10.40.6.68 10.40.6.108 10.40.6.110 软件环境为centos 6.x 2.mongodb 下载链接地址 https://www.mongod ...

随机推荐

  1. 5个有趣的Python小知识,结果令人意外

    1 字符串驻留 如果上面例子返回True,但是下面例子为什么是False: 这与Cpython 编译优化相关,行为称为字符串驻留,但驻留的字符串中只包含字母,数字或下划线. 2 相同值的不可变对象 这 ...

  2. L22 Data Augmentation数据增强

    数据 img2083 链接:https://pan.baidu.com/s/1LIrSH51bUgS-TcgGuCcniw 提取码:m4vq 数据cifar102021 链接:https://pan. ...

  3. Windows10 下安装SourceTree 跳过注册 Bitbucket

    前提:安装Git 下载Windows系统可执行文件SourceTreeSetup-3.1.3.exe 双击安装,会出现如下界面: 关闭这个界面 C:\Users\当前用户文件夹\AppData\Loc ...

  4. python调用word2vec工具包安装和使用指南

    python调用word2vec工具包安装和使用指南 word2vec python-toolkit installation and use tutorial 本文选译自英文版,代码注释均摘自本文, ...

  5. Android App安全渗透测试(一)

    一.            实验环境搭建 1.      安装JDK 2.      安装Android Studio 3.      模拟器或真机 我的是夜神模拟器和nexus 工具 Apktool ...

  6. tensorflow1.0 变量加法

    import tensorflow as tf state = tf.Variable(0,name='counter') print(state.name) one = tf.constant(1) ...

  7. python os模块获取指定目录下的文件列表

    bath_path = r"I:\ner_results\ner_results" dir_list1 = os.listdir(bath_path) for dir1 in di ...

  8. Java 排序算法-冒泡排序及其优化

    Java 排序算法-冒泡排序及其优化 什么是冒泡排序 基本写法 优化后写法 终极版本 源码及测试 什么是冒泡排序 这里引用一下百度百科上的定义: 冒泡排序(Bubble Sort),是一种计算机科学领 ...

  9. git工具上传项目到码云

    首先,你需要在本地安装git客户端,此处简单易懂,略过然后,在本地建好文件夹,以本人为例,我的路径为 E:\git_project,此时需要通过鼠标右键选择:git bush here 如图所示然后会 ...

  10. MySQL主从数据库配置与原理

    1.为什么要搭建主从数据库 (1)通过增加从库实现读写分离,提高系统负载能力 (2)将从库作为数据库备份库,实现数据热备份,为数据恢复提供机会 (3)根据业务将不同服务部署在不同机器同时又共享相同的数 ...