设为首页 收藏本站
查看: 884|回复: 0

[经验分享] redis自动安装脚本(只安装redis)

[复制链接]

尚未签到

发表于 2018-11-5 10:33:01 | 显示全部楼层 |阅读模式
  Redis自动安装部署
  本文总共分为4个部分:
  redis自动安装脚本目录结构说明;
  redis自动安装脚本内容;
  redis的操作系统服务脚本说明;
  本文引用的资料链接地址。
  说明:本文未涉及redis内存分配器部分的内容。
  第一部分
  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."
  exit
  else
  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."
  exit
  fi
  make install
  echo "Info: set ${REDIS_CONF} ..."
  cd ..
  # 设置redis配置文件,data目录为/home/redis
  # set /etc/redis.conf
  cp 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 user
  useradd redis
  # set redis data dir
  mkdir -p /home/redis/
  chown -R redis.redis /home/redis
  #设置redis服务开机自启动,也是redis的管理服务
  # set redis service
  echo "Info: set redis service ..."
  cp redis_service_script /etc/init.d/redis
  chmod +x /etc/init.d/redis
  chkconfig --add redis
  chkconfig redis on
  #
  echo "Info: finish installing redis."
  echo ""
  ########################## redis自动安装脚本内容结束 (install_redis.sh)#####################################
  第三部分
  ########################## redis的操作系统服务脚本内容开始(redis_service_script)#########################################
  #!/bin/bash
  # redis - Startup script for redis
  # chkconfig: 2345 85 15234585 15
  # description: startup script fZ喎"http://www.iyunv.com/kf/ware/vc/" target="_blank" class="keylink">vciByZWRpczxicj4KIyBwcm9jZXNzbmFtZTogcmVkaXMtc2VydmVyPGJyPgojIGNvbmZpZzogL2V0Yy9yZWRpcy5jb25mPGJyPgojIHBpZGZpbGU6IC92YXIvcnVuL3JlZGlzLnBpZDxicj4KIyBkYXRhZmlsZXBhdGg6IC9ob21lL3JlZGlzLzxicj4KPGJyPgojPGJyPgpSRURJU1BPUlQ9NjM3OTxicj4KRVhFQz0vdXNyL2xvY2FsL2Jpbi9yZWRpcy1zZXJ2ZXI8YnI+ClJFRElTX0NMST0vdXNyL2xvY2FsL2Jpbi9yZWRpcy1jbGk8YnI+CiAgIDxicj4KUElERklMRT0mcXVvdDsvdmFyL3J1bi9yZWRpcy5waWQmcXVvdDs8YnI+CkNPTkY9JnF1b3Q7L2V0Yy9yZWRpcy5jb25mJnF1b3Q7PGJyPgo8YnI+CiMjIHN0YXJ0PGJyPgpmdW5jdGlvbiBzdGFydCgpezxicj4KICBlY2hvICZxdW90O0luZm86IHN0YXJ0IHJlZGlzLi4uJnF1b3Q7PGJyPgogICBpZiBbIC1mICRQSURGSUxFIF08YnI+CiAgIHRoZW48YnI+CiAgICAgICBlY2hvICZxdW90OyRQSURGSUxFIGV4aXN0cywgcHJvY2VzcyBpcyBhbHJlYWR5IHJ1bm5pbmcgb3IgY3Jhc2hlZCZxdW90Ozxicj4KICAgZWxzZTxicj4KICAgICAgIGVjaG8gJnF1b3Q7U3RhcnRpbmcgUmVkaXMgc2VydmVyLi4uJnF1b3Q7PGJyPgogICAgICAgJEVYRUMgJENPTkY8YnI+CiAgIGZpPGJyPgogICBpZiBbICZxdW90OyQ/JnF1b3Q7PSZxdW90OzAmcXVvdDsgXSA8YnI+CiAgIHRoZW48YnI+CiAgICAgICBlY2hvICZxdW90O1JlZGlzIGlzIHJ1bm5pbmcuLi4mcXVvdDs8YnI+CiAgIGZpPGJyPgp9PGJyPgo8YnI+CiMjIHN0b3A8YnI+CmZ1bmN0aW9uIHN0b3AoKXs8YnI+CiAgZWNobyAmcXVvdDtJbmZvOiBzdG9wIHJlZGlzLi4uJnF1b3Q7PGJyPgogIGlmIFsgISAtZiAkUElERklMRSBdO3RoZW48YnI+CiAgICAgIGVjaG8gJnF1b3Q7JFBJREZJTEUgZG9lcyBub3QgZXhpc3QsIHByb2Nlc3MgaXMgbm90IHJ1bm5pbmcmcXVvdDs8YnI+CiAgZWxzZTxicj4KICAgICAgUElEPSQoY2F0ICRQSURGSUxFKTxicj4KICAgICAgZWNobyAmcXVvdDtTdG9wcGluZyAuLi4mcXVvdDs8YnI+CiAgICAgICRSRURJU19DTEkgLXAgJFJFRElTUE9SVCBTSFVURE9XTjxicj4KICAgICAgd2hpbGUgWyAteCAke1BJREZJTEV9IF08YnI+CiAgICAgIGRvPGJyPgogICAgICAgICAgZWNobyAmcXVvdDtXYWl0aW5nIGZvciBSZWRpcyB0byBzaHV0ZG93biAuLi4mcXVvdDs8YnI+CiAgICAgICAgICBzbGVlcCAxPGJyPgogICAgICBkb25lPGJyPgogICAgICBlY2hvICZxdW90O1JlZGlzIHN0b3BwZWQmcXVvdDs8YnI+CiAgZmk8YnI+Cjxicj4KfTxicj4KPGJyPgojIyByZXN0YXJ0PGJyPgpmdW5jdGlvbiByZXN0YXJ0KCl7PGJyPgogIHN0b3A8YnI+CiAgZWNobyAmcXVvdDsmcXVvdDs8YnI+CiAgc3RhcnQ8YnI+CiAgZWNobyAmcXVvdDsmcXVvdDs8YnI+Cn08YnI+Cjxicj4KIyMgaW5mbzxicj4KZnVuY3Rpb24gaW5mbygpezxicj4KICBlY2hvICZxdW90O0luZm86IHJlZGlzIGluZm8uLi4mcXVvdDs8YnI+CiAgaWYgWyAtZiAkUElERklMRSBdO3RoZW48YnI+CiAgICAgICRSRURJU19DTEkgaW5mbzxicj4KICBlbHNlPGJyPgogICAgIGVjaG8gJnF1b3Q7JFBJREZJTEUgZG9lcyBub3QgZXhpc3QsIHByb2Nlc3MgaXMgbm90IHJ1bm5pbmcmcXVvdDs8YnI+CiAgZmk8YnI+Cn08YnI+Cjxicj4KIyMgc3RhdHVzPGJyPgpmdW5jdGlvbiBzdGF0dXMoKXs8YnI+CiAgUkVESVNfU0VSVkVSX0NPVU5UPSZxdW90O2BuZXRzdGF0IC1ubHRwIA=="grep redis-server | wc -l`"
  if [ -f $PIDFILE ] && [ "${REDIS_SERVER_COUNT}" -gt 0 ]
  then
  echo "Info: redis is running."
  elif [ ! -f $PIDFILE ]
  then
  echo "$PIDFILE does not exist, process is not running"
  elif [ "${REDIS_SERVER_COUNT}" -eq 0 ]
  then
  echo "Redis is not listening any port."
  fi
  }
  case "$1" in
  start)
  start
  ;;
  stop)
  stop
  ;;
  restart)
  restart
  ;;
  info)
  info
  ;;
  status)
  status
  ;;
  *)
  echo "Usage: $0 {start|stop|restart|info|status}"
  esac
  ########################## redis的操作系统服务脚本内容结束(redis_service_script)#########################################
  第四部分
  本文参考的资料链接地址:
  Redis安装: http://www.cnblogs.com/zhuhongbao/archive/2013/06/04/3117997.html
  Redis安装: http://blog.chinaunix.net/uid-790245-id-3766268.html
  转自红客联盟: http://www.iyunv.com/os/201405/300925.html


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-631003-1-1.html 上篇帖子: Redis-3.0.7主从简单复制的配置 下篇帖子: REDIS 勿删除rdb文件如何从内存中恢复数据
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表