Redis集群部署

环境准备:

IP地址 端口 角色
192.168.0.57 7001 master
192.168.0.57 7002 slave
192.168.0.58 7001 master
192.168.0.58 7002 slave
192.168.0.59 7001 master
192.168.0.59 7002 slave

https://download.redis.io/releases/

redis 部署

三台分别执行,除ip、端口不一致

mkdir /data/redis -p
cd /data/redis
wget https://download.redis.io/releases/redis-5.0.9.tar.gz
tar xf redis-5.0.9.tar.gz
cd redis-5.0.9
yum install gcc -y 
make && make install
mkdir {7001,7002}/{conf,db,log} -p
编辑配置文件 注意修改bind,改为服务器ip
#7001
cd /data/redis/7001/conf
vim redis_7001.conf 
daemonize yes
bind 192.168.0.57
port 7001
pidfile /data/redis/7001/redis_7001.pid
logfile /data/redis/7001/log/redis_7001.log
dbfilename "redis_7001.rdb"
dir /data/redis/7001/db/
requirepass Mogu07550831
appendonly yes
appendfilename "redis.aof"
appendfsync everysec
cluster-enabled yes 
cluster-config-file nodes_7001.conf
cluster-node-timeout 15000
masterauth Mogu07550831
#7002
cd /data/redis/7002/conf
vim redis_7002.conf 
daemonize yes
bind 192.168.0.57
port 7002
pidfile /data/redis/7002/redis_7002.pid
logfile /data/redis/7002/log/redis_7002.log
dbfilename "redis_7002.rdb"
dir /data/redis/7002/db/
requirepass Mogu07550831
appendonly yes
appendfilename "redis.aof"
appendfsync everysec
cluster-enabled yes 
cluster-config-file nodes_7002.conf
cluster-node-timeout 15000
masterauth Mogu07550831
注:将这两个配置文件 分发到192.168.0.58、59服务器上,文件地址保持一致,更改ip地址

启动 三台都执行

/data/redis/redis/src/redis-server /data/redis/7001/conf/redis_7001.conf
/data/redis/redis/src/redis-server /data/redis/7002/conf/redis_7002.conf
初始化集群,在7001上操作
redis-cli -a xingdaokeji.0 --cluster create 192.168.0.57:7001 192.168.0.58:7001 192.168.0.59:7001 192.168.0.57:7002 192.168.0.58:7002 192.168.0.59:7002 --cluster-replicas 1
image.png

确认集群配置信息,输入yes后开始分配槽位

image.png

验证集群Redis-Cluster

登录redis集群
redis-cli -p 7001 -a xingdaokeji.0 -h 192.168.0.57 -c
验证集群信息

192.168.0.57:7001> cluster info
cluster_state:ok
cluster_slots_assigned:16384
cluster_slots_ok:16384
cluster_slots_pfail:0
cluster_slots_fail:0
cluster_known_nodes:6
cluster_size:3
cluster_current_epoch:6
cluster_my_epoch:1
cluster_stats_messages_ping_sent:63
cluster_stats_messages_pong_sent:69
cluster_stats_messages_sent:132
cluster_stats_messages_ping_received:64
cluster_stats_messages_pong_received:63
cluster_stats_messages_meet_received:5
cluster_stats_messages_received:132
192.168.0.57:7001> cluster nodes 
6847081e853e67b21eb525861dd32968c0adb39e 192.168.0.59:7002@17002 slave 894997a16af0c12dbffd0c00cf1eac1331eaf7e7 0 1635153015454 6 connected
a0ce0f161bed5eee23284c93a06f243a2ffe7cce 192.168.0.58:7002@17002 slave 0fdc64d64420974312a45e72c3d96c357c9aa7e8 0 1635153014000 5 connected
f5753c3e0f46e66b3a63a7ef7db2fc6ef56896c8 192.168.0.57:7002@17002 slave 6a86f7c910b70d040b98ad662a9fcab48aa93739 0 1635153013453 4 connected
0fdc64d64420974312a45e72c3d96c357c9aa7e8 192.168.0.57:7001@17001 myself,master - 0 1635153012000 1 connected 0-5460
6a86f7c910b70d040b98ad662a9fcab48aa93739 192.168.0.59:7001@17001 master - 0 1635153014454 3 connected 10923-16383
894997a16af0c12dbffd0c00cf1eac1331eaf7e7 192.168.0.58:7001@17001 master - 0 1635153013000 2 connected 5461-10922

查看集群节点

192.168.0.57:7001> cluster nodes 
6847081e853e67b21eb525861dd32968c0adb39e 192.168.0.59:7002@17002 slave 894997a16af0c12dbffd0c00cf1eac1331eaf7e7 0 1635153015454 6 connected
a0ce0f161bed5eee23284c93a06f243a2ffe7cce 192.168.0.58:7002@17002 slave 0fdc64d64420974312a45e72c3d96c357c9aa7e8 0 1635153014000 5 connected
f5753c3e0f46e66b3a63a7ef7db2fc6ef56896c8 192.168.0.57:7002@17002 slave 6a86f7c910b70d040b98ad662a9fcab48aa93739 0 1635153013453 4 connected
0fdc64d64420974312a45e72c3d96c357c9aa7e8 192.168.0.57:7001@17001 myself,master - 0 1635153012000 1 connected 0-5460
6a86f7c910b70d040b98ad662a9fcab48aa93739 192.168.0.59:7001@17001 master - 0 1635153014454 3 connected 10923-16383
894997a16af0c12dbffd0c00cf1eac1331eaf7e7 192.168.0.58:7001@17001 master - 0 1635153013000 2 connected 5461-10922

命令行查看集群信息

redis-cli -a xingdaokeji.0 -h 192.168.0.57 -p 7001 -c cluster slots | xargs  -n8 | awk '{print $3":"$4"->"$6":"$7}' | sort -nk2 -t ':' | uniq
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
192.168.0.57:7001->192.168.0.58:7002
192.168.0.58:7001->192.168.0.59:7002
192.168.0.59:7001->192.168.0.57:7002

验证集群可用性

192.168.0.57:7001>set  cc  "yy"
OK

登录其它节点查看

redis-cli -p 7001 -a xingdaokeji.0  -h 192.168.0.58 -c
192.168.0.58:7001>get cc
"yy"

验证完毕

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 简介 redis以高效的读写性能,被非常多的企业用户用来做数据缓存层,很多公司会根据自己业务场景,部署单点或者是r...
    码呗学院阅读 804评论 0 0
  • Redis集群部署——去中心化 一、redis安装环境和版本 redis版本:redis-3.2.9虚拟机:192...
    威廉彣茂阅读 641评论 0 0
  • 来自公众号:马哥Linux运维作者:赵峰峰 Redis集群部署 编译安装 cd /usr/local/src/ w...
    码农小光阅读 1,233评论 0 9
  • 1 下载安装包 wgethttp://download.redis.io/releases/redis-4.0.1...
    riki_1b78阅读 321评论 0 0
  • 16宿命:用概率思维提高你的胜算 以前的我是风险厌恶者,不喜欢去冒险,但是人生放弃了冒险,也就放弃了无数的可能。 ...
    yichen大刀阅读 6,106评论 0 4