redis-5.0.8主从集群搭建、不重启修改配置文件

一、环境准备

192.168.5.100 redis-01

192.168.5.101 redis-02

192.168.5.102 redis-03

关闭防火墙、能够通网

 二、安装redis

[root@localhost ~]# wget http://download.redis.io/releases/redis-5.0.8.tar.gz
[root@localhost ~]# tar xf redis-5.0.8.tar.gz -C /usr/local/
[root@localhost ~]# yum -y install gcc gcc-c++
[root@localhost ~]# cd /usr/local/redis-5.0.8
[root@localhost ~]# make && make install

确认能启动、退出

[root@localhost redis-5.0.8]# redis-server --daemonize yes
12523:C 15 Nov 2023 10:02:04.043 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
12523:C 15 Nov 2023 10:02:04.043 # Redis version=5.0.8, bits=64, commit=00000000, modified=0, pid=12523, just started
12523:C 15 Nov 2023 10:02:04.043 # Configuration loaded
[root@localhost redis-5.0.8]# ps -ef |grep redis
root      12508  12476  0 09:59 pts/1    00:00:00 redis-cli
root      12524      1  0 10:02 ?        00:00:00 redis-server *:6379
root      12529   8205  0 10:02 pts/0    00:00:00 grep --color=auto redis
[root@localhost redis-5.0.8]# redis-cli ping
PONG


[root@localhost redis-5.0.8]# pkill redis-server
[root@localhost redis-5.0.8]# redis-cli ping
Could not connect to Redis at 127.0.0.1:6379: Connection refused

三、开始搭建集群

1.首先创建6个空文件

[root@redis-01 ~]# mkdir -p /usr/local/redis-cluster/9001
[root@redis-01 ~]# mkdir -p /usr/local/redis-cluster/9002
[root@redis-02 ~]# mkdir -p /usr/local/redis-cluster/9003
[root@redis-02 ~]# mkdir -p /usr/local/redis-cluster/9004
[root@redis-03 redis-5.0.8]# mkdir -p /usr/local/redis-cluster/9005
[root@redis-03 redis-5.0.8]# mkdir -p /usr/local/redis-cluster/9006

2.copy  redis.conf redis-server

[root@redis-01 redis-5.0.8]# cp redis.conf /usr/local/redis-cluster/9001
[root@redis-01 redis-5.0.8]# cp redis.conf /usr/local/redis-cluster/9002
[root@redis-02 redis-5.0.8]# cp redis.conf /usr/local/redis-cluster/9003
[root@redis-02 redis-5.0.8]# cp redis.conf /usr/local/redis-cluster/9004
[root@redis-03 redis-5.0.8]# cp redis.conf /usr/local/redis-cluster/9005
[root@redis-03 redis-5.0.8]# cp redis.conf /usr/local/redis-cluster/9006

[root@redis-01 src]# cp redis-server /usr/local/redis-cluster/9001/
[root@redis-01 src]# cp redis-server /usr/local/redis-cluster/9002/
[root@redis-02 src]# cp redis-server /usr/local/redis-cluster/9003/
[root@redis-02 src]# cp redis-server /usr/local/redis-cluster/9004/
[root@redis-03 src]# cp redis-server /usr/local/redis-cluster/9005/
[root@redis-03 src]# cp redis-server /usr/local/redis-cluster/9006/

3.修改redis.conf

在vim里你可以使用以下命令查找并删除注释行:

:g/^#/d
1)port 9001 //设置端口号

2)dir /usr/local/redis_cluster/9001/ //数据存放位置,必须要指定

3)cluster-enabled yes //启动集群模式

4)cluster-config-file nodes-9001.conf //集群节点信息文件

6)cluster-node-timeout 5000

bind 127.0.0.1 //去掉bind绑定访问ip信息

protected-mode no //关闭保护模式

9)appendonly yes //开启AOF模式,默认的持久化上RDB

[root@redis-01 redis-cluster]# cp 9001/redis.conf 9002/redis.conf 
cp:是否覆盖"9002/redis.conf"? y
[root@redis-01 redis-cluster]# scp 9001/redis.conf 192.168.5.101:/usr/local/redis-cluster/9003/redis.conf 
                                                                100% 1654     2.4MB/s   00:00    
[root@redis-01 redis-cluster]# scp 9001/redis.conf 192.168.5.101:/usr/local/redis-cluster/9004/redis.conf 

4、启动redis服务


[root@redis-01 redis-cluster]# redis-server /usr/local/redis-cluster/9001/redis.conf --daemonize yes
12684:C 15 Nov 2023 10:33:53.480 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
12684:C 15 Nov 2023 10:33:53.480 # Redis version=5.0.8, bits=64, commit=00000000, modified=0, pid=12684, just started
12684:C 15 Nov 2023 10:33:53.480 # Configuration loaded
[root@redis-01 redis-cluster]# redis-cli ping

[root@redis-01 redis-cluster]# redis-cli -h 127.0.0.1 -p 9001 ping
PONG

5.创建redis集群(5.0版本以后直接使用redis-cli)

//-a *** 密码 如果redis.conf中配置了密码创建集群时需要添加

//--cluster-replicas 1 从节点个数

四、不重启redis集群修改最大内存设置

192.168.5.100:9001> CONFIG GET maxmemory
1) "maxmemory"
2) "0"

[root@redis-01 9001]# redis-cli -h 192.168.5.100 -p 9001 config set maxmemory 4GB
OK
[root@redis-01 9001]# redis-cli -h 192.168.5.100 -p 9001 config rewrite
OK

[root@redis-01 9001]# redis-cli -h 192.168.5.100 -p 9001
192.168.5.100:9001> CONFIG GET maxmemory
1) "maxmemory"
2) "4294967296"

 

============================================ Redis 5.0.8发布于2020年3月12日16时05分41秒 ============================================ 升级紧迫性高:这个版本修复了安全问题。 这是这个版本的修复列表: Salvatore Sanfilippo在《commit 2bea502d》中写道: 来自dustinmm80/add-arm-latomi -link的合并拉请求#6975 达斯汀·柯林斯在b5931405: 修正Pi建设需要-拉丁,支持端口 文件更改1次,插入9次(+) srzhao在commit fd441300: 修正了子白名单SIGUSR1特性的impl。 1个文件更改,5个插入(+),4个删除(-) Ariel在承诺77ff332b: 修正了ThreadSafeContext锁定/解锁函数名的问题 1个文件更改,2个插入(+),2个删除(-) Guy Benoish《commit 4f0f799c》: XREADGROUP应该在MULTI/EXEC中传播XCALIM/SETID 1个文件更改,2个插入(+),2个删除(-) 奥兰·阿格拉在commit 0c1273c3: 修正客户端标志在module.c中的int64 1个文件改变,3个插入(+),3个删除(-) Guy Benoish在承诺708a4e8a: 修复与复制和监视模糊相关的小错误 2个文件更改,8个插入(+),6个删除(-) 吴云龙在提交eac4115d: 修复lua相关的内存泄漏。 1个文件更改,1个插入(+) 提交d075df17: 简化# 6379的变化。 2个文件更改,4个插入(+),9个删除(-) 武云龙在commit 80a49c37中: 在pfdebugCommand()中释放分配的sds,以避免内存泄漏。 1个文件更改,1个插入(+) 提交60870d3a中的antirez: 解析错误时跳转到右标签。 1个文件更改,6个插入(+),4个删除(-) 提交d90f599b: 在错误发生时释放错误信号。 1个文件改变,11个插入(+),3个删除(-) WuYunlong in commit 8ee3bddf: 修复rioWriteBulkStreamID()的潜在内存泄漏。 1个文件更改,4个插入(+),1个删除(-) 武云龙在commit 4780fe78中: 修复clusterLoadConfig()的潜在内存泄漏。 1个文件更改,20个插入(+),5个删除(-) Leo Murillo在f3b77510中: 修正了KEYS命令中模式以*开头,后跟\x00 (null char)的错误。 1个文件更改,1个插入(+),1个删除(-) Guy Benoish的《commit 7f3fcedb》: 阻塞XREAD[GROUP]应该总是使用有效数据进行应答(或超时) 更改3个文件,44次插入(+),10次删除(-) 提交f93b2fa5: XCLAIM:仅在成功的索赔上创建消费者。 1个文件更改,4个插入(+),2个删除(-) Guy Benoish在《commit 89682d96》中写道: 流:处理与流相关的边缘情况 4个文件改变,54个插入(+),4个删除(-) 提交920e108f: 修正了RM_GetClusterNodeInfo()中的ip和丢失模式。 1个文件改变,5个插入(+),2个删除(-) 提交7569b210: 内联协议:处理好空字符串。 1个文件更改,2个插入(+),6个删除(-) Khem Raj在承诺3c610b4e: 在sds.h中标记SDS_NOINIT的外部定义 1个文件更改,1个插入(+),1个删除(-) Seunghoon Woo在承诺16b2d07f: [修复]重访CVE-2015-8080漏洞 1个文件更改,6个插入(+),4个删除(-) yz1509在commit 19f33585中: 避免将标记更改promoted_slave作为它自己的副本。 1个文件更改,1个插入(+),1个删除(-)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我还能再学点

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值