" />

欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用Docker配置redis sentinel哨兵的方法步驟

 更新時間:2022年07月11日 11:09:33   作者:卷積蛋撻  
本文主要介紹了Docker配置redis sentinel哨兵的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

本文演示一主二從。

先說一下遇到的問題。我看網(wǎng)上說想配置哨兵,必須讓啟動redis的docker網(wǎng)絡(luò)模式為host,否則無法訪問到從還是什么的。我指定--network host后無法外網(wǎng)訪問,redis desktop manager連不上redis了,后來發(fā)現(xiàn)我這個新克隆的機器沒關(guān)防火墻,關(guān)上就好了。

1.配置主從

docker pull一下redis

master

mkdir -p /mydata/redis/6379/conf
mkdir -p /mydata/redis/6379/data
touch /mydata/redis/6379/conf/redis.conf
echo "appendonly yes"  >> /mydata/redis/6379/conf/redis.conf
docker run --network host --name redis6379 -v /mydata/redis/6379/data:/data -v /mydata/redis/6379/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf --port 6379

slave

#slave1
mkdir -p /mydata/redis/6380/conf
mkdir -p /mydata/redis/6380/data
touch /mydata/redis/6380/conf/redis.conf
echo "appendonly yes"  >> /mydata/redis/6380/conf/redis.conf
docker run --network host --name redis6380 -v /mydata/redis/6380/data:/data -v /mydata/redis/6380/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf --port 6380 --slaveof 192.168.243.4 6379

#slave2
mkdir -p /mydata/redis/6381/conf
mkdir -p /mydata/redis/6381/data
touch /mydata/redis/6381/conf/redis.conf
echo "appendonly yes"  >> /mydata/redis/6381/conf/redis.conf
docker run --network host --name redis6381 -v /mydata/redis/6381/data:/data -v /mydata/redis/6381/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf --port 6381 --slaveof 192.168.243.4 6379

查看配置:

#主
docker exec -it redis6379 redis-cli
>info replication
#從
docker exec -it redis6380 redis-cli -p 6380
>info replication

在這里插入圖片描述

2. 配置哨兵

master

