Linux中安装mongodb并使用keepalive

linux 中 mongodb的安装与keepalive

安装mongodb : 有主机1:mongodb-18 主机2:mongodb-19

#下载安装包
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.6.tgz
#解压
tar xf mongodb-linux-x86_64-rhel70-4.0.6.tgz
mv mongodb-linux-x86_64-rhel70-4.0.6/ /usr/local/mongodb
#配置最大文件打开数量和用户数量
ulimit -n 65535
ulimit -u 65535
#查看一下
ulimit -n
ulimit -u
#创建需要的目录
[root@mongodb ~]# mkdir -p /data/mongodb1
[root@mongodb ~]# mkdir -p /data/logs/mongodb
[root@mongodb ~]# touch /data/logs/mongodb/mongodb1.log
[root@mongodb ~]# cd /usr/local/mongodb/
[root@mongodb mongodb]# ls
bin LICENSE-Community.txt MPL-2 README THIRD-PARTY-NOTICES
#创建mongodb配置文件
[root@mongodb mongodb]# mkdir conf
[root@mongodb mongodb]# vim conf/mongodb1.conf

port=27017
dbpath=/data/mongodb1
logpath=/data/logs/mongodb/mongodb1.log
logappend=true
fork=true
maxConns=5000
storageEngine=mmapv1

#启动mongodb数据库:
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf
netstat -anpt |grep mongod
#查看一下端口是否打开
netstat -ntl
#开机自启动:
vim /etc/rc.local
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf
#连接数据库:/usr/local/mongodb/bin/mongo

> show dbs

admin 0.078GB
config 0.078GB
local 0.078GB

> exit

#关闭服务:
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf --shutdown

#两台主机一样的配置,用来实现keepalive

安装keepalive

yum install keepalived

配置keepalive:在mongodb-18 上的配置==============
vim /etc/keepalived/keepalived.conf

! Configuration File for keepalived
global_defs {
   router_id  m18       # 自身id,不要与小组其他成员重复
}

vrrp_instance VI_1 {
    state BACKUP
    interface ens33
    virtual_router_id  80    ##vrrp小组id
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.52.99
    }
}

mongodb-19 上的配置: ==============
vim /etc/keepalived/keepalived.conf

! Configuration File for keepalived
global_defs {
   router_id  m19      # 自身id,不要与小组其他成员重复
}

vrrp_instance VI_1 {
    state BACKUP
    interface ens33
    virtual_router_id  80    ##vrrp小组id
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.52.99
    }
}

联动脚本, 两台机器都编写此脚本并在后台 执行: ==============

[root@mongodb-18 /test]# vim keepalive.sh

#!/bin/bash

while [ 1 -lt 2 ]
do
sleep 3
  m_port=`netstat  -ntl | grep -E "(\<27017\>)"  | wc -l`
  m_ps=`ps axu | grep mongodb | grep -v "grep" | wc -l`

  if [ $m_port -eq 1 ] && [ $m_ps -eq 1 ]
  then
    systemctl  start keepalived
 else
    systemctl  stop keepalived
  fi
done

#两台主机一样的配置脚本

#赋权限,执行脚本在后台运行
[root@mongodb-18 /test]# chmod u+x keepalive.sh
[root@mongodb-18 /test]# nohup ./keepalive.sh &
#查看一下VIP在哪台主机上
ip a
#停止抢到VIP主机的mongodb服务,VIP自动漂移到另一台主机上则为成功。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值