Redis自動安裝部署
本文總共分為4個部分:
redis自動安裝指令碼目錄結構說明;
redis自動安裝指令碼內容;
redis的作業系統服務指令碼說明;
本文引用的資料連結地址。
說明:本文未涉及redis記憶體 Clerk部分的內容。
第一部分
Redis自動安裝指令碼目錄結構說明:
# ls 查看目前的目錄包含以下3個檔案
-- install_redis.sh # redis自動安裝指令碼
-- redis-2.8.9.tar.gz # redis安裝包(需make,make test,make install)
-- redis_service_script # redis 作業系統服務指令碼(用於配置redis服務開機自啟動,以及redis服務管理命令)
第二部分
###########################redis自動安裝指令碼內容開始(install_redis.sh)######################
#!/bin/bash # Version: v1.0 by JiangYanguo on 2014-05-14# Desc: auto make, make install and configure redis REDIS_CONF="/etc/redis.conf" # 檢查redis的安裝包是否存在if [ "`ls redis-*.tar.gz >/dev/null 2>&1 ; echo $?`" -ne 0 ]then echo "Error: redis*.tar.gz file doesn't exists." exitelse REDIS_PACKAGE="`ls -ltr redis-*.tar.gz | head -1 | awk '{print $NF}' `"fi # 安裝redis,make,make test,make install# install redis echo "Info: install redis..." tar zxf ${REDIS_PACKAGE} REDIS_DIR="`ls -ltr | egrep '^d' | awk '{print $NF}'`" cd ${REDIS_DIR} pwd make make test if [ "$?" -nt 0 ];then echo "Some dependent packages are needed." exitfi make install echo "Info: set ${REDIS_CONF} ..." cd .. # 設定redis設定檔,data目錄為/home/redis# set /etc/redis.confcp redis.conf /etc/ sed -i 's/^daemonize(.*)/#daemonize\1/g' ${REDIS_CONF}sed -i '2 adaemonize yes' ${REDIS_CONF} sed -i 's/^dir(.*)/#dir\1/g' ${REDIS_CONF}sed -i '2 adir \/home\/redis\/' ${REDIS_CONF} # set memory allocate method[ "`egrep 'vm.overcommit_memory=1' /etc/sysctl.conf | wc -l`" -eq 0 ] && echo "vm.overcommit_memory=1" >> /etc/sysctl.conf/sbin/sysctl -p # add redis useruseradd redis # set redis data dirmkdir -p /home/redis/chown -R redis.redis /home/redis #設定redis服務開機自啟動,也是redis的管理服務# set redis serviceecho "Info: set redis service ..."cp redis_service_script /etc/init.d/redischmod +x /etc/init.d/redischkconfig --add redischkconfig redis on #echo "Info: finish installing redis."echo ""
本欄目更多精彩內容:http://www.bianceng.cnhttp://www.bianceng.cn/webkf/tools/