目录
工作环境
系统版本:cetenos7
主机IP地址:192.168.10.150/24
docker版本:version 20.10.19 docker安装请访问:(114条消息) 【kubernetes】k8s集群搭建(完整详解)_维运的博客-CSDN博客_如何搭建k8s集群
redis版本:redis:6.0.8
一、启动容器
[root@hadoop01 ~]# docker pull redis:6.0.8
[root@hadoop01 ~]# docker run -d --name redis-node-1 --net host --privileged=true -v /dada/redis/share/redis-node-1:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6381
[root@hadoop01 ~]# docker run -d --name redis-node-2 --net host --privileged=true -v /dada/redis/share/redis-node-2:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6382
[root@hadoop01 ~]# docker run -d --name redis-node-3 --net host --privileged=true -v /dada/redis/share/redis-node-3:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6383
[root@hadoop01 ~]# docker run -d --name redis-node-4 --net host --privileged=true -v /dada/redis/share/redis-node-4:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6384
[root@hadoop01 ~]# docker run -d --name redis-node-5 --net host --privileged=true -v /dada/redis/share/redis-node-5:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6385
[root@hadoop01 ~]# docker run -d --name redis-node-6 --net host --privileged=true -v /dada/redis/share/redis-node-6:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6386
[root@hadoop01 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
19bec82ec7eb redis:6.0.8 "docker-entrypoint.s…" 15 seconds ago Up 14 seconds redis-node-6
65cd347c7dd1 redis:6.0.8 "docker-entrypoint.s…" 34 seconds ago Up 33 seconds redis-node-5
1b126a9c39b9 redis:6.0.8 "docker-entrypoint.s…" About a minute ago Up About a minute redis-node-4
b32e932f2093 redis:6.0.8 "docker-entrypoint.s…" About a minute ago Up About a minute redis-node-3
d41a6f46e0b4 redis:6.0.8 "docker-entrypoint.s…" 2 minutes ago Up 2 minutes redis-node-2
c8848665b380 redis:6.0.8 "docker-entrypoint.s…" 11 minutes ago Up 11 minutes redis-node-1
--net host代表dock网络为host;
--privileged=true代表开启权限;
--cluster-enabled yes代表是否开启集群模式;
--apendonly only代表开启持久化;
二、配置集群关系
1、进入容器
[root@hadoop01 ~]# docker exec -it redis-node-1 /bin/bash
2、配置
#集群构建
root@hadoop01:/data# redis-cli --cluster create 192.168.10.150:6381 192.168.10.150:6382 192.168.10.150:6383 192.168.10.150:6384 192.168.10.150:6385 192.168.10.150:6386 --cluster-replica 1
cluster-replicas 1:表示希望为集群中的每个主节点创建一个从节点 (一主一从)
执行完上条命令后,输入yes同意,结果如下,其中M代表主,S代表从。
>>> Performing Cluster Check (using node 192.168.10.150:6381)
M: b4e13e9a0ca02cff80d0bc20b86f770017702fb0 192.168.10.150:6381
slots:[0-5460] (5461 slots) master
1 additional replica(s)
M: d524fd7d16ccc654cbfa2d338978f6ede0bdc8f4 192.168.10.150:6383
slots:[10923-16383] (5461 slots) master
1 additional replica(s)
S: 672e19c7d8522e436628d16c5bf0e6f199fabd31 192.168.10.150:6385
slots: (0 slots) slave
replicates d524fd7d16ccc654cbfa2d338978f6ede0bdc8f4
S: 9d9441cccec2307c7a7ac239dd67ce5194ce0e3a 192.168.10.150:6384
slots: (0 slots) slave
replicates 73e2e7a084046769cee07d509985676752ba4f48
M: 73e2e7a084046769cee07d509985676752ba4f48 192.168.10.150:6382
slots:[5461-10922] (5462 slots) master
1 additional replica(s)
S: f7dfc65dbcc61f58556e63d15ad6940629b6a3c9 192.168.10.150:6386
slots: (0 slots) slave
replicates b4e13e9a0ca02cff80d0bc20b86f770017702fb0
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered
3、查看集群状态
root@hadoop01:/data# redis-cli -p 6381
127.0.0.1:6381> 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:1982
cluster_stats_messages_pong_sent:2034
cluster_stats_messages_sent:4016
cluster_stats_messages_ping_received:2029
cluster_stats_messages_pong_received:1982
cluster_stats_messages_meet_received:5
cluster_stats_messages_received:4016
127.0.0.1:6381> cluster nodes
d524fd7d16ccc654cbfa2d338978f6ede0bdc8f4 192.168.10.150:6383@16383 master - 0 1667729284000 3 connected 10923-16383
672e19c7d8522e436628d16c5bf0e6f199fabd31 192.168.10.150:6385@16385 slave d524fd7d16ccc654cbfa2d338978f6ede0bdc8f4 0 1667729283000 3 connected
9d9441cccec2307c7a7ac239dd67ce5194ce0e3a 192.168.10.150:6384@16384 slave 73e2e7a084046769cee07d509985676752ba4f48 0 1667729280000 2 connected
b4e13e9a0ca02cff80d0bc20b86f770017702fb0 192.168.10.150:6381@16381 myself,master - 0 1667729282000 1 connected 0-5460
73e2e7a084046769cee07d509985676752ba4f48 192.168.10.150:6382@16382 master - 0 1667729285851 2 connected 5461-10922
f7dfc65dbcc61f58556e63d15ad6940629b6a3c9 192.168.10.150:6386@16386 slave b4e13e9a0ca02cff80d0bc20b86f770017702fb0 0 1667729284839 1 connected
#可以根据cluster nodes显示的信息,从6挂载主1,从5挂载主3,从4挂载主2