LIO (cíl SCSI) - LIO (SCSI target) - Wikipedia
![]() | Tento článek má několik problémů. Prosím pomozte vylepši to nebo diskutovat o těchto otázkách na internetu diskusní stránka. (Zjistěte, jak a kdy tyto zprávy ze šablony odebrat) (Zjistěte, jak a kdy odstranit tuto zprávu šablony)
|
![]() Cíl LIO Linux SCSI | |
Původní autoři | Nicholas Bellinger Jerome Martin |
---|---|
Vývojáři | Datera, Inc. |
První vydání | 14. ledna 2011 |
Úložiště | github |
Napsáno | C, Python |
Operační systém | Linux |
K dispozici v | C, Python |
Typ | Blokovat úložiště |
Licence | GNU General Public License |
webová stránka | linux-iscsi |
Ve výpočetní technice, Linux-IO (LIO) cílová je open-source implementace Cíl SCSI který se stal standardem zahrnutým do Linuxové jádro.[1][je zapotřebí lepší zdroj ] Interně LIO neiniciuje relace, ale místo toho poskytuje jednu nebo více Čísla logických jednotek (LUN), čeká na příkazy SCSI z a SCSI iniciátor a provádí požadované vstupní / výstupní datové přenosy. LIO podporuje běžné skladovací látky, včetně FCoE, Fibre Channel, IEEE 1394, iSCSI, Rozšíření iSCSI pro RDMA (iSER), Protokol SCSI RDMA (SRP) a USB. Je součástí většiny Linuxové distribuce; nativní podpora pro LIO ve Windows QEMU /KVM, libvirt, a OpenStack dělá z LIO také možnost úložiště pro cloudová nasazení.[2][3]
LIO je spravována společností Datera, Inc., a Silicon Valley prodejce úložných systémů a softwaru. Dne 15. Ledna 2011 byl cílový modul LIO SCSI sloučen do Hlavní linka linuxového jádra, ve verzi jádra 2.6.38,[4][5] která byla vydána 14. března 2011. Další moduly modulu Fabric byly sloučeny do následujících verzí Linuxu.
Konkurenční obecný cílový modul SCSI pro Linux je SCST.[6] Pro užší účel poskytuje Linux Cíl iSCSI „Starší IET („ iSCSI Enterprise Target “) a STGT („ SCSI Target Framework “) mají také průmyslovou podporu.[7][8]
Pozadí
The SCSI Standard poskytuje rozšiřitelnou sémantickou abstrakci pro ukládání dat v počítači zařízení, a jako takový se stal „lingua franca "pro systémy pro ukládání dat. Standardy SCSI T10[9] definovat příkazy[10] a protokoly příkazového procesoru SCSI (zasláno v SCSI CDB ) a elektrická a optická rozhraní pro různé implementace.
A SCSI iniciátor je koncový bod, který iniciuje a SCSI zasedání. A Cíl SCSI je koncový bod, který čeká na příkazy iniciátoru a provádí požadované I / O datové přenosy. Cíl SCSI obvykle exportuje jeden nebo více LUN aby iniciátoři mohli fungovat.
LIO Linux SCSI Target implementuje obecný cíl SCSI, který poskytuje vzdálený přístup k většině typů zařízení pro ukládání dat přes všechny převládající paměťové struktury a protokoly. LIO nepřistupuje přímo k datům ani nekomunikuje přímo s aplikacemi. LIO poskytuje vysoce efektivní abstrakci nezávislou na tkanině a transparentní pro tkaninu pro sémantiku mnoha typů zařízení pro ukládání dat.
Architektura

