iT邦幫忙

2024 iThome 鐵人賽

DAY 18
0
佛心分享-我的私藏工具箱

作業系統的專武系列 第 18

實機建置Redis Cluster

  • 分享至 

  • xImage
  •  

大部份安裝Redis或Redis Cluster都是基於容器安裝,而要求實機安裝倒是首見。好吧!既然會安裝Redis Cluster的docker,實機三台主機安裝Redis Cluster也不難。
以下是以172.1.2.222、172.1.2.223、172.1.2.224這三台主機開7000及7001 port組成Redis Cluster的飯粒。
【安裝前檢查】

  • 若執行make沒提示安裝,而直接報Errors during downloading meta for repository 'CMP-BaseOS'的錯誤,請IT協助安裝。
  • 執行yum install gcc,確認是否有安裝cc指令。
  • 上述yum install gcc若未執行而先執行make導致失敗,在執行yum install gcc後,請先執行清除上次make的殘留,再執行make
make distclean & make

【安裝redis步驟】

cd                          # 切到Home目錄
scp apadmin@172.1.2.225:/ap/redis-7.2.4.tar.gz .  # 複製redis安裝檔
tar xvf redis-7.2.4.tar.gz  # 解壓縮
cd redis-7.2.4
make                        # 編譯
make test                   # 測試是否正常,要花點時間
cd src                      # Redis指令所在
./redis-server              # 前景執行單台Redis,若成功啟動,按Ctrl-Z結束運行。

【建置Redis Cluster步驟】
每一台主機各建7000與7001子目錄:在子目錄下,各建redis7000.conf與redis7001.conf

  • redis7000.conf內容:
    • redis7001.conf與之相同,差別port 7001,建議用不同檔名區隔以免日後混用
port 7000
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
masterauth pass.123
requirepass pass.123

啟動每一台主機下兩個Redis Node並背景執行(--daemonize yes)

  • 啟動7000 Redis Server
cd ~/7000
../redis-7.2.4/src/redis-server redis7000.conf --daemonize yes
  • 啟動7001 Redis Server
cd ~/7001
../redis-7.2.4/src/redis-server redis7001.conf --daemonize yes
  • 串連成Cluster,這一步最重要。
cd ~/redis-7.2.4/src
redis-cli -a pass.123 --cluster create 172.1.2.222:7000 172.1.2.222:7001 172.1.2.223:7000 172.1.2.223:7001 172.1.2.224:7000 172.1.2.224:7001 --cluster-replicas 1
- redis-cli會自動判斷機器,將M1/S2, M2/S3, M3/S1各自配置到同台主機上。建置時會顯示節點資訊並詢問是否OK,提示[yes/No]? 
	- 輸入yes後會建置完成。
  • 測試Redis Cluster:若登入出現提示表示成功
cd ~/redis-7.2.4/src
./redis-cli -a pass.123 -c -p 7000
# 若出現以下提示,表示可以正常登入Redis
# -a Password
# -p port
# -c 進入Redis Cluster模式
172.1.2.223:7000>
  • 關閉Redis Cluster:每台主機逐一執行以下指令
cd ~/redis-7.2.4/src
./redis-cli -a pass.123 -p 7000 -c shutdown
./redis-cli -a pass.123 -p 7001 -c shutdown

做完後還是覺得,docker-compose.yaml方便多了。


上一篇
sqlcmd需用openssl 1.1.1版才能載入ODBC Driver 17
下一篇
Rocky Linux 9離線安裝Redis
系列文
作業系統的專武30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言