kavin

分享一个超实用的脚本,可以一键自动部署Redis的任意版本

kavin 运维技术 2022-11-20 507浏览 0

分享一个超实用的脚本,可以一键自动部署Redis的任意版本

今天给大家分享一个超级实用的脚本,一键自动安装部署Redis的任意版本,记住是任意版本哦!

脚本用法:chmod 755 redis-install.sh && sh redis-install.sh 4.0.10 (后面跟的是你需要的版本号,需要什么版本就写什么版本),我这里安装的4.0.10

具体脚本内容如下展示:

#!/usr/bin/bash
##redis任何版本全程自动化源码编译安装
##用法:shredis-install.sh4.0.10(后面跟的是你需要的版本号,需要什么版本就写什么版本),我这里安装的4.0.10
version=$1
usage(){
echo"usage:$0version"
}

if[$#-ne1]
then
usage
exit-1
fi

#Redis安装包下载
cd/usr/local/src
if[!-fredis-${version}.tar.gz]
then
curl-o/usr/local/src/redis-${version}.tar.gzhttp://download.redis.io/releases/redis-${version}.tar.gz
fi

#Redis依赖包安装
yumcleanall
yummakecachefast
yum-yinstallgccgcc-c++tcl

#编译Redis所需要的gcc
yum-yinstallcentos-release-scl
yum-yinstalldevtoolset-9-gccdevtoolset-9-gcc-c++devtoolset-9-binutils
source/opt/rh/devtoolset-9/enable
echo"source/opt/rh/devtoolset-9/enable">>/etc/profile
gcc--version

##内系统参数核优化
cat>>/etc/rc.d/rc.local<<"EOF"

##关闭Linux的THP(内存管理系统)通过使用更大的内存页面,来减少具有大量内存的计算机上的TLB的开销
if[-f/sys/kernel/mm/transparent_hugepage/enabled]
then
echonever>/sys/kernel/mm/transparent_hugepage/enabled
fi

if[-f/sys/kernel/mm/transparent_hugepage/defrag]
then
echonever>/sys/kernel/mm/transparent_hugepage/defrag
fi
EOF
chmodu+x/etc/rc.d/rc.local

if[-f/sys/kernel/mm/transparent_hugepage/enabled]
then
echonever>/sys/kernel/mm/transparent_hugepage/enabled
fi

if[-f/sys/kernel/mm/transparent_hugepage/defrag]
then
echonever>/sys/kernel/mm/transparent_hugepage/defrag
fi

cat>>/etc/sysctl.conf<<"EOF"

#Linux系统内核参数优化
net.core.somaxconn=2048
net.ipv4.tcp_max_syn_backlog=2048
vm.overcommit_memory=1
EOF
sysctl-p

cat>/etc/security/limits.conf<<"EOF"
rootsoftnofile65535
roothardnofile65535
*softnofile65535
*hardnofile65535
EOF

#Redis编译安装
cd/usr/local/src
tar-zxvfredis-${version}.tar.gz
cd/usr/local/src/redis-${version}
make
makePREFIX=/usr/local/redisinstall

#Redis基础配置
mkdir-p/usr/local/redis/{etc,logs,data}
egrep-v"^$|^#"/usr/local/src/redis-${version}/redis.conf>/usr/local/redis/etc/redis.conf
#sed-i"s/bind127.0.0.1/bind0.0.0.0/g"/usr/local/redis/etc/redis.conf
sed-i"s/protected-modeyes/protected-modeno/g"/usr/local/redis/etc/redis.conf
sed-i"s/daemonizeno/daemonizeyes/g"/usr/local/redis/etc/redis.conf
sed-i"s/pidfile\/var\/run\/redis_6379.pid/pidfile\/usr\/local\/redis\/redis.pid/g"/usr/local/redis/etc/redis.conf
sed-i"s/dir\.\//dir\/usr\/local\/redis\/data/g"/usr/local/redis/etc/redis.conf
sed-i"s/logfile\"\"/logfile\"\/usr\/local\/redis\/logs\/redis.log\"/g"/usr/local/redis/etc/redis.conf
sed-i"s/dbfilenamedump.rdb/dbfilenamedump.rdb/g"/usr/local/redis/etc/redis.conf
sed-i"s/appendfilename\"appendonly.aof\"/appendfilename\"appendonly.aof\"/g"/usr/local/redis/etc/redis.conf

#PATH配置
echo"exportPATH=${PATH}:/usr/local/redis/bin">>/etc/profile
source/etc/profile
#启动redis服务
/usr/local/redis/bin/redis-server/usr/local/redis/etc/redis.conf
#查看redis监听端口
netstat-tanp|grepredis

执行脚本后开始自动安装redis4.0.10

分享一个超实用的脚本,可以一键自动部署Redis的任意版本

自动安装Redis4.0.10所需要的的依赖包,如下图所示:

分享一个超实用的脚本,可以一键自动部署Redis的任意版本

自动开始解压:

分享一个超实用的脚本,可以一键自动部署Redis的任意版本

开始自动make

分享一个超实用的脚本,可以一键自动部署Redis的任意版本

开始自动make install

分享一个超实用的脚本,可以一键自动部署Redis的任意版本

安装完成,Redis服务已成功启动:

分享一个超实用的脚本,可以一键自动部署Redis的任意版本

到这里整改自动安装脚本已成功执行完毕,我们可以收到通过ps –ef|grep redis来查看服务状态以及监听端口。

分享一个超实用的脚本,可以一键自动部署Redis的任意版本

登陆redis,执行简单的语句:

分享一个超实用的脚本,可以一键自动部署Redis的任意版本

继续浏览有关 Redis 的文章
发表评论