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

基于Docker實(shí)現(xiàn)Redis主從+哨兵搭建的示例實(shí)踐

 更新時(shí)間:2022年01月21日 09:46:08   作者:熙儀繁華  
本文主要介紹了基于Docker實(shí)現(xiàn)Redis主從+哨兵搭建的示例實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

說明:在一臺(tái)服務(wù)器上搭建redis一主二從三哨兵

1.拉取鏡像

docker pull redis:4

2. 編寫主 從配置文件

2.1 創(chuàng)建/home/redis/redis_conf目錄:

2.2 編寫主配置文件

#vi redis-master.conf

port 6379              #服務(wù)端口
bind 0.0.0.0           #任何服務(wù)器都可連接
logfile "redis.log"    #日志文件名
dir /data              #data為等會(huì)開啟docker容器里面的目錄
appendonly yes         #是否持久化

2.3 編寫從配置文件

#vi redis-slave-1.conf

 
port 6380
bind 0.0.0.0
logfile "redis.log"
dir /data
daemonize no
appendonly yes
slaveof 192.168.17.33 6379
slave-read-only no

2.4  編寫從配置文件

#vi redis-slave-2.conf

port 6381
bind 0.0.0.0
logfile "redis.log"
dir /data
daemonize no                   #關(guān)閉redis自我保護(hù)
appendonly yes                 #開啟redis持久化
slaveof 192.168.17.33 6379     #給該從節(jié)點(diǎn)指定隸屬于的主節(jié)點(diǎn)
slave-read-only no             #如果沒有這一行從節(jié)點(diǎn)不能寫入數(shù)據(jù)只能讀取數(shù)據(jù)

3 編寫sentinel配置文件

3.1創(chuàng)建哨兵配置文件        

touch sentinel.conf

3.2編寫哨兵配置文件      

3.2.1   vim sentinel.conf

port 26379
dir "/data"
logfile "sentinel.log"
daemonize yes
sentinel monitor mymaster 192.168.17.33 6379 2 
#這里是哨兵的關(guān)鍵 mymaster:哨兵集群的名稱 配置主節(jié)點(diǎn)的ip和端口 ,后面的數(shù)字2表示當(dāng)哨兵集群當(dāng)中有兩個(gè)哨兵沒有檢測到主節(jié)點(diǎn)的心跳的時(shí)候表明主節(jié)點(diǎn)掛掉,開始推選新的主節(jié)點(diǎn)。(這里我們的哨兵 集群總共有三個(gè)哨兵)

3.2.2  vim sentinel2.conf

port 26380
dir "/data"
logfile "sentinel.log"
daemonize yes
sentinel monitor mymaster 192.168.17.33 6379 2

3.2.3  vim sentinel3.conf

port 26381
dir "/data"
logfile "sentinel.log"
daemonize yes
sentinel monitor mymaster 192.168.17.33 6379 2

4  啟動(dòng)主節(jié)點(diǎn)容器

4.1啟動(dòng)主節(jié)點(diǎn)容器

4.1.1 啟動(dòng)容器

docker run -d -p 6379:6379 -p 26379:26379 -v /home/redis/redis_conf/redis-master.conf:/data/redis.conf -v /home/redis/redis_conf/sentinel.conf:/data/sentinel.conf --name redis-master redis:4 redis-server redis.conf

4.1.2 進(jìn)入容器

docker exec -it redis-master /bin/bash

4.1.3 進(jìn)入redis客戶端

(默認(rèn)是進(jìn)入 6379 端口的 redis 。還有我們在啟動(dòng)容器的時(shí)候已經(jīng)順便將 redi服務(wù)端啟動(dòng)起來了:redis-server redis.conf,所以進(jìn)入容器不用啟動(dòng)redis 服務(wù)了,直接可以進(jìn)入客戶端了。 redis-cli

4.1.4查看redis信息,如果是主節(jié)點(diǎn)

role 將會(huì)為 master 。

info replication

4.1.5退出redis-cli

exit

4.1.6退出redis-master 容器

exit

4.2 啟動(dòng)從節(jié)點(diǎn)容器

(兩個(gè)從節(jié)點(diǎn)容器是一樣的啟動(dòng)方式,只修改對應(yīng)的路徑,端口映射,名稱等,最后面的redis.conf對應(yīng)的是容器內(nèi)映射的redis.conf),這里只寫出啟動(dòng)一個(gè)從節(jié)點(diǎn)

的命令,自己啟動(dòng)第二個(gè)從節(jié)點(diǎn)。

4.2.1啟動(dòng)容器,并同時(shí)用容器內(nèi)的redis.conf啟動(dòng)redis

#啟動(dòng)redis-slave-1容器 同時(shí)啟動(dòng)redis-server
 
docker run -d -p 6380:6380 -p 26380:26380 -v /home/redis/redis_conf/redis-slave-1.conf:/data/redis.conf -v /home/redis/redis_conf/sentinel2.conf:/data/sentinel.conf --name redis-slave-1 redis:4 redis-server redis.conf
 
#單獨(dú)啟動(dòng)redis-slave-2容器 同時(shí)啟動(dòng)redis-server
 
docker run -d -p 6381:6381 -p 26381:26381 -v /home/redis/redis_conf/redis-slave-2.conf:/data/redis.conf -v /home/redis/redis_conf/sentinel3.conf:/data/sentinel.conf --name redis-slave-2 redis:4 redis-server redis.conf
 

4.2.2 進(jìn)入容器

 [root@kcx-yk-k8s-master-33 redis_conf]#docker exec -it redis-slave-2 /bin/bash

4.2.3 進(jìn)入客戶端 (注意:如果直接用 redis-cli 進(jìn)入,默認(rèn)會(huì)進(jìn)入 6379 端口的 redis 客戶端,如果我們?nèi)_(tái)不同的服務(wù)器,主從節(jié)點(diǎn)都是用的各自對的 6379 端口就不會(huì)有問題,但是如 果像我一樣使用的一臺(tái)服務(wù)器,從節(jié)點(diǎn)的端口是 6380 和 6381 就需要指定端口進(jìn)入 redis 客戶端) redis-cli -p 6380

