美文网首页我爱编程
mongodb复制集搭建

mongodb复制集搭建

作者: DimonHo | 来源:发表于2018-05-14 18:21 被阅读28次

服务器

OS:CentOS7
内存:16G
硬盘:6T
IP:192.168.1.2/192.168.1.51/192.168.1.52/192.168.1.53
其中192.168.1.2 为仲裁节点,不存储数据。

搭建过程

  1. 创建mongo用户
    # groupadd admin
    # useradd -g admin mongo
    # passwd mongo
  2. 下载mongo安装包
    $ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.6.3.tgz
  3. 解压并重命名
    $ tar -zxvf mongodb-linux-x86_64-rhel70-3.6.3.tgz
    $ mv mongodb-linux-x86_64-rhel70-3.6.3 mongodb
  4. 创建$HOME/data$HOME/logs$HOME/conf$HOME/.local/bin三个目录
    $ mkdir data
    $ mkdir conf
    $ mkdir logs
  5. 创建配置文件
    $ vi conf/mongodb.conf
# 启动端口
port=27017
# 数据存放目录
dbpath=/home/mongo/data
# 指定日志文件
logpath=/home/mongo/logs/mongodb.log
# 日志以追加方式保存
logappend=true
# 启用日志
journal=true
# 指定pid文件
pidfilepath=/home/mongo/conf/mongodb.pid
# 后台启动
fork=true
# 最大连接数
maxConns=5000
# 允许任何IP连接
bind_ip=0.0.0.0
# 不开启验证
auth=false
# 集群名称
replSet=wd-mongodb
  1. 创建启动脚本
    vi .local/bin/start
#!/bin/bash
echo "正在启动mongodb服务..."
$HOME/mongodb/bin/mongod -f $HOME/conf/mongodb.conf
  1. 创建停止脚本
    $ vi .local/bin/stop
#!/bin/bash
echo "正在停止mongodb服务..."
$HOME/mongodb/bin/mongod -f $HOME/conf/mongodb.conf --shutdown
  1. 创建重启脚本
#!/bin/bash
$HOME/.local/bin/stop
$HOME/.local/bin/start

修改脚本文件权限:
chmod 755 .local/bin/*

  1. 配置开机启动
[Unit]
Description=mongodb service
After=network.target

[Service]
Type=forking
PIDFile=/home/mongo/conf/mongodb.pid
ExecStart=/home/mongo/.local/bin/start
ExecStop=/home/mongo/.local/bin/stop
ExecReload=/home/mongo/.local/bin/restart
User=mongo
Group=admin

[Install]
WantedBy=multi-user.target

集群配置

rs.initiate({_id:"wd-mongodb", members:[{_id: 0, host:"192.168.1.51:27017"}]})
rs.add("192.168.1.52:27017")
rs.add("192.168.1.53:27017")
rs.addArb("192.168.1.2:27017")

复制集开启用户验证:

  1. 创建一个超级用户root和普通用户dev
db.createUser({user: "root", pwd: "root@123", roles: [{role: "root", db: "admin"}]});

db.createUser({user: "dev", pwd: "dev123", roles: [{role: "readWriteAnyDatabase", db: "admin"}]});
  1. 修改mongodb.conf文件,添加:keyFile=/home/mongo/conf/.keyfile
# 启动端口
port=27017
# 数据存放目录
dbpath=/home/mongo/data
# 指定日志文件
logpath=/home/mongo/logs/mongodb.log
# 日志以追加方式保存
logappend=true
# 启用日志
journal=true
# 指定pid文件
pidfilepath=/home/mongo/conf/mongodb.pid
# 后台启动
fork=true
# 最大连接数
maxConns=5000
# 允许任何IP连接
bind_ip=0.0.0.0
# 开启验证
auth=true
keyFile=/home/mongo/conf/.keyfile
# 集群名称
replSet=wd-mongodb
  1. 创建.keyfile文件
    $ openssl rand -base64 100 > /home/mongo/conf/.keyfile
  2. .keyfilemongodb.conf文件复制到所有的节点
  3. 重启mongodb

相关文章

  • mongodb复制集搭建

    服务器 OS:CentOS7内存:16G硬盘:6TIP:192.168.1.2/192.168.1.51/192....

  • MongoDB 复制集搭建

    MongoDB replica set : A replica set in MongoDB is a group...

  • MongoDB复制集 搭建

    MongoDB复制集概述 准备 初始化复制集主节点、添加从节点和仲裁节点 检查各个节点local库信息 检查复制集...

  • MongoDB复制集部署

    MongoDB的高可用特使是用复制集实现的,本文介绍如何在CentOS7快速搭建一个复制集 部署单节点版本 yum...

  • mongodb——分布式

    复制集 mongodb在集群环境中,通过复制的形式对数据进行冗余。mongodb复制集有Primary、Secon...

  • mongodb笔记07--复制集

    复制集(replication set): mongodb的集群搭建方式主要有三种,主从模式,Replica se...

  • mongodb分片复制集搭建

    目录 1 部署规划... 2 2 内核参数调整... 2 2.1 sysctl.conf 2 2.2 limits...

  • mongodb复制集搭建笔记!

    复制集机制及原理 影响选举因素: 复制集节点常见选配项: 注意事项: 搭建复制集测试是在同一台服务器,宝塔安装的最...

  • MongoDB复制集环境搭建

    PSS(推荐) PSA 复制集架构 环境准备 版本4.4.9端口28017/28018/28019 初始化环境(用...

  • mongo回顾(十四:复制集)

    首先简单的搭建mongodb复制集(一主两从),依旧采用docker1,docker pull mongo2,do...

网友评论

    本文标题:mongodb复制集搭建

    本文链接:https://www.haomeiwen.com/subject/zbbjdftx.html