pfSense与CARP的硬件冗余

在使用CARP配置高可用性集群之前,请参阅pfSense手册中的硬件冗余章节。

概述

每个CARP群集节点都需要一个真正的IP地址。 要拥有2个群集节点,实际接口需要2个IP地址,然后为每个CARP类型的虚拟IP地址添加一个附加IP。 如下图所示,主CARP群集节点WAN的IP地址为127.29.29.1,辅助节点WAN的IP地址为127.29.29.2。 主集群节点LAN的IP地址为192.168.1.2,辅助节点LAN的IP地址为192.168.1.3。

wKiom1kuDVSgE8SAAAF4YgIVd0Y055.png

添加CARP共享虚拟IP地址

在主集群节点上,在Firewall > Virtual IPs.中添加CARP类型的虚拟IP地址。 虚拟IP地址必须位于实际接口(WAN,LAN,OPT1等)上定义的IP地址的同一子网内。 必须为给定接口上的每个共享虚拟IP地址使用唯一的VHID。 最低的偏差表示节点应该是该VIP的CARP主站。 当将VIP同步到辅助节点时,XMLRPC进程将自动为每个偏移添加 100。 我们建议在主节点CARP虚拟IP上设置偏移量为0或1。

设置专用同步接口

强烈建议使用专用的同步接口,特别是使用pfsync处理的状态同步。 这不仅仅是出于安全目的,主要利于资源利用。 状态同步会在繁忙的网络环境中消耗大量的流量。设置每个群集同步接口,使用同一个子网IP地址。 例如:在主群集节点上输入192.168.4.1,在次要群集节点上输入IP地址192.168.4.2。 使用/ 24子网(255.255.255.0)。

添加防火墙同步规则

在配置同步之前,将防火墙规则添加到节点之间传递流量的同步接口。

在同步接口选项卡上导航到 Firewall > Rules。

添加规则允许流量从同步网络传递到任意目的地。

启用状态同步(pfsync)

在所有集群节点上启用状态同步。

  • 在System > High Avail. Sync启用Synchronize States。
  • 为状态同步选择正确的Synchronize Interface。
  • 如果使用两个群集节点,请在pfsync Synchronize Peer IP中输入同步接口IP地址。
  • 在示例图中,主集群节点设置为192.168.4.2。 次级节点设置为192.168.4.1。
  • 单击保存。

启用配置同步(XMLRPC同步)

在继续之前,在每个集群节点上设置相同的管理员用户密码和webConfigurator协议(例如HTTPS)。

只能在主集群节点上启用配置同步设置。

  • 进入System > High Avail. Sync。
  • 在“Synchronize Config to IP”中输入辅助节点的IP地址(上述示例为192.168.4.2)。
  • 在“Remote System Username”中输入管理员用户名(其他用户名将不起作用)。
  • 在“Remote System Password”输入远程系统密码(所有节点上的密码应相同)。
  • 选中需要同步的项目。
  • 单击保存后,所选项目将与辅助节点同步。

设置手动出站NAT

  • 在Firewall > NAT> Outbound选项卡上选择Manual outbound NAT,单击保存。
  • 在LAN上编辑自动添加的规则
  • 在WAN上选择一个共享的CARP虚拟IP地址作为转发地址。
  • 单击保存。
  • 单击应用更改。

注意:不要添加可能与群集的WAN /公网IP地址匹配的出站NAT规则。 这包括明确列出公网IP地址的规则以及任何设置为源的规则。 这些NAT规则将导致出现其他问题,并且当它处于备份状态时将从次级节点中断出站连接。

将DHCP服务器设置为使用CARP LAN IP地址

  • 在主节点Services > DHCP Server上单击LAN选项卡。
  • 将默认网关设置为LAN上的CARP VIP,例如192.168.1.3。
  • 将DNS服务器设置为LAN上的CARP VIP,例如192.168.1.3。
  • 在故障切换对等IP中输入辅助节点的IP地址。 这将在同步期间自动调整。
  • 单击保存。

验证XMLRPC同步

访问辅助集群节点,并验证NAT,虚拟IP地址和规则是否已正确同步。

验证CARP状态

在两个节点上,检查Status > CARP (failover)。 如果任一系统显示Enable CARP的按钮,请单击它。

在该页面上,验证VIP是否显示正确的状态。 在主节点上,每个VIP应显示MASTER。 在次级节点上,每个VIP应显示BACKUP。

注意事项:

必须检查以下项目,以确保两个节点之间XMLRPC配置能正确同步:

  1. 所有节点上的用户名必须为admin。
  2. 所有节点上的密码必须匹配。
  3. 每个集群节点上的WebConfigurator协议必须相同(HTTP与HTTPS)。
  4. 每个群集节点上的WebConfigurator端口必须相同(例如443)。
  5. 必须启用辅助节点上的同步接口。
  6. 所有节点上的接口必须以相同的顺序分配。
  7. Synchronize Config to IP选项必须指向辅助接口的同步接口IP地址。
  8. 必须允许流量通过辅助节点同步接口上的webConfigurator端口。
  9. 只有在已经选中了各种XMLRPC配置同步选项后才能验证只有主节点。

此条目发表在pfSense分类目录。将固定链接加入收藏夹。