共計 3888 個字符,預計需要花費 10 分鐘才能閱讀完成。
這篇文章主要介紹“Redis cluster 集群需要至少多少個 redis 節點”,在日常操作中,相信很多人在 Redis cluster 集群需要至少多少個 redis 節點問題上存在疑惑,丸趣 TV 小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Redis cluster 集群需要至少多少個 redis 節點”的疑惑有所幫助!接下來,請跟著丸趣 TV 小編一起來學習吧!
## 配置 redis 集群需要至少 6 個 redis 節點
集群至少 3 主 3 從才可以搭建,防止錯亂我們在 redis 下建立一個文件夾 cluster,里面復制 6 份配置文件,改名為 redis1-redis6.conf
把每個配置文件都修改以下共同點:
bind 10.233.19.36(根據實際情況配置)
port 7001(7001-7006)
daemonize yes(以守護進程運行)
pidfile /var/run/redis.pid(守護進程生成的文件,以實際情況配置)
appendonly yes(開啟 AOF 日志記錄 Redis 操作的持久化)
appendfilename appendonly-7001.aof(AOF 文件名,配置端口為文件名便于查看)
cluster-enabled yes(開啟集群)
cluster-config-file nodes-7001.conf(節點信息,已節點命名便于查看)
cluster-node-timeout 15000(節點響應超時時間)
以上為共同點每個節點不論主從都需要配置。
此外還需要注意,不要再為各個節點主動配置主從關系,否則啟動時會報錯。
因為主從關系要給 redis 集群自己調節。
## 啟動 redis 集群
上面的配置完成之后,分別啟動 6 個 redis 實例。配置正確的情況下,都可以啟動成功。然后運行如下命令創建集群:
注意,這里使用的是 ip:port
replicas 1 表示我們希望為集群中的每個主節點創建一個從節點
因為配置文件中設置了密碼所以創建集群也需要加密碼參數 -a
[ERR] Node 10.233.19.36:6380 NOAUTH Authentication required.
[redis@weblogic-test bin]$ ./redis-cli –cluster create 10.233.19.36:6380 10.233.19.36:6381 10.233.19.36:6382 10.233.19.36:6383 10.233.19.36:6384 10.233.19.36:6385 –cluster-replicas 1 -a beijing
Warning: Using a password with -a or -u option on the command line interface may not be safe.
Performing hash slots allocation on 6 nodes…
Master[0] – Slots 0 – 5460
Master[1] – Slots 5461 – 10922
Master[2] – Slots 10923 – 16383
Adding replica 10.233.19.36:6383 to 10.233.19.36:6380
Adding replica 10.233.19.36:6384 to 10.233.19.36:6381
Adding replica 10.233.19.36:6385 to 10.233.19.36:6382
Trying to optimize slaves allocation for anti-affinity
[WARNING] Some slaves are in the same host as their master
M: 369151e4f1bed1e3fcaf474025853bc72056542e 10.233.19.36:6380
slots:[0-5460] (5461 slots) master
M: 1f9314f13a22c2c68c609e98247bfe6d0714c75b 10.233.19.36:6381
slots:[5461-10922] (5462 slots) master
M: 41840a493fceef875b1a521d951090f9c99c7040 10.233.19.36:6382
slots:[10923-16383] (5461 slots) master
S: 438c5ecaf7501da25bfc0d2055445c036907ba61 10.233.19.36:6383
replicates 1f9314f13a22c2c68c609e98247bfe6d0714c75b
S: 9598769e90155aeb130a33980ac1a1c27b1609cc 10.233.19.36:6384
replicates 41840a493fceef875b1a521d951090f9c99c7040
S: b0d325e936ee5055648561302560d055d0bdb365 10.233.19.36:6385
replicates 369151e4f1bed1e3fcaf474025853bc72056542e
Can I set the above configuration? (type yes to accept): yes
Nodes configuration updated
Assign a different config epoch to each node
Sending CLUSTER MEET messages to join the cluster
Waiting for the cluster to join
..
Performing Cluster Check (using node 10.233.19.36:6380)
M: 369151e4f1bed1e3fcaf474025853bc72056542e 10.233.19.36:6380
slots:[0-5460] (5461 slots) master
1 additional replica(s)
M: 1f9314f13a22c2c68c609e98247bfe6d0714c75b 10.233.19.36:6381
slots:[5461-10922] (5462 slots) master
1 additional replica(s)
S: 9598769e90155aeb130a33980ac1a1c27b1609cc 10.233.19.36:6384
slots: (0 slots) slave
replicates 41840a493fceef875b1a521d951090f9c99c7040
M: 41840a493fceef875b1a521d951090f9c99c7040 10.233.19.36:6382
slots:[10923-16383] (5461 slots) master
1 additional replica(s)
S: b0d325e936ee5055648561302560d055d0bdb365 10.233.19.36:6385
slots: (0 slots) slave
replicates 369151e4f1bed1e3fcaf474025853bc72056542e
S: 438c5ecaf7501da25bfc0d2055445c036907ba61 10.233.19.36:6383
slots: (0 slots) slave
replicates 1f9314f13a22c2c68c609e98247bfe6d0714c75b
[OK] All nodes agree about slots configuration.
Check for open slots…
Check slots coverage…
[OK] All 16384 slots covered.
執行成功之后,連接一臺 redis,執行 cluster info 會看到類似如下信息:
127.0.0.1:6380 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:190
cluster_stats_messages_pong_sent:181
cluster_stats_messages_sent:371
cluster_stats_messages_ping_received:176
cluster_stats_messages_pong_received:190
cluster_stats_messages_meet_received:5
cluster_stats_messages_received:371
我們可以看到 cluster_state:ok,cluster_slots_ok:16384,cluster_size:3。
到此,關于“Redis cluster 集群需要至少多少個 redis 節點”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注丸趣 TV 網站,丸趣 TV 小編會繼續努力為大家帶來更多實用的文章!