您的位置:首页 > 数据库 > Redis

centos7部署redis5-cluster集群

2020-01-14 06:02 525 查看

Redis的集群方案大致有三种:
1)redis cluster集群方案;
2)master/slave主从方案;
3)哨兵模式来进行主从替换以及故障恢复。

但是主从方案和哨兵模式与cluster集群模式相比性能要相对差,所以现在很多企业都换成了集群模式

部署redis5-cluster集群
(至少需要3个主节点,生产环境建议用三台机器做,每台上部署一套主从,总共六个节点)

1.

wget http://download.redis.io/releases/redis-5.0.5.tar.gz

解压,进入解压后的文件夹,执行 make && make install PREFIX=/usr/local/redis
意思是把命令安装到/usr/local/redis/下面

2.进入文件夹

cd /usr/local/redis/

创建集群文件夹redis-cluster,把节点配置文件放到里面管理
mkdir redis-cluster

进入文件夹
cd redis-cluster

mkdir 7001 7002 7003 7004 7005 7006
  • 3.部署六个节点,因为是实验机器所以都部署在一台机器上,生产环境应该部署在多台机器上,多台机器都安装redis,每一台上都创建一个目录夹,比如是三台机器就一台上创建两个目录夹,总共六个,命令复制到其他机器上。

  • 4.新建配置文件

vim 7001/redis.conf
port 7001
cluster-enabled yes
cluster-config-file nodes_7001.conf
cluster-node-timeout 5000
appendonly yes
daemonize yes
protected-mode no
pidfile  /var/run/redis_7001.pid
bind 192.168.0.49

其他7002/redis.conf 7003/redis.conf也是一样,记得改端口和文件名

  • 启动节点
cd /usr/local/redis/bin
./redis-server /usr/local/redis/redis-cluster/7001/redis.conf
./redis-server /usr/local/redis/redis-cluster/7002/redis.conf
./redis-server /usr/local/redis/redis-cluster/7003/redis.conf
./redis-server /usr/local/redis/redis-cluster/7004/redis.conf
./redis-server /usr/local/redis/redis-cluster/7005/redis.conf
./redis-server /usr/local/redis/redis-cluster/7006/redis.conf
  • 启动集群
./redis-cli --cluster create 192.168.21.130:7001 192.168.21.130:7002 192.168.21.130:7003 192.168.21.130:7004 192.168.21.130:7005 192.168.21.130:7006 --cluster-replicas 1

输入yes

netstat -nalp | grep redis | grep LISTEN

查看六个节点的端口是否正常

  • 连接测试
./redis-cli -h 192.168.0.49 -p 7003 -c

set 一个值,然后用其他端口查看是否数据同步,-c参数表示以集群方式连接

./redis-cli -h 192.168.0.49 -p 7006 -c
  • 设置redis开机自启动

先写个启动redis节点的脚本nodes-start.sh

#!/bin/bash
/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/7001/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/7002/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/7003/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/7004/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/7005/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/7006/redis.conf
  • 写入系统任务
vim /etc/systemd/system/redis.service
[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/redis/bin/nodes-start.sh
PrivateTmp=true
[Install]
WantedBy=multi-user.target
重载系统服务:systemctl daemon-reload
设置开机自启  systemctl enable  redis
  • 点赞
  • 收藏
  • 分享
  • 文章举报
半吊子先森 发布了19 篇原创文章 · 获赞 0 · 访问量 212 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: