电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

基于Docker搭建Redis主從集群的實現

瀏覽:166日期:2024-10-27 16:16:29
目錄1、拉取 Redis 鏡像2、創建 6 個 Redis 容器3、啟動 Redis 容器4、組建 Redis 集群5、關于Redis集群搭建

最近陸陸續續有不少園友加我好友咨詢 redis 集群搭建的問題,我覺得一定是之前寫的這篇 《基于Docker的Redis集群搭建》 文章有問題了,所以我花了幾分鐘瀏覽之前的文章總結了下面幾個問題:

redis 數量太少,只創建了 3 個實例;由于只有 3 個實例,所以全部只能是主節點,無法體現集群主從關系;如何搭建主從集群?如何分配從節點?

基于之前的文章,我想快速的過一下這幾個問題,本文基于 Docker + Redis 5.0.5 版本,通過 cluster 方式創建一個 6 個 redis 實例的主從集群,當然文章會指出相應的參數說明,這樣即便是創建 9 個實例的集群方式也是一樣的。

1、拉取 Redis 鏡像

基于 Redis:5.0.5 版本,執行如下指令:

docker pull redis:5.0.52、創建 6 個 Redis 容器

創建 6 個Redis 容器:

redis-node1:6379 redis-node2:6380 redis-node3:6381 redis-node4:6382 redis-node5:6383 redis-node6:6384

執行命令如下:

docker create --name redis-node1 --net host -v /data/redis-data/node1:/data redis:5.0.5 --cluster-enabled yes --cluster-config-file nodes-node-1.conf --port 6379docker create --name redis-node2 --net host -v /data/redis-data/node2:/data redis:5.0.5 --cluster-enabled yes --cluster-config-file nodes-node-2.conf --port 6380docker create --name redis-node3 --net host -v /data/redis-data/node3:/data redis:5.0.5 --cluster-enabled yes --cluster-config-file nodes-node-3.conf --port 6381docker create --name redis-node4 --net host -v /data/redis-data/node4:/data redis:5.0.5 --cluster-enabled yes --cluster-config-file nodes-node-4.conf --port 6382docker create --name redis-node5 --net host -v /data/redis-data/node5:/data redis:5.0.5 --cluster-enabled yes --cluster-config-file nodes-node-5.conf --port 6383docker create --name redis-node6 --net host -v /data/redis-data/node6:/data redis:5.0.5 --cluster-enabled yes --cluster-config-file nodes-node-6.conf --port 6384

部分參數解釋:

--cluster-enabled:是否啟動集群,選值:yes 、no --cluster-config-file 配置文件.conf :指定節點信息,自動生成 --cluster-node-timeout 毫秒值: 配置節點連接超時時間 --appendonly:是否開啟持久化,選值:yes、no

執行命令截圖:

基于Docker搭建Redis主從集群的實現

3、啟動 Redis 容器

執行命令如下:

docker start redis-node1 redis-node2 redis-node3 redis-node4 redis-node5 redis-node6

啟動截圖如下:

基于Docker搭建Redis主從集群的實現

4、組建 Redis 集群

進入任意一個 Redis 實例:

# 這里以 redis-node1 實例為例docker exec -it redis-node1 /bin/bash

執行組件集群的命令:

# 組建集群,10.211.55.4為當前物理機的ip地址redis-cli --cluster create 10.211.55.4:6379 10.211.55.4:6380 10.211.55.4:6381 10.211.55.4:6382 10.211.55.4:6383 10.211.55.4:6384 --cluster-replicas 1

執行命令截圖如下:

基于Docker搭建Redis主從集群的實現

創建成功后,通過 redis-cli 查看一下集群節點信息:

root@CentOS7:/data# redis-cli127.0.0.1:6379> cluster nodes

執行命令截圖如下:

基于Docker搭建Redis主從集群的實現

5、關于Redis集群搭建

我們再回到創建集群的命令上:

redis-cli --cluster create 10.211.55.4:6379~6384 --cluster-replicas 1

大家著重看這個參數 --cluster-replicas 1,參數后面的數字表示的是主從比例,比如這里的 1 表示的是主從比例是 1:1,什么概念呢?

也就是 1 個主節點對應幾個從節點,現有 6 個實例,所以主從分配就是 3 個 master 主節點,3 個 slave 從節點。

主節點最少3個,3個才能保證集群的健壯性。

如果 --cluster-replicas 2 呢?

那么主從比例就是 1:2,也就是 1 個主節點對于應 2 個從節點。

即:3(master) + 6(slave) = 9個 Redis 實例。

如果不足 9個 Redis 實例,但是參數指定為 2 會怎么樣?

報錯信息如下:

基于Docker搭建Redis主從集群的實現

提示已經很清楚了,Redis集群至少需要3個主節點。那么從節點就需要有6個,所以最后說:至少需要9個節點。

好的,至少3個主節點的要求我不繼續剛了,但是我想4個主節點,2個從節點,這總該可以了吧?

4個主節點滿足你:

# 進入一個啟動的 reids 實例,這里以 redis-node1 實例為例docker exec -it redis-node1 /bin/bash

執行組建集群的命令:

redis-cli --cluster create 10.211.55.4:6379 10.211.55.4:6380 10.211.55.4:6381 10.211.55.4:6382 --cluster-replicas 0

指定4個沒有從節點的主節點,這樣你就有4個主節點了:

基于Docker搭建Redis主從集群的實現

剩下的兩個從節點怎么辦呢?手動添加。

怎么添加?手動添加!

基于Docker搭建Redis主從集群的實現

看到這些 master 節點的 id 了嗎,只需要把 slave 指定給他們就可以了。

繼續執行如下命令:

