多节点高可用性服务
多节点高可用性支持数据平面的主动/主动模式和控制平面服务的主动/备份模式。让我们在以下部分中了解控制平面无状态和有状态服务:
控制平面 无状态服务
SRG0 在没有控制平面状态的情况下管理服务,如应用安全、IDP、内容安全、防火墙、NAT、策略、ALG 等。这些服务的故障转移仅在数据平面级别是必需的,并且其中一些服务是直通的(除了 NAT、防火墙身份验证外,不会在设备上终止)。
SRG0 在两个节点上都保持活动状态,并转发来自两个节点的流量。这些功能在多节点高可用性的两个 SRX 系列防火墙上独立运行。
要配置控制平面无状态服务,请执行以下作:
- 像在独立 SRX 系列防火墙上配置功能一样配置功能。
- 在参与的安全设备上安装相同的 Junos OS 版本(Junos OS 22.3R1 或更高版本)
- 在两个节点上安装相同的许可证
- 在两个节点上下载并安装相同版本的应用程序签名包或 IPS 包(如果使用应用程序安全性和 IDP)
- 根据您的需求,配置条件路由通告、路由策略和静态路由。
- 在多节点高可用性中,默认情况下不会发生配置同步。您需要将应用程序配置为组的一部分,然后使用
peer synchronization
选项同步配置,或者在每个节点上独立管理配置。
网络地址转换
防火墙、ALG、NAT 等服务没有控制平面状态。对于此类服务,只需跨节点同步数据平面状态。
在多节点高可用性设置中,一台设备一次处理一个 NAT 会话,另一台设备在发生故障切换时接管活动角色。因此,会话在一台设备上保持活动状态,而在另一台设备上,会话将处于热(备用)状态,直到发生故障切换。
NAT 会话和 ALG 状态对象在节点之间同步。如果一个节点发生故障,第二个节点将继续处理来自故障设备的同步会话的流量,包括 NAT 转换。
您必须在两个 SRX 系列防火墙上使用相同的参数创建 NAT 规则和池。要将 NAT 流量(发往 NAT 池 IP 地址)的响应路径引导至正确的 SRX 系列防火墙(活动设备),必须在活动/备份设备上均具有所需的路由配置。也就是说,配置必须指定通过路由协议向相邻路由设备播发哪些路由。因此,您还必须配置策略选项和路由配置。
在两台设备上运行特定于 NAT 的作命令时,可以看到相同的输出。但是,在某些情况下,节点之间的 NAT 规则/池内部数字 ID 可能不同。不同的数字 ID 不会影响故障转移时的会话同步/NAT 转换。
防火墙用户身份验证
通过防火墙身份验证,您可以单独或分组限制或允许用户。可以使用本地密码数据库或外部密码数据库对用户进行身份验证。
多节点高可用性支持以下身份验证方法:
- 直通身份验证
- 通过 Web 重定向身份验证直通
- Web 身份验证
防火墙用户身份验证是具有主动控制平面状态的服务,需要跨节点同步控制和数据平面状态。在多节点高可用性设置中工作时,防火墙用户身份验证功能在两个 SRX 系列防火墙上独立工作,并在节点之间同步身份验证表。当用户成功进行身份验证时,身份验证条目将同步到另一个节点,并且当您运行 show 命令时,身份验证条目在两个节点上都可见(例如: show security firewall-authentication users
)。
在节点之间同步配置时,请验证两个节点上的身份验证、策略、源区域和目标区域详细信息是否匹配。在配置中保持相同的顺序可确保两个节点之间的身份验证条目成功同步。
如果使用 clear security user-identification local-authentication-table 语句清除一个节点中的认证条目,请确保也清除另一个节点中的认证条目。
在进行非对称流量配置时,也要遵循相同的做法。
多节点高可用性支持瞻博网络身份管理服务 (JIMS) 获取用户身份信息。每个节点从 JIMS 服务器获取身份验证条目并独立处理它们。因此,您必须在每个节点上分别运行防火墙用户身份验证命令。例如,当您使用 show 命令显示身份验证条目时,每个节点仅显示它当前正在处理的那些身份验证条目(就像在独立模式下独立工作一样:
Express Path 支持
MNHA 中的 Express Path(以前称为 服务卸载)(SRG0 和 SRG1+)通过确保故障切换后的无缝数据包转发来降低延迟。当活动节点正常运行时,此功能会在另一个节点上安装有状态和静态 SOF 会话,从而确保在控制平面消息的驱动下立即做好故障切换准备。
系统可防止 SOF 会话在另一个节点中过早老化,保持会话完整性,并在主要角色转换期间无缝处理第一个数据包处理。此外,它还通过选择删除和重新安装 SOF 会话来确保最新管理,从而解决新故障节点中的会话处理问题。
支持此功能适用于在第 3 层(路由)模式下运行的多节点高可用性系统。有关 Express Path 的详细信息,请参阅 Express Path 概述。
多节点高可用性节点之间的配置同步
在多节点高可用性中,两个 SRX 系列防火墙作为独立设备运行。这些设备在 fxp0 接口上具有唯一的主机名和 IP 地址。您可以在这些设备上独立配置控制平面无状态服务,如 ALG、防火墙、NAT。特定于节点的数据包始终在相应的节点上进行处理。
在多节点高可用性中,以下数据包/服务是特定于节点的(本地):
-
路由协议、数据包到路由引擎
-
管理服务,例如 SNMP 和作命令 (
show
、request
) -
与 RADIUS 和 LDAP 服务器集成的进程,例如身份验证服务进程 (authd)
-
ICL 加密特定隧道控制和数据包
默认情况下,多节点高可用性中的配置同步未启用。如果您希望将某些配置同步到其他节点,则需要:
- 将特性/功能配置为
groups
- 使用
[edit system commit peers-synchronize]
选项同步配置
在多节点高可用性中的两台设备上启用配置同步(通过使用 peers-synchronize
选项)时,您在 [groups] 下的一个对等方上配置的配置设置将在 执行提交 作时自动同步到另一个对等方。
启用 peers-synchronize
语句的本地对等方会将其配置复制并加载到远程对等方。然后,每个对等方对要提交的配置文件执行语法检查。如果未发现错误,则该配置将被激活,并成为两个对等方上的当前作配置。
有关配置示例,请参阅 示例:使用 Junos OS 配置组配置多节点高可用性。
以下配置片段显示了 host-mnha-01 上的 avpn_config_group
VPN 配置。我们会将配置同步到另一个对等设备 host-mnha-02。
- 配置参与对等设备 (host-mnha-02) 的主机名和 IP 地址、身份验证详细信息,并包含
peers-synchronization
语句。On host-mnha-01 [edit] set system commit peers-synchronize set system commit peers host-mnha-02 user user-02 set system commit peers host-mnha-02 authentication "$ABC" set system services netconf ssh set system static-host-mapping host-mnha-02 inet 10.157.75.129
-
配置组 (avpn_config_group) 并指定应用条件(当对等方为 host-mnha-01 和 host-mnha-02 时)
On host-mnha-01 set groups avpn_config_group when peers host-mnha-01 set groups avpn_config_group when peers host-mnha-02 set groups avpn_config_group security ike proposal avpn_IKE_PROP authentication-method rsa-signatures set groups avpn_config_group security ike proposal avpn_IKE_PROP dh-group group14 set groups avpn_config_group security ike proposal avpn_IKE_PROP authentication-algorithm sha1 set groups avpn_config_group security ike proposal avpn_IKE_PROP encryption-algorithm aes-128-cbc set groups avpn_config_group security ike proposal avpn_IKE_PROP lifetime-seconds 3600 set groups avpn_config_group security ike policy avpn_IKE_POL proposals avpn_IKE_PROP set groups avpn_config_group security ike policy avpn_IKE_POL certificate local-certificate crt2k set groups avpn_config_group security ike gateway avpn_ike_gw ike-policy avpn_IKE_POL set groups avpn_config_group security ike gateway avpn_ike_gw dynamic distinguished-name wildcard C=us,O=ixia set groups avpn_config_group security ike gateway avpn_ike_gw dynamic ike-user-type group-ike-id set groups avpn_config_group security ike gateway avpn_ike_gw dead-peer-detection probe-idle-tunnel set groups avpn_config_group security ike gateway avpn_ike_gw dead-peer-detection interval 60 set groups avpn_config_group security ike gateway avpn_ike_gw dead-peer-detection threshold 5 set groups avpn_config_group security ike gateway avpn_ike_gw local-identity hostname srx.juniper.net set groups avpn_config_group security ike gateway avpn_ike_gw external-interface lo0.0 set groups avpn_config_group security ike gateway avpn_ike_gw local-address 10.11.0.1 set groups avpn_config_group security ike gateway avpn_ike_gw version v2-only set groups avpn_config_group security ipsec proposal avpn_IPSEC_PROP protocol esp set groups avpn_config_group security ipsec proposal avpn_IPSEC_PROP authentication-algorithm hmac-sha1-96 set groups avpn_config_group security ipsec proposal avpn_IPSEC_PROP encryption-algorithm aes-128-cbc set groups avpn_config_group security ipsec proposal avpn_IPSEC_PROP lifetime-seconds 1800 set groups avpn_config_group security ipsec policy avpn_IPSEC_POL perfect-forward-secrecy keys group14 set groups avpn_config_group security ipsec policy avpn_IPSEC_POL proposals avpn_IPSEC_PROP set groups avpn_config_group security ipsec vpn avpn_ipsec_vpn bind-interface st0.15001 set groups avpn_config_group security ipsec vpn avpn_ipsec_vpn ike gateway avpn_ike_gw set groups avpn_config_group security ipsec vpn avpn_ipsec_vpn ike ipsec-policy avpn_IPSEC_POL set groups avpn_config_group security ipsec vpn avpn_ipsec_vpn traffic-selector ts local-ip 10.19.0.0/8 set groups avpn_config_group security ipsec vpn avpn_ipsec_vpn traffic-selector ts remote-ip 10.4.0.0/8 set groups avpn_config_group security zones security-zone vpn host-inbound-traffic system-services all set groups avpn_config_group security zones security-zone vpn host-inbound-traffic protocols all set groups avpn_config_group security zones security-zone vpn interfaces st0.15001 set groups avpn_config_group interfaces st0 description vpn set groups avpn_config_group interfaces st0 unit 15001 family inet
-
apply-groups
在配置的根目录使用命令。On host-mnha-01 set apply-groups avpn_config_group
提交配置时,Junos 会检查命令并合并正确的组以匹配节点名称。
-
在作模式下使用
show configuration system
命令验证同步状态。user@host-mnha-01> show configuration system ........... commit { peers { host-mnha-02 { user user user-02; authentication "$ABC123"; } } } static-host-mapping { host-mnha-02 inet 10.157.75.129; } ............
命令输出在 对等 方选项下显示对等方 SRX 系列防火墙的详细信息。
配置同步是动态进行的,如果在只有一个节点可用或节点之间的连接中断时进行了任何配置更改,则必须再发出一次提交才能将配置同步到另一个节点。否则,将导致应用节点之间的配置不一致。
- 配置同步对于多节点高可用性工作不是必需的。但是,为了便于配置同步,我们建议将语句与
junos groups
单向配置一起使用set system commit peers-synchronize
(例如,节点 0 到节点 1)。 - 建议使用带外管理 (fxp0) 连接在多节点高可用性节点之间形成配置同步,以管理通用配置。
- 对于 IPsec 用例,如果未启用配置同步,则必须先在备份节点上提交配置,然后在活动节点上提交配置。