" />

最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

本次教程使用docker swarm安裝

準(zhǔn)備三臺機(jī)器

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

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

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

#node1機(jī)器上執(zhí)行
docker volume create --name redis_cluster_data1
#node2機(jī)器上執(zhí)行
docker volume create --name redis_cluster_data2
#node3機(jī)器上執(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版本中的配置文件

點(diǎn)此進(jìn)入redis官方文件列表

在這里插入圖片描述

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

在這里插入圖片描述

修改默認(rèn)配置文件

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

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

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

新增node標(biāo)簽

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é)點(diǎn)的IP比如:192.168.31.130
進(jìn)入從節(jié)點(diǎn)01,從節(jié)點(diǎn)02

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

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

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

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

docker exec -it redis_cluster_master redis-cli
info

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

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

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

在這里插入圖片描述

修改第84行的sentlnel參數(shù),改為redis主節(jié)點(diǎn)的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,則默認(rèn)每個(gè)docker節(jié)點(diǎn)的7369端口都會強(qiáng)制跳轉(zhuǎn)到這些service中無論節(jié)點(diǎn)是否在此ndoe中) \
--publish published=7369,target=26379,protocol=tcp,mode=host \
# 制作3個(gè)副本 并指定符合條件的node節(jié)點(diǎn)中生成。\
--replicas 3 --constraint 'node.labels.redis == cluster' \
# 指定redis鏡像版本,指定哨兵模式按指定配置文件啟動
redis:6.2.6 redis-sentinel /etc/redis/sentinel.conf

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

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

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

相關(guān)文章

最新評論

平遥县| 黔东| 库伦旗| 安吉县| 余庆县| 婺源县| 宜兴市| 梨树县| 循化| 陇南市| 游戏| 昭平县| 固始县| 兴业县| 太湖县| 潼关县| 岳普湖县| 县级市| 嘉义县| 莒南县| 博乐市| 玉田县| 荆门市| 双流县| 仙桃市| 永靖县| 伊春市| 邵阳县| 腾冲县| 安丘市| 耒阳市| 松滋市| 昌乐县| 当雄县| 宜兰县| 施秉县| 墨脱县| 修文县| 阳高县| 宝应县| 景宁|