" />

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

docker安裝Redis高可用實現(xiàn)一主二從三哨兵

 更新時間:2024年02月27日 09:31:38   作者:mroldx  
redis提供了哨兵模式保證redis實現(xiàn)高可用,本文主要介紹了docker安裝Redis高可用實現(xiàn)一主二從三哨兵,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

本次教程使用docker swarm安裝

準備三臺機器

hostIP用途
node1192.168.31.130redis-master01,redis哨兵節(jié)點01
node2192.168.31.131redis-slave01, redis哨兵節(jié)點02
node3192.168.31.132redis-slave02 redis哨兵節(jié)點02

注意事項:
1:需要保證三臺機器在一個網(wǎng)絡(luò)或一個服務(wù)器安全組內(nèi)(相互能ping通)
2: 為了演示需要將哨兵節(jié)點與redis節(jié)點安裝在同一個機器,實際線上需要哨兵與redis分開部署以達到高可用性。

1:創(chuàng)建redis數(shù)據(jù)掛載卷

#node1機器上執(zhí)行
docker volume create --name redis_cluster_data1
#node2機器上執(zhí)行
docker volume create --name redis_cluster_data2
#node3機器上執(zhí)行
docker volume create --name redis_cluster_data3

2: 創(chuàng)建redis專用的網(wǎng)絡(luò)

#--driver overlay  --attachable 表示創(chuàng)建swarm集群網(wǎng)絡(luò)且不是service的容器也能加入此網(wǎng)絡(luò)
docker network create --driver overlay \
--attachable --subnet=192.169.0.0/24 redis_cluster_network

3:下載/配置redis配置文件

本文使用redis6.2.6版本,所以下載redis6.2.6版本中的配置文件

點此進入redis官方文件列表

在這里插入圖片描述

解壓下載的文件,找到redis.conf文件

在這里插入圖片描述

修改默認配置文件

  • bind 127.0.0.1 #注釋掉這部分,這是限制redis只能本地訪問
  • protected-mode no #默認yes,開啟保護模式,限制為本地訪問
  • daemonize no#默認no,改為yes意為以守護進程方式啟動,可后臺運行,除非kill進程(可選),改為yes會使配置文件方式啟動redis失敗
  • dir ./ #輸入本地redis數(shù)據(jù)庫存放文件夾(可選)
  • appendonly yes #redis持久化(可選)

然后將此配置文件復(fù)制到docker數(shù)據(jù)卷所在位置(如果你不使用swarm就正常掛載文件就行)

4:創(chuàng)建redis集群service

新增node標簽

docker node update --label-add redis=cluster node1
docker node update --label-add redis=cluster node2
docker node update --label-add redis=cluster node3

創(chuàng)建service

docker service create --name redis_cluster \
--network redis_cluster_network \
--mount type=volume,src=redis_cluster_data,dst=/data \
--replicas 3 --constraint 'node.labels.redis == cluster' \
redis:6.2.6 --appendonly yes

5:配置主從關(guān)系

選擇要成為主節(jié)點的IP比如:192.168.31.130
進入從節(jié)點01,從節(jié)點02

docker exec -it redis_cluster1 redis-cli
docker exec -it redis_cluster2 redis-cli

輸入以下命令加入主節(jié)點

#固定語法 slaveof 主節(jié)點IP 主節(jié)點端口
slaveof 192.168.1.10 6379

進入主節(jié)點查看節(jié)點數(shù)量是否成功加入

docker exec -it redis_cluster_master redis-cli
info

6:創(chuàng)建redis哨兵數(shù)據(jù)掛載卷

#node1機器上執(zhí)行
docker volume create --name redis_sentinel_data1
#node2機器上執(zhí)行
docker volume create --name redis_sentinel_data2
#node3機器上執(zhí)行
docker volume create --name redis_sentinel_data3

下載/配置redis哨兵配置文件由于上面已經(jīng)下載了redis6.2.6所以我們接著使用文件夾的中的sentinel.conf文件

在這里插入圖片描述

修改第84行的sentlnel參數(shù),改為redis主節(jié)點的ip,端口

在這里插入圖片描述

然后將此配置文件復(fù)制到docker數(shù)據(jù)卷所在位置(如果你不使用swarm就正常掛載文件就行)

7:創(chuàng)建redis哨兵集群service

docker service create --name redis_sentinel_cluster \
--network redis_cluster_network \
#掛載數(shù)據(jù)卷redis_sentinel_data到容器的/etc/redis目錄下 \
--mount type=volume,src=redis_sentinel_data,dst=/etc/redis \
# 開放tcp端口且網(wǎng)絡(luò)不走集群路由網(wǎng)絡(luò)(如果不加mode=host,則默認每個docker節(jié)點的7369端口都會強制跳轉(zhuǎn)到這些service中無論節(jié)點是否在此ndoe中) \
--publish published=7369,target=26379,protocol=tcp,mode=host \
# 制作3個副本 并指定符合條件的node節(jié)點中生成。\
--replicas 3 --constraint 'node.labels.redis == cluster' \
# 指定redis鏡像版本,指定哨兵模式按指定配置文件啟動
redis:6.2.6 redis-sentinel /etc/redis/sentinel.conf

查看哨兵節(jié)點信息

#進入哨兵節(jié)點
docker exec -it sentinel /bin/bash
#輸入命令
redis-cli -h 127.0.0.1 -p 26379
#查看sentinel集群信息
info sentinel

到此這篇關(guān)于docker安裝Redis高可用實現(xiàn)一主二從三哨兵的文章就介紹到這了,更多相關(guān)docker Redis一主二從三哨兵內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker搭建私有化倉庫的幾種方法

    Docker搭建私有化倉庫的幾種方法

    搭建 Docker 私有化倉庫是一個非常重要的實踐,它能夠幫助你安全地存儲和管理 Docker 鏡像,本文主要介紹了Docker搭建私有化倉庫的的幾種方法,具有一定的參考價值,感興趣的可以了解一下
    2024-08-08
  • docker下安裝confluence全過程

    docker下安裝confluence全過程

    文章詳細介紹了如何在虛擬機上安裝和配置Docker、Java環(huán)境、MySQL和Confluence,首先,文章指導(dǎo)如何卸載并安裝Docker,然后配置虛擬機的IP和網(wǎng)絡(luò)設(shè)置,接著,介紹如何在虛擬機上安裝JDK,并配置MySQL和Confluence,最后,提供了完整的安裝步驟和一些注意事項
    2025-02-02
  • Docker可視化面板Portainer的實現(xiàn)

    Docker可視化面板Portainer的實現(xiàn)

    Portainer是一個免費的容器管理工具,支持Docker環(huán)境的可視化管理,通過Portainer,用戶可以輕松地在Windows或Linux容器中部署服務(wù),大大簡化了Docker容器的管理工作,感興趣的可以了解一下
    2024-11-11
  • 詳解Docker之Compose服務(wù)編排

    詳解Docker之Compose服務(wù)編排

    Compose是Docker的服務(wù)編排工具,主要用來構(gòu)建基于Docker的復(fù)雜應(yīng)用,Compose 通過一個配置文件來管理多個Docker容器,非常適合組合使用多個容器進行開發(fā)的場景。興趣的小伙伴們可以參考一下
    2018-07-07
  • 使用docker的python基礎(chǔ)鏡像時要指定patch版本原理

    使用docker的python基礎(chǔ)鏡像時要指定patch版本原理

    這篇文章主要為大家介紹了使用docker的python基礎(chǔ)鏡像時要指定patch版本原理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • 詳解如何使用Docker部署Django+MySQL8開發(fā)環(huán)境

    詳解如何使用Docker部署Django+MySQL8開發(fā)環(huán)境

    這篇文章主要介紹了詳解如何使用Docker部署Django+MySQL8開發(fā)環(huán)境,文中通過示例代碼以及圖文介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Docker Registry搭建私有鏡像倉庫的實現(xiàn)方法

    Docker Registry搭建私有鏡像倉庫的實現(xiàn)方法

    這篇文章主要介紹了Docker Registry搭建私有鏡像倉庫的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • docker鏡像Tag為none的原因及分析

    docker鏡像Tag為none的原因及分析

    文章介紹了Docker鏡像標簽為none的原因及其處理方法,none標簽的鏡像可能有用,也可能無用,具體取決于是否有容器引用,建議在構(gòu)建同名同tag的鏡像前檢查是否存在同名鏡像,并注意強行刪除鏡像可能帶來的問題,Docker沒有自動刪除none鏡像的機制,需要手動刪除
    2025-02-02
  • 常用的8個應(yīng)用和中間件的Docker運行示例詳解

    常用的8個應(yīng)用和中間件的Docker運行示例詳解

    Portainer是一個輕量級的管理 UI ,可讓你輕松管理不同的 Docker 環(huán)境(Docker 主機或 Swarm 群集),這篇文章主要介紹了常用的8個應(yīng)用和中間件的Docker運行示例,需要的朋友可以參考下
    2024-03-03
  • 詳細介紹如何安裝最新版Docker?Compose

    詳細介紹如何安裝最新版Docker?Compose

    Docker Compose是一個用來定義和運行多個復(fù)雜應(yīng)用的Docker編排工具,下面這篇文章主要給大家介紹了關(guān)于如何安裝最新版Docker?Compose的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-07-07

最新評論