关于多实例模式
在多实例模式下,您可以在单个机箱上部署多个容器实例充当完全独立设备。
多实例模式与应用模式
您可以在多实例模式或设备模式下运行设备。
设备模式
设备模式为默认模式。设备运行本地 威胁防御 映像并充当单个设备。唯一可用的机箱级配置(在 机箱管理器 页面上)用于网络模块管理(分支端口或启用/禁用网络模块)。
多实例模式
如果更改为多实例模式,则设备在机箱上运行 Cisco Secure Firewall eXtensible 操作系统 (FXOS),而每个实例运行单独的 威胁防御 映像。您可以使用 FXOS CLI 配置模式。
由于多个实例在同一机箱上运行,因此您需要对以下项执行机箱级管理:
-
使用资源配置文件的 CPU 和内存资源。
-
接口配置和分配。
-
部署和监控实例。
对于多实例设备,将 机箱 添加到 管理中心 并在 机箱管理器 页面上配置机箱级别设置。
机箱管理接口
机箱管理
机箱使用设备上的专用管理接口。多实例模式不支持将数据接口用于机箱管理,也不支持将 DHCP 寻址用于管理接口。
您只能在 威胁防御 CLI(初始设置时)或 FXOS CLI(转换为多实例模式后)中配置机箱管理接口。有关初始设置,请参阅启用多实例模式。请参阅 在 FXOS CLI 中更改机箱管理设置 以更改多实例模式下的管理接口设置。
注 |
默认情况下,除非您启用 SSH 服务器和 SSH 访问列表,否则在多实例模式下不允许 SSH 访问此接口。这种差异意味着您可以使用 SSH 连接到应用模式威胁防御管理接口,但在转换为多实例模式后,默认情况下无法再使用 SSH 进行连接。请参阅配置 SSH 和 SSH 访问列表。 |
实例管理
所有实例共享机箱管理接口,并且每个实例在管理网络上都有自己的 IP 地址。添加实例并指定 IP 地址后,您可以在威胁防御 CLI 中更改网络设置。
默认情况下,实例管理 IP 地址允许 SSH。
实例接口
要确保灵活使用实例的物理接口,可以在机箱上创建 VLAN 子接口,还可以在多个实例之间共享接口(VLAN 或物理接口)。请参阅共享接口可扩展性和配置子接口。
注 |
本章仅讨论 机箱 VLAN 子接口。您还可以在威胁防御实例内单独创建子接口。有关详细信息,请参阅机箱接口与实例接口。 |
接口类型
物理接口、VLAN 子接口和 EtherChannel 接口可以是下列类型之一:
-
数据 - 用于常规数据或故障切换链路。数据接口无法在实例之间共享,并且实例无法通过背板与其他实例通信。对于数据接口上的流量,所有流量必须在一个接口上退出机箱,并在另一个接口上返回以到达另一个实例。您可以将 VLAN 子接口添加到数据接口,以便为每个高可用性对提供单独的故障切换链路。
-
数据共享 - 用于常规数据。这些数据接口可以由一个或多个实例共享。每个实例都可通过背板与共享此接口的所有其他实例通信。共享的接口可能会影响您可以部署实例的数量。共享接口不支持用于网桥组成员接口(在透明模式或路由模式下)、内联集、被动接口、或故障转移链路。
机箱接口与实例接口
在机箱层面,管理物理接口、实例的 VLAN 子接口和 EtherChannel 接口的基本以太网设置。在实例中,您可以配置更高级别的设置。例如,您只能在机箱中创建 EtherChannel;但是,您可以为实例中的 EtherChannel 分配 IP 地址。
下文将介绍机箱接口与实例接口之间的交互。
VLAN 子接口
您可以在实例中创建 VLAN 子接口,就像创建任何设备一样。
您 还 可以在机箱中创建 VLAN 子接口。实例定义的子接口不受机箱限值的约束。选择在哪个位置创建子接口取决于网络部署和个人偏好。例如,要共享子接口,必须在机箱创建子接口。偏好机箱子接口的另一种场景包含将单个接口上的单独子接口组分配至多个实例。例如,您想要结合使用端口通道 1 与实例 A 上的 VLAN 2-11、实例 B 上的 VLAN 12-21 和实例 C 上的 VLAN 22-31。如果您在实例内创建这些子接口,则必须在机箱中共享父接口,但这可能并不合适。有关可以用于实现这种场景的三种方法,请参阅下图:
机箱和实例中的独立接口状态
您可以从管理上启用和禁用机箱和机箱中的接口。必须在两个位置中都启用能够正常运行的接口。由于接口状态可独立控制,因此机箱与实例之间可能出现不匹配的情况。
实例内接口的默认状态取决于接口类型。例如,在实例内,默认禁用物理接口或 EtherChannel,但默认启用子接口。
共享接口可扩展性
实例可以共享数据共享型接口。此功能允许您保存物理接口的使用情况,以及支持灵活的网络部署。当您共享接口时,机箱会使用唯一 MAC 地址将流量转发至适当实例。然而,由于需要在机箱内实现全网状拓扑,因此共享接口将导致转发表规模扩大(每个实例都必须能够与共享同一接口的所有其他实例进行通信)。因此,您可以共享的接口存在数量限制。
除转发表外,机箱还维护用于 VLAN 子接口转发的 VLAN 组表。 您最多可以创建 500 个 VLAN 子接口。
请参阅共享接口分配的以下限制:
共享接口最佳实践
为确保转发表的最佳可扩展性,请共享尽可能少的接口。相反,您可以在一个或多个物理接口上创建最多 500 个 VLAN 子接口,然后在容器实例之间划分 VLAN。
共享接口时,请按照可扩展性从高到低的顺序遵循这些最佳实践:
-
最佳 - 共享单父项下的子接口,并结合使用相同集合的子接口和同组实例。
例如,创建一个大型 EtherChannel 以将所有类似接口捆绑在一起,然后共享该 EtherChannel 的子接口:Port-Channel1.2, 3 和 4 而不是 Port-Channel2、Port-Channel3 和 Port-Channel4。与跨父项共享物理/EtherChannel 接口或子接口相比,当您共享单父项子接口时,VLAN 组表提供更高的转发表可扩展性。
如果未与一组实例共享相同集合的子接口,则配置会提高资源使用率(更多 VLAN 组)。例如,与实例 1、2 和 3(一个 VLAN 组)共享 Port-Channel1.2, 3 和 4 而不是与实例 1 和 2 分享 Port-Channel1.2 和 3,同时与实例 3(两个 VLAN 组)共享 Port-Channel1.3 和 4。
-
一般 - 跨父项共享子接口。
例如,共享 Port-Channel1.2、Port-Channel2.3 和 Port-Channel3.4 而不是 Port-Channel2、Port-Channel4 和 Port-Channel4。虽然这种使用方法的效率低于仅共享同一父项上的子接口,但仍可利用 VLAN 组。
-
最差 - 共享单个父接口(物理或 EtherChannel)。
此方法使用的转发表条目最多。
机箱如何将数据包分类
必须对进入机箱的每个数据包进行分类,以便机箱能够确定将数据包发送到哪个实例。
-
唯一接口 - 如果仅有一个实例与传入接口相关联,则机箱会将数据包分类至该实例。对于桥接组成员接口(在透明模式或路由模式下)、内联集或被动接口,此方法用于始终与数据包进行分类。
-
唯一 MAC 地址 - 机箱将自动生成包括共享接口在内的所有接口的唯一 MAC 地址。如果多个实例共享一个接口,则分类器在每个实例中使用分配给该接口的唯一 MAC 地址。上游路由器无法直接路由至不具有唯一 MAC 地址的实例。在应用内配置每个接口时,您也可以手动设置 MAC 地址。
注 |
如果目的 MAC 地址为组播或广播 MAC 地址,则数据包会复制并传递到每个实例。 |
分类示例
使用 MAC 地址通过共享接口进行数据包分类
下图显示共享外部接口的多个实例。因为实例 C 包含路由器将数据包发送到的 MAC 地址,因此分类器会将该数据包分配至实例 C。
来自内部网络的传入流量
请注意,必须对所有新的传入流量加以分类,即使其来自内部网络。下图展示了实例 C 内部网络上的主机访问互联网。由于传入接口是分配至实例 C 的以太网接口 1/2.3,因此分类器会将数据包分配至实例 C。
透明防火墙实例
对于透明防火墙,您必须使用唯一接口。下图展示了来自互联网并以实例 C 内部网络上的主机为目标的数据包。由于传入接口是分配至实例 C 的以太网接口 1/2.3,因此分类器会将数据包分配至实例 C。
内联集
对于内联集,必须使用唯一接口,并且这些接口必须为物理接口或 Etherchannel 接口。下图展示了来自互联网并以实例 C 内部网络上的主机为目标的数据包。由于传入接口是分配至实例 C 的以太网接口 1/5,因此分类器会将数据包分配至实例 C。
级联实例
直接在一个实例前面放置另一个实例的行为称为 级联实例;一个实例的外部接口与另一个实例的内部接口完全相同。如果您希望通过在顶级实例中配置共享参数,从而简化某些实例的配置,则可能要使用级联实例。
下图显示了在网关后有两个实例的网关实例。
注 |
请勿使用具有高可用性的级联实例(使用共享接口)。发生故障转移且备用设备重新加入后,MAC 地址可能会暂时重叠并导致中断。您应改为为网关实例和内部实例使用唯一接口,使用外部交换机在实例之间传递流量。 |
典型多实例部署
以下示例包括路由防火墙模式下的三个容器实例。这三个容器实例包括以下接口:
-
管理 - 所有实例和机箱均使用专用管理接口。在每个实例(和机箱)中,该接口都使用同一管理网络上的唯一 IP 地址。
-
内部 - 每个实例使用端口通道 1 上的子接口(数据类型)。此 EtherChannel 包括两个万兆以太网接口。每个子接口位于独立的网络中。
-
外部 - 所有实例都使用端口通道 2 接口(数据共享类型)。此 EtherChannel 包括两个万兆以太网接口。在每个应用内,该接口都使用同一外部网络上的唯一 IP 地址。
-
故障切换 - 每个实例都使用端口通道 3 上的子接口(数据类型)。此 EtherChannel 包括两个万兆以太网接口。每个子接口位于独立的网络中。
实例接口的自动 MAC 地址
机箱会自动为实例接口自动生成 MAC 地址,以确保各个实例中的共享接口使用唯一 MAC 地址。
如果您手动为实例中的共享接口分配了一个 MAC 地址,则使用手动分配的 MAC 地址。如果您随后删除了手动 MAC 地址,则会使用自动生成的地址。在极少数情况下,生成的 MAC 地址会与网络中的其他专用 MAC 地址冲突,我们建议您在实例中为接口手动设置 MAC 地址。
由于自动生成的地址以 A2 开头,因此您不应该分配以 A2 开头的手动 MAC 地址,以避免出现地址重叠。
机箱使用以下格式生成 MAC 地址:
A2xx.yyzz.zzzz
其中, xx.yy 是用户定义的前缀或系统定义的前缀,zz.zzzz 是由机箱生成的内部计数器。系统定义的前缀与已在 IDPROM 中编程的烧录 MAC 地址池中的第一个 MAC 地址的 2 个低位字节相匹配。使用 connect fxos ,然后通过 show module 查看 MAC 地址池。例如,如果显示的适用于模块 1 的 MAC 地址范围为 b0aa.772f.f0b0 至 b0aa.772f.f0bf,则系统前缀将是 f0b0。
用户定义的前缀是转换为十六进制的整数。如何使用用户定义前缀的示例如下:如果将前缀设置为 77,则机箱会将 77 转换为十六进制值 004D (yyxx)。在 MAC 地址中使用时,该前缀会反转 (xxyy),以便与机箱的本地形式匹配:
A24D.00zz.zzzz
对于前缀 1009 (03F1),MAC 地址为:
A2F1.03zz.zzzz
多实例功能的性能扩展因素
计算平台的最大吞吐量(连接数、VPN 会话数)是为了得出设备的内存和 CPU 使用情况(此值显示在 show resource usage 中)。如果使用多个实例,则需要根据分配给实例的 CPU 核心百分比来计算吞吐量。例如,如果使用具有 50% 核心的实例,则最初应计算 50% 的吞吐量。此外,尽管扩展可能会因为您的网络而更好或更差,但实例可用的吞吐量可能低于应用可用的吞吐量。
有关计算实例吞吐量的详细说明,请参阅https://www.cisco.com/c/en/us/products/collateral/security/firewalls/white-paper-c11-744750.html。
实例与高可用性
您可以在 2 个独立机箱上使用实例来实现高可用性;例如,如果您有 2 个机箱,每个机箱设 10 个实例,您可以创建 10 个高可用性对。您还可以在高可用性实例所在的机箱上设置独立实例。有关详细要求,请参阅 实例的要求和前提条件。
注 |
不支持群集。 |