mongo-集群脚本部署
2022-09-21 本文已影响0人
李哈哈_2c85
前置条件:
1、配置文件目录、日志目录、数据目录创建
2、conf配置文件、key文件
3、配置完成后打包;脚本包含了部分数据导入
#! /bin/bash
#2022-0919-lxt
mongo1=$1
mongo2=$2
mongo3=$3
if [ $# -lt 3 ];then
echo "$0 mongo1ip mongo2ip mongo3ip"
exit 1
fi
tar -zxvf mongo-2.6.9.tgz -C /data/
tar -zxvf mongodata.tgz
/data/mongodb/bin/mongod -f /data/mongodb/conf/mongod.conf
echo "mongo-start">>/etc/rc.local
echo "/data/mongodb/bin/mongod -f /data/mongodb/conf/mongod.conf">>/etc/rc.local
read -p "确认从节点是否启动 [ y | n ]: " node
if [ $node == "y" ];then
echo 'cfg={ _id:"rs0", members:[{_id:0,host:"'$mongo1:27017'","priority":3},{_id:1,host:"'$mongo2:27017'","priority":1},{_id:2,host:"'$mongo3:27017'","priority":1}]};rs.initiate(cfg)'|/data/mongodb/bin/mongo
echo 'rs.status()'|/data/mongodb/bin/mongo
echo 'db.createUser({user:"root",pwd:"system@123",roles: [ { role:"root", db:"admin"} ]})'|/data/mongodb/bin/mongo admin
echo 'db.createUser({user:"gooagoo",pwd:"gooagoo",roles: [ { role:"root", db:"admin"} ]})'|/data/mongodb/bin/mongo admin
sed -i s/#auth/auth/g /data/mongodb/conf/mongod.conf
echo 'db.shutdownServer()'| /data/mongodb/bin/mongo -uroot -psystem@123 --authenticationDatabase admin admin
/data/mongodb/bin/mongod -f /data/mongodb/conf/mongod.conf
sleep 10
echo "import db_data"
/data/mongodb/bin/mongorestore -ugooagoo -pgooagoo --authenticationDatabase admin ./mongodata/
echo 'show dbs;' |/data/mongodb/bin/mongo -ugooagoo -pgooagoo --authenticationDatabase admin
echo "从节点开启认证--重启mongo服务;检查数据库同步情况"
else
echo "解压启动从节点mongo"
exit 1
fi