How to Connect and Configure Virtual Fibre Channel, FC Storage and FC Tape Library from within a Virtual Machine in Hyper-v Server 2012 R2

Windows Server 2012 R2 with Hyper-v Role provides Fibre Channel ports within the guest operating system, which allows you to connect to Fibre Channel directly from within virtual machines. This feature enables you to virtualize workloads that use direct FC storage and also allows you to cluster guest operating systems leveraging Fibre Channel, and provides an important new storage option for servers hosted in your virtual infrastructure.


  • Existing Fibre Channel investments to support virtualized workloads.
  • Connect Fibre Channel Tape Library from within a guest operating systems.
  • Support for many related features, such as virtual SANs, live migration, and MPIO.
  • Create MSCS Cluster of guest operating systems in Hyper-v Cluster


  • Live Migration will not work if SAN zoning isn’t configured correctly.
  • Live Migration will not work if LUN mismatch detected by Hyper-v cluster.
  • Virtual workload is tied with a single Hyper-v Host making it a single point of failure if a single HBA is used.
  • Virtual Fibre Channel logical units cannot be used as boot media.


  • Windows Server 2012 or 2012 R2 with the Hyper-V role.
  • Hyper-V requires a computer with processor support for hardware virtualization. See details in BIOS setup of server hardware.
  • A computer with one or more Fibre Channel host bus adapters (HBAs) that have an updated HBA driver that supports virtual Fibre Channel.
  • An NPIV-enabled Fabric, HBA and FC SAN. Almost all new generation brocade fabric and storage support this feature.NPIV is disabled in HBA by default.
  • Virtual machines configured to use a virtual Fibre Channel adapter, which must use Windows Server 2008, Windows Server 2008 R2, or Windows Server 2012 or Windows Server 2012 R2 as the guest operating system. Maximum 4 vFC ports are supported in guest OS.
  • Storage accessed through a virtual Fibre Channel supports devices that present logical units.
  • MPIO Feature installed in Windows Server.
  • Microsoft Hotfix KB2894032

Before I begin elaborating steps involve in configuring virtual fibre channel. I assume you have physical connectivity and physical multipath is configured and connected as per vendor best practice. In this example configuration, I will be presenting storage and FC Tape Library to virtualized Backup Server. I used the following hardware.

  • 2X Brocade 300 series Fabric
  • 1X FC SAN
  • 1X FC Tape Library
  • 2X Windows Server 2012 R2 with Hyper-v Role installed and configured as a cluster. Each host connected to two Fabric using dual HBA port.

Step1: Update Firmware of all Fabric.

Use this LINK to update firmware.

Step2: Update Firmware of FC SAN

See OEM or vendor installation guide. See this LINK for IBM guide.

Step3: Enable hardware virtualization in Server BIOS

See OEM or Vendor Guidelines

Step4: Update Firmware of Server

See OEM or Vendor Guidelines. See Example of Dell Firmware Upgrade

Step5: Install MPIO driver in Hyper-v Host

See OEM or Vendor Guidelines

Step6: Physically Connect FC Tape Library, FC Storage and Servers to correct FC Zone

Step7: Configure Correct Zone and NPIV in Fabric

SSH to Fabric and Type the following command to verify NPIV.

Fabric:root>portcfgshow 0

If NPIV is enabled, it will show NPIV ON.

To enable NPIV on a specific port type portCfgNPIVPort 0 1  (where 0 is the port number and 1 is the mode 1=enable, 0=disable)

Open Brocade Fabric, Configure Alias. Red marked are Virtual HBA and FC Tape shown in Fabric. Note that you must place FC Tape, Hyper-v Host(s), Virtual Machine and FC SAN in the same zone otherwise it will not work.


Configure correct Zone as shown below.


Configure correct Zone Config as shown below.


Once you configured correct Zone in Fabric, you will see FC Tape showing in Windows Server 2012 R2 where Hyper-v Role is installed. Do not update tape driver in Hyper-v host as we will use guest or virtual machine as backup server where correct tape driver is needed. 


