MDaemon 的集群服务的设计旨在:在网络上的两个或多个 MDaemon 服务器之间共享您的配置。 这使您可以使用负载均衡硬件或软件,在多个 MDaemon 服务器之间分配电子邮件负载,从而可以通过减少网络拥塞和过载,并最大化电子邮件资源来提高速度和效率。 如果一台服务器发生硬件或软件故障,该功能还有助于确保电子邮件系统中的冗余。
在决定是否在网络上设置 MDaemon 集群时,需要考虑以下几点:
节点
一个 MDaemon 集群将具有一个主节点和一个次节点。 一台 MDaemon 服务器将被指定为主服务器,而其他所有服务器将被指定为次服务器。
•用作主节点的 MDaemon 服务器将其配置复制到所有其他节点上。 因此,主节点是唯一可用于进行配置更改的节点。如果您访问次节点并进行配置变更,则这些变更将被覆盖。 因此,大多数配置选项在次节点上的用户界面中均不可用。
•集群服务不会跨节点复制邮箱文件夹或公共文件夹; 所有节点共享同一组邮件文件夹。 用户邮件文件夹和公共文件夹必须位于网络上所有节点均可访问的位置。
•在次节点上发生的任何电子邮件变更都将发送到主节点,然后将所有变更通知所有其他节点。
•次节点上的 XML-API 仅可读。
•集群上的每个节点应位于同一个网络。 我们不建议使用集群服务来群集位于不同位置的服务器。
•集群中的每个节点需要运行相同版本的 MDaemon。
•集群中的每个节点都需要自己的 MDaemon 密钥。
路由
MDaemon 不处理去往或来自特定节点的任何流量的路由。 我们建议您使用第三方负载均衡器来处理流量路由。
负载均衡器中的粘滞(Sticky)会话是必需的,以便来自同一 IP 的所有流量都路由到同一主机。 对于 MDRA、Webmail 和 XMPP 流量而言,粘滞会话最重要,因为它们尚不支持集群,这意味着会话信息不会在节点之间传递。 要消除这个限制:
•所有 MDRA 连接必须路由到主节点。
•当某人登录到特定服务器上的 Webmail 时,该会话的所有流量都必须路由到这个同一服务器。
•Webmail 和 XMPP 通信需要路由到同一服务器,以便 Webmail 的内置聊天功能正常工作。
•所有 XMPP 通信都必须路由到同一节点,否则连接到不同服务器的用户将无法彼此聊天。
•考虑到以上几点,我们建议将所有 HTTP 和 XMPP 通信都路由到主节点,因为这是最简单的配置,并且几乎不会引起任何问题。 但是,如果您不使用其中某些功能,则可以更改配置(尽管仍然需要粘滞会话)。
邮箱和文件夹
邮箱、公共文件夹和其他一些文件夹必须保存在共享路径中,集群中的每个节点都可以访问该共享路径。 请记住,如果您使用的是 UNC 路径,则需要以有权访问网络位置的用户身份运行 MDaemon 服务。
•您必须手动更新您的邮箱和文件夹路径,并将文件夹的内容移至集群可访问的位置。 这不是在设置集群时 MDaemon 可为您执行的自动功能。 集群服务将使用您在集群服务配置中提供的邮箱和公共文件夹的网络文件夹路径,更新 MDaemon.ini 文件。
•必须将 Lockfiles 目录移动到共享位置。 您可以允许“集群服务”自动执行此操作,也可以通过编辑 LockFiles 密钥(位于 [Directories] 部分,在 MDaemon.ini 文件中)。 如果您允许集群服务为您执行此操作,则 LockFiles 目录将位于“网络邮箱”路径下。
•还必须将 PEM 目录移动到共享位置。 要实现这个目的,请将 MDaemon\PEM\ 文件夹复制到新的共享位置,并编辑 PEM 密钥,位于 [Directories] 部分,在 MDaemon.ini 文件中,然后重启 MDaemon。
•新账户模板将使用集群服务配置中提供的邮箱路径进行更新。
动态屏蔽
•动态屏蔽将所有请求发送到主服务器节点,主节点中的数据被复制到次节点。
•如果主节点处于离线状态,则次节点将使用其自己的动态屏蔽配置,该配置应与主节点离线时的配置相同。当主服务器联机时,次服务器对动态屏蔽所做的任何变更都将被覆盖。
证书
•SSL证书会自动从主节点复制到从节点。
•MDaemon 还复制其证书设置,因此每个集群中的节点/服务器都将尝试使用相同的证书。 如果节点没有正确的证书,则所有 SSL/TLS/HTTPS 通信都将在该节点上失败。
•MDaemon 的 LetsEncrypt 选项目前不支持次节点。
其他
•附件链接无法在集群中使用 因此在您启用集群中将其禁用。
•自动更新安装必须禁用。
•域名至 IP 地址绑定必须禁用。
•集群中的所有节点应设置为相同的时区,并设置为完全相同的时间。 如果时区不同,或者时间间隔超过1秒,则会在集群日志中记录一条警告。
请按照以下步骤来设置集群服务:
1.请确保已更新所有邮箱路径并调整了公共文件夹路径。主服务器应使用该数据的网络存储位置,并且应该能够在继续操作之前毫无问题地访问数据。
2.所有适当的证书应安装在每个节点上。
3.使用唯一密钥在次节点上安装 MDaemon。
4.在主节点上,前往“设置 » 集群服务”。
5.右键单击“受限制服务器”列表,然后点击“将新的 MDaemon 服务器添加到集群”(这可能很慢,因为它正在网络中搜索可用的服务器)。
6.在“服务器名称”中,输入安装了 MDaemon 的从节点的 NETBIOS 名称、IP 地址或 DNS 名称,或从下拉列表选择服务器,可能会有延迟,因为它正在网络中搜索可用的服务器。
7.点击“确定”。
8.检查“插件/集群”日志,以确保两个服务器已连接并且正在复制。
9.前往次节点上的“设置 » 集群服务”来确认它现在还在“已登记服务器”下列出了主节点和次节点。
10.如上所述,配置负载均衡硬件或软件来将流量路由到集群。
还请参阅: