Executive Summary:
Fibre Channel is still the transport of choice for many data centers with high bandwidth and high availability requirements. However, iSCSI is a mature storage technology and is being deployed for small departmental operations as well as data center applications. Combining iSCSI and Fibre Channel Storage Area Network (SAN) technologies helps administrators bring all server assets into a common storage infrastructure. Microsoft iSCSI Software Initiator and Microsoft iSNS Server are free software applications that let Windows servers participate in a combined SAN.
|
Modern data centers typically run their most mission-critical business applications on Fibre Channel SANs.
Fibre Channel has a proven track record in enabling fast
performance and high availability of application data as
well as established best practices for data backup and
disaster recovery. Not all business applications, however, require the bandwidth of 4Gbps Fibre Channel, and large data centers might have hundreds
of second-tier standalone rack-mounted servers still using direct-attached
storage. Some find it hard to justify the cost of a $1,000 Fibre Channel host
bus adapter (HBA) when the server itself cost less than $3,000. On the other
hand, standalone servers incur more administrative overhead per server,
particularly for backup operations.
Until the advent of iSCSI, there were few options for economically
integrating all application, Web-hosting, and file servers into the data
center SAN. iSCSI and iSCSI gateways, however, now provide the means
to streamline the management and backup of second-tier servers and
integrate these servers into the Fibre Channel SAN. This integration
extends data center best practices to all server assets and can amortize
the substantial investment in a data center SAN over a much larger
population of attached devices.
Microsoft offers new iSCSI-enabling software, making it possible to
cost effectively bring Windows servers into the data center. Let's look at
the steps required to make this happen and factors you need to consider.
First—a little background on iSCSI.
iSCSI Essentials
Like traditional parallel SCSI,
the iSCSI protocol enables reads
and writes of data in high-performance block format. However,
by serializing SCSI commands, status, and
data, iSCSI overcomes the distance limitations of parallel SCSI cabling and simplifies deployment and maintenance. Because
iSCSI runs over TCP/IP, it can be transported
over conventional Gigabit Ethernet networks
and wide-area IP networks. Figure 1, illustrates how conventional SCSI is
wrapped in TCP/IP for transport.
Using economical Gigabit Ethernet
interface cards and Gigabit Ethernet switches keeps the iSCSI per-server
attachment cost low and works fine in many situations. Some vendors
do provide iSCSI HBAs that optimize iSCSI processing via TCP offload
engines (TOEs) and onboard iSCSI processing logic. iSCSI HBAs are
required for boot from SAN applications, and they're suitable for applications that require high bandwidth, but they increase per-server attachment costs. In this article, I assume standard Gigabit Ethernet NICs. With
the faster 10 Gigabit Ethernet, you lose most of the cost advantage over
Fibre Channel.
For Windows storage management, an iSCSI target appears as just
another storage resource that can be assigned a drive letter, formatted,
and used for applications and data. Instead of being housed inside
the server or connected by parallel cabling, though, the iSCSI storage
resource can be anywhere in an IP-routed network. Because iSCSI is a
block storage protocol, the latency of long-distance connections over
a WAN might have a serious negative effect on performance or cause
timeouts. Typically, iSCSI is best deployed within a data center, campus,
or metro environment.
Microsoft iSCSI Support
Microsoft's introduction of iSCSI initiator and Internet Storage Name
Service (iSNS) software provides an economical means to bring even
low-cost Windows servers and workstations into the data center SAN infrastructure. Microsoft iSCSI Software Initiator enables connection of a Windows host to
an external iSCSI storage array. Microsoft iSNS
Server discovers targets on an iSCSI network.
As of this writing, iSCSI Software Initiator =2.04 is available free on the Microsoft Download Center and requires Windows Server
2003 or later, Windows XP Professional SP1 or
later, or Windows 2000 SP3 or later. Download
it at http://www.microsoft.com/downloads/details.aspx?familyid=12cb3c1a-15d6-4585b385-befd1319f825&displaylang=en. Microsoft iSNS server code is also available as a
free download and requires Windows Server
2003 or Windows 2000 SP4. Download it
at http://www.microsoft.com/downloads/details.aspx?familyid=0dbc4af5-9410-4080a545-f90b45650e20&displaylang=en.
Microsoft has included some attractive
features in iSCSI Software Initiator, including multipathing, security, and support for
server clustering to iSCSI targets. Multipathing with the Microsoft Multipath I/O (MPIO)
driver included in iSCSI Software Initiator
provides for higher availability through failover
and better performance through load balancing. Secure connections between iSCSI initiators and storage targets are supported
with Challenge Handshake Authentication
Protocol (CHAP) and IPsec for data-payload
encryption. Authentication and encryption
might be required when storage data traverses
an untrusted network segment. Support for
clustering enables iSCSI storage to be used for
Microsoft Exchange Server or Microsoft SQL
Server clusters. For the configurations discussed below, the Exchange or SQL Server data
can be managed centrally and protected on the
SAN, while clustering provides high availability
of applications to end users.
iSNS Server isn't mandatory, but it does
simplify iSCSI deployment by enabling automatic discovery of iSCSI target resources. It
can be run on a dedicated server or coexist
with other server applications. Essentially,
iSNS Server combines the capabilities of DNS
with conventional discovery services provided
by the Simple Name Server (SNS) of Fibre
Channel fabrics. In Fibre Channel switches
and directors, for example, the SNS contains
information about all storage assets in the
SAN. As a storage array or tape subsystem is
attached to the SAN, it registers with the SNS.
When Fibre Channel initiators connect to the fabric, they query the SNS for available storage
resources. The resources that are reported to a
specific initiator can be filtered by use of zoning and LUN masking. This prevents initiators
from accessing unauthorized storage assets
(e.g., stopping a Windows server from binding
to a UNIX storage array).
The iSCSI Gateway
An iSCSI gateway provides protocol conversion
between iSCSI initiators and Fibre Channel–
attached storage targets. An iSCSI gateway effectively proxies for each side, presenting a virtual
Fibre Channel initiator to the real Fibre Channel
target and a virtual iSCSI target to the real iSCSI
initiator, as Figure 2 shows. Consequently, when
setting up an iSCSI gateway, you must follow the
respective rules of both protocols.
Because Fibre Channel connections today
are typically 2Gbps or 4Gbps and iSCSI is typically 1Gbps, you can aggregate more iSCSI servers per Fibre Channel storage port on an iSCSI
gateway than you can Fibre Channel servers.
In conventional business application environments running at 1Gbps end to end, a typical
ratio of servers to storage ports (known as the
fan-in ratio) might be 7:1. An iSCSI gateway that
provides 1Gbps port connections for iSCSI initiators and 4Gbps connections for storage ports
can enable a much higher fan-in ratio of 18:1 or
greater. For iSCSI initiators, you implement the
higher fan-in ratio by attaching multiple iSCSI
servers to a Gigabit Ethernet switch, which in
turn provides a 1Gbps connection to the iSCSI
gateway for every fan-in group. An iSCSI gateway that offers four 1Gbps Ethernet ports and
several 4Gbps Fibre Channel ports can support
70 or more iSCSI initiators concurrently.
The other factor to consider when scoping fan-in ratios is the maximum number of
concurrent iSCSI sessions per gateway port
that the storage vendor has certified. An iSCSI
gateway might support up to 50 iSCSI sessions
per Gigabit Ethernet port, whereas the storage
vendor might certify only a more conservative
20 sessions per port. Each storage vendor does
its own certification and testing of iSCSI gateway products and sets its own supported limit
for each.
Bringing iSCSI Servers into
the SAN
As you plan for integrating iSCSI-attached
Windows servers into your SAN, identify the collective storage capacity required for all the
newly attached iSCSI servers, the average storage traffic generated by the second-tier applications running on the servers, and the initial
fan-in ratio that best suits the aggregate traffic
load to help size both SAN and iSCSI gateway
requirements. It might be fairly easy to identify
the amount of storage capacity each second-tier server needs, but it's usually more difficult
to identify storage traffic patterns and loads,
particularly for "bursty" applications. It's best,
then, to start with a fairly conservative fan-in
ratio (e.g., 7:1 or lower) and gradually increase
the number of iSCSI servers per iSCSI gateway
port until you reach the optimum fan-in for
your situation.
Deploying second-tier iSCSI servers into
an existing Fibre Channel SAN requires three
basic steps: configuring the existing Fibre
Channel storage array for additional hosts,
setting up the iSCSI gateway for both virtual
Fibre Channel initiator and virtual iSCSI target connections, and installing the Microsoft
iSCSI initiator and iSNS (if desired) software
for host connection. No one step is particularly
difficult, but the process might require collaboration between server administrators and
SAN administrators if those functions aren't
combined in your environment.
Step 1: Configuring SAN storage for new iSCSI hosts. Because you're using an iSCSI
gateway to integrate additional servers, no special process is required to configure additional
storage capacity. From the SAN administrator's
standpoint, the new LUNs are being configured for traditional Fibre Channel initiators,
which in fact have a virtual existence within
the iSCSI gateway. Consequently, you create
additional LUNs with the desired capacity as
usual by using the storage vendor's configuration utility, and the appropriate number of new
storage ports (determined by the fan-in ratio)
are connected to the SAN fabric.
Although an iSCSI gateway platform might
allow direct connection between the gateway
and SAN storage, data center administrators
might prefer to drive all storage connections
through Fibre Channel directors or switches.
In this case, you connect both storage ports
and iSCSI gateway Fibre Channel ports to the
fabric and configure zoning or LUN masking
at the fabric level. Each new storage port is
represented by a unique World Wide Name
(WWN), which you use to configure zoning
and connectivity to the iSCSI gateway.
Every storage vendor provides its own
management utility for creating LUNs from the
total capacity of the storage array. Typically,
these utilities are GUI-based and fairly simple
to configure. Likewise, individual fabric switch
vendors provide utilities for configuring switch
ports, zone groups, and LUN masking. It's
important to remember that although you're
configuring SAN resources to connect iSCSI
initiators, the storage arrays and fabric see only
Fibre Channel initiators proxied by the iSCSI
gateway.
Step 2: Setting up the iSCSI gateway. The
iSCSI gateway configuration has two basic
components. You configure and bind the
iSCSI initiators to their respective virtual iSCSI
targets. And, likewise, you configure and bind
the real Fibre Channel targets to their respective virtual Fibre Channel initiators. Typically,
the configuration utility provided by the iSCSI
gateway vendor streamlines this dual process
so that when you configure an iSCSI initiator,
the proxy Fibre Channel initiator is created
automatically.
You register iSCSI initiators by iSCSI identifiers and register SAN resources by WWNs
and Fibre Channel IDs (FCIDs) on the iSCSI
gateway. You must determine these respective
identifiers in advance to properly configure the
iSCSI gateway. In Figure 3, the configuration
utility for an iSCSI gateway (in this example,
a Brocade M2640) shows an iSCSI initiator
defined by iSCSI identifier and alias, IP address,
and proxied WWNs.
The iSCSI gateway might include additional utilities for implementing CHAP or
IPsec for security. As with general address
information, you should determine any CHAP
parameters or IPsec addressing in advance to
simplify gateway installation.
Because each iSCSI gateway vendor provides its own unique utility for configuring
iSCSI hosts and SAN targets, I can't provide a
step-by-step example for gateway configuration. The common requirements, though, are
to configure iSCSI initiator properties, configure proxied targets, and define LUN masking
parameters for the target volumes.
Step 3: Configure the iSCSI hosts. Along
with its free iSCSI Software Initiator, Microsoft
provides detailed installation instructions in
a downloadable users' guide. Once you've
installed the software on a Windows server, the
basic steps are to assign an iSCSI initiator node
name for the server, configure any desired
security features, discover (via iSNS) or define
targets available for the server, and bind the
iSCSI host to the appropriate targets.
After you've set the initiator parameters on
the General tab of the iSCSI Initiator Properties dialog box, use the Discovery tab to either discover through iSNS or manually enter the IP
address of intended targets. If you install iSNS
on a LAN-attached server, it will periodically
check for the existence of any additional iSCSI
targets. In this example, those targets are represented by the iSCSI gateway. Alternatively,
click Add in the Target Portals area of the Discovery tab to manually identify targets.
After you've defined targets, use the Targets
tab to select and log on to the proxied iSCSI
targets. As Figure 4 shows, the logon window
also enables you to select whether a target is
persistent and whether multipathing is used
for this connection. Click Advanced in the
logon window to configure cyclical redundancy check (CRC), CHAP, and IPsec settings
for this connection.
Once the logon session between the iSCSI
initiator and proxied iSCSI target is active, you
can configure the iSCSI storage volume via the
Windows Disk Management utility, assign it a
drive letter, and format it for use.
A Dedicated IP SAN
Compared with a messaging LAN (i.e., a LAN
that carries application traffic as opposed to
storage traffic), a Fibre Channel SAN is inherently a separate network, with its own cabling
scheme, protocols, and fabric infrastructure.
If properly designed, congestion on a Fibre
Channel SAN should be minimal and high
availability is enhanced through redundant
pathing between initiators and targets.
One of the more marketed aspects of
iSCSI is that it can be run over common
LAN infrastructures by using relatively cheap
Gigabit Ethernet switches. This means that
storage and messaging traffic coexists on the
same LAN. Certainly there are no significant
technical barriers to prevent this. However,
Microsoft and, in particular, storage vendors
typically advise against combining storage
and messaging traffic on the same network.
Messaging traffic can withstand wide fluctuations in latency, congestion, and packet
loss and recovery; storage traffic can't. Consequently, the Ethernet network between
the iSCSI gateway and the complex of iSCSI
initiators it's serving should be a dedicated IP
SAN, as Figure 5 shows.
Designing a dedicated IP SAN from the
start takes advantage of more low-cost perserver connection and use of commodity
Gigabit Ethernet switches, and it allows you to
scale the IP SAN over time to accommodate additional servers-without significantly impacting (or being-impacted by) the corporate LAN.
iSCSI is now a mature storage technology and is being deployed for small
departmental operations as well as data
center applications. Today, Fibre Channel
is still the transport of
choice for many data
centers with high
bandwidth and high
availability requirements. Combining
iSCSI and Fibre Channel SAN technologies
helps administrators bring all server assets into
a common storage infrastructure and provide
best practices handling of all corporate data.