7.1.2 部署 NSX Edge 服务网关的资源分配
在部署 NSX Edge 服务网关的开始阶段, 需要选择部署的 Size。具体部署的资源分配如图 7.2 所示。其中, Compact 的 NSX Edge 主要用于实验环境; Large 的 NSX Edge 主要用于一般 生产环境;当需要针对南北向流量实现高性能的路由和防火墙功能时,需要部署 Quad-Large 的 NSX Edge;而实现高性能的负载均衡需求时, 则建议部署 X-Large 的 NSX Edge。
在 NSX 6.1 版本之前,如果 NSX Edge 网关部署使用了错误的 Size,它可以被移除并 按照实际 Size 创建新的网关来接管其服务(名字不能设置为一样的),旧的 NSX Edge 网关配置可以按需快速地由NSX Manager 同步至新的网关,之后才可以将旧网关在系统中移除。 在移除过程中,两个相同的服务会产生冲突, 因此服务可能会中断,需要在合适的时间谨 慎操作。在 NSX 6.2 版本之后, NSX Edge 可以无缝升级至新的 Size。
7.2 NSX Edge 的 HA
NSX Edge 中的各种服务允许逻辑网络和物理网络进行通信,包括二层桥接、 三层路由、 集中式防火墙功能, 这些在第 3 章到第 5 章都有提及, 当然 NSX Edge 的功能并不局限于 此。这些功能往往非常重要,为了在 Edge 机柜中实现弹性和高可用性,一般将 NSX Edge 配置为冗余模式。 对于 NSX Edge,有三种可选择的冗余部署模式,即 Active/Standby(A/S)、 Standalone 和 ECMP。其中 Standalone HA 模式是 NSX 6.0 版本的功能, 在这种模式下,两台 NSX Edge 部署 在分布式路由器和物理三层设备之间,可以通过制定路由策略,使得部分流量从一台 NSX Edge 中通过,而其余流量从另一台 NSX Edge 通过; 在任何一台 NSX Edge 出故障的情况下,另一台 设备都可以接管其工作。由于 Standalone HA 模式在 NSX Edge 中不支持等价多路径, 这意味着 NSX Edge 无法实现流量的负载均衡, 且不支持两台以上的 NSX Edge 的部署,因此这个功能在 NSX 6.1 版本之后被 ECMP HA 取代,本书对 Standalone HA 模式不做详细阐述。 ECMP HA 的工 作模式还能将 NSX Edge 和 DLR Control VM 的功能结合起来,实现数据平面中南北向的流量的 冗余和等价多路径。本节将介绍如何使用 A/S 和 ECMP 的部署模式实现 NSX Edge 的 HA。
7.2.1 使用 A/S 实现 NSX Edge 的 HA
NSX Edge 网关可以通过在 NSX 网络虚拟化平台中配置为双台(一对)的模式,以实 现高可用性(HA),这样一来, NSX Edge 服务可以一直保持在线状态。 状态化的 Active/Standby HA 模式是一种冗余的 NSX Edge 服务网关的部署模式。其中 一台 NSX Edge 处于 Active 状态, 作为主用 Edge, 承截网络中的流量,并提供其他逻辑网 络中的服务,而另一台 NSX Edge 处于 Standby 状态, 作为备用 Edge, 不承载网络流量和 服务,它会等待主用 Edge 失效,并在之后接管其工作。 使用 Active/Standby 部署一对 NSX Edge, 实现高可用性的方法如下所示。 部署处于不同 ESXi 主机的主/备的 NSX Edge 网关。 内部 vNIC 发出心跳(heartbeat)和同步(synchronization)数据包。 当运行主用 NSX Edge 的 ESXi 主机失效时,通过工作接管,保持其他 ESXi 主机 中的备用 NSX Edge 的可用性。
将 NSX Edge 配置为 HA 模式后,主用 NSX Edge 会处于 Active 状态,而备用 NSX Edge 则处于 Standby 状态。在安装备用 NSX Edge 之后, NSX Manager 会将 NSX Edge 配置从主用设备 复制到备用设备,并在之后一直管理这一对设备的生命周期,同步推送更新的主用 NSX Edge 的 配置和策略到备用NSX Edge。推荐在不同的资源池(Resource Pool)和不同的数据存储(Datastore) 中创建主、备 NSX Edge—如果在相同的数据存储中部署主、 备 NSX Edge,数据存储就必须 在集群内的所有主机中共享。因此,主/备的 NSX Edge 设备最好部署在不同的 ESXi 主机之上。 主备 NSX Edge 设备之间的心跳和同步信息使用了这两个 NSX Edge 的内部接口进行传 递,接口使用了指定的 IP 地址,连接到相同的内部子网(必须在二层网络中通信),这个 IP 地址只能用于 NSX Edge 的信息同步,不能作为其他服务的 IP 地址。如图 7.3 所示,虚线部分 即是 NSX Edge 主备设备之间的心跳和同步的示意。
在主用和备用 NSX Edge 之间,会针对多种逻辑网络服务,使用内部通信协议交换 健康和状态信息。如图 7.4 所示,连接逻辑路由器的逻辑网段的流量都是通过主用的 Edge 与物理网络通信的。 一旦主用 Edge 失效(比如其所在 ESXi 主机失效),备用 Edge 会接管其全部工作,而 数据平面并不受影响,如图 7.5 所示。
在正常状况下,所有 NSX Edge 提供的服务运行在主用 NSX Edge 之上。当备用 NSX Edge 在一定时间(默认为 15 秒,最小设置为 6 秒,可以手动变更)无法接收到 心跳信息后,它就会认为主 NSX Edge 不再工作,自己成为主 NSX Edge 并接管相关 工作。在主备 NSX Edge 设备之间的切换发生后, NSX Manager 管理界面的“ Settings & Reports” 中会生成一张报表,将该事件告知企业的 IT 管理员。
之后,负载均衡服 务、 VPN 服务需要与 NSX Edge 重新建立 TCP 连接,因此服务会中断一段时间。但是 虚拟网络连接(主要是 NSX 路由)和防火墙的会话都是在主备 NSX Edge 之上同步的, 服务不会中断。 当故障设备恢复正常后,考虑到再次切换仍然会中断一次部分服务,因此 NSX Conteoller 不允许之前失效的设备再次成为主 NSX Edge。 如果需要将其重新设置为主设备, 需要手动配置。当故障设备无法恢复正常时,建议在 NSX Manager 中将该设备删除,并添 加新的备用设备。 当 ESXi 主机或虚拟机失效导致主 NSX Edge 无法工作时,也可以使用 vSphere DRS、 vMotion 特性将 NSX Edge 迁移至其他 ESXi 主机上。这种情况下, HA 功能仍然是有效的 (由于迁移虚拟机需要时间,在迁移完成后,主备设备的角色可能会互换)。
可以考虑在 Edge 集群部署三台不同的 ESXi 主机,以确保失效的 NSX Edge 可以通过 Vmotion 的方式迁移到 其他 ESXi 主机,并成为新的备用 Edge。对于南北向的三层流量通信,需要配置分布式逻 辑路由器、 NSX Edge 和物理三层设备,才能成功建立三层流量通信。但这在设计上带来了 如下一些考虑因素。 在控制平面, Active 的 DLR Control VM 和物理三层设备需要配置好相关动态路由 策略,以使得 NSX Edge 在失效时可以有效进行网络收敛工作。通过在全局设置 hello/hold-time 时间,确保备用 Edge 在分布式逻辑路由器和物理三层设备的 hold-time 失效前,有足够多的时间重新启动路由协议。 因为一旦 hold-time 失效, 邻居关系可能就会中断, NSX Edge 学习到的路由信息和转发表也会被移除,这会 导致在一台 NSX Edge 失效时, 无法平稳进行主备切换—系统需要重新建立邻居 关系,学习路由。因此, VMware 官方建议配置的 OSPF 和 BGP 的 hello、 hold-time 时间为 40、 120 秒。
在数据平面层面,分布式逻辑路由器的内核模块和物理三层设备都将流量的下一 跳指向 NSX Edge。然而,新激活的 NSX Edge 使用的 MAC 地址与失效的 NSX Edge 不一样。为了避免流量无法通行,新的NSX Edge需要在外部VLAN 和传输VXLAN 的网段上发送一个无故 ARP 请求(Gratuitous ARP request, GARP),以更新设备 的映射信息。
一旦新的 NSX Edge 重启了路由,它就可以向 DLR Control VM 和物理三层设备发送 hello 包了,这就是 NSX 中的 Graceful-Restart (GR)功能。 借助于 GR, NSX Edge 可以通过旧的邻居关系与物理三层设备、 DLR Control VM 建立新的邻居关系。如 果没有 GR,邻居关系就需要重新建立,导致网络路由会中断一段时间。
还需要考虑 DLR Control VM 失效的情况。它的 Active/Standby HA 的部署方式与 NSX Edge 几乎完全一样。不同之处在于, DLR Control VM 承担的是分布式逻辑 路由器控制平面的工作,不参与数据平面的工作。 DLR Control VM 和 NSX Edge 之间的 OSPF 与 BGP 的 hello/hold-time 时间,之前 已经建议设置为 40/120 秒,这样就可以保证路由无需重新学习,不会造成网 络中断。因此,当备用的 DLR Control VM 检测到了主用设备失效,在接管路 由控制平面的时候,有如下值得注意的地方, 这与 NSX Edge 的故障切换不尽 相同。
对于源自南向去往北向的流量(从虚拟机去往外部物理网络的流量), ESXi 主 机的内核模块中的转发表中仍然存储了之前的路由信息,因此主用 DLR Control VM 故障不影响任何数据平面的流量转发。
对于源自北向去往南向的流量(从外部物理网络去往虚拟机的流量),由于主 用 DLR Control VM 不参与数据中平面的转发工作,意味着无需发送无故 ARP 请求。而数据平面仍然继续之前的工作,流量转发同样不受影响。
一旦备用 DLR Control VM 接管到失效的 DLR Control VM 的工作之后,它就 开始发送路由协议的 hello 包, GR 功能也可以开始启用了, 以确保分布式逻辑 路由器与 NSX Edge 保持邻居关系,并继续进行流量的转发。
7.2.2 使用 ECMP 实现 NSX Edge 的 HA
NSX 6.1 版本之后支持的 ECMP 的 HA 模式,支持 Active/Active 的冗余模式,且改进 了 6.0 版本中 Standalone HA 不支持两台以上部署、不支持流量负载均衡的缺点,是我们在 NSX Edge 中推荐的 HA 部署方法。 使用 ECMP 的 HA,分布式逻辑路由器和外部物理网络之间通过部署最多 8 台 NSX Edge,最大可以支持 8 路等价路径。这意味着在同一时间,数据平面与外部物理网络的 通信能达到最大的利用率,任何一台 NSX Edge 失效,其性能损失不大( 由于部署了 8 台 NSX Edge,当一台失效时,仍然能保持原有性能的 87.5%)这种部署的拓扑架构如 图 7.6 所示。 从图 7.6 中可以看到,南北向流量的通信很可能遵循非对称的路径,不同网段、不同 类型的流量,可能会穿越不同的 NSX Edge 网关。这种南北向流量中非对称等价多路径的 选择,是在分布式逻辑路由器或物理三层设备,对网络中的原始数据包的源目 IP 地址进行哈希计算得出的结果。 一旦其中一台 NSX Edge 失效,物理三层设备和分布式逻辑路由器会迅速重新建立邻 居关系,并针对网络中的路径重新选路,使得存活的剩余 NSX Edge 仍然可以实现 ECMP, 如图 7.7 所示。
使用 ECMP 模式部署 NSX Edge 的 HA,有如下考虑因素。 与 Active/Standby 的部署类似,在冗余切换过程中,路由是否会中断取决于物理 三层设备、 DLR Control VM 和失效的 NSX Edge 的邻居关系是否需要重新建立。 因此需要考虑 hello、 holdtime 的时间的设置, VMware 官方建议分别设置为 1、 3 秒。
部署多个 Active 的 NSX Edge 时,不支持在 NSX Edge 网关之上对多个逻辑服务实现 状态同步。因此,建议将不同逻辑服务部署在多个不同的 NSX Edge 之上,比如某几 台 NSX Edge 中只部署了集中路由服务,而负载均衡服务会专门部署到其他几台 NSX Edge 中。乍看之下, 这个功能可能带来更多的成本,而事实并不是这样—只 需要部署多个 NSX Edge 即可,这些 NSX Edge 都是以虚拟机形式呈现的,不会造 成成本的增加。不建议在同一台 NSX Edge 之上同时实现路由和负载均衡(或其他 服务)。
可以在 NSX Edge 上将静态路由重分布进 OSPF,将路由宣告进物理三层设备。这 样做的好处是,万一邻居关系超时,学习到的路由被移除后,南北向的网络流量 通信仍然可以通过基本的静态路由来进行。
7.3 利用 NSX Edge 服务网关实现 NAT
NAT 技术,最初是为了解决 IPv4 地址枯竭而提出的,它成功地将 IPv4 续命 20 多年。 后来, NAT 技术有了更多的应用场景,包括保护重要数据、与负载均衡的部署进行融合。 本节将从 NAT 技术开始介绍, 然后引入 NSX 网络虚拟化环境中的两种 NAT 部署方法: Source NAT 和 Destination NAT。
7.3.1 NAT 技术简介
NAT(Network Address Translation,网络地址转换)技术是 1994 年提出的。当时,越 来越多的计算机组成局域网,而这些局域网都需要连接至 Internet,这就造成了 IPv4 地址 可能会不够用的情形。因此, NAT 技术应适而生。此后,在局域网中,人们习惯于通过 NAT 技术将私有网络地址转换为公有地址来访问 Internet,从而大大降低了公有地址的要 求,使得 IPv4 技术得以延续至今。即便如此, IPv4 地址在当今还是面临着枯竭的危险, Internet 会逐渐迁移至 IPv6 环境,这是后话。
NAT 可以借助于某些代理服务器来实现,但 考虑到运算成本和网络性能,很多时候都是在 Internet 出口路由器或防火墙上来实现的,而 如今,借助 NSX Edge 服务网关实现 NAT 有着更高的效率。 私有 IP 地址是指内部网络或主机使用的 IP 地址,公有 IP 地址是指在 Internet 上全 球唯一的 IP 地址。 RFC 1918 为私有网络预留出了三个 IP 地址块,这三个范围内的地址 不会在 Internet 上被分配,因此可以不必向 ISP 或注册中心申请而在公司或企业内部自 由使用。
A 类: 10.0.0.0~10.255.255.255 B 类: 172.16.0.0~172.31.255.255 C 类: 192.168.0.0~192.168.255.255 NAT 最初的设计目的是用于实现私有网络访问公共网络的功能,后来扩展到实现任 意两个网络间进行访问时的地址转换, 这里将这两个网络分别称为内部网络( 私网)和 外部网络(外网),通常私网为内部网络,公网为外部网络。如图 7.8 所示, NAT 技术 在为内部网络主机提供了“隐私” 保护的前提下, 使得内部网络的主机访问外部网络的 资源。 此外, NAT 技术还可以避免地址冲突。
考虑这样一种情形:两家大型公司为了发展业 务并实现共赢,进行了一次合并与重组。 但是, 两家公司的内网地址有一部分是重复的, 如图 7.9 所示, 10.20.20.0/24 和 172.25.50.0/24 两个网段就可能产生冲突。 由于重新设计网 络、更换设备、更改配置、更新策略都是一项非常繁琐的工作, 因此可以选择在两家公司重组过程中新部署的路由器之上设置 NAT,将冲突的地址在互连互通过程中转换为新的地址来避免这种情况。
除了节省 IPV4 地址、避免地址冲突外, NAT 还有一个好处就是通过地址转换,保护一些 重要设备中的数据,免受黑客攻击或内部泄漏。 因为使用转换后的地址,意味着在被攻击时多 了一层防护,黑客不容易使用正常的思路和攻击方式获取这些设备的真实 IP 地址。 但 NAT 也有一些缺点。 在 NAT 的处理中, 由于需要对数据报文进行 IP 地址的转换, 数据包的包头就不能被加密。 另外,网络调试可能变得更加困难。比如内部网络的某一台 主机感染了木马并试图攻击其他网络, 管理员则很难发现究竟是哪一台主机出了问题,因 为这台主机的真实 IP 地址被屏蔽了。
标签:部署,Edge,NSX,2.8,NAT,SDN,HA,路由 From: https://blog.csdn.net/qq_43416206/article/details/139885978