redis 的主從配置:
一生二,二生三,三生萬物
基本的主從,數據的備份,只要主服有修改,從服會直接備份,更新。
策略型的服務器,負載均衡。
主從配置:
主機: 192.168.35.110
打開配置文件conf , 把綁定改為這個
vi /ect/redis/redis/conf
更改 ip ,再加 主服ip
bind 192.168.1.11
slaveof 192.168.1.10 6379
重啟服務器
重登redis客戶端,指定ip登錄 redis-cli -h 192.168.25.110
從機: 192.168.35.25
搭建集群:
至少為三主三從。 (6臺) 架構
容災機制更好。
在兩臺機器上分別啟動三個redis 的服務,實際開發時會一臺機器一個服務
端口號不能是默認的了,為每個機器配置不同的文件
port 7000
bind 192.168.12.107
daemonize yes
pidfile 7000.pid
cluster-enabled yes
cluster-config-file 7000_node.conf
cluster-node-timeout 15000
appendonly yes
配置三個,啟動服務器三個: redis-server 7001.conf # 紅色為自己設置的端口號。
先在主機創建的三個配置文件:7001.conf 7002.conf 7003.conf
slot: 哈希槽, 一個主服上能存5461個數據。
槽:用來存數據的,內存空間
連接到集群: rdis-cli -h 192.168.35.110 -c -p 7002 # 此為從服,連接到的是集群
redirecte: 重定向
主服寫數據時對於從服會雨露均霑。 用的是CRC16 算法,來合理分配,數據的存儲方向。
必須有三個或三個以上的主節點數。否則創建集群時會失敗。
與python 交互:
from rediscluster import *
def redis_cliseter():
# 創建集群連接對象
小結:
總的來說創建集群,必須有三主三從,至少有兩臺電腦能實現。
先更改主從兩臺主機的配置:
vi /ect/redis/redis/conf
在主服務器的配置文件內更改: bind 192.168.35.10 # 將默認的127.0.0.1 改為 自己當前的V4 IP地址
在從服內更改配置文件如下:
bind 192.168.35.11 # 自己的IP
slaveof 192.168.35.10 6379 # 主人的主機IP 以及 端口號
然後進 redis 目錄下創建.conf 文件:(先創建最簡單的集群模式--兩臺機器之間的三主三從)
目前:主服:192.168.35.10, 從服:192.168.35.11
主服redis文件夾下:
7000.conf
7001.conf
7002.conf
從服redis文件夾下:
7003.conf
7004.conf
7005.conf
以上每個文件裡面填寫以下內容:
port 7000 # 自定義端口號,以下端口號一致
bind 192.168.35.10 # 主服ip 如果是從服則為192.168.35.11
daemonize yes
pidfile 7000.pid #
cluster-enabled yes
cluster-config-file 7000_node.conf #
cluster-node-timeout 15000
appendonly yes
接著: redis-server 7000.conf # 啟動所有設置的服務器
ssh 192.168.35.11 # 登錄從服(別的電腦)
最後,用 redis-cli -h 192.168.35.10 # 登錄 然後操作相關數據 此為主服
閱讀更多 Java程序猿鼓勵師 的文章