redis-cli --cluster add-node 10.211.55.4:6383 10.211.55.4:6379 --cluster-slave --cluster-master-id b0c32b1dae9e7b7f7f4b74354c59bdfcaa46f30aredis-cli --cluster add-node 10.211.55.4:6384 10.211.55.4:6379 --cluster-slave --cluster-master-id 111de8bed5772585cef5280c4b5225ecb15a582e

將兩個 Redis 實例塞給其他主節點了:

基于Docker搭建Redis主從集群的實現

最后我們進入 redis-cli,通過 cluster nodes 查看一下節點信息:

基于Docker搭建Redis主從集群的實現

到此這篇關于基于Docker搭建Redis主從集群的實現的文章就介紹到這了,更多相關Docker Redis主從集群內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Docker
相關文章:
主站蜘蛛池模板: 不锈钢水箱生产厂家_消防水箱生产厂家-河南联固供水设备有限公司 | 飞扬动力官网-广告公司管理软件,广告公司管理系统,喷绘写真条幅制作管理软件,广告公司ERP系统 | 周口市风机厂,周鼓风机,河南省周口市风机厂| 药品/药物稳定性试验考察箱-埃里森仪器设备(上海)有限公司 | 扬尘监测_扬尘监测系统_带证扬尘监测设备 - 郑州港迪科技有限公司 | 结晶点测定仪-润滑脂滴点测定仪-大连煜烁 | 顺景erp系统_erp软件_erp软件系统_企业erp管理系统-广东顺景软件科技有限公司 | 常州企业采购平台_常州MRO采购公司_常州米孚机电设备有限公司 | 水质监测站_水质在线分析仪_水质自动监测系统_多参数水质在线监测仪_水质传感器-山东万象环境科技有限公司 | 双工位钻铣攻牙机-转换工作台钻攻中心-钻铣攻牙机一体机-浙江利硕自动化设备有限公司 | MES系统工业智能终端_生产管理看板/安灯/ESOP/静电监控_讯鹏科技 | 壹作文_中小学生优秀满分作文大全 | 耙式干燥机_真空耙式干燥机厂家-无锡鹏茂化工装备有限公司 | 广域铭岛Geega(际嘉)工业互联网平台-以数字科技引领行业跃迁 | 小型铜米机-干式铜米机-杂线全自动铜米机-河南鑫世昌机械制造有限公司 | 糖衣机,除尘式糖衣机,全自动糖衣机,泰州市长江制药机械有限公司 体感VRAR全息沉浸式3D投影多媒体展厅展会游戏互动-万展互动 | 消泡剂-水处理消泡剂-涂料消泡剂-切削液消泡剂价格-东莞德丰消泡剂厂家 | 匀胶机旋涂仪-声扫显微镜-工业水浸超声-安赛斯(北京)科技有限公司 | 5nd音乐网|最新流行歌曲|MP3歌曲免费下载|好听的歌|音乐下载 免费听mp3音乐 | 医院专用门厂家报价-医用病房门尺寸大全-抗菌木门品牌推荐 | 横河变送器-横河压力变送器-EJA变送器-EJA压力变送器-「泉蕴仪表」 | 3d打印服务,3d打印汽车,三维扫描,硅胶复模,手板,快速模具,深圳市精速三维打印科技有限公司 | 杭州顺源过滤机械有限公司官网-压滤机_板框压滤机_厢式隔膜压滤机厂家 | 加气混凝土砌块设备,轻质砖设备,蒸养砖设备,新型墙体设备-河南省杜甫机械制造有限公司 | 微量水分测定仪_厂家_卡尔费休微量水分测定仪-淄博库仑 | 双齿辊破碎机-大型狼牙破碎机视频-对辊破碎机价格/型号图片-金联机械设备生产厂家 | 税筹星_灵活用工平台_企业财务顾问_财税法薪综合服务平台 | 引领中高档酒店加盟_含舍·美素酒店品牌官网 | 实验室pH计|电导率仪|溶解氧测定仪|离子浓度计|多参数水质分析仪|pH电极-上海般特仪器有限公司 | 硫化罐_蒸汽硫化罐_大型硫化罐-山东鑫泰鑫智能装备有限公司 | 三佳互联一站式网站建设服务|网站开发|网站设计|网站搭建服务商 赛默飞Thermo veritiproPCR仪|ProFlex3 x 32PCR系统|Countess3细胞计数仪|371|3111二氧化碳培养箱|Mirco17R|Mirco21R离心机|仟诺生物 | 冲击式破碎机-冲击式制砂机-移动碎石机厂家_青州市富康机械有限公司 | 异噻唑啉酮-均三嗪-三丹油-1227-中北杀菌剂厂家 | 半自动预灌装机,卡式瓶灌装机,注射器灌装机,给药器灌装机,大输液灌装机,西林瓶灌装机-长沙一星制药机械有限公司 | 上海防爆真空干燥箱-上海防爆冷库-上海防爆冷柜?-上海浦下防爆设备厂家? | 油漆辅料厂家_阴阳脚线_艺术漆厂家_内外墙涂料施工_乳胶漆专用防霉腻子粉_轻质粉刷石膏-魔法涂涂 | 乐考网-银行从业_基金从业资格考试_初级/中级会计报名时间_中级经济师 | 暖气片十大品牌厂家_铜铝复合暖气片厂家_暖气片什么牌子好_欣鑫达散热器 | 电脑刺绣_绣花厂家_绣花章仔_织唛厂家-[源欣刺绣]潮牌刺绣打版定制绣花加工厂家 | 大学食堂装修设计_公司餐厅效果图_工厂食堂改造_迈普装饰 | 大型低温冷却液循环泵-低温水槽冷阱「厂家品牌」京华仪器_京华仪器 |