授權(quán)啟動服務(wù)
接下來,是授權(quán)啟動服務(wù)需要用到的一些命令:
chmod +x /usr/libexec/redis-shutdown
useradd -s /sbin/nologin redis
mkdir /usr/local/redis ; cp $REDIS_HOME/redis.conf /usr/local/redis/ && chown -R redis:redis /usr/local/redis
mkdir -p /opt/software/redis-7.0.3/data && chown -R redis:redis /opt/software/redis-7.0.3/data
yum install -y bash-completion && source /etc/profile # 命令補全
systemctl daemon-reload
systemctl enable redis
#修改linux內(nèi)核參數(shù)
# 臨時生效
sysctl -w vm.overcommit_memory=1
# 永久生效
echo 'vm.overcommit_memory=1' >> /etc/sysctl.conf && sysctl -p
### 可選值:0,1,2。
# 0,:表示內(nèi)核將檢查是否有足夠的可用內(nèi)存供應(yīng)用進(jìn)程使用;如果有足夠的可用內(nèi)存,內(nèi)存申請允許;否則,內(nèi)存申請失敗,并把錯誤返回給應(yīng)用進(jìn)程。
# 1:表示內(nèi)核允許分配所有的物理內(nèi)存,而不管當(dāng)前的內(nèi)存狀態(tài)如何。
# 2: 表示內(nèi)核允許分配超過所有物理內(nèi)存和交換空間總和的內(nèi)存。
#節(jié)點配置
#master節(jié)點配置
首先,我們打開master節(jié)點文件,文件位于vi/usr/local/redis/redis.conf目錄下,然后修改配置如下:
bind 192.168.182.110 # 監(jiān)聽ip,多個ip用空格分隔
daemonize yes # 允許后臺啟動
logfile "/usr/local/redis/redis.log" # 日志路徑
dir /opt/software/redis-7.0.3/data # 數(shù)據(jù)庫備份文件存放目錄
masterauth 123456 # slave連接master密碼,master可省略
requirepass 123456 # 設(shè)置master連接密碼,slave可省略
appendonly yes # 在/opt/software/redis-7.0.3/data目錄生成appendonly.aof文件,將每一次寫操作請求都追加到appendonly.aof 文件中
#slave1節(jié)點配置
接著,我們打開slave1節(jié)點文件,文件位于vi/usr/local/redis/redis.conf,修改配置如下:
bind 192.168.182.111 # 監(jiān)聽ip,多個ip用空格分隔
daemonize yes # 允許后臺啟動
logfile "/usr/local/redis/redis.log" # 日志路徑
dir /opt/software/redis-7.0.3/data # 數(shù)據(jù)庫備份文件存放目錄
# replicaof用于追隨某個節(jié)點的redis,被追隨的節(jié)點為主節(jié)點,追隨的為從節(jié)點。就是設(shè)置master節(jié)點
replicaof 192.168.182.110 6379
masterauth 123456 # slave連接master密碼,master可省略
requirepass 123456 # 設(shè)置master連接密碼,slave可省略
appendonly yes # 在/opt/software/redis-7.0.3/data目錄生成appendonly.aof文件,將每一次寫操作請求都追加到appendonly.aof 文件中
#slave2節(jié)點配置
打開slave2的節(jié)點文件,文件位于vi/usr/local/redis/redis.conf,修改配置如下:
bind 192.168.182.112 # 監(jiān)聽ip,多個ip用空格分隔
daemonize yes # 允許后臺啟動
logfile "/usr/local/redis/redis.log" # 日志路徑
dir /opt/software/redis-7.0.3/data # 數(shù)據(jù)庫備份文件存放目錄
# replicaof用于追隨某個節(jié)點的redis,被追隨的節(jié)點為主節(jié)點,追隨的為從節(jié)點。就是設(shè)置master節(jié)點
replicaof 192.168.182.110 6379
masterauth 123456 # slave連接master密碼,master可省略
requirepass 123456 # 設(shè)置master連接密碼,slave可省略
appendonly yes # 在/opt/software/redis-7.0.3/data目錄生成appendonly.aof文件,將每一次寫操作請求都追加到appendonly.aof 文件中
#啟動Redis服務(wù)
systemctl start redis
systemctl status redis
#查看集群
然后,使用下面的命令查看集群的一些數(shù)據(jù):
# 交互式
redis-cli -h 192.168.182.110 -a 123456
192.168.182.110:6379> info replication
# 交互式
redis-cli -h 192.168.182.110
192.168.182.110:6379> auth 123456
192.168.182.110:6379> info replication
# 非交互式
redis-cli -h 192.168.182.110 -a 123456 info replication
如果一切配置都沒有問題,Redis的主數(shù)據(jù)庫會不定時的向從數(shù)據(jù)庫同步數(shù)據(jù),如下圖所示。
進(jìn)一步,感興趣的小伙伴可以再學(xué)習(xí)一下Redis的哨兵模式和Cluster模式。
來源:https://blog.csdn.net/xiangzhihong8/article/details/127936842