Redis7.x安裝系列教程(二)主從部署&原理詳解

大象只为你發表於2024-11-16

Redis7.x安裝系列教程(二)主從部署&原理詳解

1、什麼是主從複製

主從複製是指將一臺Redis伺服器的資料,複製到其他的Redis伺服器上。前者稱為主節點(master),後者是從節點(slave),資料的複製是單向的,只能是從主節點到從節點。每臺Redis伺服器未修改配置前都是主節點,一個主節點可以0~N個從節點,但一個從節點只能對應一個主節點。

1.1、主從複製的作用
  • 資料冗餘: 主從複製實現資料的熱備份,是持久化之外的一種資料冗餘方式。
  • 故障恢復: 當主節點出現問題時,可以由從節點提供服務,實現快速故障恢復,是一種服務的冗餘。
  • 負載均衡: 在主從複製基礎上,配合讀寫分離,由主節點提供寫服務,從節點提供讀服務,分擔伺服器負載。適合讀多寫少的場景,多個從節點分擔讀負載,提高Redis伺服器的併發量。
  • 高可用基石: 主從複製是哨兵和叢集實施的基礎。
1.2、整體架構圖

1.3、主從複製的缺點
  • 複製延時,訊號衰減
    • 所有的寫操作都在master,再同步更新給slave,機器同步會有一定的延遲,
    • 當系統繁忙時,延遲問題會更嚴重,
    • 而且隨著slave機器數量增加,延遲問題也會加重。
  • master掛了無法自動重選
    • 預設情況,master掛了不會從slave自動選出一個master,
    • 每次都要人工干預。(也就有哨兵、叢集的出現)

2、環境準備&部署說明

環境準備參考《Redis7.x安裝系列教程(一)單機部署》

本文以1主2從的方式來搭建,也為哨兵部署做前期準備。

主服務:192.168.242.41
從服務1:192.168.242.42
從服務2:192.168.242.43

部署步驟說明:

  • 以單機redis-os0克隆出redis-os1-master,redis-os2-slave1。
  • 修改slave1的配置,啟動檢視資訊,確認主從配置是否生效。
  • 以slave1克隆出slave2,redis配置無需修改【克隆相關修改除外】。

3 、配置Redis

主節點不需要做任何修改,也就是單機部署時的配置;

從節點需要增加宣告主節點資訊,如果主節點有配置密碼驗證,需要加主節點授權資訊。

每個從節點配置都一樣

配置完啟動即可。

# 主節點無密碼驗證,從節點配置
replicaof 192.168.242.41 6379

# 主節點有密碼驗證,從節點配置
replicaof 192.168.242.41 6379
masterauth 【主節點設定requirepas/s的值】

4、檢視主從服務配置是否生效

有兩種方式檢視主從服務配置資訊命令:

方式一:在客戶端連線命令後直接帶命令,

方式二:先連線再命令。

# 無密碼模式,即protected-mode no 
redis-cli info replication 
# 有密碼模式,即protected-mode yes
# 方式一:連線時帶密碼
redis-cli -a pass info replication 
# 方式二:先連線再用auth授權
redis-cli
auth pass
info replication 

主節點資訊示例

從節點資訊示例

5、補充說明單機部署下載地址確認

《Redis7.x安裝系列教程(一)單機部署》

Redis官網下載地址:https://redis.io/downloads/,往下拉會看到 Redis Stack downloads會看到兩個分支:Redis Stack 7.4 和Older Redis Stack Version。

點開 Older Redis Stack Version -> Redis downloads -> Install Redis from source 再往下拉會看 Latest stable release (最新穩定版本)的連結,也就是wget的連結。

再往下拉有其他版本,下載連結用滑鼠右擊獲取,或者直接訪問https://github.com/redis/redis-hashes/

6、我的公眾號

敬請關注我的公眾號:大象只為你,持續更新技術知識......

相關文章