Redis-Cluster實戰-

Redis-Cluster實戰-node

轉載請註明出處哈:http://carlosfu.iteye.com/blog/2240426 redis

   

1、準備redis(下載、編譯、安裝、配置目錄、數據目錄)app

1. 下載、編譯、安裝工具

Java代碼  收藏代碼spa

  1. cd /opt/soft  
  2. wget http://download.redis.io/releases/redis-3.0.3.tar.gz  
  3. tar xzf redis-3.0.3.tar.gz  
  4. cd redis-3.0.3  
  5. make  
  6. make install  

 

2. 配置目錄、數據目錄orm

Java代碼  收藏代碼視頻

  1. cd /opt/soft/redis-3.0.3  
  2. mkdir -p data  
  3. mkdir -p conf  

 

3.創建軟連接:server

Java代碼  收藏代碼blog

  1. ln -s /opt/soft/redis-3.0.3 /opt/soft/redis  

 

 

2、配置、啓動Redis節點(本例子以3主、3從組成Redis-Clusterget

 

(1) 配置redis節點,在conf目錄下添加6(7000-7005)redis-${port}.conf做爲6個節點的配置文件

      其中7000-7005是六個端口號

Java代碼  收藏代碼

  1. port 7000  
  2. cluster-enabled yes  
  3. cluster-config-file nodes-7000.conf  
  4. cluster-node-timeout 5000  
  5. dir "/opt/soft/redis/data/"  
  6. appendonly yes  
  7. appendfilename "appendonly-7000.aof"  
  8. daemonize yes  

 

生成另外5個文件

Java代碼  收藏代碼

  1. sed 's/7000/7001/g' redis-7000.conf > redis-7001.conf  
  2. sed 's/7000/7002/g' redis-7000.conf > redis-7002.conf  
  3. sed 's/7000/7003/g' redis-7000.conf > redis-7003.conf  
  4. sed 's/7000/7004/g' redis-7000.conf > redis-7004.conf  
  5. sed 's/7000/7005/g' redis-7000.conf > redis-7005.conf  

  

 

(2) 啓動6個節點。

Java代碼  收藏代碼

  1. redis-server /opt/soft/redis/conf/redis-7000.conf  
  2. redis-server /opt/soft/redis/conf/redis-7001.conf  
  3. redis-server /opt/soft/redis/conf/redis-7002.conf  
  4. redis-server /opt/soft/redis/conf/redis-7003.conf  
  5. redis-server /opt/soft/redis/conf/redis-7004.conf  
  6. redis-server /opt/soft/redis/conf/redis-7005.conf  

 

 

查看節點是否都已經啓動:

Java代碼  收藏代碼

  1. [@zw_53_162 conf]#   
  2. [@zw_53_162 conf]# ps -ef | grep redis  
  3. root 26007 1 0 21:56 ? 00:00:00 redis-server *:7000 [cluster]   
  4. root 26011 1 0 21:56 ? 00:00:00 redis-server *:7001 [cluster]   
  5. root 26019 1 0 21:56 ? 00:00:00 redis-server *:7002 [cluster]   
  6. root 26023 1 0 21:56 ? 00:00:00 redis-server *:7003 [cluster]   
  7. root 26033 1 0 21:56 ? 00:00:00 redis-server *:7004 [cluster]   
  8. root 26047 1 0 21:56 ? 00:00:00 redis-server *:7005 [cluster]  

 

 

查看單個節點:(此時六個節點是分散的,沒有造成集羣,全部cluster_state=fail

 

Java代碼  收藏代碼

  1. [@zw_53_162 conf]# redis-cli -c -p 7000  
  2. 127.0.0.1:7000> cluster info  
  3. cluster_state:fail  
  4. cluster_slots_assigned:0  
  5. cluster_slots_ok:0  
  6. cluster_slots_pfail:0  
  7. cluster_slots_fail:0  
  8. cluster_known_nodes:1  
  9. cluster_size:0  
  10. cluster_current_epoch:0  
  11. cluster_my_epoch:0  
  12. cluster_stats_messages_sent:0  
  13. cluster_stats_messages_received:0  

 

 

3、使用Redis-ClusterRuby工具完成集羣的搭建:

 

Java代碼  收藏代碼

  1. /opt/soft/redis/src/redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005  

 

   安裝信息:

Java代碼  收藏代碼

  1. >>> Creating cluster  
  2. # ping全部節點,若是有一個不OK,安裝就結束了。  
  3. Connecting to node 127.0.0.1:7000: OK  
  4. Connecting to node 127.0.0.1:7001: OK  
  5. Connecting to node 127.0.0.1:7002: OK  
  6. Connecting to node 127.0.0.1:7003: OK  
  7. Connecting to node 127.0.0.1:7004: OK  
  8. Connecting to node 127.0.0.1:7005: OK  
  9. # 主從節點確認  
  10. >>> Performing hash slots allocation on 6 nodes...  
  11. Using 3 masters:  
  12. 127.0.0.1:7000  
  13. 127.0.0.1:7001  
  14. 127.0.0.1:7002  
  15. Adding replica 127.0.0.1:7003 to 127.0.0.1:7000  
  16. Adding replica 127.0.0.1:7004 to 127.0.0.1:7001  
  17. Adding replica 127.0.0.1:7005 to 127.0.0.1:7002  
  18. M: 11e6c12da2521b1877c93cf64437af23b21889b3 127.0.0.1:7000  
  19.  slots:0-5460 (5461 slots) master  
  20. M: cee69d4f42bce422e864e0324679f1fbf7506dba 127.0.0.1:7001  
  21.  slots:5461-10922 (5462 slots) master  
  22. M: 32ff9de3a4bcdc9423fdf269b0d1588d50fd18e3 127.0.0.1:7002  
  23.  slots:10923-16383 (5461 slots) master  
  24. S: 0e5d897a3be6033ef6733fc37a974124e9e89cc8 127.0.0.1:7003  
  25.  replicates 11e6c12da2521b1877c93cf64437af23b21889b3  
  26. S: b294779edee369c669c44848d71d599c42a0bfe8 127.0.0.1:7004  
  27.  replicates cee69d4f42bce422e864e0324679f1fbf7506dba  
  28. S: f57f64229b6a7501d42bd70192eec4acd56422d6 127.0.0.1:7005  
  29.  replicates 32ff9de3a4bcdc9423fdf269b0d1588d50fd18e3  
  30. Can I set the above configuration? (type 'yes' to accept): yes(人工確認安裝是否成功)  
  31.  #meet  
  32. >>> Nodes configuration updated  
  33. >>> Assign a different config epoch to each node  
  34. >>> Sending CLUSTER MEET messages to join the cluster  
  35. Waiting for the cluster to join..  
  36. >>> Performing Cluster Check (using node 127.0.0.1:7000)  
  37. #分配slots  
  38. M: 11e6c12da2521b1877c93cf64437af23b21889b3 127.0.0.1:7000  
  39.  slots:0-5460 (5461 slots) master  
  40. M: cee69d4f42bce422e864e0324679f1fbf7506dba 127.0.0.1:7001  
  41.  slots:5461-10922 (5462 slots) master  
  42. M: 32ff9de3a4bcdc9423fdf269b0d1588d50fd18e3 127.0.0.1:7002  
  43.  slots:10923-16383 (5461 slots) master  
  44. M: 0e5d897a3be6033ef6733fc37a974124e9e89cc8 127.0.0.1:7003  
  45.  slots: (0 slots) master  
  46.  replicates 11e6c12da2521b1877c93cf64437af23b21889b3  
  47. M: b294779edee369c669c44848d71d599c42a0bfe8 127.0.0.1:7004  
  48.  slots: (0 slots) master  
  49.  replicates cee69d4f42bce422e864e0324679f1fbf7506dba  
  50. M: f57f64229b6a7501d42bd70192eec4acd56422d6 127.0.0.1:7005  
  51.  slots: (0 slots) master  
  52.  replicates 32ff9de3a4bcdc9423fdf269b0d1588d50fd18e3  
  53. [OK] All nodes agree about slots configuration.  
  54. >>> Check for open slots...  
  55. >>> Check slots coverage...  
  56. [OK] All 16384 slots covered.  

  

確認集羣是否安裝成功:

Java代碼  收藏代碼

  1. [@zw_53_162 redis]# redis-cli -c -p 7000  
  2. 127.0.0.1:7000> 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_sent:985  
  13. cluster_stats_messages_received:985  

 

 查看slots使用狀況:

Java代碼  收藏代碼

  1. 127.0.0.1:7000> cluster slots  
  2. 1) 1) (integer) 5461  
  3.  2) (integer) 10922  
  4.  3) 1) "127.0.0.1"  
  5.  2) (integer) 7001  
  6.  4) 1) "127.0.0.1"  
  7.  2) (integer) 7004  
  8. 2) 1) (integer) 10923  
  9.  2) (integer) 16383  
  10.  3) 1) "127.0.0.1"  
  11.  2) (integer) 7002  
  12.  4) 1) "127.0.0.1"  
  13.  2) (integer) 7005  
  14. 3) 1) (integer) 0  
  15.  2) (integer) 5460  
  16.  3) 1) "127.0.0.1"  
  17.  2) (integer) 7000  
  18.  4) 1) "127.0.0.1"  
  19.  2) (integer) 7003  

  

4、完整安裝視頻:

 

見附件。

相關文章
相關標籤/搜索