新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
生产环境可用redis4.0.11安装全过程
操作系统版本为 centos6.5
创新互联公司服务项目包括惠水网站建设、惠水网站制作、惠水网页制作以及惠水网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,惠水网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到惠水省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
先执行initialization.sh优化脚本 详情见 初始化脚本
我们线上用的是redis-4.0.11.tar.gz
根据日志内容进行优化 //后面会提现处理,我们这里可以先执行,不明白的同学,可以继续往后看。
优化1:
[root@prd3-redis01-10-183 conf]# echo "vm.overcommit_memory = 1" >> /etc/sysctl.conf
[root@prd3-redis01-10-183 conf]# sysctl -p
优化2:
[root@prd3-redis01-10-183 conf]# echo "net.core.somaxconn = 511" >> /etc/sysctl.conf
[root@prd3-redis01-10-183 conf]# sysctl -p
优化3:
还有一个就是关闭透明大页,我们优化脚本中做了
第一步:执行优化脚本 initialization.sh
第二步:下载redis的安装包
[root@prd3-redis01-10-183 opt]# wget http://download.redis.io/releases/redis-4.0.11.tar.gz
第三步:下载必要的依赖:yum install -y tcl tcl-devel
[root@prd3-redis01-10-183 opt]# yum install -y tcl tcl-devel
提示:在安装过程中出现一个报错为:解决方法如下
在安装redis的时候 在执行make && make install 的时候 出现报错
make[3]: gcc: Command not found
/bin/sh: cc: command not found
[root@MySQL-redis-mgdb redis-4.0.11]# yum -y install gcc+ gcc-c++
然后需要 删除掉解压的redis包 再重新压缩后 再次执行 make && make install
第四步:创建相关的目录
[root@prd3-redis01-10-183 opt]# mkdir -p /ivargo/{app,log}
[root@prd3-redis01-10-183 opt]# cd /ivargo/
[root@prd3-redis01-10-183 ivargo]# ll
total 8
drwxr-xr-x 2 root root 4096 Apr 24 15:16 app
drwxr-xr-x 2 root root 4096 Apr 24 15:16 log
[root@prd3-redis01-10-183 ivargo]# cd app/
[root@prd3-redis01-10-183 app]# mkdir redis sentinel
[root@prd3-redis01-10-183 app]# ll
total 8
drwxr-xr-x 2 root root 4096 Apr 24 15:18 redis
drwxr-xr-x 2 root root 4096 Apr 24 15:18 sentinel
[root@prd3-redis01-10-183 app]# cd redis/
[root@prd3-redis01-10-183 redis]# mkdir conf data log
[root@prd3-redis01-10-183 redis]# ll
total 12
drwxr-xr-x 2 root root 4096 Apr 24 15:19 conf
drwxr-xr-x 2 root root 4096 Apr 24 15:19 data
drwxr-xr-x 2 root root 4096 Apr 24 15:19 log
[root@prd3-redis01-10-183 app]# cd sentinel/
[root@prd3-redis01-10-183 sentinel]# ll
total 0
[root@prd3-redis01-10-183 sentinel]# mkdir conf
[root@prd3-redis01-10-183 ivargo]# pwd
/ivargo
[root@prd3-redis01-10-183 ivargo]# tree
.
├── app
│ ├── redis
│ │ ├── conf
│ │ ├── data
│ │ └── log
│ └── sentinel
│ └── conf
└── log
第五步:安装redis
[root@prd3-redis01-10-183 ivargo]# cd /opt/
[root@prd3-redis01-10-183 opt]# ll
total 1708
-rw-r--r-- 1 root root 1739656 Aug 4 2018 redis-4.0.11.tar.gz
drwxr-xr-x. 2 root root 4096 Nov 22 2013 rh
drwxr-xr-x 2 root root 4096 Apr 24 2019 scripts
[root@prd3-redis01-10-183 opt]# tar zxvf redis-4.0.11.tar.gz
[root@prd3-redis01-10-183 opt]# cd redis-4.0.11
[root@prd3-redis01-10-183 redis-4.0.11]# make && make install
...
...
...
第六步:上传配置文件到
[root@prd3-redis01-10-183 conf]# pwd
/ivargo/app/redis/conf
[root@prd3-redis01-10-183 conf]# ll
total 4
-rw-r--r-- 1 root root 3946 Apr 24 15:28 6379.conf
第七步,启动redis
[root@prd3-redis01-10-183 conf]# redis-server /ivargo/app/redis/conf/6379.conf
[root@prd3-redis01-10-183 conf]# netstat -lntup
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:6379 0.0.0.0: LISTEN 5195/redis-server 0
tcp 0 0 0.0.0.0:22 0.0.0.0: LISTEN 1543/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0: LISTEN 1619/master
tcp 0 0 :::22 ::: LISTEN 1543/sshd
tcp 0 0 ::1:25 :::* LISTEN 1619/master
[root@prd3-redis01-10-183 conf]# ps -ef|grep redis
root 5195 1 0 15:34 ? 00:00:00 redis-server 0.0.0.0:6379
root 5201 1709 0 15:35 pts/0 00:00:00 grep --color=auto redis
第八步检查 redis
[root@prd3-redis01-10-183 log]# vim 6379.log
5194:C 24 Apr 15:34:51.909 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
5194:C 24 Apr 15:34:51.909 # Redis version=4.0.11, bits=64, commit=00000000, modified=0, pid=5194, just started
5194:C 24 Apr 15:34:51.909 # Configuration loaded
5195:M 24 Apr 15:34:51.935 Running mode=standalone, port=6379.
5195:M 24 Apr 15:34:51.935 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/c
ore/somaxconn is set to the lower value of 128.
5195:M 24 Apr 15:34:51.935 # Server initialized
5195:M 24 Apr 15:34:51.935 # WARNING overcommit_memory is set to 0! Background save may fail under low memory c
ondition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the comma
nd 'sysctl vm.overcommit_memory=1' for this to take effect.
5195:M 24 Apr 15:34:51.935 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This
will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/k
ernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting
after a reboot. Redis must be restarted after THP is disabled.
5195:M 24 Apr 15:34:51.935 Ready to accept connections
根据日志内容进行优化
优化1:
[root@prd3-redis01-10-183 conf]# echo "vm.overcommit_memory = 1" >> /etc/sysctl.conf
[root@prd3-redis01-10-183 conf]# sysctl -p
优化2:
[root@prd3-redis01-10-183 conf]# echo "net.core.somaxconn = 511" >> /etc/sysctl.conf
[root@prd3-redis01-10-183 conf]# sysctl -p
优化3:
还有一个就是关闭透明大页,我们优化脚本中做了
温柔的关闭redis的方法
[root@web03 ~]# redis-server /ivargo/app/redis/conf/6379.conf
[root@web03 ~]# ps -ef|grep redis
root 1718 1 0 18:31 ? 00:00:00 redis-server 0.0.0.0:6379
root 1723 1693 0 18:31 pts/0 00:00:00 grep --color=auto redis
[root@web03 ~]# redis-cli -a xxx
Warning: Using a password with '-a' option on the command line interface may not be safe.
127.0.0.1:6379> shutdown //温柔关闭redis的方法
not connected>
[root@web03 ~]# ps -ef|grep redis
root 1727 1693 0 18:32 pts/0 00:00:00 grep --color=auto redis
[root@prd3-redis01-10-183 conf]# sh /etc/rc.local
再次启动redis,就没有任何的报警了
到此,我们就安装好了redis,接下来,我们实现redis的sentinel 架构 请期待