1、下载并解压redis安装包
wget http://download.redis.io/releases/redis-5.0.8.tar.gz
tar xf redis-5.0.8.tar.gz
cd redis-5.0.8/
2、安装redis
make PREFIX=/data/app/redis install
复制配置文件
mkdir /data/app/redis/{etc,logs,run}
cp redis.conf /data/app/redis/etc
创建redis用户,并修改redis安装目录的属组属主为redis
useradd -s /sbin/nologin redis
chown redis.redis /data/app/redis/
测试前台启动redis服务,验证服务是否能正常运行
/data/app/redis/bin/redis-server /data/app/redis/etc/redis.conf
解决当前的警告提示
image.png
backlog参数控制的是握手的时候server端收到client ack确认号之后的队列值。
net.core.somaxconn = 32768
vm.overcommit_memory = 1
0、表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程。
1、表示内核云信分配所有的物理内存,而不管当前的内存状态如何;
2、表示内核允许分配超过所有物理内存和交换空间总和的内存
开启大页内存动态分配,需要关闭让redis负责内存管理。
echo never > /sys/kernel/mm/transparent_hugepage/enabled
重载内核配置
sysctl -p
重新启动redis,警告消失
image.png
3、编辑redis服务启动脚本,使用systemd管理redis服务
vim /usr/lib/systemd/system/redis.service
[Unit]
Description=Redis Service
After=network.target
After=network-online.target
Wants=network-online.target
[Service]
ExecStart=/data/app/redis/bin/redis-server /data/app/redis/etc/redis.conf --supervised systemd
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
Type=notify
User=root
Group=root
RuntimeDirectory=redis
RuntimeDirectoryMode=0755
[Install]
WantedBy=mutil-user.target
重新加载systemd,使用systemctl命令启动redis
systemctl daemon-reload
systemctl start redis
查看redis服务状态
systemctl status redis
image.png
创建命令软链接
ln -sv /data/app/redis/bin/redis-* /usr/bin/
网友评论