CentOS 7のダウンロード、Redisクラスタの詳細手順のインストール、テスト


/*****************Redis 3.0クラスタ構築********************************/redis 3.0以前は、各Masterの状態を監視するためのSentineツールが提供されていた.Masterが異常の場合はマスタスレーブとしてslaveをマスターとし,masterをslaveとする.その配置もやや複雑で,各方面で一般的に表現されている.今はredis 3.0はクラスタのフォールトトレランス機能をサポートしており、非常に簡単です.次に、redis 3を学習します.0クラスタの構築方法.クラスタ構築:少なくとも3つのmasterが必要
インストール前の手順(インストール必須):クラスタをインストールする前に、まずRedisシングルノードをインストールします.参照リンク(このブロガーの)は次のとおりです....シングルノードをインストールするRedis...(インストール必須)
**手順1:**フォルダredis-clusterを作成し、その下にそれぞれ6つのフォルダを作成します.
[root@jsyfprod001 local]# sudo rm -rf redis-cluster/
[root@jsyfprod001 local]# mkdir -p /usr/local/redis-cluster
#       Redis   6   
[root@jsyfprod001 redis-cluster]# mkdir 3301
[root@jsyfprod001 redis-cluster]# mkdir 3302
[root@jsyfprod001 redis-cluster]# mkdir 3303
[root@jsyfprod001 redis-cluster]# mkdir 3304
[root@jsyfprod001 redis-cluster]# mkdir 3305
[root@jsyfprod001 redis-cluster]# mkdir 3306


第二歩:前の前置き文のredis.confプロファイルは、それぞれcopyから330の下で、各ファイルの内容、すなわち330の下の各copyに対するredisを修正する.confファイルを修正します!注意:ここでは直接コピーすることはできません.対応するディレクトリを変更する必要があります.
次のようになります.
#   :         ,          * 
cp /usr/local/redis/etc/redis.conf /usr/local/redis-cluster/330*


# *         Redis.conf   
cd /usr/local/redis-cluster/330*
#   Redis.conf       
sudo vim redis.conf 

#daemonize no --> yes
daemonize yes 
# Redis   
pidfile /usr/local/redis-cluster/330*/redis.pid
#                 port 6379 --> 330*
port 330*
#          ,  requirepass masterauth     ,         ,                         Redis      (  6.2     )
#   Redis   
# requirepass myPassword
#              
# masterauth myPassword

# (          ip,          ..    !!!)
#   :     IP        IP,          
bind 10.144.113.86 #           IP 

#           ,            ,       ,    !!!
dir /usr/local/redis-cluster/330*/

#       ,    
cluster-enabled yes

#   330x   port   
cluster-config-file /usr/local/redis-cluster/330*/nodes.conf

#           
cluster-node-timeout 5000

appendonly yes

logfile /usr/local/redis-cluster/330*/redis.log


注意:RedisはRedisを起動できません.conf対応redis.logのエラーメッセージは以下の通りです:Creating Server TCP listening socket ip:3301:bind:Cannot assign requested address解決方法:redis.confのbindの後ろに対応するipをイントラネットに変更
ステップ3:各ファイルがポート番号、bindのip、データ格納dirを変更し、nodesファイルを変更する必要があることに注意してください.
ステップ4:redisクラスタはrubyコマンドを使用する必要があるため、rubyをインストールする必要があります.
注意:CentOS 7でgem install redisを使用するとredis requires Ruby version>=2.2.2となります.のエラー解決方法は以下のブログリンクをご覧ください(CentOS 6無視)http://blog.csdn.net/fengye_yulu/article/details/77628094
yum install ruby
yum install rubygems
#      CentOS7     redis requires Ruby version >= 2.2.2.    
#           http://blog.csdn.net/fengye_yulu/article/details/77628094
#   :         
gem install redis #(  redis ruby   )


ステップ5:**重点内容:**はそれぞれ6つのredisインスタンスを起動し、起動に成功したかどうかを確認します.
#   :       6 Redis  ,      
/usr/local/redis/bin/redis-server /usr/local/redis-cluster/330*/redis.conf 

#  6 Redis         ,        
ps -ef | grep redis

**ステップ6:**まずredis 3へ.0のインストールディレクトリの下で、redis-tribを実行します.rbコマンド.1.クラスタにRedisノードを追加する
cd /usr/local/redis-3.0.0/src/
#   :           IP             ,  set           IP
./redis-trib.rb  create --replicas 1 10.144.113.86:3301 10.144.113.86:3302 10.144.113.86:3303 10.144.113.86:3304 10.144.113.86:3305 10.144.113.86:3306


注意:Redisをクラスタに追加するとコンソールにWaiting for the cluster to joinが表示される可能性があります...長い間反応していません.redisクラスタはredisクライアント接続のポートを開くだけでなく、また、クラスタバスポートを開通する必要があるクラスタバスポートがredisクライアント接続のポート+10000 redisポートが6379であるクラスタバスポートが16379であるため、すべてのサーバのポイントはredisのクライアント接続ポートとクラスタバスポートを開通する必要がある解決方法:解決ステップ1:Redisを停止し、Redisを削除する.confのcluster-config-fileに対応するnodes.confファイル解決ステップ2:Linuxではファイアウォールにクライアント接続ポートとクラスタバスポートを追加する必要がある解決ステップ3:セキュリティグループがある場合は、クライアント接続ポートとクラスタバスポートを開放する解決ステップ1 4:Redisを再起動し、Redisノードをクラスタに追加するステップを再実行する(6.1ステップ)
2.Redisノードのアカウントパスワードの設定
# *         Redis.conf           6   
cd /usr/local/redis-cluster/
#   Redis.conf       
sudo vim 330*/redis.conf 

修正内容は次のとおりです.
#          ,  requirepass masterauth     ,         ,         
#   Redis   
requirepass myPassword
#              
masterauth myPassword


**第七歩:**ここまでクラスタ構築に成功しました!検証:
**1:**いずれかのクライアントに接続すればよい
#            
cd /usr/local/redis/bin/
./redis-cli -c -h -p  #-c      ,  ip      
#   : 
/usr/local/redis/bin/redis-cli -c -h 10.144.113.86 -p 330* -a myPassword


**2:**Redisクラスタに接続してcluster infoでクラスタ情報を表示し、cluster nodesでノードリストを表示する
#       
ip:3301> 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_sent:1860
cluster_stats_messages_received:1853

#       
ip:3301> cluster nodes
64a80c20e979b72f930cc4314b36adcef6ad65c3 47.94.197.87:3305 slave 0ffd1ffeae522a250b7b02db921878bb24d1be03 0 1511076460918 5 connected
9cebecfaf51f440eef02c44b8c90a0a9e1dd79be 192.168.1.34:3301 myself,master - 0 0 1 connected 0-5460
acf94d1a59337f08a8e30cd99d3c82cd201a8903 47.94.197.87:3306 slave a6299ffcc2063eacb0116aad19cb48f96ebe8970 0 1511076460416 6 connected
0ffd1ffeae522a250b7b02db921878bb24d1be03 47.94.197.87:3302 master - 0 1511076459915 2 connected 5461-10922
a6299ffcc2063eacb0116aad19cb48f96ebe8970 47.94.197.87:3303 master - 0 1511076458913 3 connected 10923-16383
83b421f4177aaa8a3a62776df96321cf528a4033 47.94.197.87:3304 slave 9cebecfaf51f440eef02c44b8c90a0a9e1dd79be 0 1511076459414 4 connected


**3:**データ操作検証を行う4:クラスタを閉じるには1つずつ閉じる必要がある
#   : myPassword   Redis.conf      (    )
/usr/local/redis/bin/redis-cli -c -h 10.144.113.86 -p 330* -a myPassword shutdown


ステップ8:(補足)友情のヒント:クラスタが起動できない場合、一時的なデータファイルを削除し、各redisサービスを再起動し、クラスタ環境を再構築します.
ステップ9:(クラスタ操作文章)redis-trib.rb公式グループ操作コマンド:http://redis.io/topics/cluster-tutorialおすすめブログ:http://blog.51yip.com/nosql/1726.html/comment-page-1