Redisのローカルクラスタ構造(5以降)

Redisのローカルクラスタ構造(5以降)

2019年11月3日午前10時05分48秒

ステップ

1、ダウンロードして、Redisのインストールパッケージをインストールします

複製の2、5部、6部のRedisの合計は、インストールを解凍し、各ノードとノードRedisのためのポート開口を変更します

3、ポートが各ノードにRedisの変更、ならびにオープンクラスタモデル

ノードクラスタのハッシュ溝に割り当てられたポート:IPを作成--clusterのRedis-cliを使用して3、(あなただけのIPを追加マスターノードからマスターを使用している場合を:ポートすることができます)

4、使用のRedis-CLI --clusterチェックIP:ポートビューのノード情報

図5に示すように、使用のRedis-CLI --clusterアドインノードノードIP:ノードポートマスターIP:マスターポート--clusterスレーブ--cluster-マスタIDマスタ节点ID

実現

1、コンパイラ

インストールパッケージをダウンロードしてインストールRedisの

wget http://download.redis.io/releases/redis-5.0.6.tar.gz

インストールパッケージの抽出

tar zxf redis-5.0.6.tar.gz

フォルダにファイルを抽出した後、

QQのスクリーンショット20191103144705

PSは:コンパイルの前に、サーバーは、GCCをインストールする必要があります

yum install gcc-c++

コンパイルするにはmakeコマンドを入力し、次の図は、コンパイルが成功のヒントを表し見えます

QQのスクリーンショット20191103145058

また、コンパイル済みの場所を指定することができます

make install PREFIX=path

コンパイルされたファイル

QQのスクリーンショット20191103145746

2、コピーして、設定を変更し、オープン

copyコマンドを使用します

cp -rf 文件夹路径 文件夹路径

効果

QQのスクリーンショット20191103150602

、異なるポートに変更されているのRedisの各コピーに設定を変更し、背景を開始Redis.conf

# 默认
daemonize no
port 6379
# cluster-enabled yes

#修改
daemonize yes
port 7001
cluster-enabled yes

各ノードの電源をオンにし(バッチ実行)

cd /software/redis/redis6379/bin
./redis-server ./redis.conf
cd /software/redis/redis7000/bin
./redis-server ./redis.conf
cd /software/redis/redis7001/bin
./redis-server ./redis.conf
cd /software/redis/redis7002/bin
./redis-server ./redis.conf
cd /software/redis/redis7003/bin
./redis-server ./redis.conf
cd /software/redis/redis7004/bin
./redis-server ./redis.conf

すべてのノードが次の図に示すにオープンの成功を見えます

QQのスクリーンショット20191103151400

3、ハッシュスロット割当

次のコマンドを使用します。

redis-cli --cluster create ip:port ip:port ip:port

QQのスクリーンショット20191103151606

図4に示すように、割り当て情報を表示します

ポート情報の分布を表示する:Redisの-CLI --clusterチェック腹腔コマンドを使用します

QQのスクリーンショット20191103152330

図から分かるように、6379は5461-10922,7003は10923から16383です0-5460,7001に割り当てられています。

図5に示すように、ノードが追加され

コマンドを使用します。

redis-cli --cluster add-node node-ip:node-port master-ip:master-port --cluster-slave --cluster-master-id master节点id

QQのスクリーンショット20191103152840

添加した後、完全なビューのノード情報があります

cluster nodes

QQのスクリーンショット20191103152935

図から分かるように、図3に示すように、主パターン3のクラスタから提供されます。

6、テストキー

接続のRedis(-cがトランクモードを示します)

redis-cli -p 6379 -c

QQのスクリーンショット20191103153704

図から分かるように、前方にこのノード7001のポートに鍵アルゴリズムによってノード6379のキーポートを加えます。

ノードのポート7001に、キー値を見つけることができます。

同時に、7001、キー値にノードポートから受信しています。

7、テストセンチネル

使用psの補助| grepのRedisのRedisのクエリの各ノード・ポート

QQのスクリーンショット20191103153842

マスターノードとの間のこの時間は正常です

QQのスクリーンショット20191103153929

ノードのクローズポート7001

QQのスクリーンショット20191103154106

QQのスクリーンショット20191103154040

自動的にマスターノードにノードからアップグレード7002 7001ポートノード。

7001ノード、自動的にスレーブに降格を再度開きます。

QQのスクリーンショット20191103154314


水平方向のスケーリングは、高可用性クラスタをRedisの

マスタノード拡張

新しいポートRedisのは7005と7006、実行ノード。

QQのスクリーンショット20191103155441

容器7005個のノードを添加しました

redis-cli --cluster add-node 127.0.0.1:7005 127.0.0.1:6379

QQのスクリーンショット20191103160806

ノード7005に割り当てられたハッシュスロット

从7001节点分配1000个哈希槽给7005节点
all表示均匀分配(从每个节点取一点哈希槽出来)
done表示从当前节点取

[root@iz2zeaf5jdjve80rjlsjgnz bin]# redis-cli --cluster reshard 127.0.0.1:7001
>>> Performing Cluster Check (using node 127.0.0.1:7001)
S: 152f1f15ac36784362e8733a393c9a257f7a8ba2 127.0.0.1:7001
   slots: (0 slots) slave
   replicates f9129fca620934624742e25a31d08c545a9d583e
S: ac613c6d40e0d860662effb7403a67fe9b6029aa 127.0.0.1:7000
   slots: (0 slots) slave
   replicates 77cbdfe644fdc0e50e550cad44a3ed144c8d2499
M: f9129fca620934624742e25a31d08c545a9d583e 127.0.0.1:7002
   slots:[5962-10922] (4961 slots) master
   1 additional replica(s)
S: 09ede6784ccc5a41b82db3fe4c544b5c126f455e 127.0.0.1:7004
   slots: (0 slots) slave
   replicates bd08af40b95169524c27da654302c9f12d8a9e8c
M: bd08af40b95169524c27da654302c9f12d8a9e8c 127.0.0.1:7003
   slots:[11422-16383] (4962 slots) master
   1 additional replica(s)
M: 6c87fc578eec8bd7d588d111347dd7a7bd21dd0b 127.0.0.1:7005
   slots: (0 slots) master
M: 77cbdfe644fdc0e50e550cad44a3ed144c8d2499 127.0.0.1:6379
   slots:[0-5961],[10923-11421] (6461 slots) master
   1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
How many slots do you want to move (from 1 to 16384)? 1000
What is the receiving node ID? 6c87fc578eec8bd7d588d111347dd7a7bd21dd0b
Please enter all the source node IDs.
  Type 'all' to use all the nodes as source nodes for the hash slots.
  Type 'done' once you entered all the source nodes IDs.
Source node #1: all

Ready to move 1000 slots.

QQのスクリーンショット20191103161734

ノードから拡張

クラスタ内のRedisの7006ノードを追加します。

 redis-cli --cluster add-node 127.0.0.1:7006 127.0.0.1:7005 --cluster-slave --cluster-master-id 6c87fc578eec8bd7d588d111347dd7a7bd21dd0b

QQのスクリーンショット20191103162309

参照

Redisのエントリ(初心者用)

(非常に詳細で、初心者に適している)Redisのクラスタのセットアップ

Redis5クラスタ指定された人工的な主従関係

水平方向のスケーリングが5高可用性クラスタをRedisの

おすすめ

転載: www.cnblogs.com/Rlxy93/p/11811146.html