centos7.5 redis6.2.3 默认关闭防火墙和selinux
每台服务器一主二从,一台虚拟机模拟三台服务器,实际应用把端口改成服务器IP即可
主: 192.168.131.100:6001
从: 192.168.131.100:6002
192.168.131.100:6003
主:192.168.131.110:7001
从:192.168.131.110:7002
192.168.131.110:7003
主:192.168.131.120:8001
从:192.168.131.120:8002
192.168.131.120:8003
一、安装部署redis
1.去官网下 redis.tar.gz 然后tar解压 , cd redis包里面,make && make install
2. 我的集群准备放在 /usr/local/myredis,所以建立文件
进去redis包里面,更改 redis.conf 把daemonizi no 改成 yes (允许后台运行),然后复制到 /etc 和 /myredis 目录下
二、配置主从
1.cd /usr/local/myredis
mkdir logs (我准备把日志文件放这里)
实际情况一主二从是三台服务器,每台都是redis.conf + sentinel.conf,我电脑带不动,所以等下会三个redis.conf + 一个 sentinel.conf
vi redis6001.conf 内容如下
2.复制两份从机配置,注意多了一行 slaveof 和更改端口,可用 :%s/6001/6002,记得默认主机端口6001不能更改 (注意:做集群可以不加slaveof,这个是主从自动切换用的,做集群要注释掉)
!
3.启动 redis
4.登陆 redis 查看状态
redis-cli -p 端口
info replication 查看状态
role:master 主机
connected_slave 下面有2台从机
从机的ip和端口
role:slave 从
master_host 主机ip地址
master_port 主机端口
三、配置哨兵
vi sentinel.conf 内容如下
启动命令为 redis-sentinel sentinel.conf
配置完成,同理,配置110和120服务器,注意ip和端口就行
四、配置集群
redis6001这3个最下面加入4行参数即可
从机配置要注释掉 slaveof
110,120配置同上,注意更改ip和路径的名字,然后开启所有服务器的redis和sentinel, 可以看到后面多了个 cluster,代表集群模式
五、配置集群环境
1.先安装依赖包
yum install -y zlib ruby rubygems
2.进入 redis压缩包里面的 src 目录,执行 ./redis-cli --cluster create --cluster-replicas 2 (–cluster-replicas 2 代表一主二从,每台服务器带2台从机)
哦豁,报错了,yum install -y gcc-c++完事
重新执行 ./redis-cli 那条命令,安装完成
3.登陆测试,查看集群
redis-cli -p 端口 查看本机
redis-cli -h ip -p 端口 查看其他服务器
cluster nodes 查看集群机器
4.至此,实验完成。集群命令在一台服务器上执行就可以了,不用9台都运行