IntroductionIn the previous article in this series, I showed you how to build a logical network that could be used by the private cloud environment. The problem with this however, is that private clouds are designed to be multitenant. If all of the tenants shared the same network infrastructure then there would be a potential for problems such as security breaches or IP address overlaps. That being the case, we need to create some virtual networks that reside on top of the logical network that has already been created. In this article I will show you how.
Creating a Virtual NetworkBegin the process of creating a virtual network by opening the Virtual Machine Manager console and selecting the VMs and Services tab. After doing so, go to the navigation section and expand the Tenants option, and then select VM Networks, as shown in Figure A.
Figure A: Select the VM Networks option.
At this point, click on the Create VM Network icon found on the ribbon at the top of the console. This will cause Windows to launch the Create VM Network Wizard.
The wizard’s initial screen requires you to enter a name for the virtual network that you are creating. You can call the network anything that you want, but it is a good idea to use something descriptive and to enter a description of the virtual network’s purpose. For the purposes of this article I will be calling the virtual network Virtual Machine Network.
As you can see in Figure B, the virtual machine network must be bound to a logical network. Make sure that the logical network that you created earlier is selected and then click Next.
Figure B: The virtual machine network must be bound to the previously created service network.
The next screen that you will see is very important. This screen is known as the Isolation screen. It controls the relationship between the virtual machine network and the service network. You can either allow the virtual machine network with direct access to the logical network or you can use a virtual routing domain to isolate the virtual machine network’s traffic. In our case, we need for the virtual machine network to be completely isolated from the underlying service network. Therefore, select the Isolate Using Hyper-V Network Virtualization option shown in Figure C. While you are at it, make sure to select the correct IP address type. This article series assumes the use of IPv4.
Figure C: You must isolate the virtual machine network from the service network.
Click Next and you will be taken to the wizard’s VM Subnets screen. Click the Add button and you will be prompted to specify a subnet to be used. You can use any name that you want. For the purposes of this article, I am going to use the name ServiceNetwork. For the subnet field, I am entering 10.0.0.0/24, which is the same as is used by the service network. You can see what this looks like in Figure D.
Figure D: Enter a name and a subnet.
Click Next and you will see the wizard’s Gateway screen. This screen normally allows you to choose how the virtual machines on the virtual network segment will communicate with the outside world. However, because we have chosen to isolate this segment the only option that is available is No Connectivity. As such, you don’t have to do anything on this screen aside from clicking Next.
You should now see the Summary screen. For whatever reason, the Summary screen only displays the name and the description of the virtual network that you are creating, so there isn’t really anything to review. Simply click Finish to create the virtual machine network. When you do, the virtual machine network should be displayed in the list of VM Networks as shown in Figure E.
Figure E: The new virtual network appears on the list of VM networks.
What We’ve Done So FarAs explained at the beginning of this article series, a private cloud environment is designed to abstract hardware resources in a way that supports the self service provisioning of virtual machines. Up to this point we have been defining resources that will eventually be used by our private cloud. As you may recall, we previously defined some various classes of storage. Similarly, we just defined a virtual machine network. Now that these resources have been defined it is time to construct a private cloud around them.
Binding the Compute Resources to the Service NetworkAs you will recall, at the beginning of this article series we created a host group called Private Cloud. I then went on to add three lab servers to the host group.
The reason why we created a host group is because the host group defines the compute resources that will be available to the private cloud. As such, we have abstracted network, storage, and compute resources. The problem is however, that these resources were all created separately. As such, we need to bind our compute resources (the computers in the host group) to the virtual machine network that we just created.
Begin the process by selecting the VMs and Services workspace in the Virtual Machine Manager console. Next, expand the All Hosts container and expand the underlying host group. Right click on one of the computers within the host group and select the Properties command from the shortcut menu, as shown in Figure F.
Figure F: Right click on a host server and select the Properties command from the resulting shortcut menu.
At this point, the host’s properties sheet will appear. Select the properties sheet’s Hardware tab and then expand the Network Adapters section, as shown in Figure G.
Figure G: Locate the Network Adapters section.
Now, select the Logical Network option. Select the check box corresponding to the service network that you previously created, as shown in Figure H. You will also have to make sure that the previously created subnet is also selected.
Figure H: You must enable the service network on any physical NICs that you want to use.
One thing to keep in mind as you perform this step is that it is common for servers to include multiple network adapters. As such, you will have to repeat this step for every network adapter that you want to be used by the private cloud. However, you must leave at least one network adapter unprovisioned. The reason is because Hyper-V needs an adapter that it can use to establish communications between the Hyper-V host and the Virtual Machine Manager server.