Mongodb集群搭建

Mongodb集群搭建
Mongodb 下载
下载地址:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.6.17.tgz 注:下载链接、无需访问,点开会自动下载
官网地址:https://www.mongodb.com/download-center/community
本实例 		(版本3.6.17):
主节点: 	100.94.56.24
从节点1:	100.94.56.25
从节点2:	100.94.56.26
上传解压
tar -xvf mongodb-linux-x86_64-rhel70-3.6.17.tgz -C /data/
cd /data/
ln -sv mongodb-linux-x86_64-rhel70-3.6.17 mongodb
创建用户与目录
useradd mongodb
mkdir -pv /data/mongodb/{log,etc,data,pid}
创建配置文件
vim /data/mongodb/etc/mongodb_27017.conf
logpath=/data/ mongodb/log/mongodb_27017.log 	#跟端口保持一致,副本节1点端口27018,副本节点2端口27019
pidfilepath=/data/ mongodb/pid/mongodb_27017.pid
logappend=true
bind_ip=100.94.56.24  #不同节点监听的IP需要修改
port=27017
fork=true   #守护进程的方式运行
replSet=osmongodb
dbpath=/data/mongodb/data/
oplogSize=10000
noprealloc=true  #禁用预分配的数据文件
shardsvr=true   #分片
directoryperdb=true #数据目录存储模式,每个数据库的文件存储在DBPATH指定目录的不同的文件夹中
启动mongodb
授权目录给指定用户chown -R mongodb.mongodb /data/mongodb/
切换用户 
passwd mongodb ; su - mongodb 
/data/mongodb/bin/mongod -f /data/mongodb/etc/mongodb_27017.conf

副本节1、副本节点2安装配置方法一样,文件跟端口名一样
初始化副本节
主节点为例:
1.	cd /data/mongodb/
2.	bin/mongo --host 100.94.56.24 --port 27017
3.	config = {_id:'osmongodb',members: [{_id: 0, host: '100.94.56.24:27017'},{_id: 1, host:'100.94.56.25:27018'},{_id: 2, host:'100.94.56.26:27019'}]}
4.	rs.initiate(config) #初始化副本集
5.	rs.status() #查看副本集状态

注:从节点需要查询数据需执行:rs.slaveOk({})

创建管理用户在主节点上操作
/data/mongodb/bin/mongo --host 100.94.56.24 --port 27017
admin = db.getSiblingDB("admin")
admin.createUser(
      {
        user: "root",
        pwd: "PassWord123",
        roles: [ { role: "root", db: "admin" } ]
      }
)
开启认证
主节点创建keyFile文件
openssl rand -base64 666 > /data/mongodb/etc/keyfile
chmod 600 /data/mongodb/etc/keyfile
拷贝keyFile文件到其它节点
scp /data/mongodb/etc/keyfile mongodb@节点2: /data/mongodb/etc/
scp /data/mongodb/etc/keyfile mongodb@节点3: /data/mongodb/etc/
修改配置文件
vim /data/mongodb/etc/mongodb_27017.conf (所有节点都要操作)
增加如下配置
auth=true
keyFile=/data/mongodb/etc/keyfile


关闭mongodb
cd /data/mongodb
bin/mongod --shutdown  --dbpath=/data/mongodb/data/
启动mongodb
主节点:
/data/mongodb/bin/mongod -f /data/mongodb/etc/mongodb_27017.conf
	副本节点1
/data/mongodb/bin/mongod -f /data/mongodb/etc/mongodb_27018.conf
	副本节点2
/data/mongodb/bin/mongod -f /data/mongodb/etc/mongodb_27019.conf

创建业务用户
/data/mongodb/bin/mongo --host 192.168.3.28 --port 27017
 use admin;
db.auth("root","PassWord123")
	use testdb;
	db.createUser({user:"jack",pwd:"PassWord321",roles:[{role:"readWrite",db:"testdb"}]})
	验证用户
		db.auth("jack","PassWord321")
插入数据验证
use testdb
db.auth("jack","PassWord321")
db.name.insert({name:'jack',age:'20'})
配置环境变量
cat > /etc/profile.d/mongo.sh <<EOF
PATH=\$PATH:/data/mongodb/bin
export PATH
EOF
source /etc/profile.d/mongo.sh

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值