• 1
软件定义环境中的Hyper-V网络策略 2013-12-26

对于IT专家来说,在未来的五年内,软件定义网络将会成为最为重要的技术之一。现在是时间该对软件定义网络进行基本了解了,特别是它和Hyper-V网络相关联。

软件定义网络被设计用来解决网络管理员现在面临的两个重要挑战。第一个挑战是多租户。很明显,服务提供商拥有多租户网路,但是现在企业级网络甚至也开始转变为多租户模式,因为越来越多的组织采纳了私有云模型,允许虚拟机(VM)的自助服务配置。管理员需要一种方法来阻止租户访问其他租户的网络,并且不允许他们访问核心网络基础设施。

另外一个挑战是,事实上,在许多组织中,数据中心已经不再局限于四面墙当中。传统网络已经逐渐被混合云取代,或者地理上相互隔离的故障转移数据中心实现了相互连接。

软件定义网络通过在物理网络上建立一系列的逻辑网络来解决这两个挑战。从某种形式上来说,这种方式并不新奇:虚拟专用网络(VPN)已经存在了十多年,通过类似的技术来对穿过Internet的数据建立隧道从而实现安全传输。

从其基本特征的角度来看,软件定义网络的工作方式和VPN十分相似。两种技术都使用包封装方式路由物理网络中的流量。这种封装允许在保持私有性的情况下,和其他虚拟网络共存。对于软件定义网络来说,这意味着客户地址段还可以保持独立和私有(这对于多租户来说十分重要),意味着逻辑上的子网可以横跨多个物理网络。

单独的地址段使得整个架构变为可能。在主机层,IP地址被作为一个提供商地址。提供商地址就是分配给单独Hyper-V主机的IP地址,按照每个虚拟机一个的原则进行分配。因为每个客户或租客都拥有在软件层定义的单独的虚拟地址,对于多租客来说使用相同的客户地址就变得可以接受了。实际上,租客甚至可以使用重叠的MAC地址,因为软件定义网络之间是完全相互隔离的。

当然,创建相互之间完全隔离的虚拟网络是一件事情,但是在现实环境中,位于虚拟网络当中的系统通常需要访问外面的网络。同样,外部客户也需要对位于虚拟网络中的主机提供的服务进行访问。微软的解决方案是通过使用通用路由封装网络虚拟化(NVGRE)网关。NVGRE网关可以实现多个重要功能。

首先,网关提供了路由功能。 对于物理网络和虚拟网络之间的通信,网关是必需的。需要注意的是一个单租户可能在台多Hyper-V主机上都拥有虚拟机。对于位于不同主机间的虚拟机通信,不需要使用NVGRE网关;其只用于物理机和虚拟机之间的通信。

这带来了一个问题,当使用软件定义网路时,位于一台Hyper-V主机上的虚拟机相互间如何进行通信呢?当一台虚拟机需要和位于其他主机上的虚拟机进行通信时,Hyper-V需要知道所发送封装包的目的地址。而解决方案是使用系统中心虚拟机管理器来管理各种Hyper-V主机。这样做允许虚拟机管理器创建和维护一张Hyper-V查找表,用来记录哪个虚拟机位于哪台主机上。因为每个单独的主机都和虚拟机服务器相关联,从而实现了所有主机可以定位任何一台虚拟机。

NVGRE网关还可以作为一个网络地址转换组件,将应用程序服务器发布到Internet上,尽管这些服务实际上位于软件定义网络的虚拟服务器当中。这允许软件定义网络中的虚拟机可以作为公共Web服务器或者提供其他面向Internet的服务。

如你所见,软件定义网络是一个十分重要的概念,特别随着原有网络正在向私有或者混合云迁移。需要记住虽然现在微软已经拥有其软件定义Hyper-V网络机制,但是软件定义网络和NVGRE的概念并不是微软的私有技术,而是行业标准。

来源:51cto.com