Step8: Configure Virtual Fibre Channel

Open Hyper-v Manager, Click Virtual SAN Manager>Create new Fibre Channel


Type Name of the Fibre Channel> Apply>Ok.


Repeat the process to create multiple VFC for MPIO and Live Migration purpose. Remember Physical HBA must be connected to 2 Brocade Fabric.

On the vFC configuration, keep naming convention identical on both host. If you have two physical HBA, configure two vFC in Hyper-v Host. Example: VFC1 and VFC2. Create two VFC in another host with identical Name VFC1 and VFC2. Assign both VFC to virtual machines.

Step9: Attach Virtual Fibre Channel Adapter on to virtual Machine.

Open Failover Cluster Manager,  Select the virtual machine where FC Tape will be visible>Shutdown the Virtual machine.

Go to Settings of the virtual machine>Add Fibre Channel Adapter>Apply>Ok.


Record WWPN from the Virtual Fibre Channel.


Power on the virtual Machine.

Repeat the process to add multiple VFCs which are VFC1 and VFC2 to virtual machine.

Step10: Present Storage

Log on FC storage>Add Host in the storage. WWPN shown here must match the WWPN in the virtual fibre channel adapter.


Map the volume or LUN to the virtual server.


Step11: Install MPIO Driver in Guest Operating Systems

Open Server Manager>Add Role & Feature>Add MPIO Feature.


Download manufacturer MPIO driver for the storage. MPIO driver must be correct version and latest to function correctly.


Now you have FC SAN in your virtual machine



Step12: Install Correct FC Tape Library Driver in Guest Operating Systems.

Download and install correct FC Tape driver and install the driver into the virtual backup server.

Now you have correct FC Tape library in virtual machine.


Backup software can see Tape Library and inventory tapes.


Further Readings:

Brocade Fabric with Virtual FC in Hyper-v

Hyper-V Virtual Fibre Channel Overview

Clustered virtual machine cannot access LUNs over a Synthetic Fibre Channel after you perform live migration on Windows Server 2012 or Windows Server 2012 R2-based Hyper-V hosts

How to upgrade firmware of brocade fabric switch


  • Filezilla FTP Server
  • Filezilla FTP Client
  • Putty
  • Java JRE installed on admin PC
  • Log on credential for Brocade website or respective vendor website e.g. IBM/Dell
  • Downloaded upgrade firmware

Upgrade Path.

  • Fabric OS 5.0.x to 5.2.3 is supported
  • Fabric OS 5.1.x to 5.3.1a is supported, but upgrading from Fabric OS 5.0.x or a previous release directly to 5.3.1a is not.
  • Fabric OS 6.0.0b is only allowed from Fabric OS 5.3.x.
  • Fabric OS 6.1.2c is allowed only from Fabric OS 6.0.0b
  • Fabric OS 6.2.2f is allowed only from Fabric OS 6.1.0a or later.
  • Fabric OS 6.3.2e is allowed only from Fabric OS 6.2.0a or later. You can upgrade non-disruptively from 6.2
  • Fabric OS 6.4.3f is allowed only from Fabric OS 6.3.x. Fabric OS 7.0.2 can be done non-disruptively from Fabric OS 6.4.1a or later.
  • Fabric OS 7.1.2 can be non-disruptively upgraded from 7.0.x and 7.1.x.
  • Fabric OS 7.2.1 can be done non-disruptively from 7.1.x. Disruptively from 7.0.x is supported.
  • Fabric OS 7.3.0 can be done non-disruptively from 7.2.x. Disruptively from 7.1.x is supported

Note:  Disruptively means ports will go offline during the upgrade.

Step1: Turn off firewall.

Turn off firewall on Windows machine where you will install FTP server.

Step2: Configure FTP server

Download Filezilla FTP server for windows.

Install Filezilla FTP server. Installation is pretty simple. just run the installer GUI and accept the default. You may find there are third party software embedded with Filezilla, decline first two and then click next to install FTP server. Once installed. Click Edit, Click Settings. Select following. Setup timed out value to 9999.


