LIO Unified Target
„LIO Unified Target“ ist ein multiprotokollfähiges SCSI-Target-Modul für den Linux-Kernel ab Version 2.6.38.[1][2] Es ersetzt damit das bisherige STGT-Target.[3] LIO unterstützt aktuell die Protokolle iSCSI, Fibre Channel, FCoE und InfiniBand (SRP und iSER). Neben der x86-Mikroprozessor-Architektur werden IA-64, ARM, MIPS und POWER unterstützt. Das Konzept des Unified-Target-Modul wird vor allem für den Zugriff auf eine Vielzahl von Speichermedien über eine Vielzahl von Protokollen benötigt. LIO als Unified-Target-Modul greift dabei weder selbst auf Daten zu, noch kommuniziert es direkt mit den Applikationen. Aufgabe von LIO ist es, die Semantik verschiedener SCSI-Targets nahtlos zu abstrahieren.[4]
LIO Unified Target | |
---|---|
Basisdaten
| |
Entwickler | Datera |
Aktuelle Version | 4.0.0 (17. Dezember 2010) |
Betriebssystem | Linux |
Kategorie | SCSI |
Lizenz | GPL |
www.linux-iscsi.org |
Architektur
BearbeitenSCSI-Target-Modul
BearbeitenLIO ist modular um ein zentrales SCSI-Target-Modul aufgebaut. Der Begriff SCSI-Target wird in diesem Zusammenhang nicht nur für dienstleistende Geräte an einem SCSI-Bus verwendet, sondern ganz allgemein für die Befehle empfangende Seite einer SCSI-Verbindung, also auch von SCSI-Verbindungen, die über Netzwerke völlig ohne physikalischen SCSI-Bus arbeiten. Für diese Verbindungen ist das SCSI-Target-Modul in diesem Fall der dienstleistende Server.
Backstores
BearbeitenUm diese Dienstleistung erbringen zu können, benötigt das SCSI-Target-Modul Speichermedien, die je nach Ausführung ihrerseits SCSI-Targets sein können, aber nicht müssen. Die Verbindung zu einer Vielzahl unterschiedlicher Speichermedien wird von sogenannten Backstores geleistet, die als Backend am SCSI-Target-Modul arbeiten. Backstores können über eine Schnittstelle zur Abstraktion von Speichergeräten des Storage Hardware Abstraction Layer (S-HAL) im Linux-Kernel mit dem SCSI-Target-Modul verbunden werden. Das SCSI-Target-Modul unterstützt dabei den SCSI-3 Standard für sämtliche Backstores. Ein spezielles Loopback-Modul erlaubt die Integration von RAM-Disks oder SSD-Speicher. Über das FILEIO-Modul können Dateien aus beliebigen Dateisystemen als Speichermedium eingebunden werden.
Fabric-Module
BearbeitenEin Fabric-Modul (eng. „Gewebe“ oder „Gefüge“) stellt die Dienste des SCSI-Target-Modul über ein konkretes Protokoll zur Verfügung. Es gibt Fabric-Module für Fibre Channel, FCoE (Fibre Channel over Ethernet) SCSI über IP-Netze und andere. Damit lassen sich sogenannte Storage Area Networks (SAN) aufbauen.
Initiator
BearbeitenNeben dem SCSI-Target wird von Datera auch noch ein Open Source iSCSI-Initiator names Core-iSCSI bereitgestellt. Ein besonderes Merkmal ist die Unterstützung mehrerer Verbindungen pro Session (Multiple iSCSI connections per iSCSI session – MC/S). Auf diese Weise wird eine verbesserte Verfügbarkeit und Durchsatz ermöglicht. Der Standard-Linux-iSCSI-Initiator unterstützt dieses Feature nicht. Core-iSCSI erlaubt darüber hinaus das Booten von Servern über ein iSCSI-SAN (diskless boot).
Features
BearbeitenLIO unterstützt den iSCSI-Standard[5] sowie Persistent Reservations und ALUAs (Asymmetric Logical Unit Assignment) des SPC-4[6] SCSI-Standards.
Zusammen mit der Replikationssoftware DRBD und der Clustersoftware Corosync lassen sich hochverfügbare Speichersysteme aufbauen. Der RTSdirector implementiert ein eigenes Multinode-Cluster mit linearer Skalierbarkeit.
Die Konfiguration erfolgt über das Linux configfs,[7] die Administration über ein Kommando-Zeilen-Tool (RTSadmin). Mit Erscheinen der Version 2 ist es möglich, Fibre Channel, FCoE und InfiniBand Konfigurationen zu administrieren. Die Version 2 wurde dual lizenziert und die Community Version 'targetcli' ist unter der AGPL erschienen.[8]
LIO wurde von der Firma Datera entwickelt und wird von einigen Herstellern von Speichersystemen (engl.: „storage appliances“) integriert (Buffalo, Netgear, Pure Storage, QNAP, Synology etc.).
Weblinks
Bearbeiten- Offizielle Seite des open-source Projektes LIO
- QLogic official website
- RTS Director video
Einzelnachweise
Bearbeiten- ↑ Linus Torvalds: Trivial merge. In: lkml.org. 15. Januar 2011, ehemals im ; abgerufen am 7. März 2011 (englisch). (Seite nicht mehr abrufbar. Suche in Webarchiven) Info: Der Link wurde automatisch als defekt markiert. Bitte prüfe den Link gemäß Anleitung und entferne dann diesen Hinweis. (nicht mehr online verfügbar)
- ↑ Thorsten Leemhuis: Kernel-Log – Was 2.6.38 bringt (4): Storage. Heise Open Source, 28. Februar 2011, abgerufen am 7. März 2011 (englisch).
- ↑ STGT Target
- ↑ LIO-Target. In: linux-iscsi.org. Abgerufen am 26. August 2012 (englisch).
- ↑ RFC – Internet Small Computer Systems Interface (iSCSI). April 2004 (englisch).
- ↑ Ralph Weber: SCSI Primary Commands – 4 (SPC-4). In: t10.org. 17. Januar 2011, abgerufen am 7. März 2011 (englisch).
- ↑ Jonathan Corbet: Configfs – an introduction. In: lwn.net. 24. August 2005, abgerufen am 7. März 2011 (englisch).
- ↑ targetcli. In: linux-iscsi.org. Abgerufen am 29. Februar 2012 (englisch).