redis5.0.5之cluster部署

Prerequire

          1、操作系统版本:  CentOS7;

          2、Redis 版本:5.0.5,cluster默认集成在redis包中;

          3、cluster集群的部署方式为:9台redis机器上分别以cluster模式运行9个redis服务,

              10.8.23.107;10.8.23.108;10.8.23.109;10.8.32.104;10.8.32.105;10.8.32.106;10.8.32.107;10.8.32.109;10.8.32.111

          4、如无特殊说明下载文件总是放在/usr/local/src、安装目录总是在/app/redis、日志目录总是在/app/redis/logs、数据目录/data/redis。 

一、初始设置:

1.1、相关内核参数

#设置内存 overcommit 总是允许分配内存

sysctl -a 2>/dev/null  |grep overcommit_memory

vm.overcommit_memory = 1

#禁用透明大页

cat /sys/kernel/mm/transparent_hugepage/enabled

always madvise [never]

#使用命令查看时,如果输出结果为[always]表示透明大页启用了。[never]表示透明大页禁用、[madvise]表示只在MADV_HUGEPAGE标志的VMA中使用THP

#增加somaxconn 内核参数

# +该参数需要大于redis.conf配置文件中tcp-backlog 的设置

cat /proc/sys/net/core/somaxconn

65535

注:内核参数设置可以基于文件然后systctl -p,也可使用sysctl -w  key=value,这里不再详述

1.2、账号设置

groupadd nobody

useradd -g redis -s /sbin/nologin nobody

二、安装配置

2.1、安装redis

cd /usr/local/src/

wget http://download.redis.io/releases/redis-5.0.5.tar.gz

tar -zxvf redis-5.0.5.tar.gz && cd redis-5.0.5

make

make PREFIX=/app/redis install

2.2、配置redis

#设置配置目录

mkdir -p /app/redis/conf

#设置日志目录

mkdir -p /app/redis/logs/

#设置持久化数据目录

mkdir -p /data/redis

#复制redis模板配置

cp /usr/local/src/redis-5.0.5/redis.conf  /app/redis/conf/

#以下仅列出部分配置信息,详细信息请参见配置说明

port 6379

bind 0.0.0.0

supervised systemd

daemonize yes

protected-mode no

cluster-enabled yes

pidfile /var/run/redis.pid

logfile "/app/redis/logs/redis.log"

cluster-config-file /app/redis/conf/nodes.conf

dir /data/redis

cluster-node-timeout 5000

masterauth redis123456

requirepass redis123456

maxclients 50000

save ""

appendonly yes

cluster-require-full-coverage no

no-appendfsync-on-rewrite yes

##############rename command##########

rename-command KEYS    "NYKJKEYS"

rename-command FLUSHALL "NYKJFLUSHALL"

rename-command FLUSHDB  "NYKJFLUSHDB"

2.3、redis启动脚本及开机启动  /etc/systemd/system/redis.service

#redis systemd启动脚本

[Unit]

Description=Redis 5.0.5

After=network.target

[Service]

Type=simple

PIDFile=/var/run/redis.pid

LimitNOFILE=65535

ExecStart=/app/redis/bin/redis-server /app/redis/conf/redis.conf  --daemonize no

ExecReload=/bin/kill -HUP $MAINPID

User=nobody

[Install]

WantedBy=multi-user.target

#设置文件权限

chown -R nobody.nobody /app/redis /app/redis/logs /data/redis

#设置开机启动

systemctl enable redis

systemctl start redis

2.4、redis cluster搭建

/app/redis/bin/redis-cli -a redis123456 --cluster create 10.8.23.62:6379 10.8.23.63:6379 10.8.31.70:6379 10.8.31.71:6379 10.8.31.72:6379 10.8.31.73:6379 --cluster-replicas 1

你可能感兴趣的:(redis5.0.5之cluster部署)