通过 MS-MPC 和 MS-MIC 上的聚合多服务接口实现负载平衡和高可用性
了解聚合多服务接口
本主题包含以下章节:
聚合多服务接口
在Junos OS,可组合多个服务接口以创建一组可作为单个接口运行的服务接口。这样一组aggregated multiservices interface接口称为 (AMS),在配置中表示为 amsNN,其中标识 AMS 接口的唯一编号(例如 ams0)。
AMS 配置提供更高的可扩展性、更高的性能以及更好的故障切换和负载平衡选项。
AMS 配置通过将 AMS 捆绑包与服务集相关联,允许服务集支持多个服务 PIC。AMS 捆绑可以将最多 24 个服务 PIC 作为成员接口,可以在成员接口之间分配服务。
成员接口在配置中识别为 mam。支持 AMS 配置的路由器中的机箱进程会为路由器上每个多服务接口创建一个 mams 条目。
从 Junos OS 16.2 版(Junos OS 版 17.3R3-S7 除外),AMS 接口可具有多达 36 个成员接口。如果包含超过 24 个成员接口,您必须将所有服务 PIC 的服务 PIC 启动超时时间增加至 240 或 300 秒。在 Junos OS 16.1 和更早版本以及 Junos OS 17.3R3-S7 中,AMS 接口最多可以有 24 个成员接口。
从Junos OS版本17.1R1,AMS 支持下一跳式服务集的 IPSec 隧道分配。但是,不支持接口式 IPSec 服务集。
从Junos OS版本19.2R1,您可以在路由器的不同 AMS 捆绑包之间使用最多 60 MX2020个。每个 AMS 捆绑包最多 36 个成员接口的硬限制仍然存在。但是,在机箱中可有多个 AMS 捆绑包,因此可跨这些捆绑包配置 15 个 MS-MPC。
在 ams 接口级别配置服务选项时,这些选项适用于 ams 接口的所有国家接口 (mams)。
这些选项也适用于在对应于 ams 接口成员接口的服务接口上配置的服务集。所有设置均按 PIC 进行。例如,会话限制应用于每个成员,而不是聚合级别。
从Junos OS版本19.3R2,MX-SPC3 支持 AMS 接口。下表显示了捆绑包中最大 MX-SPC3 的最大数量、最大 PIC 数以及 AMS 成员的最大数量的详细信息:
MX 平台 | 最大 MX-SPC3s 最大 | 可用可用卡 | 数最大 AMS 成员数 |
---|---|---|---|
MX240 | 2 | 4 | 4 |
MX480 | 5 | 10 | 10 |
MX960 | 7 | 14 | 14 |
您不能在 ams(聚合)和成员接口级别配置服务选项。如果在 ms-x/y/z 或 vms-x/y/z 上配置了服务选项,它们也适用于 mams-x/y/z 上的服务集。
希望服务选项设置统一应用于所有成员时,请配置 ams 接口级别的服务选项。如果需要为单个成员使用不同的设置,请配置成员接口级别的服务选项。
NAT64 需要按成员丢弃信息流和按成员下一跳跃配置。对于 NAPT44,此按成员规格允许任意哈希密钥,从而提供更好的负载平衡选项,NAT动态加密操作。对于 NAT64、NAPT44 和动态 NAT44,无法确定由哪个成员分配动态NAT地址。为了确保到达转发流数据包相同成员中的反向流数据包,基于池地址的路由用于控制反向流数据包。
直到Junos OS版本 13.3,对于配置服务的所有媒体逻辑接口(接口样式服务),在内部创建逻辑接口别名。此接口别名用于存储处理输入服务之后在逻辑接口上执行的功能的拓扑链,以避免在系统中发生数据包环路。使用接口别名时,服务支持的最大逻辑接口数减少到支持的最大接口数的一半,因为每个逻辑接口都使用两个条目,即一个用于接口本身,另一个用于接口别名。
从版本Junos OS开始14.1R4,不会为 MS-MPC 和 MS-MIC 创建输入接口别名。因此,服务 PI 支持的最大逻辑接口数相当于系统支持的最大数量。由 MS-MPC 和 MS-MICS 进行输入服务处理后,服务 PIC 将数据包发送到配置相应服务的多服务 (ms-
) 逻辑接口上的 数据包转发引擎。在版本 13.2 和更高版本中,MS-MPC 和 MS-MIC Junos OS后服务。
在包含 MS-MIC 或 MS-MPC 作为成员接口的 AMS 配置中不能包含 MS-DPC 或其他 MS-PIC。
如果修改分配给 AMS 接口的服务集使用的 NAT 池,则必须停用并激活服务集,NAT池更改生效。
默认情况下,AMS 接口成员接口上的流量分配以循环方式发生。您也可配置以下哈希密钥值以调节信息流分配: source-ip
、 destination-ip
protocol
和 。对于需要流量对称性的服务,您必须配置对称散列。对称散列配置可确保通过相同成员接口路由转发和反向流量。
使用基本 NAT44,如果入口哈希密钥为源 IP 地址,并且出口哈希密钥是目标 IP 地址,则 MS-MICS 和 MS-MPC 的 AMS 接口上的负载平衡将无法正常工作。
如果服务集应用于用作 NAT 内部接口的千兆位以太网或 10 千兆以太网接口,则用于负载平衡的哈希密钥配置方式可能是将入口密钥设置为目标 IP 地址,出口密钥设置为源 IP 地址。由于源 IP 地址经过NAT处理,因此无法朝相反方向对流量进行散列。因此,负载平衡不会发生在同一 IP 地址上,转发和反向流量不会映射到同一 PIC。反向哈希密钥后,将正确进行负载均衡。
使用下一跳跃服务,对于转发流量,内部接口上的入口密钥负载平衡流量,而对于反向流量,外部接口上的入口密钥负载平衡流量或按成员下一跃点控制反向流量。通过接口式服务,入口密钥负载平衡转发流量,出口密钥负载平衡转发流量或按成员下一跃点控制反向流量。前向信息流是从服务集内部进入的流量,反向信息流是从服务集外部进入的流量。前向密钥用于信息流转发方向,而反向密钥用于流量反向方向的哈希密钥(取决于与接口服务或下一跳服务样式相关。)
借助状态防火墙,您可以配置以下用于负载平衡的转发和反向密钥组合。在为哈希密钥呈现的以下组合中,FOR-KEY 表示转发密钥,REV-KEY 表示反向密钥,SIP 封装源 IP 地址,DIP 设置设置目标 IP 地址,而 PROTO 指的是 IP 等协议。
对于密钥:SIP、REV-KEY:DIP
对于密钥:SIP、PROTO REV-KEY:DIP、PROTO
对于密钥:DIP、REV-KEY:SIP
对于密钥:DIP、PROTO REV-KEY:SIP、PROTO
对于密钥:SIP、DIP REV-KEY:SIP、DIP
对于密钥:SIP、DIP、PROTO REV-KEY:SIP、DIP、PROTO
如果静态NAT配置为基本 NAT44 或目标 NAT44,并且未配置状态防火墙,则如果信息流前向必须经历 NAT 处理,请配置哈希密钥,如下所示:
对于密钥:DIP、REV-KEY:SIP
对于密钥:DIP、PROTO REV-KEY:SIP、PROTO
如果信息流必须经历反向信息流NAT,请按如下方式配置哈希密钥:
对于密钥:SIP、REV-KEY:DIP
对于密钥:SIP、PROTO REV-KEY:DIP、PROTO
配置NAT动态路由器且配置有状态防火墙或不配置状态防火墙时,只有前向流量才能NAT。前向哈希密钥可以是 SIP、DIP 和协议的任意组合,而反向哈希密钥将被忽略。
其Junos OS AMS 配置支持 IPv4 和 IPv6 流量。
AMS 接口上的 IPv6 流量概述
从 Junos OS版本14.2R1,您可以使用 AMS 接口实现 IPv6 流量。要配置 AMS 接口的 IPv6 支持,请包含 family inet6
层级的 [edit interfaces ams-interface-name unit 1]
语句。当 family inet
为 family inet6
AMS 接口子单元设置 和 时,将 hash-keys
配置为接口样式的服务集级别和下一跃点样式的 IFL 级别。
当 AMS 捆绑包的成员接口发生故障时,将在其他活动成员之间重新分配发往故障成员的流量。通过现有活动成员遍历的流量(流或会话)不受影响。如果 M 成员当前处于活动状态,预计结果是仅大约 1/M 的流量(流量/会话)受到影响,因为该流量已从故障成员转移,成为活动成员。发生故障的成员接口恢复联机后,只会将部分流量重新分配给该成员。如果 N 成员当前处于活动状态,则预计结果是仅大约 1/(N+1) 部分流量(流量/会话)受到影响,因为该流量会移至新的已恢复成员。1/M 和 1/(N+1) 值假设流在成员之间统一分布,因为数据包散列用于负载平衡,并且由于流量通常包含 IP 地址(或用作负载平衡密钥的其他任何字段)的典型随机组合。
与 IPv4 信息流类似,对于 IPv6 数据包,AMS 束必须仅包含一种服务 PIC 类型的成员。同一路由器上的单独 AMS 捆绑包可以包含不同服务 PIC 类型的成员(例如,ams0 中的两个 MS-MCS 和 ams1 中的两个 MS-MPC PIC)。
在最佳情景中,当 Nth 成员上升或降低时,在理想环境中分布的流数可以是 1/N。但是,此假设哈希密钥负载平衡实际或动态流量。例如,考虑现实部署,其中的成员 A 仅提供一个流,而成员 B 则提供 10 个流。如果成员 B 降低,则中断的流数为 10/11。这种NAT池拆分行为旨在利用"最小化"功能的好处。系统为动态NAT情景(动态NAT、NAT64 和 NAPT44)执行NAT池拆分。
如果原始和重新分配流的定义如下:
成员原始流 — 所有成员建立时映射到成员的流量。
成员重新分配流 — 当其他一些成员发生故障时映射到成员的额外信息流。当成员接口上下时,这些流量可能需要平衡。
前面针对成员接口重新分发的原始流和重新分配流的定义,以下观察结果适用:
只要成员已启动,成员的原始流就保持完好。当其他成员在向上和向下状态之间移动时,此类流不会受到影响。
当其他成员上行或下行时,成员重新分配的成员流可能会更改。由于需要在所有活动成员之间平衡这些额外流量,因此流会发生变化。因此,成员重新分配流可能因其他成员向下或上行而有很大差异。虽然可能似乎在成员向下操作时,活动成员上的流将保留,并且当成员启动时,活动成员上的流无法有效保留,但仅由于活动成员之间的静态或基于散列的流量平衡才发生此行为。
rehash-minimization 功能仅处理成员接口状态中的操作更改(例如成员脱机或成员Junos OS重置)。它不处理配置中的更改。例如,在 [edit interfaces amsN load-balancing-options member-interface mams-a/b/0]
层次结构级别添加或删除成员接口或者激活和停用时,成员 PIC 必须弹回。不支持NAT发夹两次,类似于 AMS 接口的 IPv4 支持。
成员故障选项和高可用性设置
由于多个服务接口配置为 AMS 捆绑包的一部分,因此 AMS 配置还提供故障切换和高可用性支持。可以将其中一个成员接口配置为在其他任何成员接口关闭时处于活动状态的备份接口,或者配置 AMS,其中一个成员接口关闭时,分配给该接口的流量可在活动接口之间共享。
配置member-failure-options
语句允许您配置当成员接口发生故障时如何处理信息流。其中一个选项是立即在其他用户接口之间重新分配流量。但是,信息流再分发涉及重新计算哈希标记,可能会导致所有成员接口上的流量中断。
另一个选项是配置 AMS 以丢弃分配给故障成员接口的所有信息流。这样,您可以选择配置 rejoin-timeout
间隔期,让 AMS 等待故障接口恢复联机,之后,AMS 可在其他成员接口之间重新分配流量。如果出现故障的成员接口在配置的等待时间之前恢复联机,则所有成员接口上的流量均不受影响,包括已恢复联机并恢复操作的接口。
当故障接口恢复联机时,您还可以控制其重新加入。如果配置中未enable-rejoin
包含 member-failure-options
语句,则出现故障的接口在恢复联机时无法重新加入 AMS。在这种情况下,您可以通过执行操作模式命令,手动重新加入 AMS request interfaces revert interface-name
。
和 rejoin-timeout
语句 enable-rejoin
可最大程度地减少成员接口翻动时的流量中断。
未 member-failure-options
配置时,默认行为是因重新加入超时 120 秒而丢弃成员信息流。
配置 high-availability-options
允许您将其中一个成员接口指定为备份接口。备份接口只要仍然是备份接口,就不参与路由操作。当成员接口发生故障时,备份接口将处理分配给故障接口的流量。当出现故障的接口恢复联机时,它将成为新的备份接口。
在多对一配置 (N:1) 中,单个备份接口支持组中所有其他成员接口。如果任何成员接口发生故障,备份接口将接管。在此无状态配置中,数据不会在备份接口和另一成员接口之间同步。
从Junos OS 16.1 版开始,在一对一配置中,单个活动接口与单个备份接口配对。如果活动接口发生故障,备份接口将接管。使用的配置 member-failure-options
对一对一 (1:1) 高可用性配置不可用。
同时为 member-failure-options
high-availability-options
AMS 配置 和 时, high-availability-options
配置将优先于 member-failure-options
配置。如果发生故障的接口重新 member-failure-options
联机成为新的备份之前发生第二个故障,则配置将生效。
热备用冗余
从Junos OS版本 17.2R1开始,您可以在多个 AMS 接口中使用相同的服务接口,从而导致 MS-MPC 和 MS-MIC 使用 N:1 热备用选项。
每个热备用 AMS 接口都包含两个成员;一个成员是您想要保护的服务接口,称为主接口,另一个成员是辅助(备份)接口。主接口是活动接口,备份接口不处理任何信息流,除非主接口发生故障。
要配置 AMS 接口上的热备用,请使用 语句 redundancy-options
。在热备用 load-balancing-options
AMS 接口中不能使用 语句。
要从主接口切换到辅助接口,请发出 request interface switchover amsN
命令。
要从辅助接口恢复到主接口,请发出 request interface revert amsN
命令。
配置聚合多服务接口
通过 Junos OS 中的聚合多服务 (AMS) 接口配置,可以将多个 PIC 的服务接口组合在一起,从而创建一组可以用作单个接口的接口。您可识别要充当备份的 PIC。
另请参阅
在 AMS 基础架构上配置负载平衡
配置负载平衡需要聚合多服务 (AMS) 系统。AMS 涉及将多个服务 PC 分组在一起。AMS 配置消除了在系统中分离路由器需求。拥有 AMS 配置的主要好处是能够支持跨多个服务 PIC 的流量的负载平衡。
MS-MPC 和 MS-MIC 支持 AMS。从版本Junos OS开始19.3R2,MX-SPC3 上支持 AMS 接口。
所有 MX 系列 5 通用路由平台G 系列基础架构都支持高可用性 (高可用性)。AMS 具有多个优势:
支持在属于 AMS 配置的服务 PIC 发生故障时配置行为
支持在任一方向为每个服务集指定哈希密钥
支持将路由添加到 AMS 系统内的单个 PIC
配置 AMS 基础架构
AMS 支持跨多个服务集进行负载平衡。服务集的所有入口或出口流量可以跨不同服务 PIC 实现负载平衡。要启用负载平衡,您必须配置具有现有服务接口的聚合接口。
要配置 AMS 中的故障行为,请包含以下 member-failure-options
语句:
[edit interfaces ams1] load-balancing-options { member-failure-options { drop-member-traffic { rejoin-timeout rejoin-timeout; } redistribute-all-traffic { enable-rejoin; } } }
如果 PIC 发生故障,可以使用 redistribute-all-traffic
[edit interfaces interface-name load-balancing-options member-failure-options]
层级的 语句将信息流配置为要重新分配的故障 PIC。 drop-member-traffic
如果使用语句,则到故障 PIC 的所有信息流将丢弃。两个选项都是相互排斥的。
如果未 member-failure-options
显式配置,则默认行为是删除成员信息流,但重新加入超时为 120 秒。
只有 mams- 接口(属于 AMS 的服务接口)才能聚合。配置 AMS 接口之后,将无法配置各个成员 mams- 接口。mams- 接口不能用作 ams 接口(不适用于新一代服务 MX-SPC3)。AMS 支持 IPv4 (family inet
) 和 IPv6 (family inet6
)。无法在 AMS 接口上配置地址。网络地址转换 (NAT) 是目前唯一在 AMS 基础架构上运行的应用程序。
无法在 AMS 接口上配置单元 0。
为了支持多个应用程序和不同类型的转换,AMS 基础架构支持为每个服务集配置散列。您可以为入口和出口单独配置哈希密钥。默认配置使用源 IP、目标 IP 和协议进行散列;还有用于出口入口和传出接口的传入接口。
在 NAT 解决方案负载平衡设置中使用 AMS 时,NAT IP 地址的数量必须大于或等于您添加到 AMS 捆绑包的活动 MAM 接口数。
配置高可用性
在配置了高可用性的 AMS 系统中,指定服务 PIC 充当多对一 (N:1) 备份配置中属于 AMS 系统的其他活动 PIC 的备份。在 N:1 备份配置中,一个 PIC 作为备份可用于所有其他活动 PIC。如果任何活动 PIC 出现故障,备份 PIC 将接管发生故障的 PIC。在 N:1(无状态)备份配置中,活动 PIC 和备份 PIC 之间不会同步信息流状态和数据结构。
AMS 系统还支持一对一 (1:1) 配置。以 1:1 备份时,备份接口与单个活动接口配对。如果活动接口发生故障,备份接口将接管。在 1:1(有状态)配置中,信息流状态和数据结构在活动 PIC 和备份 PIC 之间同步。IPsec 连接的高可用性需要状态同步。对于 IPsec 连接,AMS 仅支持 1:1 配置。
此版本的 MX-SPC3 不支持 IPsec 连接。
负载平衡的高可用性通过 high-availability-options
添加 语句在 [edit interfaces interface-name load-balancing-options]
层次结构级别进行配置。
要配置 N:1 高可用性,请包含 high-availability-options
语句和 many-to-one
选项:
[edit interfaces ams1] load-balancing-options { high-availability-options { many-to-one { preferred-backup preferred-backup; } } }
从 Junos OS 16.1 版开始,您可以在 MS-MPC 上配置状态 1:1 高可用性。要配置有状态 1:1 高可用性 [edit interfaces interface-name load-balancing-options]
,在 层次结构级别中包括 语句 high-availability-options
并选项 one-to-one
:
新一代服务 MX-SPC3 服务卡不支持 AMS 1:1 高可用性。
[edit interfaces ams1] load-balancing-options { high-availability-options { one-to-one { preferred-backup preferred-backup; } } }
负载平衡网络地址转换流
网络地址转换 (NAT) 已编程为插件,是负载平衡和高可用性的一项功能。该插件在 AMS 基础架构上运行。所有转换流会自动分发到属于 AMS 基础架构的不同服务 PIC。如果活动服务 PIC 出现故障,配置的备份 PIC 将接管NAT PIC 的备用池资源。所选的散列方法取决于组NAT。在 AMS NAT上使用散列方法有一些限制:
NAT故障的 PC 的流无法恢复。
不支持 IPv6 流。
AMS 不支持 IPv6 地址池,但是 AMS 支持 NAT64,因此 IPv6 流会进入 AMS。
MX-SPC3 服务卡上的新一代服务支持 NAT64,不支持 NAT66。支持不同服务(NAT IPv6 流,但需要将 IPv6 转换到 IPv6 或 IPv4 转换到 IPv6 时除外。
两NAT MS-MPC 卡上的负载平衡不受支持。
下NAT服务 MX-SPC3 服务卡上支持两次负载平衡。
确定性NAT使用热备用 AMS 配置,可在热备用模式下使用多个 AMS 束分配负载。
配置服务接口的热备用
您可通过创建多个聚合多服务 (AMS) 接口来为 MS-MPC、MS-MCS 和 MX-SPC3 配置 N:1 热备用选项,其中每个接口都包含要备份的服务接口以及充当备份的服务接口。所有这些 AMS 接口均可以使用同一个备份服务接口。从版本Junos OS开始19.3R2,MX-SPC3 上支持 N:1 热备用选项。
要配置服务接口的热备用:
另请参阅
示例:配置聚合多服务接口 (AMS)
硬件和软件要求
此示例要求安装有服务接口的 MX 系列路由器,Junos OS版本 13.2 运行。
概述
通过 Junos OS 中的聚合多服务 (AMS) 接口配置,可以将多个服务接口组合在一起,从而创建一组可以用作单个接口的接口。此示例将展示如何配置 AMS 接口、负载平衡选项、成员故障选项、AMS 接口上的高可用性设置以及使用 AMS 接口的接口式服务集配置。
在包含 MS-MICS 或 MS-MPC 作为成员接口的 AMS 配置中不能包含 MS-DPC 或其他多服务 PIC。
MS-PIC 仅包含一个接口,而 MS-MPC 包含四个接口。要利用单个 AMS 捆绑包中的整个 MS-MPC,需要将全部四个成员接口分配给该 AMS 捆绑包。
每个成员接口(XLP 芯片)都需要成为 AMS 接口捆绑包的一部分,请记住以下点:
来自相同 MPC 的基于 XLP 的线卡可以是多个 AMS 束的一部分。
来自多个 MPC 的多个 XLP 芯片也可成为单个束的一部分(AMS 捆绑包中多达 8 个成员接口,具体取决于部署要求)。
不一定所有来自同一 MS-MPC 的 XLP 芯片都必须是同一 AMS 束的一部分。某些 XLP 芯片可以是 AMS 束的一部分,而其他 XLP
ms-
芯片可以是独立接口,或者不需要配置。但是,同一个 XLP 芯片不能同时成为两个不同 AMS 接口的一部分。例如,来自相同 MS-MPC 的每个 XLP 芯片可根据您的部署需求分组为四个不同的 AMS 束。最多可以将八个成员接口分配给 AMS 捆绑包。
有关 AMS 接口的详细信息,请参阅 了解聚合多服务接口 。
配置
程序
CLI快速配置
要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以匹配网络配置,然后将命令复制并粘贴到 [edit] 层次结构级别的 CLI 中。
添加成员接口
set interfaces ams0 load-balancing-options member-interface mams-0/0/0 set interfaces ams0 load-balancing-options member-interface mams-0/1/0 set interfaces ams0 load-balancing-options member-interface mams-1/0/0 set interfaces ams0 load-balancing-options member-interface mams-1/1/0 set interfaces ams0 load-balancing-options member-interface mams-2/0/0 set interfaces ams0 load-balancing-options member-interface mams-2/1/0
配置逻辑单元
set interfaces ams0 unit 1 family inet
配置成员故障选项
set interfaces ams0 load-balancing-options member-failure-options drop-member-traffic rejoin-timeout 300 set interfaces ams0 load-balancing-options member-failure-options drop-member-traffic enable-rejoin
配置高可用性选项
set interfaces ams0 load-balancing-options high-availability-options many-to-one preferred-backup mams-1/0/0
配置服务集和接口服务
set services service-set ams-ss1 interface-service service-interface ams0.1 set services service-set ams-ss1 interface-service load-balancing-options hash-keys ingress-key source-ip set services service-set ams-ss1 interface-service load-balancing-options hash-keys egress-key destination-ip
逐步过程
以下示例要求您在配置层次结构中导航各个级别。有关导航指南CLI,请参阅 CLI 用户指南 中的 在配置模式下CLI 编辑器 。
创建聚合多服务接口并添加成员接口。
注意:不能将同一个 MAM 同时配置为两个不同 AMS 接口的一部分。
[edit] user@router1# set interfaces ams0 load-balancing-options member-interface mams-0/0/0 user@router1# set interfaces ams0 load-balancing-options member-interface mams-0/1/0 user@router1# set interfaces ams0 load-balancing-options member-interface mams-1/0/0 user@router1# set interfaces ams0 load-balancing-options member-interface mams-1/1/0 user@router1# set interfaces ams0 load-balancing-options member-interface mams-2/0/0 user@router1# set interfaces ams0 load-balancing-options member-interface mams-2/1/0
为 AMS 接口配置逻辑单元。
注意:AMS 接口及其成员接口不能共享相同的逻辑接口单元。例如,如果其中一个成员接口上配置了逻辑单元 1 和 2,则不能为 AMS 配置逻辑单元 1 和 2。同样,如果在 AMS 上配置了逻辑单元 3 和 4,则不能在任何成员接口上配置这些单元。
[edit interfaces] user@router1# set ams0 unit 1 family inet
配置成员故障选项。
[edit interfaces ams0] user@router1# set load-balancing-options member-failure-options drop-member-traffic rejoin-timeout 300 user@router1# set load-balancing-options member-failure-options drop-member-traffic enable-rejoin
注意:此示例显示了配置
drop-member-traffic
。但是,如果您希望在redistribute-all-traffic
drop-member-traffic
其中一个成员接口关闭时将流量重新分配给其他可用成员,可以包括 语句,而非 语句。如果不包含配置,则
member-failure-options
默认行为是,在重新加入超时 120 秒时,丢弃成员信息流。配置高可用性选项。
[edit interfaces ams0] user@router1# set load-balancing-options high-availability-options many-to-one preferred-backup mams-1/0/0
配置接口样式服务。
[edit services] user@router1# set service-set ams-ss1 interface-service service-interface ams0.1 user@router1# set service-set ams-ss1 interface-service load-balancing-options hash-keys ingress-key source-ip user@router1# set service-set ams-ss1 interface-service load-balancing-options hash-keys egress-key destination-ip
如果完成设备配置,请提交配置。
[edit] user@router1# commit
表 1:此示例中使用的关键配置语句 声明
描述
member-interface
将成员接口 (mams) 添加到 AMS 捆绑包中。
drop-member-traffic
指定成员接口发生故障时将丢弃到成员的所有信息流。
rejoin-timeout
指定 AMS 在声明成员接口关闭之前等待的时间间隔(以秒为单位)。如果发生故障的成员在此期间恢复联机,则它可以重新加入 AMS 并恢复流量转发。
范围为 0 到 1000 秒。
enable-rejoin
指定当故障接口恢复联机时,是否允许其重新加入 AMS。
如果配置中不包含此语句,当接口恢复联机时,您必须手动将接口添加至 AMS。
preferred-backup
将成员接口指定为浮动备份。
interface-services
指定服务接口(此示例中的 AMS 接口)以处理接口服务。
hash-keys
指定负载平衡哈希密钥。您可以配置以下哈希密钥值:
source-ip
、iif
destination-ip
(传入接口)、oif
(传出接口) 和protocol
。注意:对于需要流量对称性的服务,您必须配置对称散列。对称散列配置可确保通过相同成员接口路由转发和反向流量。
结果
在配置模式下,输入 命令以确认您的 show interfaces ams0
配置。如果输出未显示预期的配置,请重复此示例中的说明,以更正配置。
user@router1# show interfaces ams0 load-balancing-options { member-interface mams-0/0/0; member-interface mams-0/1/0; member-interface mams-1/0/0; member-interface mams-1/1/0; member-interface mams-2/0/0; member-interface mams-2/1/0; member-failure-options { drop-member-traffic { rejoin-timeout 300; enable-rejoin; } } high-availability-options { many-to-one { preferred-backup mams-1/0/0; } } } unit 1 { family inet; }
user@router1# show services service-set ams-ss1 { interface-service { service-interface ams0.1; load-balancing-options { hash-keys { ingress-key source-ip; egress-key destination-ip; } } } }
验证
确认配置工作正常。
验证 AMS 配置
目的
验证成员接口的 AMS 配置和状态。
行动
在操作模式下,输入 show
命令。
user@router1> show interfaces load-balancing detail Load-balancing interfaces detail Interface : ams0 State : Up Last change : 00:01:28 Member count : 6 HA Model : Many-to-One Members : Interface Weight State mams-0/0/0 10 Active mams-0/1/0 10 Active mams-1/0/0 10 Backup mams-1/1/0 10 Active mams-2/0/0 10 Active mams-2/1/0 10 Active
意义
显示了具有 ams0
六个使用多对一备份配置的成员接口。在 6 个成员接口中,5 个处于活动状态,1 个(1/0/0)位于备份状态。
示例:在聚合多服务接口上配置下一跳式服务
配置
CLI快速配置
要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以匹配网络配置,然后将命令复制并粘贴到 [edit] 层次结构级别的 CLI 中。
配置聚合多服务接口
set interfaces ams0 load-balancing-options member-interface mams-1/0/0 set interfaces ams0 load-balancing-options member-interface mams-1/1/0 set interfaces ams0 load-balancing-options member-interface mams-2/0/0 set interfaces ams0 load-balancing-options member-interface mams-2/1/0 set interfaces ams0 unit 1 family inet set interfaces ams0 unit 1 service-domain inside set interfaces ams0 unit 2 family inet set interfaces ams0 unit 2 service-domain outside
配置使用 AMS 接口的路由实例
set routing-instances ri-internal instance-type virtual-router set routing-instances ri-internal interface ge-0/0/2.0 set routing-instances ri-internal interface ams0.1 set routing-instances ri-internal routing-options static route 22.22.22.0/24 next-hop ams0.1 set routing-instances ri-external instance-type virtual-router set routing-instances ri-external interface ge-2/0/6.0 set routing-instances ri-external interface ams0.2 set routing-instances ri-external routing-options static route 0.0.0.0/0 next-hop ams0.2
配置哈希密钥
set interfaces ams0 unit 1 load-balancing-options hash-keys ingress-key source-ip protocol set interfaces ams0 unit 2 load-balancing-options hash-keys ingress-key destination-ip protocol
配置下一跳跃服务
set services service-set ams-test stateful-firewall-rules sfw1 set services service-set ams-test next-hop-service inside-service-interface ams0.1 set services service-set ams-test next-hop-service outside-service-interface ams0.2
逐步过程
以下示例要求您在配置层次结构中导航各个级别。有关导航指南CLI,请参阅 CLI 指南 中的"在CLI编辑器"。
配置聚合多服务接口和负载平衡选项。
[edit interfaces ams0] user@router1# set load-balancing-options member-interface mams-1/0/0 user@router1# set load-balancing-options member-interface mams-1/1/0 user@router1# set load-balancing-options member-interface mams-2/0/0 user@router1# set load-balancing-options member-interface mams-2/1/0 user@router1# set unit 1 family inet user@router1# set unit 1 service-domain inside user@router1# set unit 2 family inet user@router1# set unit 2 service-domain outside
配置使用第一步中配置的聚合多服务接口的路由实例。
[edit routing-instances] user@router1# set ri-internal instance-type virtual-router user@router1# set ri-internal interface ge-0/0/2.0 user@router1# set ri-internal interface ams0.1 user@router1# set ri-internal routing-options static route 22.22.22.0/24 next-hop ams0.1 user@router1# set ri-external instance-type virtual-router user@router1# set ri-external interface ge-2/0/6.0 user@router1# set ri-external interface ams0.2 user@router1# set ri-external routing-options static route 0.0.0.0/0 next-hop ams0.2
为聚合多服务接口配置哈希密钥。
注意:与在服务集配置中定义哈希密钥的接口式配置中不同,对于下一跃点服务,哈希密钥在 AMS 配置中在逻辑单元下指定。
[edit interfaces ams0] user@router1# set unit 1 load-balancing-options hash-keys ingress-key source-ip protocol user@router1# set unit 2 load-balancing-options hash-keys ingress-key destination-ip protocol
在服务集配置下配置下下一跳跃式服务。
[edit services service-set ams-test] user@router1# set stateful-firewall-rules sfw1 user@router1# set next-hop-service inside-service-interface ams0.1 user@router1# set next-hop-service outside-service-interface ams0.2
提交配置。
[edit] user@router1# commit
结果
在配置模式下,输入 show interfaces ams0
、 和 show routing-instances
命令,以确认您的 show services service-set ams-test
配置。如果输出未显示预期的配置,请重复此示例中的说明,以更正配置。
user@router1# show interfaces ams0 load-balancing-options { member-interface mams-1/0/0; member-interface mams-1/1/0; member-interface mams-2/0/0; member-interface mams-2/1/0; member-failure-options { redistribute-all-traffic { enable-rejoin; } } } unit 1 { family inet; service-domain inside; load-balancing-options { hash-keys { ingress-key [ source-ip protocol ]; } } } unit 2 { family inet; service-domain outside; load-balancing-options { hash-keys { ingress-key [ destination-ip protocol ]; } } }
user@router1# show routing-instances ri-internal { instance-type virtual-router; interface ge-0/0/2.0; interface ams0.1 routing-options { static { route 22.22.22.0/24 next-hop ams0.1; } } } ri-external { instance-type virtual-router; interface ge-2/0/6.0; interface ams0.2 routing-options { static { route 0.0.0.0/0 next-hop ams0.2; } } }
user@router1# show services service-set ams stateful-firewall-rules sfw1; next-hop-service { inside-service-interface ams0.1; outside-service-interface ams0.2; }
硬件和软件要求
安装并运行服务接口的 MX 系列路由器Junos OS版本 13.2。
概述
从版本 13.2 开始,Junos OS将下一跳式服务支持扩展到聚合多服务 (AMS) 接口。在 12.3 之前的版本中,AMS 接口上仅支持接口样式服务配置。
AMS 接口上的下一跳跃式服务配置与接口样式服务配置不同。对于下一跳跃式服务,负载平衡哈希密钥定义为 AMS 接口的逻辑单元配置的一部分。对于接口样式的服务,哈希密钥配置属于服务集配置。
此示例介绍了 AMS 接口上的下一跳式服务配置,并显示了验证步骤以验证配置是否正常工作。
示例:在 AMS 基础架构上配置静态源转换
此示例显示了在 AMS 接口上配置的静态源转换。通过此示例,成员接口上的流量将实现负载平衡。
使用负载平衡选项 ams0
配置 AMS 接口。
[edit interfaces ams0] load-balancing-options { member-interface mams-5/0/0; member-interface mams-5/1/0; } unit 1 { family inet; } unit 2 { family inet; }
为入口和出口流量的服务集配置散列。
[edit services service-set ss1] interface-service { service-interface ams0.1; load-balancing-options { hash-keys { ingress-key destination-ip; egress-key source-ip; } } }
散列根据服务集是在入口接口还是出口接口上应用来确定。
配置两NAT个池,因为为 AMS 接口配置了两个成员接口。
[edit services] nat { pool p1 { address-range low 20.1.1.80 high 20.1.1.80; } pool p2 { address 20.1.1.81/32; } }
配置规则NAT转换。
[edit services] nat { rule r1 { match-direction input; term t1 { from { source-address { 20.1.1.2/32; } } then { translated { source-pool p1; translation-type { basic-nat44; } } } term t1 { from { source-address { 40.1.1.2/32; } } then { translated { source-pool p2; translation-type { basic-nat44; } } } } }
类似配置可应用于转换类型和 dynamic-nat44
napt-44
。两NAT目前无法在 AMS 基础架构上运行。