redis cluster叢集 三主三從
阿新 • • 發佈:2019-07-24
redis
叢集一般由 多個節點 組成,節點數量至少為6
個,才能保證組成 完整高可用 的叢集。每個節點需要 開啟配置cluster-enabled yes
,讓redis
執行在 叢集模式 下。
redis5之後使用redis-cli
建立叢集
redis-cli --cluster create <redisIp><redisPort> --cluster-replicas 1
--cluster-replicas 1
表示為叢集中的每一個主節點指定一個從節點
實戰
redis
要求至少三主三從共6個節點才能組成redis
叢集。
1. 建立redis各例項目錄
$ sudo mkdir -p /usr/local/redis-cluster
$ cd /usr/local/redis-cluster
$ sudo mkdir conf data log pig
$ sudo mkdir -p data/redis-6379 data/redis-6380 data/redis-6381 data/redis-6382 data/redis-6383 data/redis-6384
2. 修改配置檔案(redis.conf)
複製6份
redis.conf
到redis-cluster/conf
分別命名為
redis-6379.conf
、redis-6380.conf
、redis-6381.conf
、redis-6382.conf
、redis-6383.conf
、redis-6384.conf
模板:
# redis後臺執行 daemonize yes # 繫結的主機埠 bind 127.0.0.1 # 資料存放目錄 dir /usr/local/redis-cluster/data/redis-${自定義} # 程序檔案 pidfile /var/run/redis-cluster/${自定義}.pid # 日誌檔案 logfile /usr/local/redis-cluster/log/${自定義}.log # 埠號 port 6379 # 開啟叢集模式,把註釋#去掉 cluster-enabled yes # 叢集的配置,配置檔案首次啟動自動生成 cluster-config-file /usr/local/redis-cluster/conf/${自定義}.conf # 請求超時,設定10秒 cluster-node-timeout 10000 # aof日誌開啟,有需要就開啟,它會每次寫操作都記錄一條日誌 appendonly yes
啟動
建立
start.sh
檔案到redis-cluster
執行chmod + x ./start.sh
使start.sh
指令碼具有執行許可權
新增以下內容到start.sh
#!/bin/bash
path=conf/
cd $path
#啟動redis
redis-server redis-6379.conf
redis-server redis-6380.conf
redis-server redis-6381.conf
redis-server redis-6382.conf
redis-server redis-6383.conf
redis-server redis-6384.conf
# 建立cluster叢集
redis-cli --cluster create 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 --cluster-replicas 1
作者:piggybear
連結:https://www.jianshu.com/p/9c65057d5143
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授