Citrix SD-WAN VPX (Standard Edition Virtual Appliance)高可用性支持AWS
本节介绍在AWS云上以高可用方式部署SD-WAN虚拟VPX设备的方法。
在AWS云中部署SD-WAN VPX高可用性设备时需要考虑的要点。
- AWS不支持GARP(通用属性注册协议)、VLAN或L2相关功能,如混杂模式和桥接。这是因为可以将属于不同客户的两个虚拟机调度到共享网卡的同一主机上。
- L2要求配置交换机设备,并且这些设备不向AWS用户公开。
- SD-WAN设备高可用性模型依赖于GARP。发生故障转移时,新的主设备将向VIP地址发送GARPS。
- AWS为高可用性故障转移采用了一种新方法。提出了弹性网络接口(ENI)的新概念。ENI是一个代表网络接口的实体,它具有IP地址、MAC地址、安全组和端口规则等属性。
- 您可以将eni从活动的或非活动的实例移动到另一个活动的或非活动的实例。
- 实例必须能够处理接口的热插拔。
- 每种实例类型对关联的ENI数量和每个ENI的ip数量都有限制。
- 用于高可用性故障转移的AWS设计涉及实例与外部服务器通信以调用Query API AWS服务器。
- AWS服务器是传统的HTTP服务器。实例向Query API服务器发送请求,获取或发布AWS上的实例/子网/VPC或其他属性的信息。
- 对于云平台设置,共享基MAC地址配置被忽略,没有任何意义。
使用云模板,以高可用模式部署Citrix SD-WAN标准版VPX
有关更多信息,请参阅EBS最佳实践而且必须知道的Amazon EBS加密最佳实践
对于定义安全组,策略必须如下所示:
- Outbound:允许所有流量
- 入站:
- 从所有IP地址/子网访问管理IP。
- 来自AWS vpc(私有ip)的所有流量
- 所有来自位于prem或云上的Citrix SD-WAN对等设备的WAN端公共ip的流量。从11.3版本开始,Citrix SD-WAN引入了对M5和C5实例的支持。较新的AWS地区,如香港和巴黎,只支持M5和C5实例。
M5和C5实例提高了硬件性能,并专为更高要求的工作负载而设计。在每个核心的基础上,M5和C5实例比M4实例提供更好的价格/性能。
请注意
M5和C5实例仅在11.3及更高版本的新版本中支持。要继续使用M5和C5实例,您不能从11.3版本降级,因为在11.3版本之前的任何固件版本上都不支持M5和C5实例。
使用10.2.4/11.2.1版本提供的实例,ami不能将其实例类型更改为M5/C5。
使用云模板,以高可用模式部署SD-WAN标准版VPX
SD-WAN高可用性解决方案模板已在AWS市场发布,您可以订阅和使用CloudFormation模板部署HA设置。
先决条件
在启动CloudFormation模板中,需要为“管理”网络、“LAN”网络、“WAN”网络创建VPC、子网、路由表。要创建和定义子网和路由表(如果没有创建),请参考在AWS上安装SD-WAN VPX标准版AMI的话题。
使用云模板高可用模式部署SD-WAN标准版VPX:
去AWS市场并点击定价选项卡。选择地区,并指定实现选项作为高可用模式部署。点击继续订阅。
点击继续配置.
指定实现选项作为CloudFormation模板而且高可用模式部署在下拉列表中。选择地区并点击继续推出.
选择行动为发射CloudFormation在启动软件窗口,单击发射.
在创建堆栈窗口,预定义的S3模板URL出现在CloudFormation.点击下一个.
指定一个堆栈姓名在指定细节部分。
- 配置虚拟专用网配置.填写以下参数详细信息:
- VPC ID:提供虚拟私有云ID。
- 远程SSH CIDR IP:提供可以SSH到EC2实例的IP地址范围(端口22)。
请注意建议只允许从已知IP地址进行SSH。
- 远程HTTP CIDR IP:提供可以HTTP到EC2实例(port80)的IP地址范围。
- 远程HTTPS CIDR IP:提供可以通过HTTPS连接到EC2实例(端口443)的IP地址范围。
- 密钥对:提供一个现有EC2 KeyPair的名称,以支持SSH访问实例。
配置网络接口它必须附加到创建的实例。“主ip”配置在高可用性pair的主实例中,“从ip”配置在高可用性pair的从实例中。
配置其他参数,例如即时类型而且租赁类型并点击下一个.
请注意
如果任何验证失败,AWS会通知您,并且在错误解决之前不会让您继续进行。
设置标签。这些标记是用户可配置的特定于aws的选项。
不建议配置IAM角色。这已经由自定义IAM角色创建,它是通过云的形成模板。
单击下一步后,查看模板并确认已创建的自定义IAM角色云的形成模板。推进创建.
创建的新堆栈出现在云的形成层页面。模板上传成功后,可以监控模板的状态。
控件创建的所有资源的事件云的形成模板。如果出现任何故障,AWS将生成事件的详细描述,这有助于调试问题。事件如下所示:
堆叠创建成功后,模板的状态显示为Create_Complete.
从AWS控制台导航到服务> EC2 >实例.您可以看到两个实例SDWANPrimary而且SDWANSecondary实例已经创建,并且运行了与实例相关联的弹性IPs。
选择SDWANPrimary实例。您可以注意到所有正确分配给实例的资源、安全组、弹性IP、IAM角色和四个网络接口。未能创建任何高可用性功能可能无法按预期工作。
- 同样的选择SDWANSecondary实例并验证上述资源。
用于LAN和WAN链路的备用浮动ip
您需要一个用于LAN和WAN链路的备用浮动ip,以便高可用性工作。一旦创建了堆栈,将新的二级私有ip分配到活动EC2实例的LAN和WAN接口。在配置VPX中的虚拟IP地址时,将使用这些从配置的IP。
执行以下步骤将从LAN ip附加到活动实例:
请注意
一旦部署了HA解决方案,我们必须只将备用浮动IP分配给主实例。
进入“服务> EC2 >实例”。
导航到服务> EC2 >网络接口并选择主实例的LAN/WAN弹性网络接口(ENI)。
分配新的从IP。
点击是的,更新.
同样,也为WAN接口创建二级私有IP。
广域网链路上的公网IP
在广域网链路上需要与外部世界通信的一个公共IP。配置弹性IP与广域网ENI接口关联的操作步骤如下:
导航到>分配新地址.
选中已创建的弹性IP,单击动作>关联地址,并将公共连接到我们刚刚创建的二级私有WAN IP。
验证最终接口和ip预期如下:
- 主实例:
- 辅助实例:
现在实例供应已经完成。配置SD-WAN高可用性设备几乎类似于配置独立设备。不同点如下:
创建LAN / WAN虚拟IP接口时,指定创建的从私有IP。对于高可用性虚拟IP接口,需要指定高可用性网络中的虚拟IP。
启用高可用性,并指定主实例和从实例的高可用性接口ip。
您可以验证高可用状态。
- 主实例:
如何为运行在AWS上的任何SD-WAN实例配置高可用性故障转移
建立高可用性对等体,一个高可用性对等体拥有三个或更多的eni,一个高可用性对等体拥有相等数量的eni。在两个对等体中,第一个ENI致力于管理。一个高可用性对等体拥有所有流量eni。在故障转移期间,流量eni从故障实例移动到新的主实例。
例如,移动两个流量eni可能需要长达或超过20秒的时间。AWS在API响应上没有sla,因此无法在高可用性故障转移时间中设置sla。
请注意
AWS设计对依赖于AWS服务器响应附加和分离的实例有限制。故障转移时间是不可预测的。
配置步骤
- 获取关于高可用性对等实例的信息,关于使用REST API关联的ENIs数量的信息和ENIs的详细信息。
- 检测失败实例的状态。
- 使用REST api从失败实例调用ENIs的分离。
- 确保所有关联的eni都已分离。
- 将eni附加到当前的主实例。
- 确保已附上所有eni。
- 触发上层以检测是否有新的eni。
如何在单个AWS VPC子网内或公网链路IP地址所在区域之间配置SD-WAN VPX-SE
在AWS VPC中,一个活跃的SD-WAN实例,会释放该VPC中另一个高可用的SD-WAN实例。
- 主备SD-WAN设备之间配置的链路相同。
- 对于AWS,您可以为RACP协议创建一个子网和专用链接,以便在SD-WAN设备之间进行通信。
- 在SD-WAN GUI界面中,需要进行如下配置:
- 创建接口组。将其命名为high availability-LINK。添加用于高可用性的接口。
- 为Interface组创建虚拟IP地址。
- 在“高可用性节点”中,启用高可用性并添加控制RACP协议用于通信的虚拟ip。在AWS中创建网口时,请确保IP地址与配置的IP地址一致。
- 执行Change Management并下载备用SD-WAN设备的活动配置。
- 在通过备用SD-WAN设备上的本地变更管理应用配置之后,您将看到活动和备用SD-WAN高可用性设备之间的心跳交换。
- 当发生故障转移时,您会看到SD-WAN设备从备用模式过渡到活动模式和/或相反的模式,而没有任何配置丢失。
请注意
AWS支持具有弹性负载平衡和自动伸缩等特性的高可用性模式,其中的挑战是在SD-WAN设备内同步配置。在此部署中,您将应用现有的RACP协议以实现高效的高可用性。
MCN和分支站点设备都可以在云环境中使用。