【云原生 | Docker 高级篇】03、搭建 Redis 3主3从集群
生活随笔
收集整理的這篇文章主要介紹了
【云原生 | Docker 高级篇】03、搭建 Redis 3主3从集群
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
3主3從redis集群配置
一、新建6個docker容器redis實例
二、進入容器redis-node-1并為6臺機器構建集群關系
?三、鏈接進入6381作為切入點,查看節點狀態
四、???????主從容錯切換遷移案例
1.數據讀寫存儲
2.容錯切換遷移
也可以查看這篇在CentOS上搭建:Redis 集群?
3主3從redis集群配置
一、新建6個docker容器redis實例
docker run -d --name redis-node-1 --net host --privileged=true -v /data/redis/share/redis-node-1:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6381docker run -d --name redis-node-2 --net host --privileged=true -v /data/redis/share/redis-node-2:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6382docker run -d --name redis-node-3 --net host --privileged=true -v /data/redis/share/redis-node-3:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6383docker run -d --name redis-node-4 --net host --privileged=true -v /data/redis/share/redis-node-4:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6384docker run -d --name redis-node-5 --net host --privileged=true -v /data/redis/share/redis-node-5:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6385docker run -d --name redis-node-6 --net host --privileged=true -v /data/redis/share/redis-node-6:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6386查看效果:
命令參數說明:
- docker run????????創建并運行docker容器實例
- --name redis-node-6????????容器名字
- --net host????????使用宿主機的IP和端口,默認
- --privileged=true????????獲取宿主機root用戶權限
- -v /data/redis/share/redis-node-6:/data????????容器卷,宿主機地址:docker內部地址
- redis:6.0.8????????redis鏡像和版本號
- --cluster-enabled yes????????開啟redis集群
- --appendonly yes????????開啟持久化
- --port 6386????????redis端口號
二、進入容器redis-node-1并為6臺機器構建集群關系
#1. 進入容器 docker exec -it redis-node-1 /bin/bash#2. 構建主從關系 redis-cli --cluster create 192.168.78.133:6381 192.168.78.133:6382 192.168.78.133:6383 192.168.78.133:6384 192.168.78.133:6385 192.168.78.133:6386 --cluster-replicas 1--cluster-replicas 1 表示為每個master創建一個slave節點,兩兩配對3主3從構建成功:
?三、鏈接進入6381作為切入點,查看節點狀態
四、???????主從容錯切換遷移案例
1.數據讀寫存儲
在6381寫入數據,有些會報錯,這是因為在集群環境中數據自動分配哈希槽導致:
解決辦法:加入參數-c,進入集群模式
???????查看集群信息? ? ? ? cluster check
2.容錯切換遷移
(1)主機6381和從機切換,先停止主機6381
6381主機停了,對應的從機6386上位
6381作為1號主機分配的從機以實際情況為準,具體是幾號機器就是幾號
(2)重啟6381,變為從機了?
(3)停止6386,讓6381上位變為master
(4)恢復6368,重新變為從機
以往操作說明,無論那臺宕機了,數據都不會消失。?
總結
以上是生活随笔為你收集整理的【云原生 | Docker 高级篇】03、搭建 Redis 3主3从集群的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 郝雪飞的求职简历
- 下一篇: 英语语法第五节(定状同从句)