首頁 > 軟體

redis 主從哨兵模式實現一主二從

2022-07-11 18:01:09

一、環境

作業系統:centos7.6/Mac OS
redis版本:6.2.5以上版本
ssh工具:xshell和xftp
springboot整合redis哨兵主從

二、安裝

三臺伺服器上使用相同的方式安裝redis

把redis-6.2.5.tar.gz檔案上傳到服務的/usr/local/src/tools目錄中

#> tar -xvf redis-6.2.5.tar.gz

將解壓後的檔案移動到/usr/local目錄下,並重新命名redis

#> mv redis-6.2.5 /usr/local/redis
#> cd /usr/local/redis

編譯和安裝

#> make
……
redis-6.2.5/deps/lua/test/fibfor.lua
redis-6.2.5/deps/lua/test/globals.lua
redis-6.2.5/deps/lua/test/hello.lua
redis-6.2.5/deps/lua/test/life.lua
redis-6.2.5/deps/lua/test/luac.lua
redis-6.2.5/deps/lua/test/printf.lua
redis-6.2.5/deps/lua/test/readonly.lua
redis-6.2.5/deps/lua/test/sieve.lua
redis-6.2.5/deps/lua/test/sort.lua
redis-6.2.5/deps/lua/test/table.lua
redis-6.2.5/deps/lua/test/trace-calls.lua
redis-6.2.5/deps/lua/test/trace-globals.lua
redis-6.2.5/deps/lua/test/xd.lua
redis-6.2.5/deps/update-jemalloc.sh
……
……
……
    INSTALL redis-sentinel
    CC redis-cli.o
    CC cli_common.o
    LINK redis-cli
    CC redis-benchmark.o
    LINK redis-benchmark
    INSTALL redis-check-rdb
    INSTALL redis-check-aof

Hint: It's a good idea to run 'make test' ;)

make[1]: Leaving directory `/usr/local/redis/src'
#> cd src/
#> make install
    CC Makefile.dep
Hint: It's a good idea to run 'make test' ;)
    INSTALL redis-server
    INSTALL redis-benchmark
    INSTALL redis-cli

三、設定

三臺伺服器上使用相同的方式設定redis

3.1、設定redis.config檔案

#> vim redis.conf
# 設定bind
bind 0.0.0.0
# 設定protected-mode
protected-mode no
# 設定daemonize
daemonize yes
# 設定logfile
logfile "/usr/local/redis/logs/redis.log"
# 該設定僅在從節點上設定即可
replicaof 192.168.229.131 6379
# 設定主節點的存取密碼
masterauth root
#設定當前redis節點的存取密碼
requirepass root

# 啟動redis
#> ./sre/redis-server ./redis.conf &
# 檢視redis紀錄檔
#> tail -f ./logs/redis.log

登入redis的方式:

  • 預設登入,命令:./src/redis-cli
  • 遠端登入,命令:./src/redis-cli -h 192.168.1.12 -p 6379
  • 密碼登入,命令:./src/redis-cli -a root

命令引數說明:

  • -h redis伺服器地址
  • -p redis埠
  • -a 密碼

通過使用者端進入redis中檢視主從設定資訊

#> ./src/redis-cli -a root
# 127.0.0.0:6379> info replication
role:master
connected_slaves:2
slave0:ip=192.168.229.132,port=6379,state=online,offset=1272,lag=0
slave1:ip=192.168.229.130,port=6379,state=online,offset=1272,lag=0
master_failover_state:no-failover
master_replid:e887e19ac3142730d8a39ee66ce7124c6ccfb31d
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:1272
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:1272

從上role和connected_slaves兩屬性可以看出來,主從複製模式搭建成功

3.2、設定sentinel.config檔案

#> vim sentinel
#設定daemonize
daemonize yes
#設定logfile
logfile "/usr/local/redis/logs/sentinel.log"
#設定sentinel monitor
sentinel monitor mymaster 192.168.229.131 6379 2
#設定sentinel對redis主節點auth-pass
sentinel auth-pass mymaster root
#設定sentinel當前節點的密碼
requirepass root

# 啟動哨兵
#> ./src/redis-sentinel sentinel.conf &
# 檢視哨兵紀錄檔
#> tail -f logs/sentinel.log

到此這篇關於redis 主從哨兵模式實現一主二從的文章就介紹到這了,更多相關redis 主從哨兵一主二從內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com