背景:本身搭建的Linux環境的redis 哨兵集羣,配置文件以下 根據該連接 https://juejin.im/post/5b7d226a6fb9a01a1e01ff64redis
其中 sentenal的配置文件爲:spring
分別拷貝三份 redis-sentinel.conf
文件到 /usr/local/redis-sentinel
目錄下面。三個配置文件分別對應 master
、slave1
和 slave2
三個 Redis
節點的 哨兵配置。springboot
$ sudo cp /usr/local/redis-4.0.11/sentinel.conf /usr/local/redis-sentinel/sentinel-16380.conf $ sudo cp /usr/local/redis-4.0.11/sentinel.conf /usr/local/redis-sentinel/sentinel-26380.conf $ sudo cp /usr/local/redis-4.0.11/sentinel.conf /usr/local/redis-sentinel/sentinel-36380.conf
節點1:sentinel-16380.conf服務器
protected-mode no bind 0.0.0.0 port 16380 daemonize yes sentinel monitor master 127.0.0.1 16379 2 sentinel down-after-milliseconds master 5000 sentinel failover-timeout master 180000 sentinel parallel-syncs master 1 sentinel auth-pass master 123456 logfile /var/log/redis/sentinel-16380.log
- 節點2:sentinel-26380.conf
protected-mode no bind 0.0.0.0 port 26380 daemonize yes sentinel monitor master 127.0.0.1 16379 2 sentinel down-after-milliseconds master 5000 sentinel failover-timeout master 180000 sentinel parallel-syncs master 1 sentinel auth-pass master 123456 logfile /var/log/redis/sentinel-26380.log
- 節點3:sentinel-36380.conf
protected-mode no bind 0.0.0.0 port 36380 daemonize yes sentinel monitor master 127.0.0.1 16379 2 sentinel down-after-milliseconds master 5000 sentinel failover-timeout master 180000 sentinel parallel-syncs master 1 sentinel auth-pass master 123456 logfile /var/log/redis/sentinel-36380.log
Sentinel啓動驗證:
按順序分別啓動 16380
,26380
和 36380
三個 Sentinel
節點,啓動命令和啓動日誌以下post
$ sudo redis-sentinel /usr/local/redis-sentinel/sentinel-16380.conf $ sudo redis-sentinel /usr/local/redis-sentinel/sentinel-26380.conf $ sudo redis-sentinel /usr/local/redis-sentinel/sentinel-36380.conf
啓動完成後、咱們打開防火牆端口,並使用redisDesktopManager連接成功、spa
set/get方法正常:3d
可是,當我使用springboot 連接的時候、報錯:日誌
可是在啓動過程當中咱們發現已經開始監聽mastercode
因此在咱們仔細看完獲取鏈接的方法blog
後發現有以下信息:
這是我修改後的信息、修改以前、這裏是 127.0.0.1:36379 ,原來這纔是項目訪問的redis地址、因此才一直報錯、鏈接不到。
因此將全部的 sentenal.conf 文件中的
這個IP 改成你服務器的IP便可。
這樣就解決了此次問題。