Main Page

The Linux SCSI Target Wiki

(Difference between revisions)
Jump to: navigation, search
m
m (Undo revision 15858 by Marcf (talk))
 
(111 intermediate revisions not shown)
Line 2: Line 2:
{| id="mp-topbanner" style="width:100%; background:#f6f6f6; margin-top:0px; border:1px solid #ddd;"
{| id="mp-topbanner" style="width:100%; background:#f6f6f6; margin-top:0px; border:1px solid #ddd;"
| style="width:61%; color:#000;" |
| style="width:61%; color:#000;" |
-
<!-- "Welcome to "linux-iscsi.org" and Article Count -->
+
<!-- "Welcome to "linux-io.org" and Article Count -->
{| style="width:280px; border:none; background:none;"
{| style="width:280px; border:none; background:none;"
| style="width:280px; text-align:center; white-space:nowrap; color:#000;" |
| style="width:280px; text-align:center; white-space:nowrap; color:#000;" |
<div style="font-size:162%; border:none; margin:0; padding:.1em; color:#000;">Welcome to {{LIO servername}},</div>
<div style="font-size:162%; border:none; margin:0; padding:.1em; color:#000;">Welcome to {{LIO servername}},</div>
-
<div style="top:+0.2em; font-size:95%;">the standard Unified [[Target]] in Linux.</div>
+
<div style="top:+0.2em; font-size:95%;">the Linux SCSI Target wiki.</div>
<div id="articlecount" style="width:100%; text-align:center; font-size:85%;">[[Special:Statistics|{{NUMBEROFARTICLES}}]] articles, [[Special:Statistics|{{NUMBEROFVIEWS}}]] pageviews</div>
<div id="articlecount" style="width:100%; text-align:center; font-size:85%;">[[Special:Statistics|{{NUMBEROFARTICLES}}]] articles, [[Special:Statistics|{{NUMBEROFVIEWS}}]] pageviews</div>
|}
|}
Line 12: Line 12:
| style="width:13%; font-size:95%;" |
| style="width:13%; font-size:95%;" |
* [[Targetcli]]
* [[Targetcli]]
-
* [[Target]]
+
* [[LIO]]
-
* [[RTS OS]]
+
* [[{{C}}]]
| style="width:13%; font-size:95%;" |
| style="width:13%; font-size:95%;" |
* [[Downloads]]
* [[Downloads]]
Line 21: Line 21:
* [[Support]]
* [[Support]]
* [[Ecosystem]]
* [[Ecosystem]]
-
* [[RisingTide Systems|RisingTide]]
 
|}
|}
Line 31: Line 30:
<!-- Summary -->
<!-- Summary -->
{{Main Page Subbox|#f2ddce|#bfafa3|Summary|
{{Main Page Subbox|#f2ddce|#bfafa3|Summary|
-
'''LIO''' ('''{{LIO servername}}''') is the standard open-source Unified [[Target]] in Linux. It supports all prevalent storage fabrics, including [[iSCSI]], [[Fibre Channel]] ([http://www.qlogic.com QLogic]), [[Fibre Channel over Ethernet|FCoE]], [[InfiniBand]]/[[SRP]] ([http://www.mellanox.com/ Mellanox]), [[vHost]], FireWire / iEEE 1394, USB, etc. LIO has replaced [[STGT]] as the standard Target with Linux kernel version 2.6.38 in early 2011.
+
'''{{Target}}''' ('''{{T}}&#0153;''') is the standard open-source [[SCSI]] target in Linux. It supports all prevalent storage fabrics, including [[Fibre Channel]] ([http://www.qlogic.com QLogic], Emulex), [[FCoE]], iEEE&nbsp;1394, [[iSCSI]] (incl. Chelsio offload support), NVMe-OF, [[iSER]] ([http://www.mellanox.com/ Mellanox] [[InfiniBand]]), [[SRP]] (Mellanox InfiniBand), USB, [[vHost]], etc.
-
The LIO Unified Target has become the Linux iSCSI target of choice for many volume storage appliance vendors, including [http://www.buffalotech.com/ Buffalo], [http://www.netgear.com/ Netgear], [http://www.qnap.com/ QNAP], etc., allowing them to achieve [[VMware]] Ready certifications, including [[VMware vSphere|vSphere]]&nbsp;5 with VAAI. LIO includes [[targetcli]], a management shell and API for the Unified Target with a single namespace for all storage objects.
+
The advanced feature set of {{Target}} has made it the SCSI target of choice for many storage array vendors, for instance allowing them to achieve [[VMware]]&reg; Ready certifications. Native support for {{T}} in QEMU/[[KVM]], libvirt, and OpenStack&trade; ([https://wiki.openstack.org/wiki/Cinder/LIO-Grizzly setup], [https://review.openstack.org/#/c/18274/ code]) makes it an attractive storage option for cloud deployments.
-
LIO and targetcli are developed by {{RTS full}}, a data storage systems and software company located in the Silicon Valley.
+
{{T}} includes [[targetcli]], a management shell and API with a single namespace for all storage objects.
 +
 
 +
{{T}} and targetcli are developed by {{Company}}, a data storage systems and software company located in Mountain View in the Silicon Valley.
}}
}}
|}
|}
Line 48: Line 49:
<!-- Target -->
<!-- Target -->
-
{{Main Page Subbox|#cef2e0|#a3bfb1|[[Target]]|'''[[Target#Fabric modules|Unified target]]'''
+
{{Main Page Subbox|#cef2e0|#a3bfb1|[[LIO]]|'''[[LIO#Fabric modules|Frontend]]'''
-
Fabric modules implement the frontend of the SCSI target.
+
-
* [[Fibre Channel]] - [http://www.qlogic.com QLogic]: released
+
Fabric Modules implement the protocols to transmit data over diverse fabrics, providing transport media independence.
 +
 
 +
* [[Fibre Channel]] - [http://www.qlogic.com QLogic]: released, Emulex: released
* [[Fibre Channel over Ethernet]] (FCoE): released
* [[Fibre Channel over Ethernet]] (FCoE): released
-
* FireWire / iEEE 1394: released
+
* iEEE 1394: released
-
* [[iSCSI]] (SCSI over IP): released
+
* [[IBM vSCSI]] for [http://www-03.ibm.com/systems/p/ IBM System p]: RC
* [[IBM vSCSI]] for [http://www-03.ibm.com/systems/p/ IBM System p]: RC
-
* [[InfiniBand]] - [http://www.mellanox.com Mellanox]: released
+
* [[iSCSI]] (SCSI over IP) - software: released, Chelsio: released
-
* [[tcm_loop]] [[SCSI]] virtualization: released
+
* [[iSER]] ([http://www.mellanox.com Mellanox] [[InfiniBand]]): released
 +
* [[Loopback]] [[SCSI]] virtualization: released
 +
* NVMe-OF: In development
 +
* [[SRP]] ([http://www.mellanox.com Mellanox] [[InfiniBand]]): released
* USB Gadget: released
* USB Gadget: released
-
* [[vHost]] with QEMU virtio and virtio-scsi PV guests: released
+
* [[vHost]] with QEMU/KVM virtio and virtio-scsi PV guests: released
 +
 
 +
'''[[LIO#Backstores|Backend]]'''
-
'''[[Target#Backstores|Storage media]] independence'''
+
Backstores implement the methods to access data on devices, providing storage media independence.
-
Backstores implement methods of accessing data on disk.
+
-
* [[Target#Backstores|Backstores]]: [[IBLOCK|SATA]], [[PSCSI|SAS]], [[PSCSI|SCSI]], [[IBLOCK|BluRay]], [[IBLOCK|DVD]], [[IBLOCK|FLASH]], [[IBLOCK|USB]], [[RAMDISK|ramdisk]], etc.
+
* [[LIO#Backstores|Backstores]]: [[IBLOCK|SATA]], [[PSCSI|SAS]], [[PSCSI|SCSI]], [[IBLOCK|SSD]], [[IBLOCK|FLASH]], [[IBLOCK|DVD]], [[IBLOCK|USB]], [[RAMDISK|ramdisk]], etc.
* Virtualization of storage media; transparent mapping of I/O to LUNs
* Virtualization of storage media; transparent mapping of I/O to LUNs
-
* No hard limits on number of LUNs/Target; maximum LUN size &#190;PB
+
* No hard limits on number of LUNs/target; maximum LUN size &#190;PB
'''Architecture'''
'''Architecture'''
-
* High-performance, non-blocking, multithreaded architecture with SSE4.2 support.
+
 
-
* [[Target#CPUs|CPU architectures]]: x86, ia64, Alpha, [[PlayStation 3|Cell]], [[Platforms#Nintendo Gamecube|PPC]], [[TS-7800|ARM]], [[PlayStation 2|MIPS]], etc.
+
The {{Target}} engine implements the generic SCSI semantics.
-
* [[targetcli#Download|Distributions]]: [[CentOS]], [[Debian]], [[Fedora]], [[openSUSE]], [[RHEL]], [[Scientific Linux]], SLES, [[Ubuntu]]
+
 
 +
* High-performance, non-blocking, multithreaded architecture with SSE4.2 support
 +
* [[LIO#CPUs|CPU architectures]]: x86, ia64, Alpha, [[PlayStation 3|Cell]], [[Platforms#Nintendo Gamecube|PPC]], [[TS-7800|ARM]], [[PlayStation 2|MIPS]], etc.
 +
* [[targetcli#Download|Distributions]]: [[CentOS]], [[Debian]], [[Fedora]], [[openSUSE]], [[RHEL]], [[Scientific Linux]], [[SLES]], [[Ubuntu]]
* [[Platforms]]: PC architecture, Sony [[PlayStation 2|PS2]]/[[PlayStation 3|PS3]], [[Platforms#Raspberry Pi|Raspberry Pi]], Technologic [[TS-7800]]
* [[Platforms]]: PC architecture, Sony [[PlayStation 2|PS2]]/[[PlayStation 3|PS3]], [[Platforms#Raspberry Pi|Raspberry Pi]], Technologic [[TS-7800]]
-
* No single point of failure within either logical or physical connections
 
'''Advanced [[SCSI]] feature set'''
'''Advanced [[SCSI]] feature set'''
-
* Persistent Reservations ([[Persistent Reservations|PRs]])
+
 
-
* Asymmetric Logical Unit Assignment ([[Asymmetric Logical Unit Assignment|ALUA]])
+
* [[Persistent Reservations]] (PRs)
 +
* [[Asymmetric Logical Unit Assignment]] (ALUA)
 +
* [[Error Recovery Level]]s (ERL&#61;0,1,2)
 +
* Active/active task migration and session continuation ([[Error Recovery Level#2|ERL&#61;2]])
* Protocol multiplexing, load-balancing and failover ([[Multiple Connections per Session|MC/S]])
* Protocol multiplexing, load-balancing and failover ([[Multiple Connections per Session|MC/S]])
-
* Full Error Recovery ([[Error Recovery Level|ERL]]&#61;0,1,2)
+
* T10 Data Integrity Format ([[DIF]])
-
* Active/active task migration and session continuation ([[Error Recovery Level#2|ERL&#61;2]])
+
* [[vStorage APIs for Array Integration]] (VAAI)
-
* Thin [[News#LUN provisioning|LUN provisioning]] (TRIM)
+
-
}}
+
-
 
+
-
<!-- Compatibility and certifications -->
+
-
{{Main Page Subbox|#cef2e0|#a3bfb1|Compatibility and certifications|LIO is compatible to Initiators of the following operating systems:
+
-
 
+
-
* Microsoft: Windows Server 2003/2008/R2 and Windows XP/Vista/7
+
-
* Apple [[Mac OS X]] (via third-party initiator)
+
-
* Linux: [[RHEL]]&nbsp;4/5/6, SLES&nbsp;10.3/11, [[CentOS]], [[Debian]], [[Fedora]], [[openSUSE]], [[Ubuntu]]
+
-
* Unix: Solaris&nbsp;10, OpenSolaris, HP-UX
+
-
* VMs: [[VMware&nbsp;vSphere|vSphere]]&nbsp;5 (incl. VAAI), Red&nbsp;Hat [[Kernel-based Virtual Machine|KVM]], Microsoft Hyper-V, Oracle xVM/VirtualBox, Xen
+
-
 
+
-
LIO enabled [[VMware]] Ready certifications (incl. [[VMware vSphere|vSphere]]&nbsp;5 with VAAI) with [http://www.buffalotech.com/ Buffalo] and others. It also passes the Microsoft [http://en.wikipedia.org/wiki/Windows_Server_2008 Windows Server 2008] / [http://en.wikipedia.org/wiki/Windows_Server_2008_R2 R2] [http://en.wikipedia.org/wiki/High-availability_cluster Failover Cluster] compatibility test suites.
+
}}
}}
|}
|}
Line 103: Line 100:
<!-- targetcli -->
<!-- targetcli -->
-
{{Main Page Subbox|#cedff2|#a3b0bf|[[Targetcli]]|[[targetcli]] provides the fabric agnostic single-node management shell for LIO Unified Targets. targetcli aggregates and presents all SAN functionality via the RTSlib library and API [[http://www.risingtidesystems.com/doc/rtslib-gpl/html HTML]][[http://www.risingtidesystems.com/doc/rtslib-gpl/pdf/rtslib-API-reference.pdf PDF]] to the Unified Target.  
+
{{Main Page Subbox|#cedff2|#a3b0bf|[[Targetcli]]|[[targetcli]] provides the fabric agnostic single-node management shell for {{T}}. targetcli aggregates and exports all {{T}} SAN functionality via the RTSlib library and API {{Lib Ref Guide HTML}}{{Lib Ref Guide PDF}}.
}}
}}
-
<!-- RTS OS -->
+
<!-- Compatibility and certifications -->
-
{{Main Page Subbox|#cedff2|#a3b0bf|[[RTS OS]]|[[RTS OS]] integrates the Unified [[Target]] and [[targetcli]] into a single-node Unified Storage operating system ([http://www.risingtidesystems.com/doc/RTS%20OS%20Admin%20Manual%20CE.pdf Admin Manual]). RTS OS supports [[VMware]] Ready certification, including [[VMware vSphere]]&nbsp;5 with VAAI.
+
{{Main Page Subbox|#cedff2|#a3b0bf|Compatibility and certifications|{{T}} works with Initiators of the following operating systems:
-
An [[RTS OS#Subscription|RTS OS subscription]] provides access to additional RTS OS packages and update services.
+
* Microsoft: Windows&reg; Server 2008/R2/2012 and Windows&reg; XP/Vista/7/8
 +
* Apple [[Mac OS X]] (via third-party initiator)
 +
* Linux: [[CentOS]], [[Debian]], [[Fedora]], [[openSUSE]], [[RHEL]], [[Scientific Linux]], [[SLES]], [[Ubuntu]]
 +
* Unix: Solaris&nbsp;10, OpenSolaris, HP-UX
 +
* VMs: [[VMware&nbsp;vSphere|vSphere]]&trade;&nbsp;5, Red&nbsp;Hat [[Kernel-based Virtual Machine|KVM]], Microsoft Hyper-V, Oracle xVM/VirtualBox, Xen
-
RTS OS is currently being extended into RTS Live, a cluster storage operating system that is based on [[RTS Director]].
+
{{T}} enables [[VMware]] Ready certifications (incl. [[VMware vSphere|vSphere]]&trade;&nbsp;5). It also passes the Microsoft [http://en.wikipedia.org/wiki/Windows_Server_2008 Windows&reg; Server 2008] / [http://en.wikipedia.org/wiki/Windows_Server_2008_R2 R2] [http://en.wikipedia.org/wiki/High-availability_cluster Failover Cluster] compatibility test suites.
}}
}}
<!-- High availability -->
<!-- High availability -->
-
{{Main Page Subbox|#cedff2|#a3b0bf|[[Network RAID1|High availability]] and clustering|LIO is designed from gound up to support highly available and cluster storage:
+
{{Main Page Subbox|#cedff2|#a3b0bf|[[Network RAID1|High availability]] and clustering|{{T}} is designed from ground up to support highly available and cluster storage:
* Deeply embedded high availability ([[Network RAID1]])
* Deeply embedded high availability ([[Network RAID1]])
* Scale-out clusters and disaster recovery solutions
* Scale-out clusters and disaster recovery solutions
}}
}}
-
<!-- Initiator -->
 
-
{{Main Page Subbox|#cedff2|#a3b0bf|[[Core-iSCSI|Initiator]]|The [[Core-iSCSI]] Initiator is a high-end iSCSI Initiator that resolves a number of known issues with the [[Open-iSCSI]] standard Linux Initiator.
 
-
 
-
Core-iSCSI is available on Linux and Windows, and it has been ported to a wide range of [[platforms]] and devices, including:
 
-
 
-
* Linksys [[OpenWRT]] (MIPS)
 
-
* [[Motorola ROKR E2]] cell phone (XScale)
 
-
* [[Neuros OSD]] Set-top-box (ARM9)
 
-
* [[Nokia 770]] and [[Nokia N800]] Internet Tablets (ARM9 and Cortex)
 
-
* [[OpenMoko#Neo1973|OpenMoko Neo1973]] and [[OpenMoko#Neo FreeRunner|OpenMoko Neo FreeRunner]] cell phones (ARM)
 
-
 
-
{{RTS full}} ported [[OCFS2]] onto the Nokia Internet Tablets on top of the Core-iSCSI Initiator.
 
-
}}
 
-
 
-
<!-- RTS Director -->
 
-
{{Main Page Subbox|#cedff2|#a3b0bf|[[RTS Director]]|[[RTS Director]] is a distributed, highly-available cluster management framework. It comprises a shell, active library and API. The active library and API provide an extensible platform with a unified namespace to manage complex functionality, such as high-availability and cluster striping. The shell offers location-transparent access to all objects in the SAN. New functionality and devices can be added via plugin-modules.
 
-
 
-
RTS Director provides zero configuration. It is based on a symmetrically distributed architecture - there is no single point of failure, no cluster controller, no central database, etc. Nodes running the RTS Director automatically discover and join the cluster when coming up ([http://www.youtube.com/watch?v&#61;zSyybHxuT68 demo video]).
 
-
}}
 
|}
|}
|}
|}
Line 147: Line 129:
<!-- See also -->
<!-- See also -->
-
{{Main Page Subbox|#e0e0e0|#a0a0a0|See also|[[Fibre Channel]] &#124; [[Fibre Channel over Ethernet|FCoE]] &#124; [[InfiniBand]] &#124; [[iSCSI]] &#124; [[iSCSI Extensions for RDMA|iSER]] &#124; [[Internet Storage Name Service|iSNS]] &#124; [[Internet Wide Area RDMA Protocol|iWARP]] &#124; [[RTS OS]] &#124; [[tcm_loop|SCSI virtualization]] &#124; [[Service Location Protocol|SLP]] &#124; [[SRP]] &#124; [[targetcli]]  
+
{{Main Page Subbox|#e0e0e0|#a0a0a0|See also|[[DIF]] &#124; [[Fibre Channel]] &#124; [[FCoE]] &#124; [[InfiniBand]] &#124; [[iSCSI]] &#124; [[iSER]] &#124; [[iSNS]] &#124; [[iWARP]] &#124; [[RoCE]] &#124; [[SLP]] &#124; [[SRP]] &#124; [[targetcli]] &#124; [[VAAI]] &#124; [[vHost]]
}}
}}
|}
|}
|}
|}
__NOTOC____NOEDITSECTION__
__NOTOC____NOEDITSECTION__

Latest revision as of 05:21, 26 December 2016

Welcome to Linux-IO,
the Linux SCSI Target wiki.
100 articles, 91,071,102 pageviews

Summary

LinuxIO (LIO) is the standard open-source SCSI target in Linux. It supports all prevalent storage fabrics, including Fibre Channel (QLogic, Emulex), FCoE, iEEE 1394, iSCSI (incl. Chelsio offload support), NVMe-OF, iSER (Mellanox InfiniBand), SRP (Mellanox InfiniBand), USB, vHost, etc.

The advanced feature set of LinuxIO has made it the SCSI target of choice for many storage array vendors, for instance allowing them to achieve VMware® Ready certifications. Native support for LIO in QEMU/KVM, libvirt, and OpenStack™ (setup, code) makes it an attractive storage option for cloud deployments.

LIO includes targetcli, a management shell and API with a single namespace for all storage objects.

LIO and targetcli are developed by Datera, Inc., a data storage systems and software company located in Mountain View in the Silicon Valley.

LIO

Frontend

Fabric Modules implement the protocols to transmit data over diverse fabrics, providing transport media independence.

Backend

Backstores implement the methods to access data on devices, providing storage media independence.

Architecture

The LinuxIO engine implements the generic SCSI semantics.

Advanced SCSI feature set

Targetcli

targetcli provides the fabric agnostic single-node management shell for LIO. targetcli aggregates and exports all LIO SAN functionality via the RTSlib library and API [HTML][PDF].

Compatibility and certifications

LIO works with Initiators of the following operating systems:

LIO enables VMware Ready certifications (incl. vSphere™ 5). It also passes the Microsoft Windows® Server 2008 / R2 Failover Cluster compatibility test suites.

High availability and clustering

LIO is designed from ground up to support highly available and cluster storage:
  • Deeply embedded high availability (Network RAID1)
  • Scale-out clusters and disaster recovery solutions

See also

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox
Google AdSense