LIO implementuje modulární a rozšiřitelnou architekturu kolem všestranného a vysoce efektivního paralelního SCSI systému pro zpracování příkazů. Cílový modul SCSI implementuje sémantiku cíle SCSI.[11]
Cílový modul LIO SCSI je nezávislý na konkrétních modulech Fabric nebo typech backstore. LIO tedy podporuje míchání a párování libovolného počtu látek a backstore současně. Cílový modul LIO SCSI implementuje komplexní SPC-3 / SPC-4[12] sada funkcí s podporou špičkových funkcí, včetně SCSI-3 / SCSI-4 Trvalé rezervace (PR), SCSI-4 Asymetrické přiřazení logické jednotky (ALUA), VMware vSphere API pro integraci polí (VAAI),[13] T10 DIF, atd.
LIO lze konfigurovat pomocí konfigurace -na základě[14] API jádra a lze jej spravovat pomocí rozhraní příkazového řádku a API (targetcli ).
Cíl SCSI
Koncept cíle SCSI není úzce omezen na fyzická zařízení na sběrnici SCSI, ale místo toho poskytuje zobecněný model pro všechny přijímače na logické struktuře SCSI. To zahrnuje relace SCSI napříč propojeními bez fyzické sběrnice SCSI. Koncepčně poskytuje cíl SCSI obecnou službu úložiště bloků nebo serveru v tomto scénáři.
Backstores
Úložiště poskytují cíli SCSI obecný přístup k zařízením pro ukládání dat jejich importem prostřednictvím odpovídajících ovladačů zařízení. Úložiště nemusí být fyzickými zařízeními SCSI.
Nejdůležitější typy médií v backstore jsou:
- Blok: Ovladač bloku umožňuje použití surových blokových zařízení Linux jako backstores pro export přes LIO. To zahrnuje fyzická zařízení, jako jsou HDD, SSD, CD /DVD, RAM disky atd. a logická zařízení, jako je software nebo hardware NÁLET objemy nebo LVM objemy.
- Soubor: Ovladač souborů umožňuje používat soubory, které se mohou nacházet v jakémkoli systému Linux souborový systém nebo seskupený souborový systém jako backstores pro export přes LIO.
- Drsný: Nezpracovaný ovladač umožňuje používat nestrukturovanou paměť jako záložní úložiště pro export prostřednictvím LIO.
Výsledkem je, že LIO poskytuje zobecněný model pro export úložiště bloků.
Látkové moduly
Tkaninové moduly implementují frontend cíle SCSI zapouzdřením a abstrahováním vlastností různých podporovaných propojení. K dispozici jsou následující moduly tkaniny.
FCoE

The Fibre Channel přes Ethernet (FCoE) látkový modul umožňuje přepravu Fibre Channel přenos protokolu (FCP) napříč bezztrátový Ethernet sítí. Specifikace, podporovaná velkým počtem prodejců sítí a úložišť, je součástí standardu technické komise T11 FC-BB-5.[15]
LIO podporuje všechny standardní ethernetové karty NIC.
Modul FCoE fabric přispěl Cisco a Intel a vydána s Linuxem 3.0 21. července 2011.[16]
Fibre Channel
Fibre Channel je vysokorychlostní síťová technologie primárně používaná pro síťové úložiště. Je standardizován v technické komisi T11[17] Mezinárodního výboru pro standardy informačních technologií (INCITS).
The QLogic Fibre Channel fabric modul podporuje 4- a 8-gigabitový rychlosti s následujícími HBA:
- Řada QLogic 2400 (QLx246x), 4GFC
- Řada QLogic 2500 (QLE256x), 8GFC (plně kvalifikovaná)
Tkaninový modul Fibre Channel[18] a nízkoúrovňový ovladač[19] (LLD) byly vydány s Linuxem 3.5 21. července 2012.[20]
S Linuxem 3.9 jsou podporovány také následující QLogic HBA a CNA:
- Řada QLogic 2600 (QLE266x), 16GFC, SR-IOV
- Řada QLogic 8300 (QLE834x), 16GFS / 10 GbE, PCIe Gen3 SR-IOV
- Řada QLogic 8100 (QLE81xx), 8GFC / 10 GbE, PCIe Gen2
Díky tomu je LIO prvním otevřeným zdrojovým cílem pro podporu 16 gigabitového Fibre Channel.
IEEE 1394

