環境
redis版本:redis-5.0.4.tar.gz
操作系統(cat /etc/redhat-release):centos7.4
一台雲服務器(https://www.cnblogs.com/uncleyong/p/12694334.html)模擬6個redis節點,3個master,3個slave
步驟
redis安裝:https://www.cnblogs.com/uncleyong/p/9882843.html
mkdir /usr/local/redis_cluster
cd /usr/local/redis_cluster/
mkdir -p 7001/data 7002/data 7003/data 7004/data 7005/data 7006/data
cd 7001
cp ~/myfile/redis-5.0.4/redis.conf ./
vim redis.conf
port 7001 # 節點端口號 daemonize yes # 以后台進程的方式啟動redis實例 bind 172.16.45.250 # 實例綁定當前機器IP地址,ip addr:172.16.45.250 dir /usr/local/redis_cluster/7001/data/(redis實例數據文件存放位置) pidfile /var/run/redis_7001.pid # 指定該進程pidfile,和port對應 cluster-enabled yes # 啟動集群模式 cluster-config-file nodes7001.conf # 和port要對應,集群中該實例的配置文件,該文件會在data目錄下生成 cluster-node-timeout 5000 # 超時時間5s appendonly yes # 開啟aop日志 requirepass test123 # master開啟密碼保護 masterauth test123 # replica同master交互密碼
redis中文官方:http://www.redis.cn/topics/cluster-tutorial.html
復制配置文件:
cp redis.conf ../7002/
cp redis.conf ../7003/
cp redis.conf ../7004/
cp redis.conf ../7005/
cp redis.conf ../7006/
批量替換,比如修改7002的配置文件
:%s/7001/7002/g
依次啟動redis實例
~/myfile/redis-5.0.4/src/目錄包含了redis-server和redis-cli的相關命令腳本,可以將該路徑加入到PATH環境變量當中,方便使用;或者用/usr/local/redis/bin/下的命令
./redis-server /usr/local/redis_cluster/7001/redis.conf
或者寫一個腳本
vim start-all-redis.sh
cd /usr/local/redis/bin/ ./redis-server /usr/local/redis_cluster/7001/redis.conf ./redis-server /usr/local/redis_cluster/7002/redis.conf ./redis-server /usr/local/redis_cluster/7003/redis.conf ./redis-server /usr/local/redis_cluster/7004/redis.conf ./redis-server /usr/local/redis_cluster/7005/redis.conf ./redis-server /usr/local/redis_cluster/7006/redis.conf
添加執行權限:chmod +x start-all-redis.sh
查看進程
創建集群:將redis實例聯系起來
./redis-cli -a test123 --cluster create --cluster-replicas 1 172.16.45.250:7001 172.16.45.250:7002 172.16.45.250:7003 172.16.45.250:7004 172.16.45.250:7005 172.16.45.250:7006
--cluster-replicas 1,表示主從復制比例為 1:1,即一個主節點對應一個從節點
連接到集群的某個節點:
./redis-cli -a test123 -c -h 172.16.45.250 -p 7001
-c,1、連接集群結點時使用,此選項可防止moved和ask異常;2、加上-c,節點之間可以自動跳轉
如果不加-c
加-c,set鍵值對后,直接跳轉到7003了
集群節點信息
集群信息
最新原文:https://www.cnblogs.com/uncleyong/p/13196936.html