當(dāng)前位置:
首頁(yè) >
Redis【第二篇】集群搭建
發(fā)布時(shí)間:2025/5/22
37
豆豆
生活随笔
收集整理的這篇文章主要介紹了
Redis【第二篇】集群搭建
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
第一步:準(zhǔn)備
1.安裝包
ruby-2.4.0.tar.gz
rubygems-2.6.10.tgz
zlib-1.2.11.tar.gz
redis-3.3.2.gem
2. 架構(gòu):
| 名稱(chēng) | IP | 端口 | 節(jié)點(diǎn)屬性 |
| redisA | 192.168.6.128 | 6379 | 主節(jié)點(diǎn) |
| redisB | 192.168.6.128 | 9379 | 從節(jié)點(diǎn) |
| redisC | 192.168.6.129 | 6379 | 主節(jié)點(diǎn) |
| redisD | 192.168.6.129 | 9379 | 從節(jié)點(diǎn) |
| redisE | 192.168.6.130 | 6379 | 主節(jié)點(diǎn) |
| redisF | 192.168.6.130 | 9379 | 從節(jié)點(diǎn) |
2. 實(shí)例 redis 安裝
參照?Redis【第一篇】安裝?來(lái)安裝架構(gòu)中的實(shí)例。
第二步:安裝Ruby
1. 版本
ruby-2.4.0
2. 安裝
# tar zxvf ruby-2.4.0.tar.gz # cd ruby-2.4.0 # ./configure prefix=/usr/local/ruby # make # make install3. 設(shè)置環(huán)境變量
# echo 'export PATH="$PATH:/usr/local/ruby/bin"' >> /etc/profile # source /etc/profile4. 測(cè)試
# ruby -v第三步:安裝 rubygems
1. 版本
rubygems-2.6.10
2. 安裝
# tar zxvf rubygems-2.6.10.tgz # cd rubygems-2.6.10 # ruby setup.rb3. 測(cè)試
# gem -v第四步:安裝zlib
1. 版本
zlib-1.2.11.tar.gz
2. 安裝
# tar zxvf zlib-1.2.11.tar.gz # cd zlib-1.2.11 # ./configure --prefix=/usr/local/zlib # make # make install第五步:安裝?ruby-zlib
1. 版本
為 ruby-2.4.0 包中的文件。
2. 安裝
# cd ruby-2.4.0/ext/zlib # ruby ./extconf.rb --with-zlib-dir=/usr/local/zlib # make # make install返回信息:
第六步:安裝 redis-3.3.2.gem
1. 版本
redis-3.3.2.gem
2. 安裝
gem install -l redis-3.3.2.gem返回信息:
第七步:啟動(dòng)
1. 分別修改各個(gè) redis 的配置文件
# cp redis.conf redis-cluster.conf # vi redis-cluster.conf編輯配置文件:
1)更改的內(nèi)容:
daemonize no 更改為 daemonize yes logfile "" 更改為 logfile "/root/redisA/logs/redis.log" # 需要?jiǎng)?chuàng)建 logs 目錄 dir ./ 更改為 dir /root/redisA/data #需要?jiǎng)?chuàng)建 data 目錄 appendonly no 更改為 appendonly yes2)去掉注釋的內(nèi)容
# cluster-enabled yes # cluster-config-file nodes-6379.conf # cluster-node-timeout 15000 # cluster-slave-validity-factor 10 # cluster-migration-barrier 1 # cluster-require-full-coverage yes2. 分別啟動(dòng)各個(gè) redis 服務(wù)
# ./src/redis-server redis-cluster.conf第八步:測(cè)試
1. 查看進(jìn)程
# ps -ef|grep redis|grep -v grep2. 查看日志
第九步:建立集群
1. 執(zhí)行命令
# ./src/redis-trib.rb create --replicas 1 192.168.6.128:6379 192.168.6.128:9379 192.168.6.129:6379 192.168.6.129:9379 192.168.6.130:6379 192.168.6.130:9379--replicas 1 表示每個(gè)主節(jié)點(diǎn)下有一個(gè)從節(jié)點(diǎn)。
默認(rèn)是前三個(gè)為主節(jié)點(diǎn),后三個(gè)為從節(jié)點(diǎn)。
默認(rèn)情況下不能從 slaves 讀取數(shù)據(jù),但建立連接后,執(zhí)行一次命令 READONLY,該 slaves 即可讀取數(shù)據(jù)。
2. 返回信息
>>> Creating cluster Connecting to node 192.168.6.128:6379: OK Connecting to node 192.168.6.128:9379: OK Connecting to node 192.168.6.129:6379: OK Connecting to node 192.168.6.129:9379: OK Connecting to node 192.168.6.130:6379: OK Connecting to node 192.168.6.130:9379: OK >>> Performing hash slots allocation on 6 nodes... Using 3 masters: 192.168.6.128:6379 192.168.6.129:6379 192.168.6.130:6379 Adding replica 192.168.6.129:9379 to 192.168.6.128:6379 Adding replica 192.168.6.128:9379 to 192.168.6.129:6379 Adding replica 192.168.6.130:9379 to 192.168.6.130:6379 M: 31f6b90cfe190d94f39bef42449bdb7efe1b85b0 192.168.6.128:6379slots:0-5460 (5461 slots) master S: 02c6f0321ebbaf52fe42dd372e5daf179ca77853 192.168.6.128:9379replicates 90fec8236d68d9e89262a1ae101056fa1da6df25 M: 90fec8236d68d9e89262a1ae101056fa1da6df25 192.168.6.129:6379slots:5461-10922 (5462 slots) master S: 5cf4bd75f93514e1895f8bb5bb7042ae23f277e7 192.168.6.129:9379replicates 31f6b90cfe190d94f39bef42449bdb7efe1b85b0 M: 82889edd96156daa109e84868ceda24a0272ee82 192.168.6.130:6379slots:10923-16383 (5461 slots) master S: 9e238a85863ea02fc534fc870db4f47fd79b9ef6 192.168.6.130:9379replicates 82889edd96156daa109e84868ceda24a0272ee82 Can I set the above configuration? (type 'yes' to accept): yes >>> Nodes configuration updated >>> Assign a different config epoch to each node >>> Sending CLUSTER MEET messages to join the cluster Waiting for the cluster to join..... >>> Performing Cluster Check (using node 192.168.6.128:6379) M: 31f6b90cfe190d94f39bef42449bdb7efe1b85b0 192.168.6.128:6379slots:0-5460 (5461 slots) master1 additional replica(s) M: 90fec8236d68d9e89262a1ae101056fa1da6df25 192.168.6.129:6379slots:5461-10922 (5462 slots) master1 additional replica(s) S: 5cf4bd75f93514e1895f8bb5bb7042ae23f277e7 192.168.6.129:9379slots: (0 slots) slavereplicates 31f6b90cfe190d94f39bef42449bdb7efe1b85b0 S: 9e238a85863ea02fc534fc870db4f47fd79b9ef6 192.168.6.130:9379slots: (0 slots) slavereplicates 82889edd96156daa109e84868ceda24a0272ee82 M: 82889edd96156daa109e84868ceda24a0272ee82 192.168.6.130:6379slots:10923-16383 (5461 slots) master1 additional replica(s) S: 02c6f0321ebbaf52fe42dd372e5daf179ca77853 192.168.6.128:9379slots: (0 slots) slavereplicates 90fec8236d68d9e89262a1ae101056fa1da6df25 [OK] All nodes agree about slots configuration. >>> Check for open slots... >>> Check slots coverage... [OK] All 16384 slots covered.集群創(chuàng)建成功!
第十步:測(cè)試
1. 客戶(hù)端連接
# ./src/redis-cli -c -h 192.168.6.128 -p 6379連接成功則返回:
2. 存取數(shù)據(jù)
1)連接192.168.6.128的6379端口,并存入數(shù)據(jù)
2)連接192.168.6.130的9379端口,并讀取數(shù)據(jù)
此時(shí),redis 的三主三從集群已搭建成功!
轉(zhuǎn)載于:https://www.cnblogs.com/RUReady/p/6439763.html
總結(jié)
以上是生活随笔為你收集整理的Redis【第二篇】集群搭建的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 对java集合类的认识——基础很重要
- 下一篇: Redis应用----消息传递