Látkový modul FireWire SBP-2 umožňuje Linux exportovat místní úložná zařízení přes IEEE 1394, aby je ostatní systémy mohly připojit jako běžné úložné zařízení IEEE 1394.
IEEE 1394 je standard rozhraní sériové sběrnice pro vysokorychlostní komunikaci a izochronní přenos dat v reálném čase. Byl vyvinut společností Jablko jako "FireWire" na konci 80. a počátku 90. let a Macintosh počítače podporují „režim cílového disku FireWire“ od roku 1999.[21]
Modul FireWire SBP-2 byl propuštěn s Linuxem 3.5 21. července 2012.[20][22]
iSCSI
The Internetové malé počítačové systémové rozhraní (iSCSI ) modul Fabric umožňuje přenos provozu SCSI přes standardní sítě IP.
Díky přenosu relací SCSI napříč sítěmi IP se iSCSI používá k usnadnění přenosu dat přes intranet a ke správě úložiště na velké vzdálenosti. iSCSI lze použít k přenosu dat přes lokální sítě (LAN), rozsáhlé sítě (WAN) nebo internet a může umožnit umístění a transparentní ukládání a načítání dat nezávislé na poloze.
Modul LIO iSCSI fabric také implementuje řadu pokročilých funkcí iSCSI, které zvyšují výkon a odolnost, jako například Více připojení na relaci (MC / S) a Úrovně zotavení po chybě 0-2 (ERL = 0,1,2).
LIO podporuje všechny standardní ethernetové karty NIC.
The iSCSI modul fabric byl vydán s Linuxem 3.1 24. října 2011.[23]
iSER
Sítě podporující vzdálený přímý přístup do paměti (RDMA) může používat Rozšíření iSCSI pro RDMA (iSER) látkový modul k přepravě iSCSI traffic.iSER umožňuje přímý přenos dat do a ze vzdálených vyrovnávacích pamětí počítače SCSI bez mezilehlých kopií dat (přímé umístění dat nebo DDP) pomocí RDMA.[24] RDMA je podporován na InfiniBand sítě, na Ethernetu s přemostění datového centra (DCB) sítí prostřednictvím RDMA přes konvergovaný Ethernet (RoCE) a na standardních sítích Ethernet s iWARP vylepšené TCP zátěžový modul řadiče.
Modul iSER fabric byl vyvinut společně Daterou a Mellanox Technologies a poprvé vydána s Linuxem 3.10 30. června 2013.[25]
SRP
The Protokol SCSI RDMA (SRP) modul Fabric umožňuje přenos provozu SCSI napříč sítěmi RDMA (viz výše). Od roku 2013 byl SRP široce používán než iSER, i když je omezenější, protože SCSI je pouze protokol peer-to-peer, zatímco iSCSI je plně směrovatelný. Modul SRP fabric podporuje následující Mellanox adaptéry hostitelského kanálu (HCA):
- Mellanox ConnectX-2 VPI PCIe Gen2 HCA (x8 linek), single / dual-port QDR 40 Gbit / s
- Mellanox ConnectX-3 VPI PCIe Gen3 HCA (x8 linek), single / dual-port FDR 56 Gbit / s
- Mellanox ConnectX-IB PCIe Gen3 HCA (x16 pruhy), jedno / dvouportový FDR 56 Gbit / s
Modul SRP fabric byl vydán s Linuxem 3.3 18. března 2012.[26]
V roce 2012, ne časopis měřil propustnost téměř 5 000 MB / s s LIO SRP Target přes jeden port Mellanox ConnectX-3 v režimu FDR 56 Gbit / s na Sandy Bridge PCI Express Systém 3.0 se čtyřmi Fusion-IO Flash paměťové karty ioDrive PCI Express.
USB
The USB gadget Modul fabric umožňuje systému Linux exportovat místní úložná zařízení prostřednictvím systému Windows Universal Serial Bus (USB), aby je ostatní systémy mohly připojit jako běžné úložné zařízení.
USB bylo navrženo v polovině 90. let jako standardizace připojení počítačové periferie, a také se stalo běžným pro zařízení pro ukládání dat.
Modul USB Gadget fabric byl vydán s Linuxem 3.5 21. července 2012.[27]
targetcli
targetcli je správa jednoho uzlu uživatelského prostoru rozhraní příkazového řádku (CLI) pro LIO.[28] Podporuje všechny moduly Fabric a je založen na modulární, rozšiřitelné architektuře s zásuvnými moduly pro další moduly Fabric nebo funkčnost.
targetcli poskytuje rozhraní příkazového řádku, které používá podkladovou obecnou cílovou knihovnu prostřednictvím dobře definovaného rozhraní API. CLI lze tedy snadno nahradit nebo doplnit uživatelským rozhraním o další metafory, například GUI.
targetcli je implementováno v Krajta a skládá se ze tří hlavních modulů:
- podkladové rtslib a API.[29]
- the configshell, který zapouzdřuje atributy specifické pro danou látku v odpovídajících souborech „spec“.
- the targetcli skořápka sama.
Podrobné pokyny, jak nastavit cíle LIO, najdete na wiki LIO.[28]
Linuxové distribuce
targetcli a LIO jsou zahrnuty ve většině distribucí Linuxu ve výchozím nastavení. Zde je přehled nejpopulárnějších z nich spolu s počátečním datem zařazení:
Rozdělení | Verze[A] | Uvolnění | Archiv | Instalace | Zdroj git | Dokumentace |
---|---|---|---|---|---|---|
Alpine Linux | 2.5 | 2011-11-07 | Zrcadlo Alpine Linux | apk přidat targetcli-fb | targetcli-fb.git | Jak |
CentOS | 6.2 | 2011-12-20 | Zrcadlo CentOS | su -c 'yum install fcoe-target-utils' | targetcli-fb.git | Technické poznámky |
Debian | 7.0 ("sípavý ") | 2013-05-04 | Pool Debianu | su -c 'apt-get install targetcli' | targetcli.git | LIO Wiki |
Fedora | 16 | 2011-11-08 | Fedora Rawhide | su -c 'yum install targetcli' | targetcli-fb.git | Target Wiki |
openSUSE | 12.1 | 2011-11-08 | Vyžaduje ruční instalaci od společnosti Datera targetcli.git repos. | |||
RHEL[b] | 6.2 | 2011-11-16 | Fedora Rawhide | su -c 'yum install fcoe-target-utils' | targetcli-fb.git | Technické poznámky |
Scientific Linux | 6.2 | 2012-02-16 | SL zrcadlo | su -c 'yum install fcoe-target-utils' | targetcli-fb.git | Technické poznámky |
SLES | 11 SP3 MR | 2013-12 | - | su -c 'zypper v targetcli' | targetcli.git | LIO Wiki |
Ubuntu | 12,04 LTS (přesné) | 2012-04-26 | Vesmír Ubuntu | sudo apt-get install targetcli | targetcli.git | LIO Wiki |
Viz také
- The SCST Zásobník cílového softwaru Linux SCSI
- Fibre Channel
- Fibre Channel přes Ethernet (FCoE)
- IEEE 1394 / Firewire
- InfiniBand
- iSCSI
- Rozšíření iSCSI pro RDMA (iSER)
- Protokol SCSI RDMA (SRP)
- USB
Poznámky
Reference
- ^ "Cílová". linux-iscsi.org. 23. 10. 2012. Citováno 2012-12-25.
- ^ Eric Harney (2012-12-17). „Support LIO as an iSCSI backend“. launchpad.net. Citováno 2013-01-14.
- ^ IBM, Red Hat (únor 2013). „KVM virtualizovaný výkon I / O“ (PDF).
- ^ Linus Torvalds (2011-01-14). „Triviální sloučení“. Kernel.org. Citováno 2019-09-28.
- ^ Thorsten Leemhuis (02.03.2011). „Kernel Log: Coming in 2.6.38 (Part 4) - Storage“. Heise online.
- ^ „Příběh dvou SCSI cílů“. Lwn.net. Citováno 2014-01-20.
- ^ Haas, Florian (květen 2012). „Replikujte vše! Vysoce dostupné úložiště iSCSI s DRBD a kardiostimulátorem“. Linux Journal. Archivovány od originál dne 2014-01-20. Citováno 2019-09-28.
- ^ Bolkhovitin, Vladislav (11.04.2018). "SCST vs STGT". Obecný cílový subsystém SCSI pro Linux. Citováno 2019-04-01.
- ^ Technická komise T10. „Rozhraní úložiště SCSI“. t10.org. Citováno 2012-12-24.
- ^ Referenční příručka k příkazům SCSI (PDF). 100293068, Rev. C. Scotts Valley: Seagate Technology. Duben 2010. Citováno 2012-12-25.
- ^ Bellinger, Nicholas (2009). Aktuální stav a budoucnost iSCSI na platformě Linux (PDF). Konference instalatérů Linuxu.
- ^ Ralph Weber (2011-01-17). "SCSI primární příkazy - 4 (SPC-4)". t10.org. Citováno 2011-03-07.
- ^ Cíl LIO Linux SCSI (2012-12-23). „VAAI“. linux-iscsi.org. Citováno 2012-12-25.
- ^ Jonathan Corbet (2005-08-24). „Konfigurace - úvod“. lwn.net. Citováno 2011-03-07.
- ^ „Fibre Channel: Backbone - 5 revision 2,00“ (PDF). Americký národní standard pro informační technologie Mezinárodní výbor pro standardy informačních technologií Technická skupina T11. 4. června 2009. Citováno 2011-05-05.
- ^ Linus Torvalds (2011-04-18). „[SCSI] tcm_fc: Přidání poskytovatele FC_FC4 (tcm_fc) pro podporu FCoE target (TCM - target core)“. Kernel.org. Citováno 2019-09-28.
- ^ „Domovská stránka T11“. t11.org. Citováno 2012-12-25.
- ^ „Linus Torvalds“ (15. 5. 2012). "[SCSI] tcm_qla2xxx: Přidat> = modul tkaniny řady 24xx pro cílové jádro". Kernel.org. Citováno 2019-09-28.
- ^ „Linus Torvalds“ (15. 5. 2012). „[SCSI] qla2xxx: Přidat infrastrukturu cílového režimu LLD pro>> 24xx série“. Kernel.org. Citováno 2019-09-28.
- ^ A b Thorsten Leemhuis (03.07.2012). „Kernel Log: Coming in 3.5 (Part 2) - Filesystems and storage“. Heise online. Citováno 2013-01-14.
- ^ „Jak používat režim cílového disku FireWire a odstraňovat jeho problémy“. apple.com. Citováno 2012-12-24.
- ^ Linus Torvalds (2012-04-15). "sbp-target: Počáteční sloučení podpory cílového režimu firewire / ieee-1394". Kernel.org. Citováno 2019-09-28.
- ^ Linus Torvalds (2011-07-27). "iSCSI merge". Kernel.org. Citováno 2019-09-28.
- ^ RFC 5041
- ^ Linus Torvalds (2013-04-30). "Sloučit větev 'pro další sloučení'". Kernel.org. Citováno 2019-09-28.
- ^ Linus Torvalds (2012-01-18). „Sloučení InfiniBand / SRP“. Kernel.org. Citováno 2019-09-28.
- ^ "Sloučit větev 'usb-cíl-sloučit'". Kernel.org. Citováno 2019-09-28.
- ^ A b Cíl LIO Linux SCSI (2012-12-09). „Targetcli“. linux-iscsi.org. Citováno 2012-12-25.
- ^ Jerome Martin (03.08.2011). "Balíček rtslib". daterainc.com. Citováno 2012-12-25.
- ^ "Kapitola 6. Úložiště". Access.redhat.com. Citováno 2014-01-20.
externí odkazy
- Oficiální webové stránky
- Datera webová stránka
Časová osa LIO | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Uvolnění | Detaily | 2011 | 2012 | 2013 | 2014 | ||||||||||||||||||||||||||||||||||||||||||||||||||||
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | ||||||||||
4.x | Verze | 4.1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
Vlastnosti | Cílové jádro | Loopback | FCoE | iSCSI | Perf | SRP | CM WQ | FC USB 1393 | vHost | Perf | Různé | 16 GFC | iSER | Různé | VAAI | Různé | DIF Ref NPIV | iSER DIF | |||||||||||||||||||||||||||||||||||||||
Linux | 2.6.38 | 2.6.39 | 3.0 | 3.1 | 3.2 | 3.3 | 3.4 | 3.5 | 3.6 | 3.7 | 3.8 | 3.9 | 3.10 | 3.11 | 3.12 | 3.13 | 3.14 | 3.15 |