1. 程式人生 > >redis主從+哨兵模式

redis主從+哨兵模式

strong img 目錄 .html 主從模式 命令 onf 模擬 -s

主從模式配置分為手動和配置文件兩種方式進行配置,我現在有192.168.238.128(CentOS1)、192.168.238.131(CentOS3)、192.168.238.132(CentOS4)幾臺機器,只是配置文件的配置方式是降手動配置的命令放在配置文件中而已,本質是一致的。下面將對配置文件方式進行配置,我所述的案例,是基於我自己的另一篇博文《Redis的安裝、服務配置》之上:

1、我將CentOS4作為主數據庫,其他 模擬為從數據庫

2、將CentOS1目錄切換到/etc/redis目錄下,編輯6379.conf文件。

技術分享

3、將CentOS3進行同樣的操作。CentOS4作為主服務器,不需要配置

4、因為我將192.168.238.128(CentOS1)作為主數據庫,其他數據作為從數據庫的,下面通過redis-cli切換到數據庫中,分別執行info replication命令:

技術分享

技術分享

最後看看CentOS1主數據:

技術分享

從各個數據庫的顯示信息看,我們的主從模式已經配置完畢.

測試:

在主數據庫set一條數據,並獲取這條數據(預測操作成功)

技術分享

接下來在從數據從事同樣的操作

技術分享

至此,主從模式配置完畢,測試通過!

下面再來配置主從+哨兵模式:

因為主從模式,主數據庫可以讀、寫操作,而從數據庫只能讀、不能寫,一旦主數據庫宕機,整個數據庫集群將無法進行讀操作,後果很嚴重。

而主從+哨兵模式,既熱部署進行主從切換,當主數據庫宕機,哨兵自動將其他從數據庫的某一臺提升為主數據庫,即使之前的主數據庫恢復正常工作,哨兵也會將其改為從數據庫,做到了高可用、熱部署

具體操作:

1、因為我有3臺虛擬機,所以我就配置3個哨兵吧,也可以多配置一些,或者少配置一些

2、將3臺虛擬機,分別切換到/home/tool/redisWork/bin目錄下,新增文件sentinel.conf,並且編輯此文件

技術分享

4、分別啟動主數據庫和從數據庫的哨兵:

主數據庫哨兵:

技術分享

從數據庫的哨兵:

技術分享

至此,主從+哨兵配置完畢!

測試:將主數據庫的redis服務停止,然後分別在兩臺從數據庫中在此執行info repication命令,看看之前的從數據庫是否會變成主數據庫(網絡可能會有延遲)

redis主從+哨兵模式