一、说明
本文档为安装配置redis6.2数据库集群的部署操作手册。
由于资源有限,本文档所搭建的所有节点为单台虚拟机搭建,创建6个redis实例组成3主3从的集群环境。
二、环境
系统:CentOS Linux release 7.6.1810 (Core)
数据库:Redis server v=6.2.5
三、步骤
1、 第一步:安装redis数据库
上传安装包,解压,进入解压目录安装。
[root@Y001 ~]# tar -xvf redis-6.2.5.tar.gz
[root@Y001 ~]# cd redis-6.2.5
[root@Y001 ~]# make && make test
[root@Y001 ~]# make install PREFIX=/data/redis
2、 第二步:创建目录
创建相应的实例目录。9001-9006节点
[root@Y001 ~]# mkdir -p /data/redis-cluster/9001
[root@Y001 ~]# mkdir -p /data/redis-cluster/9001/run
[root@Y001 ~]# mkdir -p /data/redis-cluster/9001/log
[root@Y001 ~]# mkdir -p /data/redis-cluster/9001/data
3、 第三步:拷贝执行脚本、实例文件至新创建目录
将安装好的redis参数文件物理拷贝至需要部署集群的9001-9006节点。
[root@Y001 ~]# cp -R /data/redis/* /data/redis-cluster/9001/
4、 第四步:修改redis.conf文件参数
[root@Y001 ~]# vi redis.conf
bind 192.168.6.130 #添加本机的ip
port 9001 #端口
pidfile /data/redis-cluster/9001/run/redis_9001.pid #pid存储目录
logfile /data/redis-cluster/9001/log/redis_9001.log #日志存储目录
dir /data/redis-cluster/9001/data #数据存储目录,目录要提前创建好
cluster-enabled yes #开启集群
cluster-config-file nodes-9001.conf #集群节点配置文件,这个文件是不能手动编辑的。确保每一个集群节点的配置文件不通
cluster-node-timeout 15000 #集群节点的超时时间,单位:ms,超时后集群会认为该节点失败
appendonly yes #持久化
daemonize yes #守护进程
拷贝参数文件至其他端口,替换文件内的相关参数
[root@Y001 ~]# cp /data/redis-cluster/9001/redis.conf /data/redis-cluster/9002/redis.conf
[root@Y001 ~]# sed -i "s/9001/9002/g" /data/redis-cluster/9001/redis.conf redis.conf
5、 第五步:使用参数文件启动各节点实例
使用各个实例的参数文件启动redis实例
[root@Y001 ~]# /data/redis-cluster/bin/redis-server /data/redis-cluster/9001/redis.conf
[root@Y001 ~]# /data/redis-cluster/bin/redis-server /data/redis-cluster/9002/redis.conf
[root@Y001 ~]# /data/redis-cluster/bin/redis-server /data/redis-cluster/9003/redis.conf
[root@Y001 ~]# /data/redis-cluster/bin/redis-server /data/redis-cluster/9004/redis.conf
[root@Y001 ~]# /data/redis-cluster/bin/redis-server /data/redis-cluster/9005/redis.conf
[root@Y001 ~]# /data/redis-cluster/bin/redis-server /data/redis-cluster/9006/redis.conf
6、 第六步:创建redis集群
创建redis集群,3主3从节点。
[root@Y001 ~]# redis-cli --cluster create 192.168.6.130:9001 192.168.6.130:9002 192.168.6.130:9003 192.168.6.130:9004 192.168.6.130:9005 192.168.6.130:9006 --cluster-replicas 1
7、 第七步:查看节点信息
[root@Y001 ~]# redis-cli -c -h 192.168.6.130 -p 9001 cluster info
cluster_state:ok
cluster_slots_assigned:16384
cluster_slots_ok:16384
cluster_slots_pfail:0
cluster_slots_fail:0
cluster_known_nodes:6
cluster_size:3
cluster_current_epoch:6
cluster_my_epoch:1
cluster_stats_messages_ping_sent:1325
cluster_stats_messages_pong_sent:1212
cluster_stats_messages_sent:2537
cluster_stats_messages_ping_received:1207
cluster_stats_messages_pong_received:1325
cluster_stats_messages_meet_received:5
cluster_stats_messages_received:2537
[root@Y001 ~]# redis-cli -c -h 192.168.6.130 -p 9001 cluster nodes
fe583c18857792ac9cea98af169f5b344c94846f 192.168.6.130:9006@19006 slave e3dfdb6c09017af74989f0fc4920719981587caf 0 1629714454000 3 connected
e1d48f1831c4bfb7683d8631ac53d34d2e5b1125 192.168.6.130:9004@19004 slave 4f45fe684d157f69360af676e5a1583f708042f7 0 1629714456032 1 connected
e3dfdb6c09017af74989f0fc4920719981587caf 192.168.6.130:9003@19003 master - 0 1629714457045 3 connected 10923-16383
4f45fe684d157f69360af676e5a1583f708042f7 192.168.6.130:9001@19001 myself,master - 0 1629714455000 1 connected 0-5460
f6e23e0a94e573e9f612aada502b112c2bcd02c1 192.168.6.130:9002@19002 master - 0 1629714455021 2 connected 5461-10922
8ddb932ab0429f7cc555474c0501b45cd9e65c7e 192.168.6.130:9005@19005 slave f6e23e0a94e573e9f612aada502b112c2bcd02c1 0 1629714456000 2 connected
8、 第八步:验证数据库
[root@Y001 ~]# redis-cli -c -h 192.168.6.130 -p 9001
四、注意事项
1、 多主机创建集群需要在hosts文件中添加主机ip和主机名;
2、 多主机创建集群时,需要关闭防火墙、selinux、以及时间校准
关闭防火墙:
[root@Y001 ~]# systemctl stop firewalld
[root@Y001 ~]# systemctl disable firewalld
关闭selinux:
[root@Y001 ~]# vi /etc/sysconfig/selinux
SELINUX=disabled
时间校准:
[root@Y001 ~]# date -R
[root@Y001 ~]# timedatectl set-timezone Asia/Shanghai
[root@Y001 ~]# yum -y install ntp
[root@Y001 ~]# ntpdate ntp1.aliyun.com
节点管理(节点增删,分配哈希槽):