Linux下配置Redis的主從複製和主從切換

2022-09-16 13:42:08 字數 3528 閱讀 4239

一、為了實現高可用,一般生產環境使用的redis都會做的主從複製和主從切換,而這些只需要做少許的配置即可完成。

二、為了便於展示,在一台機器上完成主從複製和主從切換,所以就需要修改埠,多執行幾個例項

redis在linux下安裝和測試

2、複製主從配置檔案和哨兵的配置檔案

# 主機節點配置

cp /usr/local/src/redis-4.0.9/redis.conf /usr/local/redis/redis-master.conf

# 從節點配置

cp /usr/local/src/redis-4.0.9/redis.conf /usr/local/redis/redis-sl**e.conf

# 三個哨兵節點配置

cp /usr/local/src/redis-4.0.9/sentinel.conf /usr/local/redis/sentinel-1

.conf

cp /usr/local/src/redis-4.0.9/sentinel.conf /usr/local/redis/sentinel-2

.conf

cp /usr/local/src/redis-4.0.9/sentinel.conf /usr/local/redis/sentinel-3.conf

3、修改配置檔案

a、修改主節點配置 redis-master.conf

# 修改可以遠端訪問

bind

0.0.0.0

# 修改成保護模式可以不使用密碼

protected-mode no

# 修改成後台啟動

daemonize yes

# 修改資料儲存為絕對路徑

dir /usr/local/redis/6379/

b、修改從節點配置 redis-sl**e.conf

# 修改埠,在用乙個機器上6379已經被主節點占用

port

6479

# 修改可以遠端訪問

bind

0.0.0.0

# 修改成保護模式可以不使用密碼

protected-mode no

# 修改成後台啟動

daemonize yes

# 修改資料儲存為絕對路徑

dir /usr/local/redis/6479/# 將檔名改成redis要啟動的埠,如果安裝多個redis

pidfile /var/run/redis_6479.pid

# 配置主節點ip和埠

sl**eof 127.0.0.1 6379

c、修改哨兵配置  sentinel-1.conf

# 修改成保護模式可以不使用密碼

protected-mode no

# 修改成後台啟動

daemonize yes

# 哨兵監控的master,集群名為mymaster,主節點的ip和埠,需要斷定主節點死亡的哨兵數 

sentinel monitor mymaster

127.0.0.1

6379

2# master或sl**e多長時間(預設30秒)不能使用後標記為s_down狀態。

sentinel down-after-milliseconds mymaster 5000

#若sentinel在該配置值內未能完成failover操作(即故障時master/sl**e自動切換),則認為本次failover失敗。

sentinel failover-timeout mymaster 18000

#設定master和sl**es驗證密碼,沒有密碼不需要

# sentinel auth-pass mymaster 密碼

# 指定了在執行故障轉移時, 最多可以有多少個從伺服器同時對新的主伺服器進行同步

sentinel parallel-syncs mymaster 1

d、修改哨兵配置  sentinel-2.conf,和上一步配置一樣,因為在同一臺機器,需要修改下埠

# 修改埠,在用乙個機器上6379已經被主節點占用

port

26479

# 修改成後台啟動

daemonize yes

# 修改成保護模式可以不使用密碼

protected-mode no

e、修改哨兵配置  sentinel-3.conf,和上一步配置一樣,因為在同一臺機器,需要修改下埠

# 修改埠,在用乙個機器上6379已經被主節點占用

port

26579

# 修改成後台啟動

daemonize yes

# 修改成保護模式可以不使用密碼

protected-mode no

4、啟動主從,啟動哨兵

# 建立redis資料儲存目錄

mkdir /usr/local/redis/6379 /usr/local/redis/6479

# 啟動主從

/usr/local/redis/bin/redis-server /usr/local/redis/redis-master.conf

/usr/local/redis/bin/redis-server /usr/local/redis/redis-sl**e.conf

# 啟動哨兵

/usr/local/redis/bin/redis-sentinel /usr/local/redis/sentinel-1

.conf

/usr/local/redis/bin/redis-sentinel /usr/local/redis/sentinel-2

.conf

/usr/local/redis/bin/redis-sentinel /usr/local/redis/sentinel-3.conf

5、檢視啟動狀態

#  通過哨兵檢視集群的資訊

備註:redis哨兵集群可以監控多個主從,只需要保證集群名唯一即可。

可以登入哨兵客戶端使用,需要依次在集群中所有的sentinel節點執行以下命令,不然只有輸入命令哨兵才會監聽:

# 登入客戶端

/usr/local/redis/bin/redis-cli -p 26379

# 在客戶端使用命令監聽主節點

sentinel monitor md-dev 127.0.0.1

6379

2# 刪除

sentinel remove md-dev

yexiangyang

[email protected]

Linux系統下配置redis

1 redis配置檔案 參照文件 2 redis編譯安裝 1 安裝參照文件 2 測試 redis server 配置檔案目錄 啟動redis netstat tunpl grep 6379 檢視6379埠使用情況 3 自啟動在 etc init.d 下新建乙個資料夾 redis 重新命名 mv re...

Linux下redis的安裝配置

wgettar zxvf redis 5.0.2.tar.gz makemake後src裡會多出redis server,redis benchmark,redis cli redis 目錄下新建bin mkdir bin cp redis server usr local redis bin cp...

Linux 下 Redis 的安裝與配置

1 安裝依賴 yum install y wget gcc make tcl wget 或者 alt p鍵 將redis的安裝包拉到 securecrt 3 解壓redis的安裝包 tar zxvf redis 4.0.9.tar.gz 4 進入到redis的目錄下進行編譯 cd redis 4.0...