背景:redis集群(主从复制,读写分离),因为单台redis能力有限,用到redis的,基本上是读多写少,让写的操作去master主节点,读操作去slave 或 replica 从节点,一主多从,当主节点的数据变更,在把数据同步到从节点,这样就能得到提升
本次搭建redis集群,一主两从,实际场景会用到三台服务器,我这里就用一台虚拟机来代替,到时候只需要把ip换成另外两台服务器ip就好了
1、创建三个文件夹,分别把redis配置文件放到三个目录里面
2、下载redis
wget http://download.redis.io/releases/redis-5.0.5.tar.gz
3、解压
tar -zxvf redis-5.0.5.tar.gz
4、安装redis
make && make install
5、复制redis的配置文件到三个目录里面去
echo 6379 6380 6381 | xargs -t -n 1 cp redis-5.0.5/redis.conf
6、修改三个目录下的配置文件的ip
#分别在对应目录下第一行新增内容 ‘replica-announce-ip 192.168.99.24’
sed -i '1a replica-announce-ip 192.168.99.24' 6379/redis.conf
sed -i '1a replica-announce-ip 192.168.99.24' 6380/redis.conf
sed -i '1a replica-announce-ip 192.168.99.24' 6381/redis.conf
7、修改三个目录下的配置文件的端口、保存路径
# 第一个就用默认的 6379就好了,所以只需要改6380和6381目录下的配置文件就好了
sed -i -e 's/6379/6380/g' -e 's/dir .\//dir \/usr\/local\/redis\/6380\//g' 6380/redis.conf
sed -i -e 's/6379/6381/g' -e 's/dir .\//dir \/usr\/local\/redis\/6381\//g' 6381/redis.conf
8、修改三个目录下的bind地址 127.0.0.1改成 0.0.0.0
9、 启动redis,6379 6380 6381端口
10、让6379是主节点、另外两个是从节点(先进入6380 6381的redis-cli,下面这张图片的命令输入错误了,这里小编就不改了,是这个命令 SLAVEOF 192.168.99.24 6379)
SLAVEOF 192.168.99.24 6379
集群已经搭建成功,我们可以通过 info replication 命令来查看信息
好,然后我们测试,进行往主节点写入数据,然后到从节点去获取主节点写入的数据,
然后去从节点(6380)获取数据
获取成功,然后我们再去6381从节点获取试一下勒
也成功了,好我们再在从节点写入数据,试一试,
呐,写入失败,因为只能在主节点写入,ok,今天的分享到这里结束啦,下期再见,拜了个拜~
如果小伙伴们有什么疑问,欢迎下面评论。欢迎指正。如还有什么不懂的加我 QQ:517861659
如果没有及时回复,可以点我先问问AI机器人https://chatgpt.byabstudio.com/login?code=202307011314