linux 多服务器配置中的冗余守护进程

Redundant daemons across linux multiserver configuration

我的问题在于编写一个将在四个冗余 linux 服务器之间复制的守护进程。守护进程相当简单,从数据库中提取、处理并将生成的文件存储在文件系统中。然后,通过电子邮件发送其中一些文件。我试图避免多余的电子邮件。 哪种方法最好? 预先感谢您提供的帮助。

您需要一个逻辑来安排这些电子邮件的发送。

恕我直言,最简单的是 centralized/unique/master 控制实体。对于冗余,您可以让任何守护进程扮演 "master" 角色,并使用主仲裁方案来选举当前主控并最终允许另一个守护进程接管 if/when 当前主控失败无论出于何种原因,它的工作。

如果主机有足够的带宽(并且要通过电子邮件发送的文件位于所有守护进程都可以访问的共享位置),它可能是唯一发送电子邮件的主机 - 没有重复。

否则 master 将只跟踪其他 "worker" 守护进程的 "sanity" 并在正常的守护进程之间分配电子邮件作业,每个作业由一个 worker 处理(因此没有重复电子邮件)。如果需要,master 也可以作为 worker 提供帮助(将一些工作分配给自己)。