" />

亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

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

本文演示一主二從。

先說(shuō)一下遇到的問(wèn)題。我看網(wǎng)上說(shuō)想配置哨兵,必須讓啟動(dòng)redis的docker網(wǎng)絡(luò)模式為host,否則無(wú)法訪問(wèn)到從還是什么的。我指定--network host后無(wú)法外網(wǎng)訪問(wèn),redis desktop manager連不上redis了,后來(lái)發(fā)現(xiàn)我這個(gè)新克隆的機(jī)器沒(méi)關(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í)設(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

先進(jìn)行測(cè)試:

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

在這里插入圖片描述

此時(shí)redis6381已成為新的master

在這里插入圖片描述

再啟動(dòng)docker start redis6379 6379是slave了

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

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;
    }

訪問(wèn)localhost:8080/redis

在這里插入圖片描述

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

相關(guān)文章

  • Docker部署Consul配置過(guò)程解析

    Docker部署Consul配置過(guò)程解析

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

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

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

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

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

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

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

    CentOS 7.x docker使用overlay2存儲(chǔ)方式

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

    ubuntu14.04+docker的安裝及使用

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

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

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

    maven構(gòu)建docker鏡像push到鏡像倉(cāng)庫(kù)方式

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

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

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

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

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

最新評(píng)論