IBM SAN Volume Controller
From Wikipedia, the free encyclopedia
In computer data storage, the IBM SAN Volume Controller (SVC) is a block storage virtualization appliance. SVC implements an indirection, or "virtualization", layer in a Fibre Channel storage area network (FC SAN).
Contents |
[edit] Architecture
SVC is always deployed as a cluster of nodes. Each node is a 1U high rack-mounted appliance based on an IBM System x server (SVC machine type is 2145). Each node has at least four Fibre Channel ports and is protected by a uninterruptible power supply. A node runs a Linux kernel and a specialized Virtualization Storage Software environment, that provides proprietary clustering capability. SVC is based on COMmodity PArts Storage System (Compass) architecture, developed at the IBM Almaden Research Center.[1]
SVC uses an in-band architecture which means that data flowing between a host and a storage controller flows through an SVC node. On the front end, SVC presents an interface to a host which looks like a storage controller (like a target). On the SVC's back end, it provides interface to a storage controller that looks like a host (like an initiator).
An SVC cluster consists of several pairs of nodes (up to 4 pairs). Each pair of nodes is called an I/O group and provide write data cache mirroring across the pair. In case of I/O path failure, non-disruptive failover is performed inside I/O group only, via an IBM Subsystem Device Driver (SDD) software.[1]
[edit] Terminology
- Node - a single 1U machine.
- I/O group - a pair of nodes which duplicate each other's write commands.
- Cluster - a set of 1 up to 4 I/O Groups, that are managed as a single entity.
- Master Console - a management GUI for SVC, based on WebSphere Application Server; not installed on any SVC node, but on a separate machine[1]
- Virtual Disk (VDisk) - a unit of storage presented to the host requiring storage.
- Managed Disk (MDisk) - a unit of storage (a LUN) from a real disk array, virtualized by the SVC.
- Extent - an atomic unit of storage; an MDisk is divided into extents; a VDisk is formed from set of extents.
[edit] Performance
SVC holds the current Storage Performance Council (SPC) world record for SPC-1 performance benchmarks, returning over 272K iops (release 4.2.0). There is no faster storage subsystem benchmarked by SPC [2]. The SPC-2 benchmark also returns a world leading measurement over 7GB/s throughput.
[edit] Features
As of release 4.2, the base major features of SVC are:
- Indirection or mapping from virtual LUN to physical LUN
- Servers access SVC as if it were a storage controller. The SCSI LUNs they see represent virtual disks (VDisks) which are allocated in SVC from a pool of storage made up from one or more managed disks (MDisks). A managed disk is simply a storage LUN provided by one of the storage controllers that SVC is virtualising.
- Data migration
- SVC can move data from MDisk to MDisk, whilst maintaining I/O access to the data.
- Using existing LUNs via a feature called Image Mode
- "Image" mode VDisk is a one-to-one representation of an existing MDisk; such MDisk can be easily imported by a host after removing SVC from the data path[clarify]
- Host LUN Mapping
- The set of presented virtual LUNs (VDisks) can be configured independently for each server.
- Fast-write cache
- Writes from hosts are acknowledged once they have been committed into the SVC cache, but prior to be destaged to the underlying storage controllers. Data is protected by being replicated to the other node in the I/O group. Cache size is 8 GiB per node.
The payment for base license is per TB of MDisks. There are some optional features, separately licensed per TB:[1]
- Metro Mirror - synchronous remote replication
- This allows a remote disaster recovery site at a distance of up to about 200km[citation needed]
- Global Mirror - asynchronous remote replication
- This allows a remote disaster recovery site at a distance of thousands of kilometres.
- FlashCopy (FC)
- This is used to create a disk snapshot for backup, or application testing of a single VDisk. It requires 100% storage per copy, and is based on copy-on-write technology (similarly to BCV clone). One source volume can have up to 16 simultaneous targets. Copy-on-write bases on a bitmap with a configurable grain size, as opposed to a journal.[1]
[edit] See also
- IBM Subsystem Device Driver (SDD), a multipathing driver for SVC, originally used by IBM Enterprise Storage Server
- EMC Invista, a competing solution
- Paxos algorithm