Redis叢集的搭建
原理:去中心化
叢集規則
機器編號 | IP | port |
---|---|---|
1 | 192.168.120.129 | 7000 |
2 | 192.168.120.129 | 7001 |
3 | 192.168.120.129 | 7002 |
4 | 192.168.120.129 | 7003 |
5 | 192.168.120.129 | 7004 |
6 | 192.168.120.129 | 7005 |
搭建過程
- 新建redis資料夾
mkdir /root/myredis/redis-cluster
- 準備一個服務端程式
啟動redis服務的那個
- 準備6個redis的配置檔案
- 移入配置檔案並修改其一下內容
Redis-1
bind 0.0.0.0 69行
port 7000 92行
daemonize yes 136行
改pid 158行
開啟aof 持久化
appendonly yes 699行
開啟叢集
cluster-enabled yes 832行
叢集的配置檔案,該檔案自動生成
cluster-config-file nodes-7000.conf 840行
叢集的超時時間
cluster-node-timeout 5000 846行
- 同時啟動所有的redis服務
- 使用指令碼建立叢集(分配槽)
找到叢集指令碼,在src/src/redis-trib.rb 要安裝Ruby的環境【不推薦】
- 使用docker 下載redis-trib的映象執行【推薦】
1.安裝Docker
yum install docker
2.啟動docker
systemctl start docker
3.: 下載映象
docker pull inem0o/redis-trib
4. 執行 需要修改ip地址哦
docker run -it --net host inem0o/redis-trib create --replicas 1
192.168.120.129:7000 192.168.120.129:7001
192.168.120.129:7002 192.168.120.129:7003
192.168.120.129:7004 192.168.120.129:7005
-it是為了可以輸入
--net host 是為了上docker容器能連線上本地的宿主機
測試叢集環境
- 連線任意客戶端 【修改埠號即可】
- -c表示 連線叢集
./redis-cli -c -h 192.168.190.143 -p 7002
- 測試