網站首頁 編程語言 正文
摘要
如果海量數據的存儲采用的Redis來構建。本博文采用的docker構建redis集群的構建。
一、docker構建單個redis服務
1、查看可用的 Redis 版本
docker search redis
2、取最新版的 Redis 鏡像
docker pull redis:latest
3、查看本地鏡像
docker images
4、運行容器
docker run -itd --name redis-test -p 6379:6379 redis
-p 6379:6379:映射容器服務的 6379 端口到宿主機的 6379 端口。外部可以直接通過宿主機ip:6379 訪問到 Redis 的服務。
5、安裝成功
docker exec -it redis-test(容器ID) /bin/bash
二、docker構建redis集群服務
2.1 三主三從集群實戰
新建容器需要掛載文件夾
cd /data/redis/share/
mkdir redis-node-1
mkdir redis-node-2
mkdir redis-node-3
mkdir redis-node-4
mkdir redis-node-5
mkdir redis-node-6
啟動redis六個容器
docker run -d --name redis-node-1 --net host --privileged=true -v /home/xjl/data/redis/share/redis-node-1:/data redis --cluster-enabled yes --appendonly yes --port 6381
?
docker run -d --name redis-node-2 --net host --privileged=true -v /home/xjl/data/redis/share/redis-node-2:/data redis --cluster-enabled yes --appendonly yes --port 6382?
docker run -d --name redis-node-3 --net host --privileged=true -v /home/xjl/data/redis/share/redis-node-3:/data redis --cluster-enabled yes --appendonly yes --port 6383
?
docker run -d --name redis-node-4 --net host --privileged=true -v /home/xjl/data/redis/share/redis-node-4:/data redis --cluster-enabled yes --appendonly yes --port 6384?
docker run -d --name redis-node-5 --net host --privileged=true -v /home/xjl/data/redis/share/redis-node-5:/data redis --cluster-enabled yes --appendonly yes --port 6385?
docker run -d --name redis-node-6 --net host --privileged=true -v /home/xjl/data/redis/share/redis-node-6:/data redis --cluster-enabled yes --appendonly yes --port 6386
?配置六個節點成為集群
進入容器redis-node-1
docker exc -it redis容器ID /bin/bash
6臺機器構建集群關系
redis-cli --cluster create 192.168.25.140:6381 192.168.25.140:6382 192.168.25.140:6383 192.168.25.140:6384 192.168.25.140:6385 192.168.25.140:6386?--cluster-replicas 1?
鏈接進入6381作為切入點,查看集群狀態
cluster info
cluster nodes
2.2 redis集群擴縮容實戰
新的啟動兩個redis節點
docker run -d --name redis-node-7 --net host --privileged=true -v /home/xjl/data/redis/share/redis-node-7:/data redis --cluster-enabled yes --appendonly yes --port 6387
docker run -d --name redis-node-8 --net host --privileged=true -v /home/xjl/data/redis/share/redis-node-8:/data redis --cluster-enabled yes --appendonly yes --port 6388
向集群節點中添加節點
redis-cli --cluster add-node?192.168.25.140:6387 192.168.25.140:6381
重新分派槽號
redis-cli --cluster reshard 192.168.25.140:6381
向集群節點中添加節點的從節點
redis-cli --cluster add-node 192.168.25.140:6388 192.168.25.140:6387 --cluster-slave --cluster-master-id d367adf4c1cf80bfb3ccf7fa01c299ad59ca9873
從集群中將4號從節點6388刪除
redis-cli --cluster?del-node?192.168.111.147:6388 5d149074b7e57b802287d1797a874ed7a1a284a8?redis-cli --cluster check 192.168.111.147:6382??檢查一下發現,6388被刪除了,只剩下7臺機器了。??
將6387的槽號清空,重新分配,本例將清出來的槽號都給6381
redis-cli --cluster reshard 192.168.25.140:6381
將6387刪除
redis-cli --cluster del-node 192.168.111.147:6387 e4781f644d4a4e4d4b4d107157b9ba8144631451?
檢查集群情況
redis-cli --cluster check 192.168.25.140:6381
博文參考
DockerPrinciple: 本項目主要介紹Docker的相關的原理與實踐操作,同時涉及實踐問題和解答方案。 - Gitee.com
原文鏈接:https://blog.csdn.net/weixin_41605937/article/details/122393034
- 上一篇:linux系統raid0測試實驗
- 下一篇:C 語言中一些重要關鍵字
相關推薦
- 2022-06-25 Qt一個進程運行另一個進程的實現方法_C 語言
- 2022-10-16 解析React?ref?命令代替父子組件的數據傳遞問題_React
- 2022-06-06 uniApp、API ‘offCompassChange‘ is not yet implement
- 2022-05-04 python直接調用和使用swig法方調用c++庫_python
- 2023-01-13 Pytorch中的modle.train,model.eval,with?torch.no_grad
- 2023-01-07 Android開發X?Y軸Board的繪制教程示例_Android
- 2022-04-29 C++?雙向循環鏈表類模版實例詳解_C 語言
- 2022-01-17 MongoDB啟動失敗: 此應用無法在你的電腦上運行
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支