Redis如何一键部署脚本
时间:2021-08-17 07:33:26|栏目:Redis|点击: 次
先将安装包拖入/opt目录
注意:这里的脚本bind修改后为 0.0.0.0
bind修改后为bind 127.0.0.1 +服务器IP在下面
#!/bin/bash #yum源 echo -e "\033[31m =====正在验证当前为仅主机还是NAT模式===== \033[0m" ping -c1 -W1 www.baidu.com &> /dev/null if [ $? -eq 0 ];then echo -e "\033[31m 检测当前为NAT模式,为您配置在线yum源 \033[0m" mkdir -p /etc/yum.repos.d/repo.bak mv -f /etc/yum.repos.d/* /etc/yum.repos.d/repo.bak &> /dev/null wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo &> /dev/null yum clean all &> /dev/null yum list &> /dev/null echo -e "\033[31m 在线源已配置完成 \033[0m" else echo -e "\033[31m 检测当前为仅主机模式,为您配置本地yum源 \033[0m" mount /dev/sr0 /mnt &> /dev/null cd /etc/yum.repos.d/ mkdir -p /etc/yum.repos.d/repo.bak mv -f /etc/yum.repos.d/* /etc/yum.repos.d/repo.bak &> /dev/null echo '[local] name=local baseurl=file:///mnt enabled=1 gpgcheck=0' > /etc/yum.repos.d/local.repo yum clean all &> /dev/null yum makecache &> /dev/null df -h | grep "/mnt" if [ $? -ne 0 ];then echo -e "\033[31m 检测当前为仅主机模式,但光盘未连接! \033[0m" else echo -e "\033[31m 本地yum源已配置完成 \033[0m" fi fi #关闭防火墙 systemctl stop firewalld setenforce 0 yum install -y gcc gcc-c++ make rpm -q expect rpm -q tcl yum -y install expect cd /opt tar zxvf redis-5.0.7.tar.gz -C /opt/ cd /opt/redis-5.0.7/ make make PREFIX=/usr/local/redis install #由于Redis源码包中直接提供了Makefile 文件,所以在解压完软件包后,不用先执行./configure进行配置,可直接执行make与make install 命令进行安装。 #在/utils里执行软件包提供的install_server.sh脚本文件设置Redis服务所需要的相关配置文件 cd /opt/redis-5.0.7/utils #开始免交换执行 /usr/bin/expect <<EOF #expect开始标志 spawn ./install_server.sh #Please select the redis port for this instance: [6379] expect "instance" send "\r" #Please select the redis config file name [/etc/redis/6379.conf] expect "config" send "\r" #Please select the redis log file name [/var/log/redis_6379.log] expect "log" send "\r" #Please select the data directory for this instance [/var/lib/redis/6379] expect "data" send "\r" #Please select the redis executable path [] expect "executable" send "/usr/local/redis/bin/redis-server\r" #Is this ok? Then press ENTER to go on or Ctrl-C to abort. expect "abort" send "\r" expect eof EOF ln -s /usr/local/redis/bin/* /usr/local/bin/ netstat -natp | grep redis /etc/init.d/redis_6379 restart /etc/init.d/redis_6379 status sed -i '/bind 127.0.0.1/c bind 0.0.0.0' /etc/redis/6379.conf sed -i 's/appendonly no/appendonly yes/' /etc/redis/6379.conf /etc/init.d/redis_6379 restart /etc/init.d/redis_6379 status
bind修改后为bind 127.0.0.1 +服务器IP脚本
#!/bin/bash #yum源 echo -e "\033[31m =====正在验证当前为仅主机还是NAT模式===== \033[0m" ping -c1 -W1 www.baidu.com &> /dev/null if [ $? -eq 0 ];then echo -e "\033[31m 检测当前为NAT模式,为您配置在线yum源 \033[0m" mkdir -p /etc/yum.repos.d/repo.bak mv -f /etc/yum.repos.d/* /etc/yum.repos.d/repo.bak &> /dev/null wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo &> /dev/null yum clean all &> /dev/null yum list &> /dev/null echo -e "\033[31m 在线源已配置完成 \033[0m" else echo -e "\033[31m 检测当前为仅主机模式,为您配置本地yum源 \033[0m" mount /dev/sr0 /mnt &> /dev/null cd /etc/yum.repos.d/ mkdir -p /etc/yum.repos.d/repo.bak mv -f /etc/yum.repos.d/* /etc/yum.repos.d/repo.bak &> /dev/null echo '[local] name=local baseurl=file:///mnt enabled=1 gpgcheck=0' > /etc/yum.repos.d/local.repo yum clean all &> /dev/null yum makecache &> /dev/null df -h | grep "/mnt" if [ $? -ne 0 ];then echo -e "\033[31m 检测当前为仅主机模式,但光盘未连接! \033[0m" else echo -e "\033[31m 本地yum源已配置完成 \033[0m" fi fi #防火墙关闭 systemctl stop firewalld setenforce 0 yum install -y gcc gcc-c++ make rpm -q expect rpm -q tcl yum -y install expect cd /opt tar zxvf redis-5.0.7.tar.gz -C /opt/ cd /opt/redis-5.0.7/ make make PREFIX=/usr/local/redis install #由于Redis源码包中直接提供了Makefile 文件,所以在解压完软件包后,不用先执行./configure进行配置,可直接执行make与make install 命令进行安装。 #在/utils里执行软件包提供的install_server.sh脚本文件设置Redis服务所需要的相关配置文件 cd /opt/redis-5.0.7/utils #开始免交换执行 /usr/bin/expect <<EOF #expect开始标志 spawn ./install_server.sh #Please select the redis port for this instance: [6379] expect "instance" send "\r" #Please select the redis config file name [/etc/redis/6379.conf] expect "config" send "\r" #Please select the redis log file name [/var/log/redis_6379.log] expect "log" send "\r" #Please select the data directory for this instance [/var/lib/redis/6379] expect "data" send "\r" #Please select the redis executable path [] expect "executable" send "/usr/local/redis/bin/redis-server\r" #Is this ok? Then press ENTER to go on or Ctrl-C to abort. expect "abort" send "\r" expect eof EOF ln -s /usr/local/redis/bin/* /usr/local/bin/ netstat -natp | grep redis /etc/init.d/redis_6379 restart /etc/init.d/redis_6379 status xyw=$(ip a | grep "ens33" | awk NR==2'{print$2}' |awk -F/ '{print$1}') sed -i "/bind 127.0.0.1/c bind 127.0.0.1 $xyw" /etc/redis/6379.conf sed -i 's/appendonly no/appendonly yes/' /etc/redis/6379.conf /etc/init.d/redis_6379 restart /etc/init.d/redis_6379 status
上一篇:Win10下 Redis启动 错误1067导致进程意外终止的解决方法
栏 目:Redis
本文标题:Redis如何一键部署脚本
本文地址:http://www.codeinn.net/misctech/167549.html