Enable logging. so that you can see brocade is connecting to FTP server.


Create an anonymous user account and set password to none.


Set shared folder location and click Set as home dir


Actual location of firmware in my PC.


Step3: Test FTP connectivity

Now install Filezilla client and test connectivity


Step4: Upgrade Firmware in Brocade

Now open Putty, Type IP address of brocade switch. leave the default port 22.


Log on to brocade fabric or rebranded brocade fabric using root and fibranne as password

Type firmwaredownload

IP address: or IP address of your PC where you configured Filezilla FTP server

Username: blank or Hit enter I am using anonymous FTP. No need to type username

Path: /v7.1.2b or the path where you saved firmware. See the screen shoot on FTP client

Password: blank Hit enter I am using anonymous FTP. No need to type password

Do you want to continue? [y/n]:y




Close putty session now. This procedure will reboot the Brocade switch. You are done.

Brocade Reference

Once Brocade Fabric is rebooted, reconnect using putty, log on and type firmwareshow to see the current version of firmware.

If you would like to upgrade from  v7.1.2b to v7.3.0c directly. use the following command. This is a disruptive upgrade procedure.

firmwareDownload –s

IP address: or IP address of your PC where you configured Filezilla FTP server

Username: blank or Hit enter I am using anonymous FTP. No need to type username

Path: /v7.3.0c or the path where you saved firmware. See the screen shoot on FTP client

Password: blank Hit enter I am using anonymous FTP. No need to type password

Do you want to continue? [y/n]:y

Do Auto-Commit after Reboot [Y]: y

Reboot system after download [N]: y

Firmware is being downloaded to the switch. This step may take up to 30 minutes.

In fact this will take approximately 45 minutes to complete. have cup of coffee and relax.

Brocade reference

Install and Configure IBM V3700, Brocade 300B Fabric and ESXi Host Step by Step

Step1: Hardware Installation

Follow the official IBM video tutorial to rack and stack IBM V3700.





Cabling V3700, ESX Host and Fabric.

  • Connect each canister of V3700 Storage to two Fabric. Canister1 FC Port 1—>Fabric1 and Canister 1 FC Port 2—>Fabric2. Canister2 FC Port 1—>Fabric1 and Canister 2 FC Port 2—>Fabric2.
  • Connect two HBAs of each Host to two Fabric.
  • Connect Disk Enclosure to two canister
  • Connect Both Power cable of each devices to multiple power supply

Step2: Initial Setup

Management IP Connection: Once you racked the storage, connect Canister1 Port 1 and Canister 2 Port 1 into two Gigabit Ethernet port in same VLAN. Make LACP is configured in both port in your switch.


Follow the official IBM video tutorial to setup management IP or download Redbook Implementation Guide and follow section 2.4.1


One initial setup is complete. Log on to V3700 storage using Management IP.

Click Monitoring>System>Enclosure>Canister. Record serial number, part number and machine signature.


Step3: Configure Event Notification

Click Settings>Event Notification>Edit. Add correct email address. You must add management IP address of v3700 into Exchange Relay Connector. Now Click test button to check you received email.



Step4: Licensing Features

Click Settings>General>Licensing>Actions>Automatic>Add>Type Activation Key>Activate. repeat the step for all licensed features.


IBM V3700 At a Glance


Simple Definition:

MDisk: Bounce of disk configured in preset RAID or User defined RAID. For example you have 4 SSD hard drive and 20 SAS hard drive. You can chose automatic configuration of storage which will be configured by Wizard. However you can chose to have 1 RAID5 single parity MDisk for SSD and 2x RAID5 MDisk with parity for 20 SAS hard drive. In this case you will have three MDisk in your controller. Simply MDisk is RAID Group.

Pool: Storage Pool act as container for MDisks and available capacity ready to be provisioned.

Volume: Volumes are logical segregation of Pools. Volume can defines as LUNs and ready to be mapped or connected to ESX host or Hyper-v Host.

Step5: Configure Storage

