Ergebnis 1 bis 1 von 1
  1. #1
    inaktiv
    Themenstarter

    Registriert
    11.2006
    Ort
    bei Zürich/Schweiz
    Alter
    37
    Beiträge
    546

    [Tutorial] iSCSI mit Mac und Linux

    Seit einiger Zeit interessiert mich die Möglichkeit, die HDD-Kapazität meines Debian-Homeservers auch für mein Macbook nutzen zu können.
    Besonders ins Auge fiel die Möglichkeit, iSCSI-Verbindungen mit dem Macbook herstellen zu können. Dafür kann die kostenlose Software "GlobalSAN iSCSI Initiator" verwendet werden, welche HIER herunterladbar ist.

    Als nächstes die Frage: iSCSI unter Debian? Folgend ein Howto, wie man einen Etch-Server als iSCSI-Target konfiguriert:

    Zuerst fügen wir die folgende Zeile in /etc/apt/sources.list hinzu:

    Code:
    deb http://debian.hug.cx/debian/ unstable/
    Ein apt-get update bringt die Paketverwaltung auf den neusten Stand.

    Als nächstes werden die benötigten Softwarepakete installiert, und die Kernelmodule gebaut. Die einzelnen Zeilen können eigentlich einfach per C&P übernommen werden:

    Code:
    [root@heimserver]# apt-get install module-assistant debhelper linux-source-2.6.18 dpkg-dev kernel-package libncurses-dev libssl-dev linux-headers-2.6.18-4-xen-amd64
    
    [root@heimserver]# cd /usr/src/
    [root@heimserver]# tar -jxvf linux-source-2.6.18.tar.bz2
    [root@heimserver]# ln -s linux-source-2.6.18 linux
    
    [root@heimserver]# apt-get install  iscsitarget iscsitarget-source
    [root@heimserver]# tar -zxvf iscsitarget.tar.gz 
    
    [root@heimserver]# m-a a-i iscsitarget
    Die Konfigutationsdate /etc/ietd.conf ist wiefolgt aufgebaut:

    Code:
    Target iqn.2006-07.com.example.intra:storage.disk1.vault
           Lun 0 Path=/dev/ziellaufwerk1,Type=fileio
           Alias vault1
    Target iqn.2006-07.com.example.intra:storage.disk2.vault
           Lun 1 Path=/dev/ziellaufwerk2,Type=fileio
           Alias vault2
    Dann kann der iSCSI Taget Deamon gestartet werden:

    Code:
    [root@heimserver]# /etc/init.d/iscsi-target start
    Der Deamon lauscht per default auf TCP port 3260, was man vom Macbook mit:

    Code:
    [zaphod@macbook]# sudo nmap -sS -p 3000-4000 192.168.178.2
    einfach überprüfen kann. (Wer kein nmap installiert hat: Der Portscanner in den Netzwerktools tuts auch!)

    Problematisch bei mir war, daß die Datenplatte des Fileservers bereits voll durch das ext3-Rootfilesystem des Servers genutzt war, ich hatte also kein Laufwerk frei, und keine leere Partition verfügbar. Die Lösung ist Linux-Typisch einfach:
    Man erzeugt ein File mit der Größe des benötigten Volumes:

    Code:
    [root@heimserver]# dd if=/dev/urandom of=/pfad/zum/file bs=1M count=500
    Dies dauert je nach Systemleistung zwischen sehr lange und unglaublich lange
    Danach kann das File via loopback gemounted werden:

    Code:
    [root@heimserver]# losetup /dev/loop1 /pfad/zum/file
    Das nun verfügbare Laufwerk /dev/loop1 könnte nun als ext3 formatiert werden - was wir aber nicht wollen. NAtürlich kann anstelle dieser Variante auch eine (leere) Festplattenpartition verwendet werden, was deutlich performanter sein dürfte.
    Nun machen wir dieses "Laufwerk in a Textfile" via iSCSI verfürbar, indem wir in der /etc/ietd.conf folgenden Eintrag erstellen:

    Code:
    Target iqn.2006-07.com.example.intra:storage.disk1.vault
           Lun 0 Path=/dev/loop1,Type=fileio
           Alias vault1
    Neustart des iSCSI-Targets:

    Code:
    [root@heimserver]# /etc/init.d/iscsi-target restart
    Und - Tadaaaa! Ein neues (unformatiertes) Laufwerk ist im iSCSI-Initiator vefügbar, und kann als HFS+ formatiert und gemounted werden. Da sich diese Partition wie ein "echtes" Laufwerk verhält, funktioniert dort auch die Spotlight-Indizierung. Auch ein Timemachine-Backup sollte gehen. Mit diesen Mitteln hat man nun ein Teil des Speicherplatzes des Linux-Servers als HFS-Speicherplatz zur Verfügung. Das Debian-System kann darauf zwar (momentan) in keiner Weise zugreifen, aber immerhin kann das komplette File gesichert werden.

    Nun sitze ich gerade in der Firma, und mache Mittag. Es wäre ja toll, an sein Laufwerk daheim zu kommen. Der Heimserver ist über dyndns erreichbar, iSCSI will nur einen TCP-Port. Fein, schnell eine Shell geöffent, und einen Tunnel gegraben:

    Code:
    [zaphod@macbook]#ssh root@meinedyndnsdomain.dyndns.org -L3260:localhost:3260
    Damit ist der lokale Port 3260 auf den Heimserver Port 3260 weitergeleitet. Im iSCSI-Initiator unter der IP 127.0.0.1 (localhost) nach Volumes gesucht, kurz warten, Volume verfügbar. Die Sache ist zwar ehr träge, aber ich habe mein Laufwerk nun unterwechs verfügbar!

    Spielereien für die nächsten Tage:
    • Anstatt direkt in das Loopback-Textfile zu schreiben, soll ein LVM (Logical Volume Manager) dazwischengeschaltet werden. Damit kann "on the fly" die Kapazität des iSCSI-Devices verändert werden, indem ein weiteres File (oder Laufwerk) hinzugefügt wird. Auch LVM-Snapshopts können evtl. sinnvoll eingesetzt werden.
    • Umzug des iSCSi-Tagets auf das "große Eisen" - eine Sun Fire V210 mit momentan 14x146Gb Fibrechannel-HDDs. Die Kiste läuft unter Solaris 10, welches ZFS (ein ohne Reboot erweiterbares Filesystem) und iSCSI von Haus aus unterstützt.
    • Test, wie man mit mehreren Rechner auf die gleiche LUN (iSCSI-Volume) zugreifen kann
    Viel Spaß beim basteln
    Geändert von WDZaphod (18.03.2008 um 14:53 Uhr)

Ähnliche Themen

  1. Das vermisste Mac OS X 10.4. Tutorial...
    Von Syncron im Forum Software
    Antworten: 32
    Letzter Beitrag: 08.04.2008, 21:00
  2. Yellow Dog Linux 6.0: Linux für PowerPC
    Von Felix Rieseberg im Forum News-Kommentare
    Antworten: 3
    Letzter Beitrag: 06.02.2008, 11:07
  3. osx tutorial?
    Von profi im Forum OS X
    Antworten: 12
    Letzter Beitrag: 10.12.2006, 18:19
  4. Darwine Tutorial PPC?
    Von fran2k im Forum Windows auf dem Mac
    Antworten: 1
    Letzter Beitrag: 08.06.2006, 17:17

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •