场景:
在安装redis服务中,默认的配置项通常不能实际使用,需要修改一些配置参数
修改配置参数
1、拿到 redis.cnf 文件,此文件通常在 redis 项目源码的第一级目录下
2、单实例,常规配置如下,
protected-mode no #保护模式,默认yes
port 6379 #端口号
bind 127.0.0.1 #注释掉这部分,使redis可以外部访问
daemonize no #用守护线程的方式启动,关闭
requirepass #你的密码#给redis服务设置密码
save 3600 1 300 100 60 10000 # 开启RDB持久化规则,(redis默认是RDB持久化方式)
dbfilename #设置RDB持久化快照文件名称,默认“dump.rdb”
dir ./ #RDB快照文件存放目录
appendonly yes #redis 开启AOF方式持久化 默认是no
appendfilename #设置aof持久化文件名称,默认“appendonly.aof”
appendfsync #设置aof持久化追加文件方式,默认“everysec”每秒,也可以为“always”
logfile "access.log"
tcp-keepalive 60 #防止出现远程主机强迫关闭了一个现有的连接的错误 默认是300
3、集群各节点配置如下:
(1)protected-mode no:关闭保护模式
(2)daemonize yes:是否后台运行。如果是docker运行、可能这里不能改成yes
(3)port 8001:分别对应节点的端口号
(4)bind 服务ip地址(注意不是公网ip,如果是云服务器则0.0.0.0):必须要绑定当前机器的ip,方便redis集群定位机器,不绑定可能会出现循环查找集群节点机器的情况
(5)dir //xxx/xxx/redis-cluster/8001/:指定数据文件存放位置,必须要指定不同的目录位置,不然数据会丢失
(6)cluster-enabled yes:启动集群模式
(7)cluster-config-file nodes-8001.conf:节点信息,这里的800x最好和port对上
(8)cluster-node-timeout 5000:感应心跳超时时间,如果这个节点挂了超过5秒,集群就会把这个节点剔除,单位毫秒
(9)save 3600 1 300 100 60 10000:rdb持久化策略,(3600秒(1小时)内,对redis库进行至少1次增删改,则触发一次快照。以此类推)
(10)appendonly yes:开启AOF持久化
(11)requirepass 123456:开启密码。建议同一个集群矩阵所有节点密码都一致
(12)masterauth 123456:# masterauth <master-password>,与master节点通信密码
如果是多台云服务器公网部署,则需要配置如下项
(13)cluster-announce-ip 宿主机ip:集群节点IP,云服务器上部署需指定公网ip,暴露出公网ip供客户端连接
(14)cluster-announce-port 8001:集群节点映射端口,通常配置为本节点port端口号一致
(15)cluster-announce-bus-port 18001:redis总线端口,用于与其它节点通信。(通常配置为:1+本节点port端口号,如18001)