IscsiInitiator

Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.

Summary

iSCSI enables building inexpensive storage area networks (SAN) over a TCP/IP network. Unlike other network storage protocols, such as Fibre Channel (which is the foundation of most SANs), it requires only the simple and ubiquitous ethernet interface (or any other TCP/IP-capable network) to operate. This enables low-cost centralization of storage without all of the usual expense normally associated with Fibre Channel storage area networks.

In iSCSI speak, an Initiator is a client device and a Target is a device serving storage (which can be disks, tapes, cd, dvd, scanners, etc...).

This specification covers the changes necessary to install the Intrepid Ubuntu Server to an iSCSI disk.

More details on http://en.wikipedia.org/wiki/ISCSI

Rationale

As we want to develop the usability of our server component, iSCSI support is becoming an absolute requirement because :

  • all major server distros support it
  • it is based on RFC documented open standards
  • it is often a requirement for people setting up virtual machines
  • it is the most inexpensive way to build a SAN

We'll focus on supporting Ubuntu Server as an Iscsi Initiator.

Use Cases

Initiator

Alice wants to use her SAN to store Ubuntu Server images to be able to boot Ubuntu Servers from her SAN.

Joe is an ISV that would like to build a virtual appliance using JeOS. Some of his customers have created their SAN using a dedicated Gb Ethernet network and require him to use this as the storage space for all the data used by his application.

Implementation

Initiator

The Open-iSCSI project is the newest implementation. It has been merged in 2.6.15 and is available in Ubuntu kernels. The user space utilities can be found in the open-iscsi package in universe. This is the project that currently sees the most activity on the development front.

  • open-iscsi is currently in main.
  • Add support to boot for iscsi. That requires a ramdisk hook.
  • Installer support. Document in the installation guide how to preseed iscsi during installation (partman supports iscsi but is only available in preseeding)

Test Plan

NetApp is the most used iscsi target. Intel and Dell are also options.

  • Ask for testers on the ubuntu-server mailing list.
  • Ask for free hardware to run some tests.
  • Buy some hardware to at least do some minimal tests before release.
  • Need a test network, preferably Gb or 10Gb Ethernet network.

Outstanding Issues

BoF agenda and discussion

Target support

Target support has been deferred.

Use cases

Bob is a SysAdmin that has been asked to setup a staging environment for a server farm for hosting virtual machines. As budget has not been allocated yet to his project, he would like to be able to set it up using Ubuntu server as the serving device for the disks that he connected to his machine.

  • Virtualization guests:
    • using iscsi over virtualized network (preferred as it allows more fancy stuff to happen in the guest such as mirroring, raid etc.)
    • using iscsi as exposed by the host
  • Databases (like oracle rac) on iscsi drives (because these might use the fast disk performances of iscsi backed devices).

Implementation

iSCSI enterprise target is the open source target implementation for Linux. It based on the Ardis iSCSI Linux implementation and requires the 2.6.14 kernel or later. This implementation has not been merged into the mainline kernel nor in the Ubuntu kernels.

http://linux-iscsi.org/index.php/Main_Page


CategorySpec

IscsiInitiator (last edited 2008-08-06 16:20:07 by localhost)