gpt4 book ai didi

notifications - Redis 哨兵 : Master name in notifications

转载 作者:可可西里 更新时间:2023-11-01 11:21:07 26 4
gpt4 key购买 nike

当 Redis Sentinel 通知事件时,它不会提供 Redis 主节点的名称。

配置摘录:

# sentinel notification-script <master-name> <script-path>
#
# Call the specified notification script for any sentinel event that is
# generated in the WARNING level (for instance -sdown, -odown, and so forth).
# This script should notify the system administrator via email, SMS, or any
# other messaging system, that there is something wrong with the monitored
# Redis systems.
#
# The script is called with just two arguments: the first is the event type
# and the second the event description.

所以只有事件类型(例如 +odown )和事件描述,在 +odown 的情况下就是master .不知何故,我觉得这缺少重要信息。我们不仅要通知用户发生了某些变化,还要通知用户变化的位置

您不能注册带有附加参数的脚本,例如

sentinel notification-script <master-name> "<script-path> <master-name>"

Redis会把这个值作为一个整体来使用,检查它是否存在,是否可执行。

我们通过创建小包装脚本解决了这个问题,每个主实例一个。

$ cat /some/path/notify-master42.sh
#!/bin/sh
/some/path/notify.sh master42 $1 $2

然后这个包装器脚本附加到主服务器:

sentinel notification-script <master-name> notification-script /some/path/notify-<master-name>.sh

这有点不舒服,但还不算太糟糕,只要您有固定数量的母版并且不通过网络即时创建它们即可。

您只需通过网络与哨兵交互即可注册新主人。 ( redis-cli -h <host> -p <port> sentinel whatever... ) 但是创建这些包装器脚本更加复杂。并不是说这是不可能的,但感觉就像是白白跳了起来。

有没有办法通知包括主名称:

  • 不给redis打补丁
  • 没有包装脚本

?

最佳答案

是的,您可以通过使用正确的事件来完成。

“所以只有事件类型(例如 +odown)和事件描述,在 +odown 的情况下就是 master。不知怎的,我觉得这缺少重要信息。我们不只是想通知用户某些事情变了,但变了的地方。”

在 +odown 的情况下, 没有其他信息。所有+odown 的意思是主服务器宕机了。在这一点上没有其他事情发生。如果您想根据故障转移(发生在+odown之后)更新某些内容,您需要查看相应的事件:< strong>开关大师。 switch-master 事件是故障转移完成时发生的事情。

直接取自documentation :

switch-master <master name> <oldip> <oldport> <newip> <newport> -- The master new IP and address is the specified one after a configuration change. This is the message most external users are interested in.

因此,让您的脚本查找并根据 switch-master 事件采取行动,以获取有关更改内容的信息。不再需要跳过燃烧的铁环。

关于notifications - Redis 哨兵 : Master name in notifications,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32222221/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com