本文主要是介绍MongoDB主从仲裁模式安装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
MongoDB主从仲裁模式安装
环境介绍
操作系统 : CentOS release 6.8 (Final)
Master IP : 10.4.19.83
Arbiter IP : 10.104.27.126
Slave IP : 10.104.27.126
安装文件 : mongodb-linux-x86_64-rhel62-4.4.9.tgz
安装
依次在10.104.27.126\10.4.19.83机器上执行下面命令,准备基础安装目录:
tar -xf mongodb-linux-x86_64-rhel62-4.4.9.tgz
cp -R mongodb-linux-x86_64-rhel62-4.4.9 /opt/mongo
rm -rf mongodb-linux-x86_64-rhel62-4.4.9
创建Master节点(10.4.19.83:27017)相关目录
mkdir -p /opt/mongo/master/{data,conf,logs}
创建Slave节点(10.104.27.126:27017)相关目录
mkdir -p /opt/mongo/slave/{data,conf,logs}
创建Arbiter节点(10.104.27.126:27018)相关目录
mkdir -p /opt/mongo/arbiter/{data,conf,logs}
创建Master节点(10.4.19.83:27017)配置文件
cat << \EOF > /opt/mongo/master/conf/master.conf
#数据文件存放目录
dbpath = /opt/mongo/master/data
#日志文件存放目录
logpath = /opt/mongo/master/logs/mongodb.log
# 记录进程ID
pidfilepath = /opt/mongo/master/master.pid
#开启日志追加添加日志
logappend = true
#以守护程序的方式启用,即在后台运行
fork = true
#监听IP
bind_ip = 10.4.19.83,127.0.0.1
#端口,默认27017,可以自定义
port = 27017
#复制集名称
replSet = centalineMongo
#oplog大小上限,超过后会进行覆盖,若不设置默认为磁盘大小的5%
oplogSize = 10240
# 开启日志切割
logRotate = reopen
EOF
创建Slave节点(10.104.27.126:27017)配置文件
cat << \EOF > /opt/mongo/slave/conf/slave.conf
#数据文件存放目录
dbpath = /opt/mongo/slave/data
#日志文件存放目录
logpath = /opt/mongo/slave/logs/mongodb.lo
# 记录进程ID
pidfilepath = /opt/mongo/slave/slave.pid
#开启日志追加添加日志
logappend = true
#以守护程序的方式启用,即在后台运行
fork = true
#监听IP
bind_ip = 10.104.27.126,127.0.0.1
#端口,默认27017,可以自定义
port = 27017
#复制集名称
replSet = centalineMongo
#oplog大小上限,超过后会进行覆盖,若不设置默认为磁盘大小的5%
oplogSize = 10240
# 开启日志切割
logRotate = reopen
EOF
创建Arbiter节点(10.104.27.126:27018)配置文件
cat << \EOF > /opt/mongo/arbiter/conf/arbiter.conf
#数据文件存放目录
dbpath = /opt/mongo/arbiter/data
#日志文件存放目录
logpath = /opt/mongo/arbiter/logs/arbiter.lo
# 记录进程ID
pidfilepath = /opt/mongo/arbiter/arbiter.pid
#开启日志追加添加日志
logappend = true
#以守护程序的方式启用,即在后台运行
fork = true
#监听IP
bind_ip = 10.104.27.126,127.0.0.1
#端口,默认27017,可以自定义
port = 27018
#复制集名称
replSet = centalineMongo
#oplog大小上限,超过后会进行覆盖,若不设置默认为磁盘大小的5%
oplogSize = 10240
# 开启日志切割
logRotate = reopen
EOF
启动服务,启动顺序依次是【master,slave,arbiter】,不能错
/opt/mongo/bin/mongod -f /opt/mongo/master/conf/master.conf
/opt/mongo/bin/mongod -f /opt/mongo/slave/conf/slave.conf
/opt/mongo/bin/mongod -f /opt/mongo/arbiter/conf/arbiter.conf
初始化副本集
集当中的 _id:"centalineMongo"
,一定要与conf文件当中的replSet保持一致。
# 连接
/opt/mongo/bin/mongo 10.4.19.83:27017# 切换至admin库,初始化副本
use admin;
rs.initiate(
{_id:"centalineMongo",members:[{_id: 0,host: "10.4.19.83:27017"},{_id: 1,host: "10.104.27.126:27017"},{_id: 2,host: "10.104.27.126:27018",arbiterOnly: true}
]}
);
关闭服务顺序:
停止Slave节点(10.104.27.126:27017):
/opt/mongo/bin/mongo --port 27017 admin --eval "db.shutdownServer()"
停止Arbiter节点(10.104.27.126:27018):
/opt/mongo/bin/mongo --port 27018 admin --eval "db.shutdownServer()"
停止Master节点(10.4.19.83:27017):
/opt/mongo/bin/mongo --port 27017 admin --eval "db.shutdownServer()"
引用Reference
- CentOS8搭建nfs服务
- Kubernetes1.25.4版本安装
- kubeasz安装kubernetes1.25.5
- k8s一键安装redis单机版
- k8s一键安装mysql8单机版
- k8s部署springboot应用
- Docker安装及学习
- Docker制作springboot运行应用镜像
- Docker制作Java8环境镜像
- Docker安装Mysql5.7.31
- Docker安装Mysql8.1.0
- Elasticsearch单机版本安装
- Elasticsearch集群安装
- ELK安装
- Docker安装ELK
- zookeeper集群安装
- Nginx日志切割
- RabbitMQ集群安装
- Docker安装RabbitMQ单机版
- springboot集成prometheus+grafana
- windows11安装android应用
- Windows下多个JDK版本快速切换
- MongoDB主从仲裁模式安装
这篇关于MongoDB主从仲裁模式安装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!