Click Pools>Internal Storage>Configure Storage>Select recommended or user defined. Follow the wizard to complete MDisk.



Step6: Configure Pool


Click Pools>Click Volumes by Pool>Click New Volume>Generic>Select Quantity, Size, Pool then Click Create.




Repeat the steps to create multiple volumes for Hyper-v Host or ESXI host.

Important! In IBM V3700, if you configure storage using GUI, GUI console automatically select default functionality of the storage for example number of mdisk. you will not have option to select disks and mdisk you want. Example, you may want create large mdisk containing 15 disks but GUI will create 3xmdisk which means you will loose lot of capacity by doing so. To avoid this, you can create mdisk, raid and pool using command line.

Telnet to your storage using putty.  type username: superuser and password is your password. Type the following command.
Creating RAID5 arrays and a pool

svctask mkmdiskgrp -ext 1024 -guiid 0 -name Pool01 -warning 80%

Creating a spare with drive 6

svctask chdrive -use spare 6

Creating a RAID Group (12 disk)

svctask mkarray -drive 4:11:5:9:3:7:8:10:12:13:14 -level raid5 -sparegoal 1 0

Creating SSD Raid5 with easy tier (disk0, disk1, disk2 are SSD)

svctask mkarray -drive 1:2:0 -level raid5 -sparegoal 0 Pool01

Now go back to GUI and check you have created two mdisk and a Pool with easy tier activated.

Step7: Configure Fabric

Once you rack and stack Brocade 300B switches. Connect both Brocade switches using CAT6 cable to your Ethernet Switch. This could be your core switch or an access switch. Connect your laptop to network as well.

References are here. Quick Start Guide and Setup Guide

Default Passwords

username: root password: fibranne
username: admin password: password

Connect the console cable provided within brocade box to your laptop. Insert EZSetup cd into cdrom of your laptop. Run Easy Setup Wizard.

Alternatively, you can connect the switch to the network and connect to it via (Give yourself an IP address of Use the username root and the password fibranne

If you don’t want to do that, connect the console cable (provided) to your PC and launch the EZ Setup Software supplied with the switch. Select English > OK.

At the Welcome Screen > Click Next > Click Next > accept the EULA > Install > Done > Select Serial Cable > Click Next > Click Next (make sure HyperTerminal is NOT on or it will fail). It should find the switch > Set its IP details.


Next > Follow Instructions.

Install Java on your laptop. Open browser, Type IP address of Brocade, you can connect to the switch via its web console Once logged in using default username:root and password: fibranne


Click Switch Admin>Type DNS Server, Domain Name, Apply. Click License>Add new License, Apply.



Click Zone Admin>Click Alias>New Alias>Type the name of Alias. Click Ok. Expand Switch Port, Select WWNN>Add members. Repeat for Canister Node 1, Canister Node 2, ESX Host1, ESX Host2, ESX Host 3….



Select Zone Tab> New Zone > Type the Name of Zone, Example vSphere or Hyper_v. Select Aliases>Click Add Members> Add all Aliases.


Select Zone Config Tab>New Zone Config>Type the name of Zone Config>Select vSphere or Hyper_V Zone>Add Members


Click Save Config. Click Enable Config.



Repeat above steps for all fabric.

Step8: Configure Hosts in V3700

Click Hosts>New Host>Fibre Channel Host>Generic>Type the Name of the Host>Select Port>Create Host.





Right Click on each host>Map Volumes.


Step9: Configure ESXi Host

Right Click on ESX Cluster>Rescan for datastores>



Click ESX Host>Configuration>Storage>Add Storage>Click Next>Select Correct and Matching UID>Type the matching Name same as volume name within IBM V3700. Click Next>Select VMFS5>Finish.


Rescan for datatores for all Host again. you will see same data store popped up in all Hosts.

Finding HBA, WWNN

Select ESX Host>Configuration>Storage Adapters



Verifying Multipathing

Right Click on Storage>property>Manage Paths



Finding and Matching UID

Log on to IBM V3700 Storage>Volume>Volumes


Click ESX Host>Configuration>Storage>Devices