Redis安裝+Sentinel模式配置
系統:ubuntu
一、安裝redis
tip:redis這裡下載在usr/local/src/
安裝到usr/local/redis目錄
1)進入資料夾usr/local/src
cd /usr/local/src
3)解壓縮
tar -zxvf redis-2.8.9.tar.gz
4)建立一個連結
ln -s redis-2.8.9 redis
這樣使用cd redis就可以進入redis2.8.9這個檔案夾了。
5)建立資料夾usr/local/redis
mkdir usr/local/redis
6)安裝到usr/local/redis目錄
make PREFIX=/usr/local/redis/ install
二、sentinel模式配置
說明配置:
有2臺虛擬機器,IP分別為192.168.25.129,192.168.25.130
192.168.25.129配置:
6379:主伺服器
6380:從伺服器
192.168.25.130配置:
6379:從伺服器
6380:從伺服器
也就是192.168.25.129的6379埠作為主伺服器,其他幾個作為從伺服器。
2個redis例項分別有2個哨兵監控master。
在usr/local/src/redis中建立目錄conf
將redis.conf和sentinel.conf複製進去。
mkdir conf
cp redis.conf ./conf
cp sentinel.conf ./conf
redis.conf重新命名為redis6379.conf(或者上面複製的時候使用cp redis.conf ./conf/redis6379.conf)
mv redis.conf redis6379.conf
redis6379.conf改動如下:
只要修改如下幾行
pidfile /var/run/redis_6379.pid
port 6379
logfile /var/log/redis_6379.log
dbfilename dump_6379.rdb
重新複製一份重新命名為redis6380.conf,改動同redis6379.conf,將相應的6379改成6380即可。
sentinel.conf刪除全部內容,貼上如下內容:
port 26379
dir “/home/smith/log/redis/sentinels/26379”
sentinel monitor mymaster 192.168.25.12963791
sentinel down-after-milliseconds mymaster 30000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 180000
192.168.25.130的配置同192.168.25.129。
部署:
1)啟動192.168.25.129的6379埠;
redis-server ../conf/redis6379.conf
2)啟動192.168.25.129的6380埠;
redis-server ../conf/redis6380.conf
3)將192.168.25.129的638埠作為從伺服器;
redis-cli -p 6380 slaveof 192.168.25.1296379
4)啟動哨兵監控master(在129執行)
redis-server ../conf/sentinel.conf –sentinel
5)啟動192.168.25.130的6379埠;
redis-server ../conf/redis6379.conf
6)啟動192.168.25.130的6380埠;
redis-server ../conf/redis6380.conf
6)將192.168.25.130的6379埠設定為從伺服器;
redis-cli -p 6379 slaveof 192.168.25.1296379
7)將192.168.25.130的6380埠設定為從伺服器;
redis-cli -p 6380 slaveof 192.168.25.1296379
8)啟動哨兵監控master(在130執行)
redis-server ../conf/sentinel.conf –sentinel
檢視master有幾個從伺服器
在master機器執行如下命令:
redis-cli -p 6379 info replication
顯示如下:
可以看到有3個從伺服器。
哨兵監控資訊顯示如下:
模擬master故障
在192.168.25.129執行:
redis-cli -p 6379 shutdown
哨兵會從從伺服器中選擇一臺來作為主伺服器。
原來的主伺服器重新啟動後,會被當做新伺服器的從伺服器,如下:
參考:http://my.oschina.net/guol/blog/182272