Diskless boot Windows 7 via iSCSI

Potřebujeme:
(1) server s dostatečnou diskovou kapacitou a operačním systémem Linux (v našem případě Atom + 3x 1.5TB disk v RAID5 pomocí mdraid a Linux Debian Squeeze)
(2) klient s DVD mechanikou a síťovkou podporující PXE boot a se síťovou konektivitou na (1) (v našem případě běžný desktop s Pentiem E5200, 4GB RAM a onboard síťovkou Atheros na desce ASUS P5QL-E)

Step-by-step:
a. zvolit na serveru místo, kam budou ukládána (já jsem zvolil soubor na disku; dd if=/dev/zero of=/mnt/data/volumes/iscsi_hdd_01.img bs=1M count=16384)
b. na serveru nainstalovat iSCSI target, v našem případě zvolen IET (apt-get install iscsitarget iscsitarget-dkms)
c. nakonfigurovat IET. V defaultu je všechno povoleno a není třeba konfigurovat autentifikaci, stačí přidat konfiguraci konkrétního targetu

Target iqn.2003-08.net.myslenka.grisu:vFile1
        Lun 0 Path=/mnt/data/volumes/iscsi_hdd_01.img,Type=fileio,IOMode=wt

d. nainstalovat a nakonfigurovat tftp server (apt-get install tftpd)
d1. vytvořit /tftpboot s plnými právy pro všechny
e. stáhnout si iPXE image pro Intel UNDI – undionly.kpxe – a uložit ho do /tftpboot (tudíž není nutné updatovat Boot ROM na síťovce)
f. na serveru nainstalovat ISC DHCP server, pozor na stávající DHCP v síti (apt-get install isc-dhcp-server)
g. nakonfigurovat ISC DHCP server pro pevný lease pro našeho klienta (2) dle MAC adresy.
g0. nastavit adresu serveru našemu pevnému leasu (next-server …)
g1. předhodit PXE image s iPXE našemu pevnému leasu (filename …)
g2. zabránit „boot loopu“ z důvodu opakovaného načítání iPXE image (if exists user-class…)
g3. při načteném iPXE sdělit adresu iSCSI targetu (option root-path… – toto už je option pro iPXE) – POZOR! Pro začátek necháme zakomentovaný, protože z něj ještě nechceme přímo bootovat.

host blackwhite {
  hardware ethernet 00:23:54:5e:7a:89;
  fixed-address 192.168.0.10;
  next-server 192.168.0.250;
  if exists user-class and option user-class = "iPXE" {
      filename "";
#      option root-path "iscsi:192.168.0.250::::iqn.2003-08.net.myslenka.grisu:vFile1";
  } else {
      filename "undionly.kpxe";
  }
}

…takže teď máme funkční a nakonfený iSCSI target i ISC DHCP server včetně TFTP. Můžeme začít instalovat Windows 

h. na (2) použijeme DVD s Windows 7 (v mém příkladu Win7 HP x64), v BIOSu nastavíme bootování z DVD jako primární (měl jsem i odpojený HDD)
i. zapneme (2) a v bootmenu vybereme boot ze sítě. Komp by měl dostat adresu od DHCP a spustit iPXE. Pomocí Ctrl-B se dostaneme do příkazové řádky iPXE.
j. nakonfíme iPXE, tedy přidělíme adresu z DHCP a „namountujeme“ iSCSI disk
j1. dhcp net0
j2. sanhook iscsi:192.168.0.250::::iqn.2003-08.net.myslenka.grisu:vFile1
j3. exit
k. mělo by se pustit bootování z DVD a s tím instalace Windows.
l. až bude po instalaci Windows, odkomentujeme řádek v konfigu DHCP a další bootování už pojede samo od sebe 

A teď moje zkušenost s rychlostí – je to na 100Mb síti, takže nic moc reprezentativního  až trochu poladím ten target, tak to zkusím po gigu.

Čerstvá instalace Windows 7 HP x64, jak dlouho trvaly části bootování:
10s inicializace PXE
5s inicializace iPXE a spuštění bootování z iSCSI
45s logo windows
10s od zobrazení kurzoru až po loginscreen
10s od odklepnutí hesla po zobrazení plochy

 

3 komentáře u „Diskless boot Windows 7 via iSCSI

  1. LSC

    Nevim jestli to vis, ale ta instalace na iSCSI HDD se napr. pod virtualboxem nemuze povest. Je tam totiz problem s tim, ze po natahnuti iPXE uz nedojde na boot z dlasiho media (INT18 BOOT FAILURE).
    Je potreba si do VM pripojit pres iSCSI dotycny HDD:
    VBoxManage.exe storageattach „nazev_VM“ –storagectl „nazev_radice“ –port 0 –device 1 –type hdd –medium iscsi –server „xxx.xxx.xxx.xx“ –target „iqn“ –lun 0
    (port, evice, lun atd. dle potreby)
    Pak staci normalne nabootovat instalacni DVD a instalovat na virtualni HDD.

    Lidem s MS DHCP by se mohl hodit tenhle odkaz – http://technet.microsoft.com/en-us/library/cc751194.aspx

  2. marty Autor příspěvku

    @LSC
    Díky za doplnění – já jsem to instaloval na reálný stroj, takže problém s virtualboxem jsem nezaznamenal. Virtuální disky pod virtualboxem používám jen nativně (resp. jako ty jejich VHD nebo jak tomu říkají), iSCSI je IMHO zbytečná režie navíc.
    Ale na vyzkoušení dobrý!

  3. zitnyp

    Ahoj,

    nevim teda proc, ale u Intel Little Fals desky s atomem me to hlasi, ze System Windows nelze nainstalovat na tento disk. Je mozne, ze hardware tohoto pocitace nepodporuje spusteni na tomto disku. Zkontrolujte, zda je v nabidce systemu BIOS povolen radic disku…

    disk to sice vidi, ale proste to na nej nenainstaluje…

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *


9 × sedm =