MongoManager是一组用于管理MongoDB集群启动和配置的Shell脚本
目前支持Primary Secondary Arbiter的配置启动
包括Shard和单独ReplicaSet的情况
项目位于https://github.com/tullyliu/MongoManager
MongoDB集群管理脚本使用说明
1.原理:利用ssh远程操作其他机器,完成相关操作
2.准备:
选择主控机,执行以下命令完成ssh key复制
cd ~/.ssh
cat id_dsa.pub | ssh user@remotehost 'cd .ssh;
脚本需要利用hostname –i获取服务器各自的ip,请确保各个服务器该命令返回的结果正确性
3.配置文件为 common.sh和conf.***.sh 其中***为任意名字,为后续脚本提供参数用
DBHOSTS=("domain1 " "domain2") #MongoDB主库的host
RS_DBHOSTS=(${DBHOSTS[*]}) # MongoDB复制库的ho
AB_DBHOSTS=(${DBHOSTS[*]}) # MongoDB arbit
CFGHOSTS=(“domain1”) #MongoDB shard的
MSHOSTS=(“domain1” ) #MongoDB shard的
USER="test" #MongoDB所在服务器使用
MDB="/home/$USER/mongodb" #MongoDB所在服务器的安
DBPATH="$MDB/data/shard" #MongodDB数据文件存放
RS_DBPATH="$MDB/data/replica" #MongodDB从库数据文件
AB_DBPATH="$MDB/data/arbiter" #MongodDB Arbit
CFGPATH="$MDB/data/config" #MongodDB Confi
LOGPATH="$MDB/data" #MongoDB日志目录
DBPORT="25050" #MongoDB主库端口
RS_DBPORT="25353" #MongoDB从库端口
AB_DBPORT="25454" #MongoDB Arbite
CFGPORT="25151" #MongoDB Config
MSPORT="25252" #MongoDB Mongos
AUTO_SHARD=false #是否自动shard
4.管理脚本说明
sh proc_start_mongodrs.sh test #使用conf.test.sh
sh proc_config_rs.sh test #配置mongodb的复本集,
sh proc_start_config.sh test #Shard情况下,启动con
sh proc_start_mongos.sh test #Shard情况下,启动mon
sh proc_config_shards.sh test #Shard情况下,配置sha
sh proc_stop.sh test #安全关闭mongodb集群,
sh proc_manage_clean.sh test #删除mongodb的数据目录