[TOC] > [参考](https://mp.weixin.qq.com/s?__biz=MjM5MjAwODM4MA==&mid=2650741531&idx=4&sn=fb831fa7da2e5c6b547c723ff1f38454&utm_source=tuicool&utm_medium=referral) ## 安装 复制整个 [redis](https://github.com/antirez/redis) 到 6个服务器 node文件夹中,设置6 个节点,3 主 3 从 ## 启动 ### 设置配置文件 设置每个节点下配置文件 修改每个节点内的 redis.conf 文件,设置 `cluster-enabled yes` 表示开启集群模式,并且修改各自的端口,我们继续使用 30001 到 30006,通过 port 3000X 设置 ### 启动节点 ``` cd node1 ./src/redis-server redis.conf ``` ### 创建集群并分配槽位 ``` redis-cli --cluster create 127.0.0.1:30001 127.0.0.1:30002 127.0.0.1:30003 127.0.0.1:30004 127.0.0.1:30005 127.0.0.1:30006 --cluster-replicas 1 Can I set the above configuration? (type 'yes' to accept): yes ``` ### 增加主节点 方式一: ``` 127.0.0.1:30001> cluster meet 127.0.0.1 30007 ``` 方式二: ``` redis-cli --cluster add-node 127.0.0.1:30008 127.0.0.1:30001 ``` ### 添加从节点 ``` 127.0.0.1:30008> cluster replicate df0190853a53d8e078205d0e2fa56046f20362a7 OK 127.0.0.1:30008> cluster nodes df0190853a53d8e078205d0e2fa56046f20362a7 127.0.0.1:30007@40007 master - 0 1585147827000 0 connected abec9f98f9c01208ba77346959bc35e8e274b6a3 127.0.0.1:30005@40005 slave 887397e6 ``` 可以看出 30008 已经变为 30007 的从节点了。 ### 删除 节点 ``` 127.0.0.1:30001> cluster nodes #查看节点 id 127.0.0.1:30001> cluster forget df0190853a53d8e078205d0e2fa56046f20362a7 #删除节点 ``` ## 连接集群 ``` redis-cli -c -p 30001 # 连接到集群 127.0.0.1:30001> 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 # 集群主节点数 ````