1.1.1 一主一从
2
3
4
5
6
7
8
9
9.1
9.1.1
9.1.1.1
虚拟机配置
1
磁盘分区
2
设置主机名
1. hostnamectl set-hostname R-Node-1 ##对应主机设置对应主机名
2. bash
3
创建所需目录
#以下操作需在所有服务器中进行操作
1. mkdir -p /data/einvoice/1010/logs
2. mkdir -p /data/einvoice/1011/logs
3. mkdir -p /usr/local/Redis/config/einvoice
4
下载安装包
#以下操作需在所有服务器中进行操作
1. wget https://download.Redis.io/releases/Redis-6.2.6.tar.gz
5
设置内核参数
#以下操作需在所有服务器中进行操作
1. vi /etc/sysctl.conf
2.
3. #内存分配策略
4. vm.overcommit_memory = 1
5. #timewait快速回收
6. net.ipv4.tcp_tw_recycle = 1
7. #内存分配策略
8. net.core.somaxconn = 16384
9. #SYN攻击保护
10. net.ipv4.tcp_syncookies = 1
11. #路由转发
12. net.ipv4.ip_forward = 1
13. net.ipv4.conf.all.send_redirects = 1
14. net.ipv4.conf.default.send_redirects = 1
15. #禁用IPV6
16. net.ipv6.conf.all.disable_ipv6 = 1
17. net.ipv6.conf.default.disable_ipv6 = 1
18. #避免放大攻击
19. net.ipv4.icmp_echo_ignore_broadcasts = 1
20. #icmp恶意信息保护
21. net.ipv4.icmp_ignore_bogus_error_responses = 1
22. :wq
23.
24. sysctl -p
6
设置limits
#以下操作需在所有服务器中进行操作
1. vi /etc/security/limits.conf
2.
3. * soft nofile 655360
4. * hard nofile 131072
5. * soft nproc 655350
6. * hard nproc 655350
7. * soft memlock unlimited
8. * hard memlock unlimited
9.
10. :wq
11.
12. ulimit -SHn 65535
13.
9.1.1.2
Redis 编译安装
1) 安装编译工具
1. yum -y install gcc make
2) 解压安装包
1. tar zxf Redis-6.2.6.tar.gz
3) 编译安装
1. cd Redis-6.2.6
2. make && make install
4) 验证
1. # Redis-cli --version
2. Redis-cli 6.2.6
9.1.1.3
编辑Redis
配置
1. cp Redis.conf /usr/local/Redis/config/einvoice/1010.conf
2. cp Redis.conf /usr/local/Redis/config/einvoice/1011.conf
3.
4. vi /usr/local/Redis/config/einvoice/1010.conf
5.
6. port 1010
7. dir /data/einvoice/1010
8. daemonize yes
9. cluster-enabled yes
10. cluster-config-file /data/einvoice/1010/node.conf
11. cluster-node-timeout 5000
12. requirepass p@ssw0rd
13. masterauth p@ssw0rd
14. bind 0.0.0.0
15. logfile "/data/einvoice/1010/logs/Redis.log"
16. timeout 30
17. loglevel notice
18. appendonly yes
19. rdbcompression yes
20. appendfsync everysec
21. pidfile /data/einvoice/1010/Redis.pid
22.
23.
24. vi /usr/local/Redis/config/einvoice/1010.conf
25.
26. port 1011
27. dir /data/einvoice/1011
28. daemonize yes
29. cluster-enabled yes
30. cluster-config-file /data/einvoice/1011/node.conf
31. cluster-node-timeout 5000
32. requirepass p@ssw0rd
33. masterauth p@ssw0rd
34. bind 0.0.0.0
35. logfile "/data/einvoice/1011/logs/Redis.log"
36. timeout 30
37. loglevel notice
38. appendonly yes
39. rdbcompression yes
40. appendfsync everysec
41. pidfile /data/einvoice/1011/Redis.pid
9.1.1.4
启动Redis
1. Redis-server /usr/local/Redis/config/einvoice/1010.conf
2. Redis-server /usr/local/Redis/config/einvoice/1011.conf
9.1.1.5
建立Redis集群
#仅需要再一台机器上操作
1. Redis-cli --cluster create 192.168.100.100:1010 192.168.100.101:1010 192.168.100.102:1010 192.168.100.101:1011 192.168.100.102:1011 192.168.100.100:1011 --cluster-replicas 1 -a p@ssw0rd
2.
3. Redis-cli -c -a p@ssw0rd -p 1010
4. cluster nodes
5. 3470a989b1e341fdf5a2053eac1e410ed95469bf
192.168.100.100:1011@11011 slave bb73799a38796e3588bb6c80e58efba607be13a4 0
1646883619504 3 connected
6. 5caaf72a8a93c59e9bd8a3dad23f440887f1f66a
192.168.100.101:1011@11011 slave e731a128364cc00b73f37a0c4664323e68873f95 0
1646883619505 1 connected
7. 2ab80ed9307239dbc7d9d0813a3cb4a012b531ee
192.168.100.101:1010@11010 master - 0 1646883618598 2 connected 5461-10922
8. bb73799a38796e3588bb6c80e58efba607be13a4
192.168.100.102:1010@11010 master - 0 1646883619606 3 connected 10923-16383
9. e731a128364cc00b73f37a0c4664323e68873f95
192.168.100.100:1010@11010 myself,master - 0 1646883618000 1 connected 0-5460
10. 04b36a9ab572cf1f876f0903d704230e0483087b
192.168.100.102:1011@11011 slave 2ab80ed9307239dbc7d9d0813a3cb4a012b531ee 0
1646883619000 2 connected
#一定要确保主从关系不能同时出现在一台机器中
9.1.1.6
导入老环境Redis数据
1) 验证老环境数据
2) 临时将集群设置空密码
1. Redis-cli -a p@ssw0rd --cluster call 192.168.100.100:1010 config set requirepass ""
3) 导入数据
1. Redis-cli --cluster import 192.168.100.100:1010 --cluster-from 127.0.0.1:6379 --cluster-copy
4) 设置密码
1. Redis-cli --cluster call 192.168.100.100:1010 config set requirepass "p@ssw0rd"
5) 验证数据
1. Redis-cli -a p@ssw0rd --cluster check 192.168.100.100:1010
2.
3. 192.168.100.100:1010 (e731a128...) -> 339 keys | 5461 slots | 1 slaves.
4. 192.168.100.101:1010 (2ab80ed9...) -> 329 keys | 5462 slots | 1 slaves.
5. 192.168.100.102:1010 (bb73799a...) -> 332 keys | 5461 slots | 1 slaves.