redis4.0.11 can be used to install the production environment
The operating system version is CentOS 6.5
Execute the initialization.sh optimization script first. For details, see Initialization script
We use redis-4.0.11.tar.gz online
Optimize according to the log content / / it will be processed later. We can execute it first here. For those who don't understand, we can continue to look at it later.
Optimization 1: [root@prd3-redis01-10-183 conf]# echo "vm.overcommit_memory = 1" >> /etc/sysctl.conf [root@prd3-redis01-10-183 conf]# sysctl -p Optimization 2: [root@prd3-redis01-10-183 conf]# echo "net.core.somaxconn = 511" >> /etc/sysctl.conf [root@prd3-redis01-10-183 conf]# sysctl -p Optimization 3: The other is to close the transparent large page. We optimized the script
Step 1: execute the optimization script initialization.sh
Step 2: download the redis installation package
[root@prd3-redis01-10-183 opt]# wget http://download.redis.io/releases/redis-4.0.11.tar.gz
Step 3: download necessary dependencies: Yum install - y TCL TCL devel
[root@prd3-redis01-10-183 opt]# yum install -y tcl tcl-devel
Step 4: create related directories [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
Step 5: installation 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 ... ... ...
Step 6: upload the configuration file to [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
Step 7, start 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
Step 8 inspection 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 //Optimize based on log content //Optimization 1: [root@prd3-redis01-10-183 conf]# echo "vm.overcommit_memory = 1" >> /etc/sysctl.conf [root@prd3-redis01-10-183 conf]# sysctl -p //Optimization 2: [root@prd3-redis01-10-183 conf]# echo "net.core.somaxconn = 511" >> /etc/sysctl.conf [root@prd3-redis01-10-183 conf]# sysctl -p //Optimization 3: //The other is to close the transparent large page. We optimized the script
Gentle closure redis Method [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 //How to close redis gently 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 //If you start redis again, there will be no alarm
At this point, we have installed redis. Next, we will implement the sentinel architecture of redis. Please look forward to