Until recently the only VMware-developed enterprise backup solution for ESX required organizations to invest in expensive Fibre Channel storage solutions. But when ESX 3.0.2 and VMware Consolidated Backup (VCB) 1.0.3 are used in conjunction with one another, it enables support for VCB over the Internet small computer systems interface (iSCSI). And all I can say is "Hallelujah! Praise Optimus!"
VMware Consolidated Backup (VCB) is VMware's officially sanctioned enterprise-level method for backing up virtual machines (VMs). The problem is that until recently VMware left a lot of IT administrators out in the cold by failing to provide support for iSCSI. VMware recognized this mistake, and beginning with ESX 3.0.2 and VCB 1.0.3, iSCSI is a supported option for backing up VMs. This article shows readers how to configure ESX and VCB for use with iSCSI. In this, part one of our series, we explore how to prepare ESX for iSCSI.
Because many readers are not familiar with iSCSI, I have decided first to demonstrate how to attach an iSCSI LUN to an ESX server prior to configuring VCB. For guidance on how to configure a server running iSCSI, read 'Hosting iSCSI targets on Ubuntu Linux" on SearchEnterpriseLinux.com.
Configuring ESX For iSCSI
This section assumes you have not configured ESX for iSCSI and have not attached an iSCSI LUN to an ESX server. If these assumptions don't apply in your case, skip this section.
Launch VMware's VirtualCenter client as you generally would, but be sure to authenticate with administrator credentials so that you can make ESX system configuration changes.
Once you have logged in to VirtualCenter, find the ESX server(s) that you want to configure for iSCSI, and click on its name on the list on the left-hand side.
Click the Configuration tab on the right-hand side of VirtualCenter.
In the Hardware menu, click the Networking link. The right-hand side of VirtualCenter should now resemble the following image:
Click the Add Networking link in the upper right-hand side of the window.
Three connection types will be listed: Virtual Machine, VMkernel, and Service Console. Select VMkernel, because it is the connection type used by the iSCSI initiator. Click Next.
You can now choose to create either a new virtual switch or the port group on an existing virtual switch. The only requirement is that the network interface card (NIC) used by the virtual switch can access the iSCSI server. As you can see from the following image, I have elected to use an existing virtual switch, allowing VMotion to have full use of vSwitch1 and its dedicated NIC.
In a production environment, you would want any port groups used for iSCSI to have their own dedicated NICs as well. Click Next to continue.
Choose a name for your new port group. I called mine simply "iSCSI." Being descriptive is good. Specify the IP address and subnet mask for the connection, and click Next.
Click Finish to complete the creation of your iSCSI port group.
But wait, there's more. You may have gotten a warning that looks like this:
No worries. Just indicate that you want to configure said value. A new window will appear. Enter the default gateway of the subnet that the iSCSI port group is on and click OK to save your changes.
That's it. You have finished creating your iSCSI port group. Now it's time to add an iSCSI LUN to the ESX server.
Adding an iSCSI LUN to an ESX server
For those of you who skipped the first section, here is quick recap. (And for those of you who need additional updates: The Red Sox won the 2007 World Series and Hillary Clinton is the presumed nominee for the 2008 Democratic nomination.) Those of you who read the previous section can ignore the next three steps; you have already performed them.
Launch your VirtualCenter client as you generally would, but be sure to authenticate with administrator credentials so that you can make ESX system configuration changes.
Once you are logged into VirtualCenter, find the ESX server(s) that you wish to attach the iSCSI LUN to and click on its name on the list on the left-hand side.
Click the "Configuration" tab on the right-hand side of VirtualCenter.
In the Hardware menu, click the Storage Adapters link. The right-hand side of VirtualCenter should now resemble the following image:
The first item under the label "iSCSI Software Adapter" should be selected. If it is not, select it. What did you think I was going to say? Jump up and down? Sheesh. Everyone's a comedian.
Lower and to the right is a link called Properties. Click on it.
A new window will appear that will allow you to configure the iSCSI adapter. You will notice that the iSCSI initiator is not yet fully enabled. To fully enable it click on the Configure button. Under the Status section, ensure that the checkbox next to Enabled is checked. Click the OK button .
Enabling the iSCSI adapter sometimes takes a few moments. Your best bet is to close the Properties modal by clicking the Close button. Then click on some other section of the ESX server's configuration, such as the Networking link, once more. Wait a minute, then click on Storage Adapters and select the first item under the iSCSI Software Adapter link again. Click on the Properties link for a second time.
The section of the modal window that pops up and is labeled "iSCSI Properties" should now list the name, alias, and discovery methods of the configured iSCSI adapter. It should look similar to the following image:
Next click on the tab labeled "Dynamic Discovery."
This is where we tell ESX to look for iSCSI LUNs. Click the Add button to add an iSCSI server. Enter the IP address of the iSCSI server. Unless you have changed the port that the iSCSI server runs on; port 3260 is fine, as it is the default iSCSI service port. Click OK. A task will pop up in the VirtualCenter's task queue, but don't expect the operation to complete instantly. The window may seem to lock up for a minute or two.
Now that ESX knows where to query for iSCSI LUNs, you can force the iSCSI host bus adapter to re-scan the targets by clicking on the Re-scan link in the upper left-hand corner of VirtualCenter. This brings up a new window that resembles the following image:
After the re-scan is complete, the bottom portion of VirtualCenter will reflect the fact that a new LUN (or LUNs) has been found on the iSCSI server. The information will resemble the following image:
We're in the home stretch now. Click on the Storage link under the Hardware section for this ESX server. It is time to add the iSCSI LUN to the storage pool to which we just pointed ESX.
Click the Add Storage link in the upper right-hand section of the window.
A new window will appear that allows you to configure a new storage device for ESX. When adding an iSCSI LUN, select the Disk/LUN option and click Next.
The LUN(s) available on the iSCSI server should appear in this window. My iSCSI server exposes only one LUN, as can be seen in the following image:
Select the correct LUN and click Next.
In this example, the LUN is not formatted with VMware Virtual Machine File System version 3 (VMFS-3) and so VirtualCenter indicates that the hard drive is blank. Click Next.
You have an opportunity to name the new LUN. I name my LUNs according to a convention I developed:
This is the prefix. The next portion is either "lcl" or "san," depending on whether the storage is local to the ESX server or on a SAN. Notice I do not list the Network File System (NFS) in my convention. Why? While NFS is a valid storage type for ESX, it does not support VMFS-3, so I have never used it. The last portion of the convention is one of the following
- vmsXX or hostname
If this were a local LUN, I would name it "storage-lcl-mandy." But because it is the first LUN with the VMFS-3 file system I have attached to the ESX server on which I intend to put VMs, I will call it "storage-san-vms00." It is important to preserve the continuity of the number system for all ESX servers that use this storage in order to easily identify a LUN by name. Name the LUN and click Next.
It is OK to choose the default block size. Click Next.
Click Finish to complete the task of adding an iSCSI LUN to your ESX server. Now the Storage screen should have a new iSCSI LUN like in the following image:
Congratulations! You have successfully configured ESX for iSCSI and added an iSCSI LUN to an ESX server. Simply wash, rinse and repeat for each ESX server that should access the same iSCSI LUN.
In part two of this series, I'll discuss how to configure a Windows 2003 server to be a VCB proxy using iSCSI.
Andrew Kutz is an analyst at Burton Group and a principal consultant at lostcreations. He is also a Microsoft Certified Solution Developer (MCSD), a SANs/GIAC Certified Windows Security Administrator (GCWN) GOLD and a VMware Certified Professional (VCP) for Virtual Infrastructure 3 (VI3). Kutz is the author of the popular open source project Sudo for Windows.