Main Page

The Linux SCSI Target Wiki

(Difference between revisions)
Jump to: navigation, search
m
m (Undo revision 15858 by Marcf (talk))
 
(22 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 generic Linux SCSI Target wiki.</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]]
-
* [[{{OS}}]]
+
* [[{{C}}]]
| style="width:13%; font-size:95%;" |
| style="width:13%; font-size:95%;" |
* [[Downloads]]
* [[Downloads]]
Line 21: Line 21:
* [[Support]]
* [[Support]]
* [[Ecosystem]]
* [[Ecosystem]]
-
* [[{{C}}]]
 
|}
|}
Line 31: Line 30:
<!-- Summary -->
<!-- Summary -->
{{Main Page Subbox|#f2ddce|#bfafa3|Summary|
{{Main Page Subbox|#f2ddce|#bfafa3|Summary|
-
'''{{T}}''' ('''{{LIO servername}}''') is the standard open-source [[SCSI]] target for block storage in Linux. It supports all prevalent storage fabrics, including [[Fibre Channel]] ([http://www.qlogic.com QLogic]), [[FCoE]], iEEE&nbsp;1394, [[iSCSI]], [[iSER]] ([http://www.mellanox.com/ Mellanox] [[InfiniBand]]), [[SRP]] (Mellanox InfiniBand), USB, [[vHost]], etc.
+
'''{{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 advanced feature set of the {{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.
+
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.
{{T}} includes [[targetcli]], a management shell and API with a single namespace for all storage objects.
{{T}} includes [[targetcli]], a management shell and API with a single namespace for all storage objects.
Line 50: Line 49:
<!-- Target -->
<!-- Target -->
-
{{Main Page Subbox|#cef2e0|#a3bfb1|[[Target]]|'''[[Target#Fabric modules|Frontend]]'''
+
{{Main Page Subbox|#cef2e0|#a3bfb1|[[LIO]]|'''[[LIO#Fabric modules|Frontend]]'''
Fabric Modules implement the protocols to transmit data over diverse fabrics, providing transport media independence.
Fabric Modules implement the protocols to transmit data over diverse fabrics, providing transport media independence.
-
* [[Fibre Channel]] - [http://www.qlogic.com QLogic]: released
+
* [[Fibre Channel]] - [http://www.qlogic.com QLogic]: released, Emulex: released
* [[Fibre Channel over Ethernet]] (FCoE): released
* [[Fibre Channel over Ethernet]] (FCoE): released
* iEEE 1394: released
* iEEE 1394: 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
-
* [[iSCSI]] (SCSI over IP): released
+
* [[iSCSI]] (SCSI over IP) - software: released, Chelsio: released
* [[iSER]] ([http://www.mellanox.com Mellanox] [[InfiniBand]]): released
* [[iSER]] ([http://www.mellanox.com Mellanox] [[InfiniBand]]): released
* [[Loopback]] [[SCSI]] virtualization: released
* [[Loopback]] [[SCSI]] virtualization: released
 +
* NVMe-OF: In development
* [[SRP]] ([http://www.mellanox.com Mellanox] [[InfiniBand]]): released
* [[SRP]] ([http://www.mellanox.com Mellanox] [[InfiniBand]]): released
* USB Gadget: released
* USB Gadget: released
* [[vHost]] with QEMU/KVM virtio and virtio-scsi PV guests: released
* [[vHost]] with QEMU/KVM virtio and virtio-scsi PV guests: released
-
'''[[Target#Backstores|Backend]]'''
+
'''[[LIO#Backstores|Backend]]'''
Backstores implement the methods to access data on devices, providing storage media independence.
Backstores implement the methods to access data on devices, providing storage media independence.
-
* [[Target#Backstores|Backstores]]: [[IBLOCK|SATA]], [[PSCSI|SAS]], [[PSCSI|SCSI]], [[IBLOCK|SSD]], [[IBLOCK|FLASH]], [[IBLOCK|DVD]], [[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
Line 78: Line 78:
* High-performance, non-blocking, multithreaded architecture with SSE4.2 support
* 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.
+
* [[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]]
* [[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]]
Line 89: Line 89:
* Active/active task migration and session continuation ([[Error Recovery Level#2|ERL&#61;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]])
 +
* T10 Data Integrity Format ([[DIF]])
* [[vStorage APIs for Array Integration]] (VAAI)
* [[vStorage APIs for Array Integration]] (VAAI)
-
}}
 
-
 
-
<!-- Compatibility and certifications -->
 
-
{{Main Page Subbox|#cef2e0|#a3bfb1|Compatibility and certifications|{{T}} works with Initiators of the following operating systems:
 
-
 
-
* 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
 
-
 
-
{{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.
 
}}
}}
|}
|}
Line 114: Line 103:
}}
}}
-
<!-- {{OS}} -->
+
<!-- Compatibility and certifications -->
-
{{Main Page Subbox|#cedff2|#a3b0bf|[[{{OS}}]]|[[{{OS}}]] integrates {{T}} and [[targetcli]] into a single-node Hybrid Storage operating system ({{OS Admin Manual}}). {{OS}} supports [[VMware]] Ready certification, including [[VMware vSphere]]&trade;&nbsp;5.
+
{{Main Page Subbox|#cedff2|#a3b0bf|Compatibility and certifications|{{T}} works with Initiators of the following operating systems:
-
An {{OS}} [[{{OS}}#Subscriptions|subscription]] provides access to additional {{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
 +
 
 +
{{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.
}}
}}
Line 126: Line 121:
}}
}}
-
<!-- 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&reg;, 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)
 
-
 
-
{{Company}} 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 153: Line 129:
<!-- See also -->
<!-- See also -->
-
{{Main Page Subbox|#e0e0e0|#a0a0a0|See also|[[Fibre Channel]] &#124; [[FCoE]] &#124; [[InfiniBand]] &#124; [[iSCSI]] &#124; [[iSER]] &#124; [[iSNS]] &#124; [[iWARP]] &#124; [[{{OS}}]] &#124; [[tcm_loop|SCSI virtualization]] &#124; [[SLP]] &#124; [[SRP]] &#124; [[targetcli]] &#124; [[VAAI]] &#124; [[vHost]]
+
{{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, 85,693,132 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