4.2.4查看信息(從節(jié)點(diǎn)的role為slave)

info replication

備注: 如果 role 為 master ,我們還可以手工指定主節(jié)點(diǎn)(ip和端口根據(jù)自己的實(shí)際情況指定主節(jié)點(diǎn)的 ip 和端口) slaveof 127.0.0.1 6379

5 存在的問題:

顯示master_link_status的狀態(tài)為down。表明從節(jié)點(diǎn)沒有連接到主節(jié)點(diǎn)。

 查看日志:

1:S 18 Jan 04:20:32.954 # Error condition on socket for SYNC: Connection refused

解決:

原因分析:可能是由于host沒有配置主機(jī)的默認(rèn)ip

修改后重新啟動(dòng):一主二從

6、分別啟動(dòng)每個(gè)  docker容器里面的哨兵

6.1進(jìn)入主節(jié)點(diǎn)容器

首先進(jìn)入容器。 docker exec -it redis-master bash

6.2查看文件

用 ls 命令,我們就可以看淡到 sentinel.conf 文件,這個(gè)配置文件我們就會(huì)用來啟動(dòng) redis 的哨兵。 ls

6.3啟動(dòng)主哨兵服務(wù)

redis-sentinel sentinel.conf 

6.4 啟動(dòng)兩個(gè)從哨兵服務(wù)

首先進(jìn)入容器。

docker exec -it redis-slave-1?bash(docker exec -it redis-slave-2?bash) 

啟動(dòng)哨兵

redis-sentinel sentinel.conf 

6.5進(jìn)入主哨兵

redis-cli -p 26379 

6.6查看哨兵狀態(tài)

(我們會(huì)看到哨兵會(huì)顯示監(jiān)聽的主節(jié)點(diǎn)的信息和從節(jié)點(diǎn)的數(shù)量,以及現(xiàn)在的哨兵數(shù)量?,F(xiàn)在的哨兵數(shù)量應(yīng)該為 3 ) info

6.7退出哨兵

exit

6.8退出容器

exit

到此這篇關(guān)于基于Docker實(shí)現(xiàn)Redis主從+哨兵搭建的示例實(shí)踐的文章就介紹到這了,更多相關(guān)Docker Redis主從+哨兵搭建內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Mac OSX系統(tǒng) Docker啟用Docker遠(yuǎn)程API功能

    Mac OSX系統(tǒng) Docker啟用Docker遠(yuǎn)程API功能

    這篇文章主要介紹了Mac OSX系統(tǒng) Docker啟用Docker遠(yuǎn)程API功能的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • Docker 打包python的命令詳解

    Docker 打包python的命令詳解

    最近用Python寫了一段爬蟲程序,為了隔離其運(yùn)行環(huán)境,易于分發(fā),把項(xiàng)目打包成Docker鏡像,下面給大家簡單介紹下具體命令寫法
    2016-12-12
  • 如何在centos的docker里安裝jupyter并開放端口

    如何在centos的docker里安裝jupyter并開放端口

    上次有一朋友問小編如何在centos的docker里安裝jupyter并開放端口呢?在這就不一一回復(fù)大家了,下面小編把我的個(gè)人經(jīng)驗(yàn)分享到腳本之家平臺(tái),感興趣的朋友一起看看吧
    2021-08-08
  • docker registry安裝簡單命令實(shí)現(xiàn)

    docker registry安裝簡單命令實(shí)現(xiàn)

    這篇文章主要介紹了docker registry安裝詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • Docker搭建Jenkins并自動(dòng)化打包部署項(xiàng)目的步驟

    Docker搭建Jenkins并自動(dòng)化打包部署項(xiàng)目的步驟

    本文主要介紹了Docker搭建Jenkins并自動(dòng)化打包部署項(xiàng)目的步驟,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • docker部署golang http服務(wù)時(shí)端口無法訪問的問題解決

    docker部署golang http服務(wù)時(shí)端口無法訪問的問題解決

    本文主要介紹了docker部署golang http服務(wù)時(shí)端口無法訪問的問題解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • Docker Desktop搭建RocketMQ的圖文步驟

    Docker Desktop搭建RocketMQ的圖文步驟

    RocketMQ支持發(fā)布/訂閱模式和點(diǎn)對點(diǎn)模式,可以根據(jù)業(yè)務(wù)需求選擇合適的消息模式,本文主要介紹了Docker Desktop搭建RocketMQ的圖文步驟,感興趣的可以了解一下
    2024-02-02
  • docker-compose部署zk+kafka+storm集群的實(shí)現(xiàn)

    docker-compose部署zk+kafka+storm集群的實(shí)現(xiàn)

    這篇文章主要介紹了docker-compose部署zk+kafka+storm集群,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • docker守護(hù)進(jìn)程的配置和操作的方法

    docker守護(hù)進(jìn)程的配置和操作的方法

    這篇文章主要介紹了docker守護(hù)進(jìn)程的配置和操作的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-07-07
  • docker部署zabbix_agent的方法步驟

    docker部署zabbix_agent的方法步驟

    這篇文章主要介紹了docker部署zabbix_agent的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10

最新評(píng)論