目录
redis-5.0.5链接: https://pan.baidu.com/s/1Amhc-LCkTrS7m8PaSta0Tw 提取码: ah9b
redis-5.0.5单机版部署/集群版部署方法
redis单机版部署
1,解压redis-5.0.5.tar.gz到对应的目录
2,进入redis.5.0.5目录执行make
3,进入~redis.5.0.5/src目录执行make install PREFIX=/data/aiuap30/redis/redis-5.0.5/src
4,cp ../redis.conf /data/aiuap30/redis/redis-5.0.5/
5,修改redis.conf配置文件,默认无密码,只修改port和bind
6,启动redis
./redis-server ../redis.conf
如果出现连接拒绝情况请将redis.conf中bind修改为0.0.0.0
redis集群版部署
一、部署前准备
redis 集群一般由多个节点组成,节点数量至少为 6 个,才能保证组成完整高可用的集群。每个节点需要开启配置 cluster-enabled yes,让 redis 运行在 集群模式下。
讲解演示环境:3台主机:10.1.11.181 10.1.11.182 10.1.11.183
每一台主机有6379、6380两个节点,共六个节点。
二、上传安装包
新建目录:/opt/redis
上传redis程序包:redis-5.0.5.tar.gz
tar -xvzf redis-5.0.5.tar.gz
cd redis-5.0.5
make
三、创建redis各实例目录
mkdir -p /opt/redis/cluster
cd /opt/redis/cluster
mkdir conf data log pig
mkdir -p data/redis-6379 data/redis-6380
四、修改配置文件(redis.conf)
复制以下代码块里的内容到 cluster/conf分别命名为redis-6379.conf、redis-6380.conf,作为两个节点实例的配置文件。三台主机,每台主机均执行此动作,具体参数含义参考注释。
1 # redis后台运行
2 daemonize yes
3 # 绑定的主机端口
4 bind 10.1.11.181
5 # 数据存放目录 自定义部分如:dir /opt/redis/cluster/data/redis-6379
6 dir /opt/redis/cluster/data/redis‐${自定义}
7 # 进程文件 自定义部分如: pidfile /var/run/redis_6379.pid
8 pidfile /var/run/redis‐cluster/${自定义}.pid
9 # 日志文件 自定义部分如:logfile /opt/redis/cluster/log/redis-6379.log
10 logfile /opt/redis/cluster/log/${自定义}.log
11 # 端口号
12 port 6379
13 # 开启集群模式,把注释#去掉
14 cluster‐enabled yes
15 # 集群的配置,配置文件首次启动自动生成,名称不可以与当前配置文件重名 自定义部分如: redis-6379-cluster.conf
16 cluster‐config‐file /opt/redis/cluster/conf/${自定义}.conf
17 # 请求超时,设置10秒
18 cluster‐node‐timeout 10000
19 # aof日志开启,有需要就开启,它会每次写操作都记录一条日志
20 appendonly yes
五、启动节点
在每台主机上执行 (请根据目录修改下面的启动命令)
/opt/redis/redis-5.0.5/src/redis-server /opt/redis/cluster/conf/redis-6379.conf
/opt/redis/redis-5.0.5/src/redis-server /opt/redis/cluster/conf/redis-6380.conf
六、启动集群
到第一台节点上执行如下命令:
/opt/redis/redis-5.0.5/src/redis-cli --cluster create 10.1.11.181:6379
10.1.11.181:6380 10.1.11.182:6379 10.1.11.182:6380 10.1.11.183:6379
10.1.11.183:6380 --cluster-replicas 1
查看日志,若如下所示则表示启动成功
1 [root@hXXX‐29 conf]# /opt/redis/redis‐5.0.5/src/redis‐cli ‐‐cluster creat
e 10.1.11.181:6379 10.1.11.181:6380 10.1.11.182:6379 10.1.11.182:63
80 10.1.11.183:6379 10.1.11.183:6380 ‐‐cluster‐replicas 1
2 >>> Performing hash slots allocation on 6 nodes...
3 Master[0] ‐> Slots 0 ‐ 5460
4 Master[1] ‐> Slots 5461 ‐ 10922
5 Master[2] ‐> Slots 10923 ‐ 16383
6 Adding replica 10.1.11.182:6380 to 10.1.11.181:6379
7 Adding replica 10.1.11.183:6380 to 10.1.11.182:6379
8 Adding replica 10.1.11.181:6380 to 10.1.11.183:6379
9 M: 2810904350fd9de29442841dcbd832da9713bd45 10.1.11.181:6379
10 slots:[0‐5460] (5461 slots) master
11 S: 19423860967c040e59e373954dbf5ab2dfcfe089 10.1.11.181:6380
12 replicates 082b9a3db0b1d8a35590e0c0e0c0a1ca35226244
13 M: fd7a202fcb1101312e370555b685724baaf8f573 10.1.11.182:6379
14 slots:[5461‐10922] (5462 slots) master
15 S: dab8bd558b1fd82ecf3f5e470ec0cb54a7383499 10.1.11.182:6380
16 replicates 2810904350fd9de29442841dcbd832da9713bd45
17 M: 082b9a3db0b1d8a35590e0c0e0c0a1ca35226244 10.1.11.183:6379
18 slots:[10923‐16383] (5461 slots) master
19 S: 913a479fe191b8336ba09112f306c97948b408ff 10.1.11.183:6380
20 replicates fd7a202fcb1101312e370555b685724baaf8f573
21 Can I set the above configuration? (type 'yes' to accept): yes
22 >>> Nodes configuration updated
23 >>> Assign a different config epoch to each node
24 >>> Sending CLUSTER MEET messages to join the cluster
25 Waiting for the cluster to join
26 ...
27 >>> Performing Cluster Check (using node 10.1.11.181:6379)
28 M: 2810904350fd9de29442841dcbd832da9713bd45 10.1.11.181:6379
29 slots:[0‐5460] (5461 slots) master
30 1 additional replica(s)
31 M: fd7a202fcb1101312e370555b685724baaf8f573 10.1.11.182:6379
32 slots:[5461‐10922] (5462 slots) master
33 1 additional replica(s)
34 S: 913a479fe191b8336ba09112f306c97948b408ff 10.1.11.183:6380
35 slots: (0 slots) slave
36 replicates fd7a202fcb1101312e370555b685724baaf8f573
37 S: 19423860967c040e59e373954dbf5ab2dfcfe089 10.1.11.181:6380
38 slots: (0 slots) slave
39 replicates 082b9a3db0b1d8a35590e0c0e0c0a1ca35226244
40 S: dab8bd558b1fd82ecf3f5e470ec0cb54a7383499 10.1.11.182:6380
41 slots: (0 slots) slave
42 replicates 2810904350fd9de29442841dcbd832da9713bd45
43 M: 082b9a3db0b1d8a35590e0c0e0c0a1ca35226244 10.1.11.183:6379
44 slots:[10923‐16383] (5461 slots) master
45 1 additional replica(s)
46 [OK] All nodes agree about slots configuration.
47 >>> Check for open slots...
48 >>> Check slots coverage...
49 [OK] All 16384 slots covered.
七、验证
任选一台节点,进入执行cluster info(查看集群信息)、cluster nodes(查看节点列表)
1 ./redis‐cli ‐c ‐h 10.1.11.181 ‐p 6379
2 10.1.11.181:6379> cluster info
3 cluster_state:ok
4 cluster_slots_assigned:16384
5 cluster_slots_ok:16384
6 cluster_slots_pfail:0
7 cluster_slots_fail:0
8 cluster_known_nodes:6
9 cluster_size:3
10 cluster_current_epoch:6
11 cluster_my_epoch:1
12 cluster_stats_messages_ping_sent:348584
13 cluster_stats_messages_pong_sent:360350
14 cluster_stats_messages_sent:708934
15 cluster_stats_messages_ping_received:360345
16 cluster_stats_messages_pong_received:348584
17 cluster_stats_messages_meet_received:5
18 cluster_stats_messages_received:708934
19 10.1.11.181:6379> cluster nodes
20fd7a202fcb1101312e370555b685724baaf8f573 0.1.11.182:6379@16379 master‐ 0 1571216388406 3 connected 5461‐10922
21913a479fe191b8336ba09112f306c97948b408ff 0.1.11.183:6380@16380 slavefd7a202fcb1101312e370555b685724baaf8f573 0 1571216389408 6 connected
2219423860967c040e59e373954dbf5ab2dfcfe089 0.1.11.181:6380@16380 slave082b9a3db0b1d8a35590e0c0e0c0a1ca35226244 0 1571216386402 5 connected
23dab8bd558b1fd82ecf3f5e470ec0cb54a7383499 0.1.11.182:6380@16380 slave2810904350fd9de29442841dcbd832da9713bd45 0 1571216387404 4 connected
24082b9a3db0b1d8a35590e0c0e0c0a1ca35226244 0.1.11.183:6379@16379 master‐ 0 1571216388000 5 connected 10923‐16383
252810904350fd9de29442841dcbd832da9713bd45 0.1.11.181:6379@16379
myself,master ‐ 0 1571216387000 1 connected 0‐5460
26 10.1.11.181:6379>