Redis一:redis安裝、主從複製、主從切換

1安裝redis

下載redis安裝包:redis-4.0.1.tar.gzredis

解壓:數據庫

tar -zxvf redis-4.0.1.tar.gz

進入redis解壓目錄服務器

cd redis-4.0.1

執行make 對Redis解壓後文件進行編譯架構

make

編譯成功後,進入src文件夾,執行make install進行Redis安裝分佈式

make install PREFIX=/usr/local/redis

安裝完成以後,將配置文件redis.conf拷貝到安裝目錄下進行配置測試

cp /home/redis-4.0.1/redis.conf  /usr/local/redis/

在不一樣主機上面重複上面操做,這裏安裝安裝3臺(1主2從)。ui

2 redis主從複製配置

主服務器配置,這裏只介紹基礎的配置項spa

port 6379   #端口配置
daemonize yes  #後臺運行
pidfile "/var/run/redis_6379.pid"   #運行進程ID保存文件
loglevel verbose  #日誌級別
logfile "/usr/local/redis/log/redis.log"  #日誌文件
databases 16  #數據庫個數
rdbcompression yes  #數據壓縮存儲
dbfilename "dump.rdb"  #數據文件
dir "/usr/local/redis/data"  #數據文件存儲目錄
masterauth "secms123"  #主服務器認證密碼,主從複製數據時用到(將三臺密碼配置相同,不管哪一個做爲主服務都能正常認證)
slave-read-only yes  #從服務器只讀
requirepass "secms123" #服務器登錄認證密碼

從服務器除了上面基本配置外還須要配置日誌

masterauth "secms123"  #主從複製時連接主服務器的認證密碼
slaveof 10.118.213.238 6379  #第一次啓動時主服務器IP和端口(在啓動自動切換後若是切換,會被修改當前主服務器的IP和端口)

至此 主從配置完成,可啓動測試。只能在主服務器上新增數據、修改數據、刪除數據。同時從服務器會同步主服務器的修改。code

啓動:

./bin/redis-server redis.conf

3主從自動切換配置

redis哨兵(Redis Sentinel)的啓動和redis實例的啓動沒有關係。因此能夠在任何機器上啓動redis哨兵。Redis Sentinel 是一個分佈式系統,能夠在整個redis主從架構中運行多個 Sentinel 進程(progress)。建議至少要保證有兩個哨兵在運行,要否則物理機宕機後哨兵進程也不存在了,就沒法進行主從切換。

複製sentinel配置文件到安裝目錄下

cp /home/redis-4.0.1/sentinel.conf /usr/local/redis/

修改配置

port 26379  #哨兵端口
sentinel monitor mymaster 10.118.213.218 6380 1  #啓動時哨兵監控的主服務器IP和端口
sentinel down-after-milliseconds mymaster 10000  #master或slave多長時間(默認30秒)不能使用後標記爲s_down狀態
sentinel failover-timeout mymaster 10000   #若sentinel在該配置值內未能完成failover操做(即故障時master/slave自動切換),則認爲本次failover失敗
sentinel auth-pass mymaster secms123  #設置master和slaves驗證密碼(這裏主從都一致)

配置完成啓動哨兵,對主服務器進行監控。

測試:能夠kill掉主服務器進程,觀察日誌會有新的主服務器被選舉出來。

啓動哨兵:

./bin/redis-sentinel sentinel.conf

 

最後爲了不異常這裏都將redis服務的保護模式設置爲關閉狀態

protected-mode no
相關文章
相關標籤/搜索