Converged Fabrics tends to simplify data center management by consolidating all communication (Management, Guest access, LiveMigration, iSCSI, CSV and Cluster heartbeat & CSV) onto a single fabric for ease of management and better utilization of high availability features like Teaming.
In this post we will create multiple virtual communication networks over two 10 Gbps physical NICs teamed to form “LAN01-Team”, as shown in the following diagram:
Before proceeding with converged networks creation and QoS configuration some terminologies has to be described first
· MaximumBandwidth<Int64>:Specifies the maximum bandwidth, in bits per second, for the virtual network adapter. The specified value is rounded to the nearest multiple of eight. Specify zero to disable the feature.
· MinimumBandwidthAbsolute<Int64>: Specifies the minimum bandwidth, in bits per second, for the virtual network adapter. The specified value is rounded to the nearest multiple of eight. For predictable behavior, you should specify a number larger than 100Mbps.
· MinimumBandwidthWeight<UInt32>: Specifies the minimum bandwidth, in terms of relative weight, for the virtual network adapter. The weight describes how much bandwidth the virtual network adapter intends to have in relative to other virtual network adapters connected to the same virtual switch. The range of the value is 0 and 100. Specify zero to disable the feature.
· DefaultFlowMinimumBandwidthAbsolute<Int64> “To be used with Virtual Switches only set-vmswitch”: Specifies the minimum bandwidth, in bits per second, that is allocated to a special bucket called “default flow.” Any traffic sent by a virtual network adapter that is connected to this virtual switch and does not have minimum bandwidth allocated will be filtered into this bucket. Specify a value for this parameter only if the minimum bandwidth mode on this virtual switch is absolute.By default, the virtual switch allocates 10% of the total bandwidth, which depends on the physical network adapter it binds to, to this bucket. For example, if a virtual switch binds to a 1GbE network adapter, this special bucket can use at least 100Mbps. If the value is not multiples of 8 it will be rounded down to the nearest number that is. For example, input 1234567 will be converted to 1234560.
Now we will start to create and Virtual Switch, different virtual networks with different QoS bandwidth allocation for each network as per the below table;
1. First step to configure the above network requirements is to create the virtual switch VMSW01 and set the DefaultFlowMinimumBandwidthAbsolute to be 20, to do so in windows PowerShell run the following command:
New-VMSwitch "VMSW01" -MinimumBandwidthMode weight -NetAdapterName “LAN01-Team” –AllowManagement 1
Set-VMSwitch "VMSW01" -DefaultFlowMinimumBandwidthWeight 20
2. Now we will create the Management, Guest Access, Live migration, iSCSI and Cluster network, to do so in windows PowerShell run the following commands:
Add-VMNetworkAdapter -ManagementOS -Name "Management" -SwitchName VMSW01"
Add-VMNetworkAdapter -ManagementOS -Name "Guest Access" -SwitchName "VMSW01"
Add-VMNetworkAdapter -ManagementOS -Name "Live Migration" -SwitchName "VMSW01"
Add-VMNetworkAdapter -ManagementOS -Name "iSCSI" -SwitchName "VMSW01"
Add-VMNetworkAdapter -ManagementOS -Name "Cluster" -SwitchName "VMSW01"
3. Then the final step is to set the QoS bandwidth allocation limits on each of the created networks, to do so in windows PowerShell run the following commands:
Set-VMNetworkAdapter -ManagementOS -Name "Management" -MinimumBandwidthWeight 20 –MaximumBandwidth 100000000
Set-VMNetworkAdapter -ManagementOS -Name "Guest Access" -MinimumBandwidthWeight 40 –MaximumBandwidth 5000000000
Set-VMNetworkAdapter -ManagementOS -Name "Live Migration" -MinimumBandwidthWeight 20 –MaximumBandwidth 1000000000
Set-VMNetworkAdapter -ManagementOS -Name "iSCSI" -MinimumBandwidthWeight 20 –MaximumBandwidth 2000000000
Set-VMNetworkAdapter -ManagementOS -Name "Cluster" -MinimumBandwidthWeight 20 –MaximumBandwidth 500000000
To get all of the created virtual network adapters settings run the following PowerShell command:
Get-VMNetworkAdapter -all -Name * | fl
Get-VMNetworkAdapter -all -Name * | fl
Other Examples of configuring virtual networks while separating the management interface
Example1: No high availability for any type of traffic.
I hope you found this post helpful and in future posts we will discuss Bare-metal QoS and Data center bridging “DCB”
very informative article. I wonder: is this all possible without DCB?