レディマシンの多例主従+ホイッスルモード
10283 ワード
生産環境では、Redisのホイッスルモードを使いたいなら、Redisの2.8バージョン以降のバージョンを使うようにします.主従モードであれ、ホイッスルモードであれ、この二つのモードには一つの問題があり、水平拡張できず、この二つのモードの利用可能性の高い特性はマスターノードメモリによって制限されます.もう一つのポイントは、歩哨モードの配置を実現するのも簡単ではなく、むしろ多少煩雑であるとも言えるので、工業シーンではこの二つのパターンは使用を勧めないです.もし使うなら、関連の問題がある解決案が必要です.これから持ってくる問題を避けるために.インストール手順:インストールパッケージをダウンロードする:
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# wget http://download.redis.io/releases/redis-5.0.2.tar.gz
インストール依存[root@localhost src]# yum -y install gcc gcc-c++
解凍インストール[root@localhost src]# tar zxf redis-5.0.2.tar.gz
[root@localhost src]# cd redis-5.0.2
[root@localhost redis-5.0.2]# make MALLOC=libc && make install
redisを設定します.[root@localhost redis-5.0.2]# cp redis.conf /etc/redis_6379.conf
[root@localhost redis-5.0.2]# cp redis.conf /etc/redis_6380.conf
[root@localhost redis-5.0.2]# cp redis.conf /etc/redis_6381.conf
設定ファイルを変更#========= ============
[root@localhost redis-5.0.2]# vim /etc/redis_6379.conf
-----------------------------------------
bind 192.168.33.143 #IP
daemonize yes #
port 6379 #
-----------------------------------------
#========== ===========
[root@localhost redis-5.0.2]# vim /etc/redis_6380.conf
----------------------------------------
bind 192.168.33.143 #IP
daemonize yes #
port 6380 #
pidfile /var/run/redis_6380.pid
replicaof 192.168.33.143 6379 # IP
replica-priority 100 #
----------------------------------------
[root@localhost redis-5.0.2]# vim /etc/redis_6381.conf
---------------------------------------
bind 192.168.33.143 #IP
daemonize yes #
port 6381 #
pidfile /var/run/redis_6381.pid
replicaof 192.168.33.143 6379 # IP
replica-priority 90 #
---------------------------------------
オープンサービス[root@localhost ~]# redis-server /etc/redis_6379.conf
[root@localhost ~]# redis-server /etc/redis_6380.conf
[root@localhost ~]# redis-server /etc/redis_6381.conf
#
[root@localhost ~]# netstat -anpt |grep 63
テストの主従[root@localhost ~]# redis-cli -p 6379 -h 192.168.33.143
192.168.33.143:6379> set ljh 888
OK
192.168.33.143:6379> exit
ノードからkeyの値を抽出する[root@localhost ~]# redis-cli -p 6380 -h 192.168.33.143
192.168.33.143:6380> get ljh
"888"
哨兵モードを設定[root@localhost ~]# cd /usr/local/src/redis-5.0.2
[root@localhost redis-5.0.2]# cp sentinel.conf /etc/sentinel_26379.conf
[root@localhost redis-5.0.2]# cp sentinel.conf /etc/sentinel_26380.conf
[root@localhost redis-5.0.2]# cp sentinel.conf /etc/sentinel_26381.conf
設定ファイルを変更#========== ==============
[root@localhost redis-5.0.2]# vim /etc/sentinel_26379.conf
-------------------------
bind 127.0.0.1 192.168.33.143
port 26379
daemonize yes
pidfile /var/run/redis-sentinel_26379.pid
sentinel monitor mymaster 192.168.33.143 6379 2
--------------------------
#========== ==============
[root@localhost redis-5.0.2]# vim /etc/sentinel_26380.conf
-------------------------
bind 127.0.0.1 192.168.33.143
port 26380
daemonize yes
pidfile /var/run/redis-sentinel_26380.pid
sentinel monitor mymaster 192.168.33.143 6379 2
-------------------------
[root@localhost redis-5.0.2]# vim /etc/sentinel_26381.conf
-------------------------
bind 127.0.0.1 192.168.33.143
port 26381
daemonize yes
pidfile /var/run/redis-sentinel_26381.pid
sentinel monitor mymaster 192.168.33.143 6379 2
-------------------------
保存ログディレクトリを作成[root@localhost redis-5.0.2]# redis-server /etc/sentinel_26379.conf --sentinel
[root@localhost redis-5.0.2]# redis-server /etc/sentinel_26380.conf --sentinel
[root@localhost redis-5.0.2]# redis-server /etc/sentinel_26381.conf --sentinel
[root@localhost redis-5.0.2]# netstat -anpt |grep 263
検証[root@localhost redis-5.0.2]# redis-cli -p 26379
127.0.0.1:26379> info sentinel
# Sentinel
sentinel_masters:1
sentinel_tilt:0
sentinel_running_scripts:0
sentinel_scripts_queue_length:0
sentinel_simulate_failure_flags:0
master0:name=mymaster,status=ok,address=192.168.33.143:6379,slaves=2,sentinels=3
表示、キルトダウン6379ポート[root@localhost ~]# netstat -anpt |grep -w 6379
tcp 0 0 192.168.33.143:6379 0.0.0.0:* LISTEN 12384/redis-server
##
[root@localhost ~]# cat /var/run/redis_6379.pid
12384
[root@localhost ~]# kill -9 12384
ホストの移動に成功しました[root@localhost ~]# redis-cli -p 26379
127.0.0.1:26379> info sentinel
# Sentinel
sentinel_masters:1
sentinel_tilt:0
sentinel_running_scripts:0
sentinel_scripts_queue_length:0
sentinel_simulate_failure_flags:0
master0:name=mymaster,status=ok,address=192.168.33.143:6381,slaves=2,sentinels=3