Anmerkung
Es gab immer wieder Anforderungen ein SAN Systeme zu benutzen. Da eine
richtige SAN Lösung in der Regel mit mehreren tausend Euro zu Buche schlägt, habe ich mich für iSCSI entschieden. iSCSI wird eingesetzt, um über eine virtuelle ))Punkt-zu-Punkt-Verbindung(( den Zugriff auf Speichersysteme zu ermöglichen, ohne dass localer Speicher installiert werden muss. Es erlaubt RAIDs, Festplatten, Partitionen, Volume Groups, Logical Volume oder Images, gleich welcher Art (IDE, SCSI, SATA), zu exportieren und Clients als SCSI Gerät zur Verfügung zu stellen.
iSCSI
Was ist iSCSI?
iSCSI spezifiziert die Übertragung und den Betrieb über TCP. Bei diesem Verfahren werden SCSI-Daten vom
Initiator (iSCSI Client) in TCP/IP-Pakete verpackt und über IP-Netze transportiert. Auf Basis von Mapping Tabellen wird die SCSI-Datenquelle des
Target (iSCSI Server) auswählt. Ein iSCSI Volume kann nur von einem Client angesprochen werden (ausgenommen Cluster Lösungen) und mit dem SCSI Protokoll gleichzusetzen.
Vorhandene Netzwerkkomponenten (Switch) können genutzt werden, da keine neue Hardware für die Netzverbindungen nötig sind. Der Zugriff auf die Festplatten erfolgt blockbasierend und ist somit auch für Datenbanken geeignet. Der Zugriff über iSCSI ist darüber hinaus transparent. wie auf eine lokale Festplatte.
Nachteil der iSCSI-Technologie ist eine erhöhte CPU-Belastung sowie mehr Interrupts pro Datenmenge auf dem Server. Es gibt aber bereits Lösungen die das TCP/IP Overhead-Problem der CPU vermindern.
iSCSI sollte nicht mit einem NAS verwechselt werden, welches Filesysteme über SMB/CIFS, TFTP, FTP, NFS, ... zur Verfügungs stellt.
Internet Suchbegriffe: iSCSI HBA, iSCSI iser, remote direct memory access (RDMA), ...
Initiator (iSCSI client)
Der
Initiator ist der Name des iSCSI Clients. Dieser hat "block level" Zugriff auf die iSCSI Geräte (Disks, Bandlaufwerke (Data8, DDS/DAT, DLT, LTO Ultrium, ...), DVD/CD Writer). Ein Client kann mehrere iSCSI Devices ansprechen.
Target (iSCSI server)
Der
Target ist der Name des iSCSI Server. Dieser stellt die Geräte zur Verfügung (RAIDs, Festplatten, Partitionen, Volume Groups, Logical Volume oder Images).
Ein Gerät kann nur von einem Client angesprochen werden (ausgenommen Cluster Lösungen).
Discovery
"Discovery" ist der Prozess um die "Targets" auf dem "Initiator" anzuzeigen.
Discovery method
Beschreibt die Methode wie die iSCSI "Targets" gefunden werden. Derzeit gibt es folgende Möglichkeiten:
- Internet Storage Name Service (iSNS) - Potentielle "Targets" werden über einen oder mehrere iSNS servers angesprochen.
- ))SendTargets(( – Potentielle "Targets" werden über die "discovery-address" angesprochen.
- SLP - ansprechen der "Targets" über das "Service Location protocol" (RFC 4018)
- Static – direkt über die Statische "Target adress".
iSCSI naming
Das RFC Dokument beschreibt den iSCSI Namen. Dieser besteht aus zwei Teilen, dem
type string und dem optionalen
unique name
Die drei erlaubten
type string sehen wie folgt aus :
- iSCSI Qualified Name (IQN)
Format: iqn.yyyy-mm.{umgekehrter domain name}
Beispiel: iqn.2010-03.com.ccf-it:xen.disk.system.xyz
Hinweis: Die Beschreibung nach dem (":") is optional.
Diese Namensgebung ist kompatibel zu Fibre Channel and Serial Attached SCSI (SAS) RFC 3980
- Extended Unique Identifier (EUI)
Format: eui.{EUI-64 bit address}
Beispiel: eui.6790B43393A239A
Hinweis: EUI ist definiert von IEEE basierend auf dem EUI-64 Standard
- T11 Network Address Authority (NAA)
Format: naa.{NAA 64 or 128 bit identifier}
Beispiel: naa.35AF1B47129A
Hinweis: ist definiert von IEEE und Teil von OUI
Die meisten Installationen benutzen das
IQN Format
Ein iSCSI "Target" wird über drei oder vier Parameter angesprochen:
- IP Address (or Hostname) - Beispiel: iscsi.company.net
- Port Number - Beispiel: 3260
- iSCSI name - Beispiel: iqn.2009-10.com.company:storage.winchester.sys1.xyz
- Optional CHAP Secret: - Beispiel: ))DiesIstTopSecret((