[Linux][Redis][01]Install

VERSION=3.2.9

wget  -P /tmp http://download.redis.io/releases/redis-$VERSION.tar.gz

 

tar -C /tmp -xf /tmp/redis-$VERSION.tar.gz

cd /tmp/redis-$VERSION

#make MALLOC=jemalloc

make

make install

 

# 创建组和用户

groupadd redis

useradd -g redis redis -s /sbin/nologin

 

# 文件存放目录

mkdir /var/log/redis

mkdir /etc/redis

mkdir /etc/systemd/system/redis.service.d/

chown redis:redis /var/log/redis

 

#修改配置文件

IP=`ifconfig eth0 | grep "inet " | awk '{ print $2}'`  #ifconfig | grep inet  | awk '{ print $2}' | head -n 1

#cp redis.conf /etc/redis.conf

echo "bind ${IP}" > /etc/redis/redis.conf

echo "protected-mode no" >> /etc/redis/redis.conf

echo "tcp-backlog 4096" >> /etc/redis/redis.conf

echo "timeout 300" >> /etc/redis/redis.conf

echo "tcp-keepalive 60" >> /etc/redis/redis.conf

echo "daemonize yes" >> /etc/redis/redis.conf

echo "supervised systemd" >> /etc/redis/redis.conf

echo "logfile \"/var/log/redis/redis.log\"" >> /etc/redis/redis.conf

echo "dir \"/var/log/redis\"" >> /etc/redis/redis.conf

echo "maxclients 10000" >> /etc/redis/redis.conf

echo "maxmemory 5859375kb" >> /etc/redis/redis.conf

echo "maxmemory-policy volatile-lru" >> /etc/redis/redis.conf

echo "appendonly no" >> /etc/redis/redis.conf

echo "slowlog-max-len 512" >> /etc/redis/redis.conf

echo "client-output-buffer-limit normal 0 0 0" >> /etc/redis/redis.conf

echo "save 900 1" >> /etc/redis/redis.conf

echo "save 300 10" >> /etc/redis/redis.conf

echo "save 60 10000" >> /etc/redis/redis.conf

echo "client-output-buffer-limit slave 512mb 256mb 300" >> /etc/redis/redis.conf

echo "slaveof 192.168.2.21 6379" >> /etc/redis/redis.conf

 

# 修改配置文件属性

chown redis:redis /etc/redis -R

 

#systemd开机配置

IP=`ifconfig eth0 | grep "inet " | awk '{ print $2}'`  #ifconfig | grep inet  | awk '{ print $2}' | head -n 1

echo "[Unit]" > /usr/lib/systemd/system/redis.service

echo "Description=Redis persistent key-value database" >> /usr/lib/systemd/system/redis.service

echo "After=network.target" >> /usr/lib/systemd/system/redis.service

echo "" >> /usr/lib/systemd/system/redis.service

echo "[Service]" >> /usr/lib/systemd/system/redis.service

echo "Type=forking" >> /usr/lib/systemd/system/redis.service

echo "ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf" >> /usr/lib/systemd/system/redis.service

echo "ExecStop=/usr/local/bin/redis-cli -h ${IP} shutdown" >> /usr/lib/systemd/system/redis.service

echo "User=redis" >> /usr/lib/systemd/system/redis.service

echo "Group=redis" >> /usr/lib/systemd/system/redis.service

echo "" >> /usr/lib/systemd/system/redis.service

echo "[Install]" >> /usr/lib/systemd/system/redis.service

echo "WantedBy=multi-user.target" >> /usr/lib/systemd/system/redis.service

 

#systemd限制文件

echo "[Service]" > /etc/systemd/system/redis.service.d/limits.conf

echo "LimitNOFILE=65535" >> /etc/systemd/system/redis.service.d/limits.conf

 

firewall-cmd --zone=public --add-port=6379/tcp --permanent

firewall-cmd --reload

 

systemctl enable redis

systemctl start redis

posted @ 2016-09-08 00:19  wuzhenzhou  阅读(347)  评论(0)    收藏  举报