network(){
ping -c2 www.baidu.com &>/dev/null
if [ $? -ne 0 ];then
echo "network is error...."
exit
fi
}
test(){
[ $? -ne 0 ] && echo "excution error....";exit
}
install_gcc(){
yum -y install gcc glibc glibc-kernheaders glibc-common glibc-devel make
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
echo "source /opt/rh/devtoolset-9/enable" >>/root/.bashrc
}
install_redis(){
wget http://download.redis.io/releases/redis-6.0.8.tar.gz
tar -zxvf redis-6.0.8.tar.gz -C /usr/local
mv /usr/local/redis-6.0.8 /usr/local/redis
cd /usr/local/redis
make && make all
}
redis_MS(){
mkdir -p /redis/{6380,6381,6382}/{conf,data,log}
cd /redis
cat >6380/conf/redis.conf <<eof
bind 0.0.0.0
port 6380
daemonize yes
pidfile /redis/6380/redis.pid
loglevel notice
logfile "/redis/6380/log/redis.log"
dbfilename dump.rdb
dir /redis/6380/data/
appendonly no
appendfilename "appendonly.aof"
appendfsync everysec
slowlog-log-slower-than 10000
slowlog-max-len 128
protected-mode no
#requirepass redis
eof
cat >6381/conf/redis.conf <<eof
bind 0.0.0.0
port 6381
daemonize yes
pidfile /redis/6381/redis.pid
loglevel notice
logfile "/redis/6381/log/redis.log"
dbfilename dump.rdb
dir /redis/6381/data/
appendonly no
appendfilename "appendonly.aof"
appendfsync everysec
slowlog-log-slower-than 10000
slowlog-max-len 128
protected-mode no
# 配置mast的认证密码
#requirepass redis
# 配置为 master的从,
replicaof 192.168.122.152 6380
eof
cat >6382/conf/redis.conf <<eof
bind 0.0.0.0
port 6382
daemonize yes
pidfile /redis/6382/redis.pid
loglevel notice
logfile "/redis/6382/log/redis.log"
dbfilename dump.rdb
dir /redis/6382/data/
appendonly no
appendfilename "appendonly.aof"
appendfsync everysec
slowlog-log-slower-than 10000
slowlog-max-len 128
protected-mode no
# 配置mast的认证密码
#requirepass redis
# 配置为 master的从,
replicaof 192.168.122.152 6380
eof
}
start_redis(){
/usr/local/redis/src/redis-server /redis/6380/conf/redis.conf
/usr/local/redis/src/redis-server /redis/6381/conf/redis.conf
/usr/local/redis/src/redis-server /redis/6382/conf/redis.conf
}
script_start_redis(){
cat >/usr/local/redis/start-redis.sh<<-EOF
REDIS_HOME=/usr/local/redis
REDIS_CONF=/redis
\$REDIS_HOME/src/redis-server \$REDIS_CONF/6380/conf/redis.conf
\$REDIS_HOME/src/redis-server \$REDIS_CONF/6381/conf/redis.conf
\$REDIS_HOME/src/redis-server \$REDIS_CONF/6382/conf/redis.conf
EOF
chmod +x /usr/local/redis-cluster/start-redis.sh
}
network
install_gcc
install_redis
redis_MS
start_redis