在现有的数据网络中集成OpenStack需要仔细地进行规划,但是也有许多工具是可以有所帮助的。
想在现有网络中集成OpenStack你需要对OpenStack网络有所了解。现在让我们了解一下部署一个私人OpenStack到现有的网络中所涉及到的一些基本概念。首先,先简单介绍一下。
OpenStack由三个核心部分组成:计算(Nova)、存储(Cinder)和网络(Neutron)。接下来我们将主要介绍Neutron部分,理解Neutron的目的是至关重要的。OpenStack的部署为基于OpenStack资源的消费提供了一个面对租户的“应用程序接口(API)”。至于网络,租户将利用Neutron的应用程序接口为计算组件提供网络和相关的IP地址。此外,不同的插件可以提供额外的更高级别的服务,如网络入侵、防火墙和租户网络上的负载平衡。
集成OpenStack时需要考虑的几种网络
在一个现有的数据中心网络中集成OpenStack时,有四种本地网络必须考虑到。根据OpenStack培训文档,这些网络分别是:
· 管理网络:用于OpenStack组件之间的内部通信。这个网络上的IP地址应该仅仅在数据中心内是可达的。
· 数据网络:用于云部署中虚拟机(VM)的数据通信。这个网络上IP地址的要求取决于OpenStack中使用的网络插件。
· 外部网络:用于某些部署方案中提供虚拟机对因特网的访问功能。这个网络上的IP地址应该让因特网上的任意人可达。
· 应用程序接口(API)网络:显示所有的OpenStack 应用程序接口,包括OpenStack到租户的网络应用接口。这个网络上的IP地址应该让因特网上的任意人可达,该网络可以和外部网络是同一个网络。
外部网络、API网络以及管理网络都是直截了当的概念,非常类似于现有的数据中心应用程序。这些网络是可见的,可管理的,就像传统的数据中心网络段。OpenStack网络的黑洞是数据网络,用于创建多租户的客户网络默认机制就是网络虚拟化,可以包括重复的网络环境。每个租户的数据网络都是虚拟的,需要一个OpenStack网络网关节点来访问其环境外部的网络。
利用分布式虚拟交换机来实现覆盖
大多数网络工程师习惯于通过已经连接到虚拟机管理程序(如Hper-V或vSphere)的中继端口来和虚拟网络进行交互。这些网络通常是企业数据网络的扩展,对于一个虚拟机来说,与一个完全不同的物理网络交换机上的端口相连的物理主机进行交互是很常见的,而这在一个标准的OpenStack部署中是很罕见的。与OpenStack托管的虚拟机相关联的虚拟网络通常是覆盖的,对于底层数据中心网络来说是不可见的。
OpenStack利用跨多个管理程序的分布式虚拟交换机来创建一个覆盖式网络。租户可以利用网络功能虚拟化(NFV)设备来创建复杂的,多层的虚拟网络。
正如在物理世界中,两个逻辑上分开的网络进行通信的唯一方法是通过某种网关。在OpenStack的网络中,这将是一个网络节点。这个网络节点通过一个虚拟交换机端口具有到虚拟网络的连接,还具有到物理数据中心网络的连接。对于供应商来说,这种连接通常被利用来提供到互联网的访问。在企业中,这些网关可以提供到真实的专用数据网络的访问,实现将传统的应用程序到新的基于云的应用程序的连接。另一种选择就是利用本地开放的虚拟交换机(OVS),不存在任何额外的管理插件。