Linux系统下使用shell一键安装redis并配置开机自启并实现日志监控和服务宕机重启

2 篇文章 0 订阅
2 篇文章 0 订阅

一定要在Linux下创建脚本,因为windows创建的脚本不能在linux上运行。
之前就遇到过在windows上创建然后通过rz命令上传结果运行报错.
首先我们开启虚拟机后需要进入到home目录下进行创建四个对应的shell文件
(因为定时任务需要确定脚本的启动路径,所以我们进入到home录下创建所有需要的脚本)

cd /home
touch installRedis.sh
vi installRedis.sh

然后把一下脚本内容写进去

安装并配置开机自启脚本

installRedis.sh

#! /bin/bash
yum install -y gcc g++ gcc-c++ make
yum -y install ntp ntpdate
ntpdate cn.pool.ntp.org
hwclock –w
cd /usr/local
wget http://download.redis.io/releases/redis-4.0.8.tar.gz
tar -zxvf redis-4.0.8.tar.gz
cd redis-4.0.8
make MALLOC=libc
cd src
make install PREFIX=/usr/local/redis
mkdir /usr/local/redis/etc
cd ../

mkdir -p /etc/redis
sed -i 's/daemonize no/daemonize yes/g' redis.conf
sed -i 's/protected-mode yes/protected-mode no/g' redis.conf
sed -i 's/bind 127.0.0.1/bind 0.0.0.0/g' redis.conf
cp redis.conf /etc/redis
cp redis.conf /usr/local/redis 
cat << EOF >> /etc/rc.local
/usr/local/redis/bin/redis-server /etc/redis/redis.conf
EOF
cat << EOF >> /etc/sysctl.conf
vm.overcommit_memory = 1
EOF

sed -i 's/\/etc\/redis\/${REDISPORT}.conf/\/etc\/redis\/redis.conf/g' /usr/local/redis-4.0.8/utils/redis_init_script

sed -i 's/CLIEXEC=\/usr\/local\/bin\/redis-cli/CLIEXEC=\/usr\/local\/redis\/bin\/redis-cli/g' /usr/local/redis-4.0.8/utils/redis_init_script

sed -i '/REDISPORT=6379/i #chkconfig: 2345 80 90' /usr/local/redis-4.0.8/utils/redis_init_script

sed -i 's/EXEC=\/usr\/local\/bin\/redis-server/EXEC=\/usr\/local\/redis\/bin\/redis-server/g' /usr/local/redis-4.0.8/utils/redis_init_script

cp -rf /usr/local/redis-4.0.8/utils/redis_init_script    /etc/init.d/redis
chmod +x /etc/init.d/redis
chkconfig --add redis
service redis start
mkdir /home/log
echo "10 0 * * * root /bin/sh  /home/rmLog.sh &  >/dev/null  2>&1" >> /etc/crontab
echo "*/1 * * * * root  /bin/sh /home/monitor.sh &  >/dev/null  2>&1" >> /etc/crontab
service crond start
chmod +x /home/monitor.sh
chmod +x /home/rmLog.sh
service crond restart

继续创建脚本

touch  byHand.sh
vi   byHand.sh

把以下对应内容写入进入shell脚本

手动重启redis脚本

byHand.sh

#! /bin/bash
ps -ef | grep redis | grep -v grep | cut -c 9-15 | xargs kill -9
cd /usr/local/redis/bin
./redis-server

继续创建脚本

touch  monitor.sh
vi   monitor.sh

把以下对应内容写入进入shell脚本

日志监控服务宕机重启脚本

monitor.sh

#!/bin/sh
mdate=`date +%R-%d-%m-%Y`
nowDate=`date +%Y-%m-%d`
LogFile=/home/log/$nowDate.log 
A=`ps -C redis-server --no-header | wc -l`
if [ $A -eq 0 ];then
    echo $(date +%F%n%T) "redis未启动,启动redis..." $mdate >> $LogFile
    cd /usr/local/redis/bin
    ./redis-server &
else
    echo $(date +%F%n%T) "redis正在运行..."   $mdate >> $LogFile
fi

继续创建脚本

touch  rmLog.sh
vi  rmLog.sh

把以下对应内容写入进入shell脚本

删除前七天日志脚本

rmLog.sh

#!/bin/sh
find /home/log/ -mtime 7 -name "*.log" -exec rm -rf {} \;

完成之后最后执行 脚本installRedis.sh完成redis 的安装配置以及日志监控(由于在installRedis.sh已经对其他两个shell文件设定了系统级别的定时任务,所以就不需要直接手动执行啦)

sh installRedis.sh

脚本下载地址
https://download.csdn.net/download/yyx999999/20687620

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值