實作架設 Server ,從套件庫下載安裝,主要實現讀寫分離, 主節點可以進行讀取和寫入,而其他的從節點只能讀取,安裝主從模式,可以使用 yum 來達成,與其他模式不同的是設定檔配置,安裝的套件與單機模式相同。
Table of Contents
Toggle功能簡介
Redis 是一個高性能鍵值儲存的記憶體型的資料庫,支援資料的持久化,可以將記憶體的資料儲存在磁碟,重啟後可以再重新載入,同時提供 list,set,zset,hash 等資料結構儲存,也支援資料備份,即主從模式的資料備份。
主機架構
建置一主二從的主機架構,若資源不足的狀況下,也可考慮在同一台主機,以 port 區分建置以下三個實例。
Node | IP | Port |
Master | 192.168.1.100 | 6379 |
Slave 1 | 192.168.1.101 | 6379 |
Slave 2 | 192.168.1.102 | 6379 |
安裝套件
CentOS 7 Install Redis Master-Slave
使用 yum 安裝。
yum install redis
修改內核
調整參數。
vim /etc/sysctl.conf
vm.overcommit_memory=1
重新載入。
sysctl -p
組態設定
Master
vim /etc/redis.conf
bind 0.0.0.0
port 6379
daemonize yes
pidfile /var/run/redis_6379.pid
logfile /var/log/redis/redis.log
dir /var/lib/redis
databases 16
requirepass password
appendonly yes
masterauth password
Slave 1 / 2
vim /etc/redis.conf
bind 0.0.0.0
port 6379
daemonize yes
pidfile /var/run/redis_6379.pid
logfile /var/log/redis/redis.log
dir /var/lib/redis
databases 16
requirepass password
appendonly yes
masterauth password
#slaveof 192.168.1.100 6379
slaveof masterip masterport
防火牆設定
開通防火牆
使用 firewall–cmd 命令來開通防火牆。
firewall-cmd --permanent --add-port=6379
重載防火牆
使用 firewall–cmd 命令來重載防火牆,立即生效。
firewall-cmd --reload
運行管理
啟動服務
安裝完成後,並不會自動啟動服務,使用 systemctl start 命令來啟動服務。
systemctl start redis
開機啟動
實現主機重開時,可以自動啟動服務,使用 systemctl enable 命令來啟用開機啟動。
systemctl enable redis
停止服務
啟動服務後,使用 systemctl stop 命令終止服務運行。
systemctl stop redis
狀態驗證
Install Redis Centos 啟動服務後,使用 systemctl status 命令來查看服務狀況。
systemctl status redis
● redis.service - redis
Loaded: loaded (/usr/lib/systemd/system/redis.service; enabled; vendor preset: disabled)
Active: active (running) since Mon 2022-04-04 22:01:12 CST; 3 weeks 1 days ago
Docs: man:redis.service(8)
Main PID: 25112 (redis)
測試連線
使用命令列,連上服務。
redis-cli -a password info replication
# Replication
role:master
connected_slaves:2
redis-cli -a password
127.0.0.1:6379>exit
心得分享
CentOS Install Redis 安裝主從模式,實現最基本的 HA 高可用性服務,當線上產品環境,是需要 HA 高可用性,來保障系統穩定運作,除此之外還有其他模式: