#!/bin/bash
# author:Alves
# email :412301546@qq.com
cd /root
#mkdir dong
#cd /root/dong
wget http://download.redis.io/releases/redis-4.0.11.tar.gz
tar -zxvf redis-4.0.11.tar.gz
ln -s redis-4.0.11 redis
cd redis
yum -y install gcc gcc-c++ libstdc++-devel
make MALLOC=libc
make install
mkdir config
mkdir data
grep -v "#" redis.conf |grep -v ^$ > /root/redis/config/redis_7000.conf
sed -i 's/bind/#bind/g' /root/redis/config/redis_7000.conf
sed -i 's/save /#save /g' /root/redis/config/redis_7000.conf
sed -i 's/port/#port/g' /root/redis/config/redis_7000.conf
sed -i 'N;2i\port 7000' /root/redis/config/redis_7000.conf
sed -i 's/daemonize/#daemonize/g' /root/redis/config/redis_7000.conf
sed -i 'N;2i\daemonize yes' /root/redis/config/redis_7000.conf
sed -i 's/6379.pid/7000.pid/g' /root/redis/config/redis_7000.conf
sed -i 's/logfile/#logfile/g' /root/redis/config/redis_7000.conf
sed -i 'N;2i\logfile "redis_7000.log"' /root/redis/config/redis_7000.conf
sed -i 's/dump.rdb/dump_7000.rdb/g' /root/redis/config/redis_7000.conf
sed -i 's/dir/#dir/g' /root/redis/config/redis_7000.conf
sed -i 'N;2i\dir "/root/redis/data"' /root/redis/config/redis_7000.conf
sed -i 's/protected-mode/#protected-mode/g' /root/redis/config/redis_7000.conf
sed -i 'N;2i\protected-mode no' /root/redis/config/redis_7000.conf
read -p "请输入本机ip:" myip
while :
do
read -p "请为您的 Redis 服务配置密码:" pwd
if [ ${#pwd} -lt 6 ]
then
echo "密码不能少于6位!"
continue
else
sed -i 'N;2i\requirepass '"$pwd"'' /root/redis/config/redis_7000.conf
sed -i 'N;2i\#masterauth '"$pwd"'' /root/redis/config/redis_7000.conf
##配置 sentinel
echo "port 26379" > /root/redis/config/sentinel_26379.conf
echo "daemonize yes" >> /root/redis/config/sentinel_26379.conf
echo 'dir "/root/redis/data"' >> /root/redis/config/sentinel_26379.conf
echo 'logfile "sentinel_26379.log"' >> /root/redis/config/sentinel_26379.conf
echo "sentinel monitor mymaster $myip 7000 2" >> /root/redis/config/sentinel_26379.conf
echo "sentinel auth-pass mymaster $pwd" >> /root/redis/config/sentinel_26379.conf
echo "protected-mode no" >> /root/redis/config/sentinel_26379.conf
echo "sentinel down-after-milliseconds mymaster 30000" >> /root/redis/config/sentinel_26379.conf
echo "sentinel parallel-syncs mymaster 1" >> /root/redis/config/sentinel_26379.conf
echo "sentinel failover-timeout mymaster 180000" >> /root/redis/config/sentinel_26379.conf
sed 's/26379/26380/g' /root/redis/config/sentinel_26379.conf > /root/redis/config/sentinel_26380.conf
sed 's/26379/26381/g' /root/redis/config/sentinel_26379.conf > /root/redis/config/sentinel_26381.conf
echo "配置成功"
break
fi
done
cd /root/redis/config/
sed 's/7000/7001/g' /root/redis/config/redis_7000.conf > /root/redis/config/redis_7001.conf
sed -i 'N;2i\slaveof '"$myip"' 7000' /root/redis/config/redis_7001.conf
sed -i 's/#masterauth/masterauth/g' /root/redis/config/redis_7001.conf
sed 's/7001/7002/g' /root/redis/config/redis_7001.conf > /root/redis/config/redis_7002.conf
echo "Redis 主从复制配置成功"
cd /root/redis/src/
./redis-server /root/redis/config/redis_7000.conf
./redis-server /root/redis/config/redis_7001.conf
./redis-server /root/redis/config/redis_7002.conf
echo "Redis 主从复制服务启动成功"
cd /root/redis/src/
./redis-sentinel /root/redis/config/sentinel_26379.conf
./redis-sentinel /root/redis/config/sentinel_26380.conf
./redis-sentinel /root/redis/config/sentinel_26381.conf
echo "Sentinels 服务启动成功"
echo "完成!"
AlvesWeiDong
- 粉丝: 13
- 资源: 7
会员权益专享
最新资源
- 几款在线文本编辑器的比较(jquery文本编辑器) 好学网 vhaoxue.docx
- 几款在线文本编辑器的比较(jquery文本编辑器) 好学网 vhaoxue.pdf
- 全球首个微信小程序应用号开发教程6.pdf
- 全业务积分系统概要设计(DOC65页).pdf
- Kinco步科低压伺服驱动器使用手册20201126.pdf
- Kinco步科低压伺服驱动器使用手册20181115.pdf
- 由于公司官网用户注册的手机验证
- LICHE立撤拉綫编码器快速操作手册V3.0
- 全国青少年软件编程(Python)等级考试试卷(三级)精品(1)练习.pdf
- 全国计算机等级考试三级嵌入式系统开发技术题库第八套(整理过).pdf
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈


