3台のサーバによるRedis clusterクラスタの構築

2059 ワード

目的:3台のサーバーを用いて3主3を構築しredisクラスタから前期準備:1.3台のサーバ、1,2,3 2./usr/local/redisフォルダ3を作成します.このフォルダの下に63796380,bin,redisの3つのフォルダを作成し、63796380はポート6379,6380のredisプロファイルredisを配置するために使用する.conf,binの下にはredisコンパイル後の実行可能ファイルredis-server,redis-cli,redis-check-rdb,redis-check-aof,redis-benchmarkなどが配置する、redisは解凍後のredisフォルダ4を配置する.オープンサーバポート
centos7    
iptables -I INPUT -p tcp --dport 6379 -j ACCEPT
iptables -I INPUT -p tcp --dport 6380 -j ACCEPT
iptables -I INPUT -p tcp --dport 16379 -j ACCEPT
iptables -I INPUT -p tcp --dport 16380 -j ACCEPT
centos7
firewall-cmd --zone=public --add-port=6379/tcp --permanent

私はここで63796380をredisリスニングポートとして選択し、redisクラスタを構築し、デフォルトポートに10000を追加してクラスタ内部バスポート通信として特殊なプロトコルを使用して、クラスタ内部の高帯域幅低遅延のデータ交換を実現し、このポートを開かないとクラスタの作成時にjionを待つことになる......5.rubyをインストールし、rubyはgcc関連サポート(自分で関連チュートリアルを検索)が必要である.注意:ruby関連操作は1台のサーバーで実行すればよい.redisパッケージをダウンロードし、3以上を要求
redis 1をインストールします.解凍するtarは、srcに入り、makeコンパイルを実行する後、redis-server、redis-cli、redis-check-rdb、redis-check-aof、redis-benchmarkの5つの実行ファイルをredisディレクトリのbinの下2にコピーする.3台のサーバが2台のredisを切り離して起動
./redis-server  /usr/local/redis/6379/redis.conf
./redis-server  /usr/local/redis/6380/redis.conf

3.照会redisid
 lsof -i:6379
 lsof -i:6380

4.gem install redisを実行してクラスタ依存性5をインストールする.生成クラスタはredis解凍パケットの下のsrcに戻って実行される
./redis-trib.rb create --replicas 1 ip1:6379 ip1:6380 ip2:6379 ip2:6380 ip3:6379 ip3:6380

クラスタの生成中に待機joinが発生する可能性があります.ポートが正しく開いているかどうかを確認してください.実行に失敗した場合、各ノードのnodes-6379を削除する必要があります.conf,nodes-6380.conf,appendonly.aof,dump.rdb(これらのファイルのパスはredis.confのcluster-config-fileで構成されています)は、各ノードredisを閉じて、再開するかできない場合は、これらのファイルを削除した後、reidsクライアントに入ってredis./をクリアします.redis-cli-h 127.0.0.1(このipは現在のサーバip)-c-p 6379 flushallを実行してからクラスタ生成コマンドを再実行するクラスタのデフォルトは、クラスタ状態を参照してbinファイルで実行する順にプライマリスレーブプライマリスレーブプライマリスレーブredis-cli-h 127.0.0.1(このipは現在のサーバip)-p 6379-c cluster nodes
まとめ:redis clusterを構築するのは難しくありません.主にいくつかの細部に問題が発生します.昼下がりになってからインストールに成功しました.この文章は主に作者がインストール中に出会った穴に重点を置いています.疑問があれば、伝言を歓迎します.