高可靠性(High Availability),简称为HA,能够在通信线路或设备产生故障时提供备用方案,从而保证数据通信的畅通,有效增强网络的可靠性。实现HA功能,用户需要配置两台采用完全相同的硬件平台、固件版本,均启用VR及防病| 毒功能、安装防病| 毒许可证的安全网关,组成HA簇。当一台设备不可用或者不能处理来自客户端的请求时,该请求会及时转到另外的可用设备来处理,这样就保证了网络通信的不间断进行,极大地提高了通信的可靠性。
安全网关支持HA的3种工作模式:Active-Passive(A/P)模式、Active-Active(A/A)模式和Peer模式:
- Active-Passive(A/P)模式:在HA簇中配置两台设备组成一个HA组,组内只有一台主设备。主设备处于活动状态,转发报文,同时将其所有网络和配置信息以及当前会话信息传递给备份设备。当主设备出现故障时,备份设备接替主设备工作,转发报文。这种A/P模式具有较强冗余性,而且其网络结构简单,便于维护管理。
- Active-Active(A/A)模式:当设备处于NAT模式、路由模式或两者的组合时,可以将HA簇中的两台设备都配置成主动,使两台设备同时运行各自的工作,且相互监测对方的情况。当其中一台设备发生故障时,另外一台设备运行其自身的工作并且接管故障设备的工作,以保证工作不间断,该模式称为Active-Active模式。这种A/A模式具有高性能以及负载均衡的优点。
- Peer模式:该模式是一种特殊的HA Active-Active模式。处于Peer模式下的两台设备都处于主动状态且同时运行各自的工作、相互监测对方的情况。当其中一台设备发生故障时,另外一台设备运行其自身的工作并且接管故障设备的工作。在Peer模式下,只有处于主动状态的设备的接口可以正常收发报文;处于禁用状态的设备可使2台设备的配置信息保持一致,但其接口不收发任何报文。Peer模式配置更加灵活,比较适合在非对称路由环境中部署。
仅有部分平台支持HA(A/A)模式和Peer模式,请以实际页面为准。
HA基础概念
HA簇
HA簇是实现HA功能的设备的组合。对于外部网络设备而言,一个HA簇是一个单一的设备,处理网络流量和提供安全服务。HA簇通过簇ID进行标识。为设备指定HA簇ID后,设备进入HA状态,执行HA功能。
HA组
系统会对HA簇中相同HA组ID的设备,按照HCMP协议,根据设备的HA配置,进行主备选举。主设备处于活动状态处理网络流量,而当主设备出现故障时,其它设备代替主设备继续工作。当为设备设置簇ID时,组ID为0的HA组会自动创建。在Active-Passive(A/P)模式中,设备仅具有HA组0。在Active-Active(A/A)模式中,目前的版本支持用户创建2个HA组,组0和组1。
HA Node
为区分HA簇中的HA设备,用户可使用 HA Node(节点)值来标识设备。目前的版本仅支持Node值为0和1。
在HA Peer模式下,系统可通过标识HA Node值来决定哪个设备处于主动状态,哪个处于禁用状态。在HA组0中,HA Node值为0的设备处于主动状态, Node值为1的设备处于禁用状态。在HA组1中, Node值为1的设备处于主动状态, Node值为0的设备处于禁用状态。
HA组接口和虚拟MAC
在HA环境中,每个HA组都具有接口,流量通过接口进行传输。每个HA组的主设备维护对应接口的虚拟MAC(VMAC)地址,流量通过这些具有VMAC地址的接口进行转发。HA簇中不同HA组之间不互相转发数据。VMAC地址由HA虚拟基MAC、簇ID、HA组ID以及物理接口索引确定。
HA选举
HA簇中,拥有同样HA组ID的具有高优先级的设备会被选举为HA组的主设备。
HA同步
为保证备份设备能够在主设备失效时代替主设备工作,主设备需要与备用设备进行同步。同步的信息类型有三种:配置信息、文件以及RDO(Runtime Dynamic Object)。RDO的具体内容主要包括:
- 会话信息(以下类型会话信息不会同步:到设备本身的会话、隧道会话、Deny Session、ICMP会话以及tentative会话)
- IPsec VPN信息
- SCVPN信息
- DNS缓存映射条目
- ARP表
- PKI信息
- DHCP信息
- MAC表
系统使用两种方法进行同步,分别是实时同步和批量同步。当主设备刚刚选举成功时,系统会使用批量同步方法,将主设备信息全部同步到备份设备;当配置发生变化时,系统将使用实时同步的方法将变化的信息同步到备份设备。除HA相关配置和本地配置(例如,主机名称配置),其它的配置都会被同步。
选项 | 说明 |
HA控制连接接口1 | 指定HA控制连接接口的名称。控制连接同步两台设备间的所有数据。 |
HA控制连接接口2 | 指定HA控制连接接口的名称(备份设备)。 |
HA辅助链路接口 | 指定HA辅助链路接口的名称。在Active-Passive(A/P)模式中,为了避免当HA连接发生故障时HA设备的主备状态出现异常,用户可以指定HA辅助链路接口,通过配置的HA辅助链路接收和发送心跳报文(Hello报文),以确保HA设备维持正常的主备状态。 说明:
|
HA数据连接接口1 | 指定HA数据连接接口1的名称。数据连接仅同步数据报文信息,如会话信息。指定后,会话信息将通过HA数据连接接口同步完成。目前仅支持将物理接口和集聚接口配置为数据连接的接口。 注意:用户最多可以指定1个集聚接口为HA数据连接接口,或者最多指定2个物理接口为 HA数据连接接口。 |
HA数据连接接口2 | 指定HA数据连接接口2的名称。数据连接仅同步数据报文信息,如会话信息。指定后,会话信息将通过HA数据连接接口同步完成。目前仅支持将物理接口和集聚接口配置为数据连接的接口。 注意:用户最多可以指定1个集聚接口为HA数据连接接口,或者最多指定2个物理接口为 HA数据连接接口。 |
数据多点发送 | 在HA组网环境中,如果其中一台设备出现故障,备份设备将接替此设备的所有工作。为避免切换设备后出现统计数据(如监控、日志数据)不一致的现象,系统支持备份统计数据功能。勾选“启用”复选框开启该功能,可将设备的统计数据发送到所有HA设备上,以保证两台设备的所有数据和配置能够相互备份。 开启该功能后,由于备份的数据量比较大,建议用户配置万兆以太网接口(用户需准备万兆接口模块扩展卡)或集聚接口作为HA连接接口,否则可能会出现备份数据不一致的情况。默认情况下,备份统计数据功能为关闭状态。 |
IP地址 | 指定HA连接接口的IP地址及网络掩码,可以为IPv4地址或者IPv6地址。当指定IPv4类型的地址时,输入格式为A.B.C.D/M(比如:1.1.1.1/24);当指定IPv6类型的地址时,输入格式为X.X.X.X::X/M(比如:2001::1/64),“X.X.X.X::X”为IPv6地址前缀,“M”为前缀长度且取值范围为1到128。 |
节点ID | 开启HA功能后,用户需为设备指定节点ID(HA Node),两台设备需指定不同的节点ID。范围是0到1。 |
Peer-mode | 点击“启用”按钮开启 HA Peer模式,并标识该设备在HA簇中的角色。范围是0到1。默认情况下,HA 节点ID为0的设备上的组0为主动状态,节点ID为1的设备上的组0为禁用状态。 |
对称路由 | 若指定该参数,设备将工作在对称路由模式下。 |
HA簇ID | 指定HA簇ID。取值范围为1~8。当选择HA簇ID为无时表示关闭设备的HA功能。 |
HA同步配置 | 在某些特殊情况下,可能出现主备配置信息不同步现象。此时,需要用户手动同步主备设备的配置信息。点击“HA同步配置”按钮,完成配置信息同步。 |
HA同步会话 | 默认情况下,HA设备之间会自动同步会话信息。同步会话会产生一定流量,在高负载情况下可能会对设备性能造成影响。用户可以根据设备负载情况使用HA会话自动同步功能,以确保设备的稳定性。点击“HA同步会话”按钮,启用HA会话自动同步功能。 |
组0 | |
新建 | 默认情况下,指定HA簇ID后,系统自动创建组0。点击“新建”按钮, 可创建组1并对其进行配置。 |
删除 | 若已创建HA组1,用户可点击“删除”按钮将组1配置删除。 |
优先级 | 指定当前设备在HA组中的优先级。优先级高(数字小)的会被选举为主设备。 |
抢占时间 | 指定当前设备是否开启抢占模式以及抢占延迟时间。如果将设备配置为抢占模式,一旦设备发现自己的优先级高于主设备,就会将自己升级为主设备,而原先的主设备将变为备份设备。如果输入0,则表示不开启抢占模式;即使设备的优先级高于主设备,它也只能在主设备故障时代替主设备工作。 |
Hello报文间隔 | 输入HA设备向HA组中的其它设备发送Hello报文的时间间隔。同一个HA组的设备的Hello报文间隔时间必须相同。 |
Hello报文警戒值 | 输入HA组对应的Hello报文的警戒值,即如果设备没有收到对方设备的该命令指定个数的Hello报文,就判断对方无心跳。 |
免费ARP包个数 | 指定当前设备选举为主设备后,发送ARP请求包的个数。当备份设备升级为主设备时,新主设备需要向网络中发送ARP请求包,通知相关网络设备更新其ARP表。 |
监测对象 | 指定已配置的监测对象的名称。系统利用监测对象监控设备的工作状态。一旦发现设备不能正常工作,立即采取相应措施。 |
描述 | 指定该HA组的描述信息。 |
三.实验 AP模式
1.通过图形化界面配置
2.拓扑如下
HIllstone1 为Master;Hillstone2为Backup;
3.配置内容
3.1 在Hillstone1上,配置如下(一般还会track监测对象的,这里没有配置)
3.2 在Hillstone2上,配置如下
4.查看HA状态
4.1 Master是Hillstone1设备:
4.2 Backup是Hillstone2设备:
5.cli查看状态
5.1 master上查看
SG-6000-1(M0M1)(config-if-eth0/1)# show ha cluster
HA Cluster is 1, node is 0
Admin Master
5.2 backup上查看
SG-6000-2(M0M1)# show ha cluster
HA Cluster is 1, node is 1
active-active模式需要配置允许抢占,也就是抢占时间不能设置为0
1.Hillstone1防火墙配置
2.Hillstone2防火墙配置
3.查看HA配置状态
4.配置虚拟转发接口
这个配置如果HA已经起来了,会直接配置同步的。
5.配置监测对象
6.HA配置中调用监测对象
7.可以关闭防火墙的监测端口 来测试HA的效果