【微软公有云系列】 Hyper-v (WinSer 2012 R2) 网络虚拟化(一)概念

最近在做一个公有云项目,项目主题:利用微软System center私有云部署的方式来搭建出一套云平台作为公有云提供给租户,因此学习了些 Windows Server 2012 r2的网络虚拟化的一些东西,写些东西出来自己记录下,也给大家分享下。

(第一次看会有点晕哈,得多看几遍)


1.物理网络:就是我们的网络设备,交换机,路由器,网线,网卡....所 组成的一个网络环境。


2.逻辑网络(logical network):


第一,字面上的意思就是他是一个虚拟的网络,而非真实的由硬件组成的网络。逻辑网络由虚拟的交换机(logical switch),IP POOL,PA POOL,虚拟网络(vm network),虚拟子网(subnet),虚拟子网IP POOL,UPLINK PORT FILE ,组成的虚拟的逻辑上的一整套网络环境。

总体来说,在软件定义网的概念没出来之前,我们需要物理的网络设备来构建一套网络环境,而现在我们可以利用软件定义网络,在物理的网络设备的基础上去构建多套不同的网络环境。


第二,结合实际去理解,它是在SCVMM中的一个控件,用途是什么呢?在我们的生产环境中,我们知道会有许多的网段,比如有192.168.0.0/24的一个私有网段,是用于连接存储的网络;那么再有一个172.16.0.0/24的私有网段是用于主机(HOST)间通信的;还有一个10.10.10.0/24的网段是用于心跳线的;那么现在我们要做公有云服务,客户可能需要指定的网段192.168.0.0/24,并且此网段还要与我们的现在管理的网段隔离;那么我们需要把这些网段进行相互隔离,并且作为不同用途来划分,并且可能还要对其进行控制,可以做例如QOS这类网络的流量限制等等,以上这些需求,则可以通过创建不同的logical network来进行功能划分和隔离。

概括一下,对于不同的业务需求,我们通常会划分不同的IP段的网络,并且是相互隔离的,那么此时,我们就可以考虑创建不同的Logical network。


第三,logical network怎么使用呢?有两个使用方式,我们可以做成是NVGRE的logical network,也可以是非logical network。


NVGRE 类型的logical network:

创建完一个logical network之后 ,可以在其上创建单个或多个vm network。

应用场景一(企业租户需要混合云):

当公有云提供给A租户和B租户时(A租户可能需使用5台虚拟机,B租户可能需使用3台虚拟机),A租户和B租户要求使用的IP网段可能是相同的,也可能是不同的,那么此时我们需要做到,提供给A租户和B组合的虚拟机之间是不可相互通信的,并且可以让他们存在相同的IP地址,而不产生冲突。

也就是说在一个logical network 上,我们需要创建两个vm network 分别提供给A租户和B租户去使用。


那么租户把其业务虚拟机搬上来,此时,可能他会把两个或更多的业务系统都搬上来,并且每个业务系统可能是不同的网段,但是这些网段之间可能是需要相互通信的,那么此时,不同的业务系统的虚拟机所获得的IP段中的地址,则由vm network 来创建不同的Subnet (虚拟子网)来完成,租户虚拟机则根据不同的subnet所定义的不同的IP POOL来分配IP地址。并且两个不同的网段,相互之间可以通信。(VM network可以理解为就是直接交付给用户的最终产物)


接着,我们的A租户,假设他有5台虚拟机,并且他的虚拟机都拿到了一个所需的私有IP地址段中的IP之后,因为此虚拟机的网络不单跟别的租户是隔离的,并且跟我们提供商的管理IP段也是相互隔离的,那么假设我们把他们放置在不同的物理机之上,例如2台虚拟机放置在HOST 1,另外3台虚拟机放置在HOST 2,那么它们之间也是不可通信的,所以这里接着要涉及到另外一个概念“logical switch”和“PA”,后面会继续讲解,这里先说说PA,那么PA 地址段(其实也是自定义的私有的IP地址段)则是用于不同的宿主机上的,使同一租户的虚拟机在不同的宿主机上,可以相互通信。(注意:指的是同一个租户的虚拟机,也就是说是同一个vm network下的虚拟机,只不过他们分布在不同的宿主机上而已)

而PA POOL的配置是在我们创建nvgre类型的logical network的时候,可以在其下创建一个PA POOL,此ip 池供所有的不同的租户来使用(但需要结合到logical switch)。


接着,租户在我们公有云平台所申请的虚拟机,怎么与其企业本地的数据中心做通信呢?我们就需要做Site to Site 的***来连接。同时,所提供的虚拟机怎么做到可以上外网,或从外网访问进来呢,我们就需要为其做NAT.。(后期会出部署配置Site to Site 和 NAT 的文章)



非NVGRE 类型的logical network:创建完一个logical network之后,仅可以在其上创建一个vm network。

应用场景一(管理网络)

在我们搭建的私有云平台当中,我们的AD,SCVMM,包括我们的宿主机使用的应该是同一个网段并且他们之间可以相互通信的,那么此时我们需要创建非NVGRE类型的logical network,并在其上仅创建一个vm network,区别于之前NVGRE的在于,我们创建这唯一的vm network时, 不能配置vm network里的subnet,而直接从logical network中的IP POOL中获得IP地址,或直接取出(物理/虚拟)网卡本身配置的IP地址。


第四,在我们创建logical network时,里面还需要配置一个Site(站点),此IP段对应着我们SCVMM中HOST的分类。Site的用途是:不同的IP段,我们可以指定哪些分类的HOST主机有权去使用。

在此处,定义到的Site(站点),将会用于关联到Uplink port profile 里,而Uplink port profile 又会关联到我们的logical switch,则此logical switch则由此限定用于对应站点关联的那些HOST主机,而别的HOST主机则无法使用此logical switch。


Uplink port profile :是logical switch的一个配置文件,用于把logical network中的站点做关联,之后再配置到logical switch当中,来确定创建的每一个logical switch 用于哪些主机。


3. logical switch(逻辑交换机):

前面我们在说NVGRE场景中,假设5台虚拟机分布在不同的宿主机上时,我们需要为不同的宿主机分配同一个logical switch(逻辑交换机),其实逻辑交换机,我们就可以理解为一个真实的交换机,只不过他不是真实物理存在的硬件,而是虚拟出来的,但功能是一样的;并且在logical network 里设置好PA pool 用于不同宿主机之间相互通信。这样才能达到我们最终使不同宿主机上的同一租户的虚拟机之间可以相互通信。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章