Mongodb副本集的部署
1.修改主机名
将第2、3台服务器的主机名改为nosql02、nosql03
注意:要确保3台服务器的防火墙都是关闭的状态!!!!!!
2.新建用户(nosql02、nosql03都要进行该操作)
#设置用户名
useradd user_mongo
#设置用户密码
passwd user_mongo
3.用户授权(nosql02、nosql03都要进行该操作)
给普通用户授权:使用root用户(主要!!!!!!)
注意:如果没有安装vim,可以使用yum -y install vim安装
vim /etc/sudoers
添加以下内容:
user_mongo ALL=(ALL) ALL
4.创建用于存放软件和安装软件的目录(nosql02、nosql03都要进行该操作)
1.创建下载软件的目录:
mkdir -p /opt/software
2.创建安装软件的目录:
mkdir -p /opt/servers
3.更改以上两个目录为普通用户权限:
chown user_mongo:user_mongo /opt/software
chown user_mongo:user_mongo /opt/servers
或者直接将/opt这个目录下的所有文件都改为普通用户的权限:
chown -R user_mongo:user_mongo /opt
5.host映射配置(三台都要配置)
vi /etc/hosts
末尾添加如下内容:
192.168.106.130 nosql01
192.168.106.140 nosql02
192.168.106.150 nosql03
6.免密操作(nosql01、nosql02、nosql03都要进行该操作)
su user_mongo
1.每个服务器各自生成自己的密码 (公钥跟私钥)
ssh-keygen
2.把密码告诉别人 (记得告诉自己一份,应用公钥跟私钥)
ssh-copy-id nosql01
ssh-copy-id nosql02
ssh-copy-id nosql03
7.分发数据库
scp -r /opt/servers/mongodb/ nosql02:/opt/servers/
scp -r /opt/servers/mongodb/ nosql03:/opt/servers/
8.设置环境变量
su root
vim /etc/profile
添加以下内容:
#配置环境变量
MONGODB_HOME=/opt/servers/mongodb
export PATH=$PATH:$MONGODB_HOME/bin
使环境变量生效
source /etc/profile
9.以副本集模式启动Mongodb
nosql01启动
mongod --replSet nosql --dbpath=/opt/servers/mongodb/data/ --logpath=/opt/servers/mongodb/logs/mongologs.log --port 27017 --bind_ip nosql01 --logappend --fork
nosql02启动
mongod --replSet nosql --dbpath=/opt/servers/mongodb/data/ --logpath=/opt/servers/mongodb/logs/mongologs.log --port 27017 --bind_ip nosql02 --logappend --fork
nosql03启动
mongod --replSet nosql --dbpath=/opt/servers/mongodb/data/ --logpath=/opt/servers/mongodb/logs/mongologs.log --port 27017 --bind_ip nosql03 --logappend --fork
10.副本集的初始化
1.登录mongodb客户端(nosql01)
mongo --host nosql01 --port 27017
2.执行副本集初始化操作
rs.initiate()
3.将服务器nosql02中的MongoDB以副本节点的角色添加到副本集中。
rs.add("nosql02:27017")
4.将服务器nosql03中的MongoDB以副本节点的角色添加到副本集中。
rs.add("nosql03:27017")
5.启动另外两台mongodb服务
mongo --host nosql02 --port 27017
mongo --host nosql03 --port 27017
11.关闭副本集
建议:先关闭副本节点(nosql02、nosql03),再关闭主节点
1.查看Mongodb的服务进程
ps -ef|grep mongod
2.结束进程
kill -2 进程号
kill -9 进程号(谨慎使用)