日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

哈嘍大家好,我是咸魚。

今天這篇文章介紹如何在一臺服務器(以 centos 7.9 為例)上通過 redis-trib.rb 工具搭建 Redis cluster (三主三從)。redis-trib.rb 是一個基于 Ruby 編寫的腳本,其功能涵蓋了創建、管理以及維護 Redis 集群的各個方面。

值得注意的是,隨著時間的推移,一些較新版本的 Redis 已經將 redis-trib.rb 標記為不推薦使用的工具。鑒于此,文章所采用的 Redis 版本為較老的 4.0.9 版本。

對于較新版本的 Redis,咸魚建議采用 redis-cli 工具來進行集群的操作與管理,以確保與 Redis 的最新特性保持一致。

我們先把架構畫出來,這樣后面部署的時候就很方便了。

# 三個 Master
192.168.149.131:6379
192.168.149.131:6380
192.168.149.131:6381
# 三個 Slave
192.168.149.131:26379
192.168.149.131:26380
192.168.149.131:26381

需要注意的是,Redis Cluster 中,節點之間通過建立 TCP 連接,使用 gossip 協議來傳播集群的信息,節點內部通信端口是服務端口 + 10000。

舉個例子,啟動 Redis 服務之后會有一個 6379 端口(對外端口)和一個 16379 端口(對內通信端口)。

開始部署

部署前準備

首先創建 Redis 存儲目錄,用來存放 rdb 文件等,接著創建 pid 文件和日志文件存放目錄:

安裝 Redis 以及相關依賴工具

我們先來安裝 redis 以及相關依賴(需要能夠訪問到互聯網):

# 安裝相關依賴
yum install -y wget gcc gcc-c++ make tar openssl openssl-devel cmake
# 安裝到 /usr/local 下
cd /usr/local/ && wget https://download.redis.io/releases/redis-4.0.9.tar.gz
# 解壓縮
tar -xvf  redis-4.0.9.tar.gz

解壓縮完畢之后我們進入目錄開始編譯安裝:

配置并開啟 Redis 服務

首先我們先來配置六個 Redis 服務的配置文件:

配置文件中需要改動的配置項是下面幾個,其他的不變:

配置好之后,六個  Redis 服務依次啟動:

/usr/local/redis-4.0.9/src/redis-server redis-6379.conf && /usr/local/redis-4.0.9/src/redis-server redis-26379.conf
/usr/local/redis-4.0.9/src/redis-server redis-6380.conf && /usr/local/redis-4.0.9/src/redis-server redis-26380.conf
/usr/local/redis-4.0.9/src/redis-server redis-6381.conf && /usr/local/redis-4.0.9/src/redis-server redis-26381.conf

搭建 Ruby 環境

redis-trib.rb 是一個 Ruby 腳本,用于創建、管理和維護 Redis 集群,它提供了一種命令行界面來執行各種集群操作,如添加節點、刪除節點、平衡數據分布等,如果要使用 redis-trib.rb 這個 Ruby 腳本來管理 Redis Cluster,就需要安裝 Ruby 解釋器。

先下載 rvm 工具(網絡問題多試幾次):

#1.下載密鑰
curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -
curl -sSL https://rvm.io/pkuczynski.asc | gpg2 --import -
#2.下載安裝包(網絡問題多試幾次)
curl -L get.rvm.io | bash -s stable

# 驗證是否安裝成功
[root@localhost]# find / -name rvm
/usr/local/rvm
/usr/local/rvm/src/rvm
/usr/local/rvm/src/rvm/bin/rvm
/usr/local/rvm/src/rvm/lib/rvm
/usr/local/rvm/src/rvm/scripts/rvm
/usr/local/rvm/bin/rvm
/usr/local/rvm/lib/rvm
/usr/local/rvm/scripts/rvm
# 啟用 RVM 的環境變量
source /etc/profile.d/rvm.sh
 
#查看依賴
rvm requirements
#驗證 rvm 版本
rvm -v

PS:如果安裝 ruby 之后使用 redis-trib.rb 工具發現報錯:

根據提示可以知道 redis-trib.rb 腳本無法找到 redis 模塊,導致加載失敗,這通常是因為系統中缺少了所需的 Ruby Redis 模塊或模塊的版本問題。

運行以下命令安裝 Redis Gem 模塊:

# 安裝 redis 模塊,是 redis-trib.rb 腳本所需的依賴
gem install redis

創建 Redis 集群

創建集群(--replicas 1 表示指定每個 master 有一個 slave):

cd /usr/local/redis-4.0.9/ && ./src/redis-trib.rb create --replicas 1 
192.168.149.131:6379 192.168.149.131:26379 192.168.149.131:6380 192.168.149.131:26380 192.168.149.131:6381 192.168.149.131:26381

由上圖可以看到:

# 查看集群信息
cd /usr/local/redis-4.0.9/ && ./src/redis-trib.rb info 192.168.149.131:6379
cd /usr/local/redis-4.0.9/ && ./src/redis-trib.rb check 127.0.0.1:6379

驗證

創建集群之后我們簡單驗證一下:寫入一個數據,可以看到數據重定向到了 master 3:

然后我們在 slave 3 上查看有沒有這個數據,是否同步完畢:

分享到:
標簽:Redis
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定