redis sentinelクラスタ構成
3980 ワード
本明細書ではredis 2.8.24のバージョンを使用します.
1.テスト環境
2.ダウンロードインストール
アドレス:http://www.redis.io
3.試験環境の構成
redisの設定
1) master
master_6379/redis.confは以下のように変更されました.
6379_sentinel.confは以下のように変更されました.
2)slave1
slave_6479/redis.confは以下のように変更されました.
6479_sentinel.confは以下のように変更されました.
3)slave2
slave_6579/redis.confは以下のように変更されました.
6479_sentinel.confは以下のように変更されました.
4.クラスタの起動
注意:sentinel環境を初めて構築する場合は、まずmasterを起動する必要があります.
セッションをクローンし、slave 1とslave 1-sentinelを起動します.
セッションをクローンし、slave 2とslave 2を起動します.sentinel:
マスターのステータスを表示するには、次の手順に従います.
5.テスト
1)マスターダウンタイム
結果:masterがダウンタイムした後、sentinelクラスタはslaveクラスタの中でmasterとしてサービスを継続するために1台を選択します.
2)マスター・リカバリ
結果:以前のmasterが正常に戻った後、redisクラスタに加入し、階級はslaveとなった.
3)slaveダウンタイム
結果:slaveはmasterに影響しなかった.
参照 http://blog.csdn.net/wtyvhreal/article/details/46517483
1.テスト環境
master: 192.168.136.130 6379
slave1: 192.168.136.130 6479
slave2: 192.168.136.130 6579
master-sentinel: 192.168.136.130 26379
slave1-sentinel: 192.168.136.130 26479
slave2-sentinel: 192.168.136.130 26579
2.ダウンロードインストール
アドレス:http://www.redis.io
#
tar zxf redis-2.8.24.tar.gz
cd redis-2.8.24
make && make install
# ;
yum install -y gcc makc
3.試験環境の構成
cd /usr/local
mkdir redis_cluster
mkdir redis_cluster/master_6379
mkdir redis_cluster/slave_6479
mkdir redis_cluster/slave_6579
redisの設定
1) master
cp -f /usr/local/src/redis-2.8.24/redis.conf /usr/local/redis_cluster/master_6379/redis.conf
cp -f /usr/local/src/redis-2.8.24/sentinel.conf /usr/local/redis_cluster/master_6379/6379_sentinel.conf
master_6379/redis.confは以下のように変更されました.
daemonize yes port 6379
requirepass 123456
masterauth 123456
appendonly no save ""
slave-read-only yes
6379_sentinel.confは以下のように変更されました.
port 26379
sentinel monitor mymaster 192.168.136.130 6379 2
sentinel auth-pass mymaster 123456
sentinel down-after-milliseconds mymaster 30000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 900000
2)slave1
cp -f /usr/local/src/redis-2.8.24/redis.conf /usr/local/redis_cluster/slave_6479/redis.conf
cp -f /usr/local/src/redis-2.8.24/sentinel.conf /usr/local/redis_cluster/slave_6479/6479_sentinel.conf
slave_6479/redis.confは以下のように変更されました.
daemonize yes
port 6479
requirepass 123456
masterauth 123456
appendonly no save ""
slave-read-only yes
slaveof 192.168.136.130 6379
6479_sentinel.confは以下のように変更されました.
port 26479
sentinel monitor mymaster 192.168.136.130 6379 2
sentinel auth-pass mymaster 123456
sentinel down-after-milliseconds mymaster 30000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 900000
3)slave2
cp -f /usr/local/src/redis-2.8.24/redis.conf /usr/local/redis_cluster/slave_6579/redis.conf
cp -f /usr/local/src/redis-2.8.24/sentinel.conf /usr/local/redis_cluster/slave_6579/6579_sentinel.conf
slave_6579/redis.confは以下のように変更されました.
daemonize yes
port 6579
requirepass 123456
masterauth 123456
appendonly no save ""
slave-read-only yes
slaveof 192.168.136.130 6379
6479_sentinel.confは以下のように変更されました.
port 26579
sentinel monitor mymaster 192.168.136.130 6379 2
sentinel auth-pass mymaster 123456
sentinel down-after-milliseconds mymaster 30000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 900000
4.クラスタの起動
注意:sentinel環境を初めて構築する場合は、まずmasterを起動する必要があります.
# master master-sentinel:
redis-server /usr/local/redis_cluster/master_6379/redis.conf
redis-sentinel /usr/local/redis_cluster/master_6379/6379_sentinel.conf
セッションをクローンし、slave 1とslave 1-sentinelを起動します.
redis-server /usr/local/redis_cluster/slave_6479/redis.conf
redis-sentinel /usr/local/redis_cluster/slave_6479/6479_sentinel.conf
セッションをクローンし、slave 2とslave 2を起動します.sentinel:
redis-server /usr/local/redis_cluster/slave_6579/redis.conf
redis-sentinel /usr/local/redis_cluster/slave_6579/6579_sentinel.conf
マスターのステータスを表示するには、次の手順に従います.
redis-cli -h 192.168.136.130 -p 6379
#
info replication
5.テスト
1)マスターダウンタイム
結果:masterがダウンタイムした後、sentinelクラスタはslaveクラスタの中でmasterとしてサービスを継続するために1台を選択します.
2)マスター・リカバリ
結果:以前のmasterが正常に戻った後、redisクラスタに加入し、階級はslaveとなった.
3)slaveダウンタイム
結果:slaveはmasterに影響しなかった.
参照 http://blog.csdn.net/wtyvhreal/article/details/46517483