Redis主从集群搭建的一系列问题(FATAL CONFIG FILE ERROR Reading the configuration file, at line 2)

今天尝试自己搭建Redis主从集群(一主二从),做的过程中有好多问题,感觉几乎所有的坑都让我踩了,特地来记录一下。
我是在同一台虚拟机开启3个实例,创建三个目录,7001、7002、7003,复制三份配置文件进去,分别修改完三个配置文件后
启动时出现了问题

问题一

*** FATAL CONFIG FILE ERROR ***
Reading the configuration file, at line 2
‘replica-announce-ip 192.168.20.128’
Bad directive or wrong number of arguments

Redis主从集群搭建的一系列问题(FATAL CONFIG FILE ERROR Reading the configuration file, at line 2)_第1张图片
原因:经测试,应该是版本问题。我这里使用的是redis-4.0.0版本,可能是版本太低
解决:换成高版本redis-6.2.4后,再次搭建集群,三个实例全部启动成功

问题二

启动成功后,我尝试使用slaveof命令配置主从关系,报错:
Redis主从集群搭建的一系列问题(FATAL CONFIG FILE ERROR Reading the configuration file, at line 2)_第2张图片
原因:这里提示我需要进行身份验证,因为在配置文件中设置了密码。
解决:在配置文件中找到密码设置的那行注释,前面加#进行注释
(操作:vim命令,进入配置文件,输入/req ,按n下一个,可以进行一个关键字快速的查找)
Redis主从集群搭建的一系列问题(FATAL CONFIG FILE ERROR Reading the configuration file, at line 2)_第3张图片
然后重启服务,再次执行命令,执行成功
Redis主从集群搭建的一系列问题(FATAL CONFIG FILE ERROR Reading the configuration file, at line 2)_第4张图片

问题三:

在问题二中虽然命令执行成功,但是又有另外一个问题,7002控制台炸了,疯狂报错(这里按ctrl+c关闭服务)

Error reply to PING from master: ‘-DENIED Redis is running in protected mode
because protected mode is enabled, no bind address was specified, no authentication
password is requested to clients. In this mode connections are only accepted from the
loopback interface. If you want to connect’

Redis主从集群搭建的一系列问题(FATAL CONFIG FILE ERROR Reading the configuration file, at line 2)_第5张图片
原因:说我启用了保护模式
解决:把7002、7001的配置protected-mode yes改为,protected-mode no,关闭保护模式
(实际上在问题二,关闭密码的时候,应该也把这个关闭了,只是当时不知道会造成这个问题)

更改好配置后,再次执行命令,成功

数据同步及搭建结果查看

这时7002从节点会从7001主节点中进行数据同步

也可以在7001的控制台中查看到两个从节点的数据同步结果

搭建好之后,可以连接到7001节点(redis-cli -p 7001)使用info replication命令查看集群
这里可以看到当前角色为master
有两个slave节点,端口号分别为7002、7003
至此主从集群搭建成功
Redis主从集群搭建的一系列问题(FATAL CONFIG FILE ERROR Reading the configuration file, at line 2)_第6张图片

你可能感兴趣的:(问题解决,Linux,redis,数据库,nosql)