IBM®和VMware®在2016年宣布了新的合作伙伴关系,最终在IBM Cloud上发布了VMware Cloud Foundation,这是IBM Cloud中完整VMware虚拟化环境的自动化标准化部署,包括VMware vSphere,VMware NSX和VMware vSAN技术。 自宣布以来,IBM和VMware继续通过新功能和服务来增强产品。 IBM Cloud的VMware Cloud Foundation和VMware vCenter Server产品是在IBM Cloud中部署完全可操作的VMware虚拟化环境的最快方法。
“本教程适用于对数据迁移,创建防火墙规则,构建拓扑等感兴趣的任何人。 ”
最初部署IBM Cloud中的VMware vCenter Server(vCS)或VMware Cloud Foundation(VCF)实例时,对IBM软件组件和使用率报告需要此类访问的任何服务(例如Zerto虚拟复制)的公共网络访问最少。
在您的专用网络上,许多IBM Cloud服务可用于您的VMware工作负载,包括文件存储,块存储,对象存储,负载平衡,电子邮件传递和数字转码。
但是,只能通过公共网络访问许多其他IBM Cloud服务,例如Cloudant®,IBM Cloud Functions(以前称为OpenWhisk),API Connect™和WeatherCompany®Data。
在本教程中,我们向您展示如何将私有的多站点VCF实例安全地连接到IBM Cloud公共服务。 本教程假定最复杂的情况是为多站点工作负载设置公共连接。 对于单站点部署,或者对于使用VLAN而不是VXLAN的部署,某些步骤将是不必要的。 完成本教程后,您将知道如何轻松安全地将私有VMware工作负载连接到公共IBM Cloud服务。
使用IBM Cloud Lite构建您的下一个应用程序
免费。 无需信用卡。 今天免费开始。
本教程基于IBM Code的虚构的Acme Freight公司及其转型故事。 查看整个过程(在学习过程中,获取示例代码)以了解Acme Freight如何实现网络拓扑。 了解他们如何能够在数据中心之间迁移工作负载,从而允许从工作负载到IBM Cloud服务的外部访问,同时还保留了在私有IBM Cloud虚拟网络中运行的工作负载的安全性。
您还可以利用许多其他IBM Cloud服务,包括:云和开发人员服务(例如,区块链),使您能够从现有数据中获得有价值的见解的数据服务,使您可以将Watson®纳入其中的AI服务。工作等等。
访问IBM Cloud Catalog,以查看服务的完整列表,包括区块链,数据服务等。
Acme Freight的VMware应用程序使用多种IBM Cloud服务来实现其基于天气的路由推荐引擎。 他们的推荐引擎是通过使用IBM Cloud Functions(以前称为OpenWhisk)编程服务实现的 ,该服务可以以非常低的成本进行快速的创新和开发。 他们订阅了IBM Cloud Weather Company Data,以获取天气预报和警报。 他们使用IBM Cloud的API Connect服务为其API提供额外的安全性,治理和分析。 所有这些组件使Acme Freight可以在扩展业务时获利并限制其服务费率。 图1是API Connect针对Acme Freight的监视界面的示例。
图2显示了在IBM Cloud的VMware Cloud Foundation上运行的Acme Freight应用程序的拓扑。
以下编号步骤向您展示了我们如何从图2构建此拓扑。请注意,该应用程序可能会在两个数据中心之间迁移,因此我们将每个数据中心配置为具有到公共网络的本地出口点。
VMware NSX是VMware的网络功能虚拟化(NFV)技术。 NSX不仅涉及网络虚拟化,而且还通过其微分段防火墙功能提供了显着的安全优势。 NSX还提供了将许多第三方网络功能插入NSX网络流的灵活性。
由于NSX提供的灵活性和安全性,许多公司正在其自己的数据中心中采用NSX。 即使您不在自己的数据中心中使用NSX,也应在云中部署VMware时使用它。 在云中使用NSX将为您提供更大的灵活性,并可以控制网络和环境中的地址,并使您能够充分利用NSX的其他优势。
如果已部署多站点VMware Cloud Foundation拓扑,则vCenter服务器链接在一起,但NSX Manager尚未链接。 在此步骤中,我们将跨您的实例关联NSX管理器,这将使我们能够创建跨越您的站点的逻辑网络(VXLAN)。 与Acme Freight一样,这简化了工作负载之间的通信,并使工作负载在站点之间无缝迁移。 有关跨vCenter NSX设计和体系结构的更多信息,请参考《 VMware NSX跨vCenter设计指南》 。
此步骤要求您选择一个站点作为主要NSX Manager,并删除所有其他已连接站点上的NSX控制器。 为了保持一致性和简便性,我们建议您选择主VCF实例作为主NSX Manager。 在任何辅助站点上创建任何逻辑交换机之前,应执行此步骤:
使用vSphere Web Client登录到vCenter。 在配置跨vCenter NSX之前,请确保所有站点的逻辑交换机都有唯一的网段ID范围。 每个逻辑网络都分配有一个段ID,就像VLAN具有一个ID一样。 确定将在每个站点上为本地交换机和通用交换机配置的网段ID范围。 您的选择决定了每个站点可以创建多少个交换机,以及可以创建多少个通用网络。 对于Acme Freight,我们选择了以下选项: 主站点:6000–6499 次要站点:6500–6999 通用:7000-7999 导航到网络和安全>安装 。 选择“ 逻辑网络准备”选项卡,然后选择“ 段ID”窗格。 选择将用作您的主要管理器的NSX管理器的IP地址。 点击修改,然后将细分ID池调整到所需范围。 对每个辅助NSX Manager重复步骤c和d。 我们将在后续步骤中配置通用段ID。 导航到网络和安全性>安装,然后选择管理选项卡。 选择将用作主管理器的NSX Manager的IP地址。 单击“ 操作”>“分配主要角色” ,然后在出现提示时单击“ 是” 。 在“ NSX Controller节点”表中,找到由NSX Manager管理的三个NSX控制器,它们将用作您的辅助管理器。 对于每个控制器: 选择控制器。 单击红色的X图标将其删除。 等待删除完成,然后再继续。 如果无法单击删除按钮,请刷新屏幕。 登录到IBM Cloud for VMware解决方案门户。 单击已部署实例,然后选择辅助实例。 记下NSX Manager IP地址,HTTP用户名和HTTP密码。 返回到vSphere Web Client NSX安装页面。 选择主NSX Manager。 选择操作>添加辅助NSX Manager。 输入您在步骤8中记下的IP地址,HTTP用户名和HTTP密码。完成后,一个NSX Manager将被列为主要,另一个被列为次要。 您现在应该在NSX Controller节点表中看到六行,但是只有三个唯一的IP地址,因为这三个控制器现在在主站点和辅助站点之间共享。 您的控制器需要几分钟的时间才能进入连接状态; 如果这没有发生,请选择“ 辅助管理器” ,然后单击“ 操作”>“更新控制器状态”。 图3显示了结果。
对于要包含在通用传输区域中的任何其他辅助实例,请重复步骤5至12。
在此步骤中,我们设置了一个通用传输区域,使您的站点可以共享NSX逻辑交换机和路由器。
在vSphere Web Client中,导航到“ 网络和安全性”>“安装”,然后选择“ 逻辑网络准备”选项卡。 确保在下拉列表中选择了主NSX Manager,单击“ 段ID”窗格,然后单击“ 编辑”。 选择一个与您的本地细分ID独立的通用细分ID池。 对于Acme Freight,我们为段ID选择7000-7999范围,如图4所示。在此步骤中,我们将创建逻辑交换机,将其用作解决方案的虚拟网络。 您可以将每个逻辑交换机视为物理VLAN的虚拟等同物。 如果这些交换机的流量在主机之间路由,则会封装在VXLAN数据包中。
您将需要规划自己的网络需求,包括逻辑交换机的数量和它们使用的子网。 对于Acme Freight,我们创建了以下逻辑开关:
通用网络层 该网络托管着Acme Freight的Web服务器。 它的子网是172.16.10.0/24。 通用应用层 该网络托管Acme Freight的应用程序服务器。 它的子网是172.16.20.0/24。 通用公交 该网络是将流量路由到主站点的公共网络的传输网络。 它的子网是172.16.100.0/27。 通用二次运输 该网络是将流量路由到辅助站点的公共网络的传输网络。 它的子网是172.16.200.0/27。在下一步中,我们将创建一个逻辑路由器,以在这些网络之间路由流量。
通过以下步骤创建每个逻辑交换机:
在vSphere Web Client中,导航至“ 网络和安全性”>“逻辑交换机” 。 确保在下拉列表中选择了主NSX Manager。 单击绿色加号图标以创建逻辑开关。 为您的交换机命名。 对于运输区域,单击更改 ,然后选择通用运输区域。 确保选择单播 ,如图6所示。 单击确定。在上一步中,我们创建了几个逻辑(或虚拟)网络。 您可以立即开始在这些网络上部署虚拟机,但是这些虚拟机将只能与同一网络上的其他虚拟机进行通信。 要在虚拟网络之间路由流量,我们需要部署逻辑路由器。
VMware NSX提供用于单站点配置的逻辑(或分布式)路由器(DLR),以及通用逻辑路由器(UDLR),用于在通用逻辑交换机(如我们之前创建的交换机)上路由流量。 在此步骤中,我们将部署具有本地出口的通用逻辑路由器。 我们将部署单个UDLR,并在每个站点中部署一对路由器设备。
在vSphere Web Client中,导航至“ 网络和安全性”>“ NSX Edges” 。 确保在下拉列表中选择了主NSX Manager。 单击绿色加号图标。 第一个面板如图7所示: 选择通用逻辑(分布式)路由器的安装类型。 选择启用本地出口。 为路由器命名。 启用高可用性。 我们将部署两台设备,以确保即使由于主机故障而丢失一台设备,也能继续路由流量。现在,让我们在辅助站点上部署UDLR的设备。 对于每个辅助站点,请执行以下步骤:
在vSphere Web Client中,导航至“ 网络和安全性”>“ NSX Edges” 。 在下拉列表中选择辅助NSX Manager。 在列表中选择您的UDLR。 在“ 管理”选项卡中,选择“ 设置”窗格,然后选择“ 配置” 。 单击绿色加号图标以配置新的UDLR设备并为其选择合适的位置 在“ HA配置”面板中,单击“更改”以配置HA。 选择启用,然后选择您的辅助传输网络作为HA接口。 单击绿色加号图标以配置第二个UDLR设备,并为其选择合适的位置。 如果将设备部署到相同的群集,资源池和数据存储,则应配置DRS关联性规则以确保设备在单独的主机上运行。在此步骤中,我们将部署NSX Edge服务网关(ESG)设备,将其用作逻辑网络和公用网络之间的网关。 我们将它们配置为从您的工作负载到公用网络的NAT出站流量。 VMware将此出站NAT指定为源NAT (SNAT)。 根据您的需要,您还可以将来自公共网络的入站NAT配置为您的工作负载,这称为目标NAT (DNAT)。 我们将在每个站点中部署一个单独的高可用性ESG对,因为每个站点都有自己的主要网络。
首先,我们必须从IBM Cloud订购公共子网以与您的ESG一起使用:
登录到IBM CloudSoftLayer®门户。 首先,请确保您知道vSphere主机的公共VLAN。 跟着这些步骤: 导航到设备>设备列表 。 在主站点上标识一台vSphere主机,然后选择它。 在“网络”部分的“公共”标题下,记下站点和VLAN。 例如,wdc04.fcf03a.1165。 对每个辅助站点重复步骤2a到2c。 导航对网络> IP管理>子网。 选择订购IP地址。 选择一个可移植的公共子网 选择四个便携式公共IP地址,然后单击“ 继续” 。 选择先前为主站点标识的VLAN。 填写RFC 2050信息并下订单。 对每个辅助站点重复步骤4-8。您应该发现在这些VLAN上已经存在一个CIDR–28公共便携式子网,IBM Cloud管理组件已使用该子网与IBM Cloud门户进行通信。 在IBM Cloud SoftLayer门户中,浏览至网络> IP管理>子网 ,并查看订购的CIDR-30子网的详细信息。 您应该在这些子网中添加注释以指示其用途。 例如“工作负载NAT”。 单击以查看每个子网的详细信息。 请记下网关地址和可供您使用的地址。 我们将后一个地址用于NSX ESG。 您应该在该地址上添加注释以表明其用途; 例如“ NSX ESG公共IP”。
现在,我们将使用您订购的地址来部署您的ESG:
在vSphere Web Client中,导航到“ 网络和安全性”>“ NSX Edges”。 在下拉列表中选择您的主要NSX Manager。 单击绿色加号图标以部署新的NSX ESG。 在第一个面板中,选择Edge Services Gateway ,命名您的ESG,然后选择Enable High Availability ,如图11所示。在此步骤中,我们将在ESG和UDLR之间启用OSPF动态路由。 这将使UDLR动态发现每个站点中可用的网关路由,从而根据运行工作负载的站点来确定最近的活动网关。
首先,我们将配置每个UDLR设备以识别其运行所在的语言环境 。由于我们在UDLR上启用了本地出口,因此UDLR将使用语言环境ID来过滤其在虚拟机管理程序上配置的路由。 此配置将允许它配置每个站点上不同的首选路由:
在vSphere Web Client中,导航至“ 网络和安全性”>“ NSX Managers” 。 双击主站点的NSX Manager,然后选择“ 摘要”选项卡。 复制ID字段,如图15所示。现在,我们需要为每个UDLR设备启用OSPF:
在vSphere Web Client中,导航到“ 网络和安全性”>“ NSX Edges”,然后从下拉列表中选择“主NSX管理器”。 双击您的UDLR,然后选择“ 管理”选项卡。 在“路由”窗格中,选择“ 全局配置”选项。 单击“动态路由配置”旁边的“ 编辑” ,并确保为“路由器ID”选择了“主传输网络”,如图17所示。最后,我们需要为NSX ESG启用OSPF,以便它们可以与UDLR通信。
在vSphere Web Client中,导航到“ 网络和安全性”>“ NSX Edges”,然后从下拉列表中选择“主NSX管理器”。 双击您的NSX ESG,然后选择“ 管理”选项卡。 在“路由”窗格中,选择“ 全局配置”选项。 单击“动态路由配置”旁边的“ 编辑” ,并确保为路由器ID选择了主上行链路网络,如图21所示。最后,我们将配置我们在步骤5中部署的NSX Edge网关,以允许通过使用地址转换从您的应用程序进行出站连接。
在vSphere Web Client中,导航到“ 网络和安全性”>“ NSX Edges”。 确保在下拉列表中选择了主NSX Manager,然后双击在主站点上为公共连接创建的NSX ESG。 在“管理”选项卡中,选择“ 防火墙”面板。 单击绿色加号图标以创建一个新的防火墙规则以允许出站流量,如图25所示。 源IP地址可能包含您应用程序的原始地址(防火墙规则在NAT规则之前应用)。 您可以使用各种结构来选择源地址,包括群集,逻辑交换机,vApp,虚拟机和IP地址规范。 您可以根据需要限制目标地址和服务。在本教程中,我们设置了跨vCenter NSX,创建了通用逻辑交换机,使您的工作负载和通信可以通过虚拟网络遍历您的站点。 我们还设置了通用逻辑路由器在这些网络之间路由流量,并在每个位置创建了网关,以允许出站流量连接到公共网络。 所有这些步骤使您可以扩展VMware应用程序以使用公共IBM Cloud服务,例如Watson Personality Insights或Watson IoT Platform。
由于我们将NAT用于出站连接,因此,如果您在站点之间执行实时迁移,您的工作负载将暂时失去连接。 此连接丢失是由连接源IP地址(如外部网络所见)引起的,当您从一个站点移动到另一个站点时,该地址将发生变化。 但是您的工作量将能够立即重新建立连接。
本教程仅概述了IBM Cloud中VMware NSX所能提供的功能。 我们为NSX Edge创建了防火墙规则,但是您可以创建适用于所有流量(包括交换机内流量)的防火墙规则。 根据您的要求,您可能还需要考虑其他拓扑。 如果需要与应用程序的入站连接,则还需要考虑NAT配置(包括单NAT与双NAT),以及跨站点负载均衡器的潜在需求。 VMware的NSX跨vCenter设计指南介绍了各种推荐的拓扑以及每种拓扑的设计注意事项。
唾手可得,尽情享受您新发现的虚拟网络功能和强大的IBM Cloud服务阵列!
作者感谢Daniel De Araujo和Frank Chodacki建立多站点测试环境并提供NSX架构指导。
翻译自: https://www.ibm.com/developerworks/security/library/se-securely-connect-private-vmware-workloads-ibm-cloud/index.html