CentOS 7はredis 5をインストールする.0クラスタの構築
2999 ワード
2台の仮想マシン(バージョン:CentOS 7)に記録されたRedisクラスタ(Redisバージョン:redis-5.0.4)を構築する手順は、次のとおりです.
1、ダウンロードインストール
まず、1台の仮想マシンA(IP:192.168.1.1.1103)にディレクトリredisを新規作成し、そのディレクトリの下に入り、redis-5.0.4をダウンロードし、解凍し、解凍ディレクトリの下に入り、redisをコンパイルしてインストールし、仮想マシンB(IP:192.168.1.1104)に同じ理屈
2、ノードの構成
仮想マシンAのredisディレクトリの下にredis_を作成するclusterディレクトリ、redis_clusterディレクトリの下に7000、7002、7002の3つのノードディレクトリを作成し、redis-5.0.4ディレクトリのプロファイルredisをコピーする.confから7000、7002、7002の3つのノードディレクトリの下
次に、3つのノードディレクトリの下のredisをそれぞれ変更する.confプロファイル、例えば7000ディレクトリの下redisを変更する.confは以下の通りで、他の2つは同じです.
同様に仮想マシンB上のredisディレクトリの下に7003,7004,7005の3つのノードディレクトリを作成する、redisをコピーして修正する.confプロファイル(redis_clusterディレクトリ全体を仮想マシンBのredisディレクトリの下にscpし、ディレクトリ名およびプロファイルを変更することもできます).
3、起動
仮想マシンAでのredis_clusterの下にstart-allを新規作成します.shスクリプトを起動します.以下のようにします.
stop-allを新規作成する.shスクリプトを停止します.以下のようにします.
スクリプトを仮想マシンBにコピーし、vimでディレクトリ、ポート、IPを変更します.以下のようにします.
スクリプトに実行可能権限を追加し、次のように起動します.
4、クラスターコマンドを作成し、全部で6個のノード、三主三従
最後にクラスタを検証し、仮想マシンAにredis-cliで192.168.1.1047004ポートを接続し、接続後にkey:test、value:doneを設定します.以下のようにします.
次に仮想マシンBにredis-cliで192.168.1.1.37001ポートを接続し、接続後testの値を取得し、doneを出力し、クラスタが成功したことを証明する.
1、ダウンロードインストール
まず、1台の仮想マシンA(IP:192.168.1.1.1103)にディレクトリredisを新規作成し、そのディレクトリの下に入り、redis-5.0.4をダウンロードし、解凍し、解凍ディレクトリの下に入り、redisをコンパイルしてインストールし、仮想マシンB(IP:192.168.1.1104)に同じ理屈
mkdir redis
cd redis/
wget http://download.redis.io/releases/redis-5.0.4.tar.gz
tar -zxvf redis-5.0.4.tar.gz
cd redis-5.0.4/
make && make install
2、ノードの構成
仮想マシンAのredisディレクトリの下にredis_を作成するclusterディレクトリ、redis_clusterディレクトリの下に7000、7002、7002の3つのノードディレクトリを作成し、redis-5.0.4ディレクトリのプロファイルredisをコピーする.confから7000、7002、7002の3つのノードディレクトリの下
mkdir redis_cluster
cd redis_cluster/
mkdir 7000 7001 7002
cp ../redis-5.0.4/redis.conf 7000
cp ../redis-5.0.4/redis.conf 7001
cp ../redis-5.0.4/redis.conf 7002
次に、3つのノードディレクトリの下のredisをそれぞれ変更する.confプロファイル、例えば7000ディレクトリの下redisを変更する.confは以下の通りで、他の2つは同じです.
bind 192.168.1.103 // IP
port 7000 //
daemonize yes //
pidfile /root/data/redis/redis_cluster/7000/redis_7000.pid // pid
cluster-enabled yes //
cluster-config-file nodes_7000.conf // ,
appendonly yes //
同様に仮想マシンB上のredisディレクトリの下に7003,7004,7005の3つのノードディレクトリを作成する、redisをコピーして修正する.confプロファイル(redis_clusterディレクトリ全体を仮想マシンBのredisディレクトリの下にscpし、ディレクトリ名およびプロファイルを変更することもできます).
3、起動
仮想マシンAでのredis_clusterの下にstart-allを新規作成します.shスクリプトを起動します.以下のようにします.
../redis-5.0.4/src/redis-server 7000/redis.conf
../redis-5.0.4/src/redis-server 7001/redis.conf
../redis-5.0.4/src/redis-server 7002/redis.conf
echo 'start'
stop-allを新規作成する.shスクリプトを停止します.以下のようにします.
#!/bin/bash
PORT=7000
ENDPORT=7003
while [ $((PORT < ENDPORT)) != "0" ]; do
echo "Stopping Redis $PORT"
../redis-5.0.4/src/redis-cli -h 192.168.1.103 -p $PORT shutdown
PORT=$((PORT+1))
done
echo "done"
exit 0
スクリプトを仮想マシンBにコピーし、vimでディレクトリ、ポート、IPを変更します.以下のようにします.
scp -r *.sh 192.168.1.104:/root/data/redis/redis_cluster
スクリプトに実行可能権限を追加し、次のように起動します.
chmod +x *.sh
./start-all.sh
4、クラスターコマンドを作成し、全部で6個のノード、三主三従
../redis-5.0.4/src/redis-cli --cluster create 192.168.1.103:7000 192.168.1.103:7001 192.168.1.103:7002 192.168.1.104:7003 192.168.1.104:7004 192.168.1.104:7005 --cluster-replicas 1
最後にクラスタを検証し、仮想マシンAにredis-cliで192.168.1.1047004ポートを接続し、接続後にkey:test、value:doneを設定します.以下のようにします.
[root@localhost src]# redis-cli -c -h 192.168.1.104 -p 7004
192.168.1.104:7004> set test done
-> Redirected to slot [6918] located at 192.168.1.104:7003
OK
次に仮想マシンBにredis-cliで192.168.1.1.37001ポートを接続し、接続後testの値を取得し、doneを出力し、クラスタが成功したことを証明する.
[root@localhost src]# redis-cli -c -h 192.168.1.103 -p 7001
192.168.1.103:7001> get test
-> Redirected to slot [6918] located at 192.168.1.104:7003
"done"