软件定义网络(SDN)是Windows Server 2012 R2引入的一个特性,通过在云中进行网络虚拟化,可以在任意节点部署任意的虚拟机,而不用考虑IP地址的冲突,尤其是应用在多租户的场景下。软件定义网络需要结合SCVMM来实现,而租户申请虚拟化网络需要使用到Windows Azure Pack。

首先我们来了解先网络虚拟化的一点概念,网络虚拟化是采用通用路由封装(GRE)对网络进行封装和隧道,这是由微软、英特尔、Arista网络、 HP、戴尔和Emulex共同提出的一个标准。GRE 是适合大多数当前和未来数据中心的首选网络虚拟化方法。

SCVMM网络虚拟化配置软件定义网络SDN_第1张图片

本次部署环境中采用了三台物理服务器,每台服务器均有两块网卡,接入到交换机中。如下图所示,其中两台Cloud01与Cloud02为虚拟机放置服务器,Cloud03为虚拟化网关服务器。

SCVMM网络虚拟化配置软件定义网络SDN_第2张图片

首先创建两个逻辑网络,依次展开构造网络逻辑网络。创建Public与Tenant两个逻辑网络,并创建好相对应的地址池,这两个逻辑网络将作为虚拟化网络的前后端使用,如下图。

SCVMM网络虚拟化配置软件定义网络SDN_第3张图片

接下来打开Tenant逻辑网络的属性,勾选上允许在此逻辑网络上创建的新VM网络以使用网络虚拟化。

SCVMM网络虚拟化配置软件定义网络SDN_第4张图片

接下来我们要为逻辑交换机创建端口配置文件,如下图所示创建三个端口配置文件,这将在后面分别应用到租户网络、公用网络和虚拟化主机网络的逻辑交换机中。

SCVMM网络虚拟化配置软件定义网络SDN_第5张图片

创建Public、Tenant、VM三个逻辑交换机,并添加刚才创建的上行配置文件,其中Public、Tenant是用于网关通讯,VM是租户虚拟机放置使用。

SCVMM网络虚拟化配置软件定义网络SDN_第6张图片

接下来在Cloud03上分别创建一个Tenant和Public两个逻辑交换机,这是用于Gataway主机租户网络与公共网络通讯。

SCVMM网络虚拟化配置软件定义网络SDN_第7张图片

完成逻辑交换机创建后,打开Cloud03的硬件属性,可以看到网络适配器中的两块网卡已经绑定了对应的逻辑交换机。

SCVMM网络虚拟化配置软件定义网络SDN_第8张图片

打开Cloud03主机访问,勾选上“此主机是专用网络虚拟化网关,因此不可用于放置需要网络虚拟化的虚拟机”

SCVMM网络虚拟化配置软件定义网络SDN_第9张图片

接下来打开Hyper-V服务器Cloud01的属性,添加VMSwitch的逻辑交换机,这是一台虚拟化放置主机,所以添加该逻辑交换机。

SCVMM网络虚拟化配置软件定义网络SDN_第10张图片

然后在Cloud03主机上安装一个mgmt01虚拟机,该服务器是用于做网关,并启用两个网卡,分别接入Public与tenant逻辑交换机。

SCVMM网络虚拟化配置软件定义网络SDN_第11张图片

完成mgmt01安装后,启用远程访问与路由服务。

SCVMM网络虚拟化配置软件定义网络SDN_第12张图片

下面开始添加虚拟化网关,在VMM控制台,打开构造网络,在网络服务右键选择添加网络服务。

SCVMM网络虚拟化配置软件定义网络SDN_第13张图片

进入添加向导,输入网关名称,如下图。

SCVMM网络虚拟化配置软件定义网络SDN_第14张图片

由于中文版的BUG不显示,型号菜单下拉后选择Microsoft Windows Server Gateway Provider。

SCVMM网络虚拟化配置软件定义网络SDN_第15张图片

填入连接字符串,如下图

SCVMM网络虚拟化配置软件定义网络SDN_第16张图片

完成配置后进行测试,如下图通过测试。

SCVMM网络虚拟化配置软件定义网络SDN_第17张图片

选择用于虚拟化网络服务的主机组,完成配置。

SCVMM网络虚拟化配置软件定义网络SDN_第18张图片

完成配置后,右键刚才创建好的网关,打开属性,打开连接选项配置前后端的网络连接。

SCVMM网络虚拟化配置软件定义网络SDN_第19张图片