mkdir /mydata/redis/6379/sentinel
mkdir /mydata/redis/6379/sentinel/log
vi /mydata/redis/6379/sentinel/sentinel.conf
#輸入
port 26379
dir "/var/log/sentinel"
logfile "/var/log/sentinel/26379.log"
sentinel monitor mymaster 192.168.243.4 6379 1 #這里暫時設(shè)置成1
                       ![在這里插入圖片描述](https://img-blog.csdnimg.cn/9a303b239fec467385d2c8990cb3e629.png#pic_center)
                        #方便看一下主掛掉是什么效果
sentinel down-after-milliseconds mymaster 5000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 180000
#end
docker run -d --name sentinel26379 -v /mydata/redis/6379/sentinel/sentinel.conf:/conf/sentinel.conf -v /mydata/redis/6379/sentinel/log:/var/log/sentinel --network host redis redis-sentinel /conf/sentinel.conf

先進行測試:

docker exec -it redis6379 redis-cli
> SHUTDOWN
> exit
cat /mydata/redis/6379/sentinel/log/26379.log

在這里插入圖片描述

此時redis6381已成為新的master

在這里插入圖片描述

再啟動docker start redis6379 6379是slave了

測試成功,修改上面配置文件的sentinel monitor mymaster 192.168.243.4 6379 2 數(shù)字配置為2,代表至少有2個Sentinel節(jié)點認為主節(jié)點不可達,那么這個不可達的判定才是客觀的。為了防止票數(shù)相同,sentinel啟動奇數(shù)個。

slave

#slave1
mkdir /mydata/redis/6380/sentinel
mkdir /mydata/redis/6380/sentinel/log
vi /mydata/redis/6380/sentinel/sentinel.conf
#輸入
port 26380
dir "/var/log/sentinel"
logfile "/var/log/sentinel/26380.log"
sentinel monitor mymaster 192.168.243.4 6380 2
sentinel down-after-milliseconds mymaster 5000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 180000
#end
docker run -d --name sentinel26380 -v /mydata/redis/6380/sentinel/sentinel.conf:/conf/sentinel.conf -v /mydata/redis/6380/sentinel/log:/var/log/sentinel --network host redis redis-sentinel /conf/sentinel.conf

#slave2
mkdir /mydata/redis/6381/sentinel
mkdir /mydata/redis/6381/sentinel/log
vi /mydata/redis/6381/sentinel/sentinel.conf
#輸入
port 26381
dir "/var/log/sentinel"
logfile "/var/log/sentinel/26381.log"
sentinel monitor mymaster 192.168.243.4 6381 2
sentinel down-after-milliseconds mymaster 5000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 180000
#end
docker run -d --name sentinel26381 -v /mydata/redis/6381/sentinel/sentinel.conf:/conf/sentinel.conf -v /mydata/redis/6381/sentinel/log:/var/log/sentinel --network host redis redis-sentinel /conf/sentinel.conf

在這里插入圖片描述

3.SpringBoot連接

application.yml

spring:
  redis:
    timeout: 5000
    sentinel:
      master: mymaster
      nodes: 192.168.243.4:26379,192.168.243.4:26380,192.168.243.4:26381

controller

    @Autowired
	private StringRedisTemplate redisTemplate;

	@RequestMapping("/redis")
    public String redis() {
        redisTemplate.opsForValue().set("test", "121323123");
        String test = redisTemplate.opsForValue().get("test");
        return "RESULT: " + test;
    }

訪問localhost:8080/redis

在這里插入圖片描述

 到此這篇關(guān)于使用Docker配置redis sentinel哨兵的方法步驟的文章就介紹到這了,更多相關(guān)Docker配置redis sentinel哨兵內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker部署Consul配置過程解析

    Docker部署Consul配置過程解析

    這篇文章主要介紹了Docker部署Consul配置過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • Docker安裝node-red、導入節(jié)點、部署查看的步驟詳解

    Docker安裝node-red、導入節(jié)點、部署查看的步驟詳解

    Node-RED設(shè)計使用的場景是IoT,但是作為一個流編排引擎,顯然它能做的事情更多,比如使用容器化的方式進行構(gòu)建、打包、部署等操作也是可行的,這篇文章繼續(xù)介紹Docker安裝node-red、導入節(jié)點、部署查看的相關(guān)知識,感興趣的朋友一起看看吧
    2022-01-01
  • docker compose 一鍵部署分布式配置中心Apollo的過程詳解

    docker compose 一鍵部署分布式配置中心Apollo的過程詳解

    這篇文章主要介紹了docker compose 一鍵部署分布式配置中心Apollo,今天我們使用Docker來進行搭建,畢竟Docker對于開發(fā)者來說更友好一些,需要的朋友可以參考下
    2021-09-09
  • Docker容器數(shù)據(jù)卷的基本操作

    Docker容器數(shù)據(jù)卷的基本操作

    為了能保存數(shù)據(jù)在docker中我們使用卷,本文主要介紹了Docker容器數(shù)據(jù)卷的基本操作,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-06-06
  • CentOS 7.x docker使用overlay2存儲方式

    CentOS 7.x docker使用overlay2存儲方式

    這篇文章主要介紹了CentOS 7.x docker使用overlay2存儲方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • ubuntu14.04+docker的安裝及使用

    ubuntu14.04+docker的安裝及使用

    這篇文章主要介紹了在ubuntu14.04中安裝docker的方法以及docker的使用指南,非常簡單實用,有需要的朋友可以參考下
    2014-10-10
  • docker打包python鏡像的全教程分享

    docker打包python鏡像的全教程分享

    Docker是一種開源的容器化平臺,可以讓開發(fā)者將應用程序和其依賴項打包到一個可移植的容器中,然后在不同的環(huán)境中運行,本文主要給大家介紹了docker打包python鏡像全教程,需要的朋友可以參考下
    2024-02-02
  • maven構(gòu)建docker鏡像push到鏡像倉庫方式

    maven構(gòu)建docker鏡像push到鏡像倉庫方式

    這篇文章主要介紹了maven構(gòu)建docker鏡像push到鏡像倉庫方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 使用docker compose搭建consul集群環(huán)境的例子

    使用docker compose搭建consul集群環(huán)境的例子

    consul是HashCorp公司推出使用go語言編寫的開源工具,用于實現(xiàn)分布式系統(tǒng)的服務(wù)發(fā)現(xiàn)與配置,今天給大家普及使用docker compose搭建consul集群環(huán)境的方法及consul基本知識講解,感興趣的朋友一起看看吧
    2021-06-06
  • Docker多容器連接(以Tomcat+Mysql為例)

    Docker多容器連接(以Tomcat+Mysql為例)

    這篇文章主要介紹了Docker多容器連接(以Tomcat+Mysql為例),Docker提供了多個容器直接訪問的方法,可以使多個容器直接通過網(wǎng)絡(luò)端口進行訪問
    2017-03-03

最新評論