(error) ERR unknown command `sentinel`, with args beginning with: `masters`,
时间: 2023-07-20 14:14:34 浏览: 267
这个错误提示看起来是你使用的 Redis 版本不支持 Sentinel 命令。请确保你的 Redis 版本在 2.8.12 或以上,并且已经正确地配置了 Sentinel。你可以通过运行 `redis-cli info` 命令来检查 Redis 版本。如果版本号符合要求,但是仍然无法使用 Sentinel 命令,那可能是因为你的 Redis 配置文件中没有启用 Sentinel 功能。你需要在配置文件中添加如下配置:
```
sentinel monitor mymaster <master_ip> <master_port> <quorum>
sentinel down-after-milliseconds mymaster <timeout>
sentinel failover-timeout mymaster <timeout>
```
其中 `<master_ip>` 和 `<master_port>` 分别是 Redis 主节点的 IP 地址和端口号,`<quorum>` 是 Sentinel 集群的投票数,`<timeout>` 表示在多长时间内没有收到 Redis 主节点的响应时,Sentinel 就会认为主节点已经宕机。配置完成后,你需要重启 Redis 服务才能使配置生效。如果还有其他问题,请告诉我。
相关问题
getInstance error: ERR unknown command `SENTINEL`, with args beginning with: `SENTINELS`, `mymaster`,
根据提供的引用内容,出现"ERR unknown command `SENTINEL`"错误是因为Redis实例不支持SENTINEL命令。SENTINEL命令是用于Redis Sentinel的,它用于监控和管理Redis实例的高可用性。如果你的Redis实例不是通过Redis Sentinel进行管理的,那么就无法使用SENTINEL命令。
如果你想要使用Redis Sentinel来管理Redis实例的高可用性,你需要确保以下几点:
1. 安装并配置Redis Sentinel:你需要在每个Redis实例上安装Redis Sentinel,并在配置文件中指定主实例和从实例的信息。
2. 启动Redis Sentinel:你需要启动Redis Sentinel来监控和管理Redis实例。你可以使用`redis-sentinel`命令来启动Redis Sentinel。
3. 使用SENTINEL命令:一旦Redis Sentinel正常运行,你就可以使用SENTINEL命令来获取有关Redis实例的信息,例如主实例的地址和端口。
请注意,SENTINEL命令只能在Redis Sentinel中使用,而不能在普通的Redis实例中使用。如果你的Redis实例不是通过Redis Sentinel进行管理的,那么你无法使用SENTINEL命令。
GetMasterAddrByName master="master" failed: ERR unknown command `sentinel`, with args beginning with: `get-master-addr-by-name`, `master`,
这个错误提示通常是由于客户端使用了Sentinel的命令,而不是直接连接Redis集群导致的。
在Redis集群中,没有`sentinel`这个命令,而该命令是Sentinel的命令之一,用于获取指定名称的主节点的IP地址和端口号。因此,如果你想要获取Redis集群中的主节点地址,需要使用Redis集群的命令,例如`CLUSTER NODES`命令或者`CLUSTER INFO`命令。
如果你想要使用Sentinel来发现Redis集群的主节点地址,需要使用`SENTINEL get-master-addr-by-name`命令,而不是`redis-cli`命令行工具。
阅读全文