…legalább egyszer újrakezded…

Azt hiszem, hogy ezt  "A Zen és a motorkerékpárápolás művészete" c. regényben olvastam, de lehet, hogy mégis Hamvas Béla lesz. Nem tudom. De nagyon igaz. Az állítás úgy hangzik, hogy amit igazán jól akarsz csinálni, azt legalább egyszer teljesen újrakezded.

Adott egy jó vas. Sok (6 GB) memóriával és sok (270 GB) lemezterülettel. Elkezdtem felépíteni egy Contoso mintahálózatot. Majd egyszer azt is megírom, hogy mi van "belül", most maradjunk kívül a mátrixon. Ahhoz, hogy gyorsan lehessen kiszolgálókat üzembe állítani, eltöltöttem egy napot, telepítettem egy 7GB-os fix méretű merevlemezre egy Windows Server 2003 EE-t R2-vel, Netmon 3.0-val .Net Framework 2.0-val, 3.0-val és még sok minden egyébbel, majd syspreppel hidegre tettem. Ezután ha kell egy új gép, akkor csak lemásolom a VHD-t, lefuttatom a mini-setupot, és már ott is a segédprogramokkal jól feltöltött alaprendszerem. Csupán a megfelelő alkalmazást kell telepítenem és már kész is.

Nos, a megoldásnak lett néhány hátulütője. Bár a "provizionálás" valóban gyors lett, az egyéb demók mellett a tizenvalahányadik rendszer beállításakor konstatálnom kellett, hogy vészesen fogy a hely a gazdagépen, miközben minden vendég-gépen 2-3 GB szabad hely maradt a virtuális merevlemeken. Ugyanakkor az is előfordult, hogy a kompromisszumos 7 GB néha bizony szűkös, és belül bűvészkedni kell a hellyel.

Aztán amikor kiderült, hogy még egy CA, még egy TS, még két cluster node kell, akkor elfogyott a cérna, a türelem és a szabad hely, így valamilyen szofisztikáltabb megoldás után néztem. Úgy hívják: differential disk.

Ismertem ezt a technológiát, de jól látható, hogy ez nem elég. Meg kell ízlelni a problémát, hogy megértsd a megoldást. A differential disk úgy működik mint egy permanens undo disk. Van egy base image-ed, aztán ahhoz csapod hozzá a differential diskedet. A virtuális gépben az operációs rendszer a kettőt nem látja külön, azt gondolja, hogy a kettő egy.

Egy alap VHD több differenciális diszk szülője is lehet, akár úgy is, hogy a több gép egyszerre fut. Egyre kell ügyelni: az alaplemezt reprezentáló VHD állományon be kell kapcsolni a "Read-only" attribútumot, vagy egyéb módon csak olvashatóvá kell tenni, különben egyetlen véletlen írás a differenciális lemezeket érvénytelenné tesz – ez a katasztrófa.

Az átálláshoz a következőt tettem: létrehoztam egy 3,5 GB-os VHD-t, majd arra telepítettem egy Windows Server 2003 Enterprise Edition-t R2-vel, VmAddition-el és a már fent felsorolt kiegészítőkkel. Sőt, iziben SP2-t is feldobtam rá, hogy ne kelljen teleraknom utólag javításokkal.  Végezetül jött a sysprep. Amikor elkészültem definiáltam a differenciál disket…

 …és jött a puding próbája. A próba nem sikerült, a két VHD-ből kipotyogó "virtuálisan is virtuális" lemez mérete ugyanis ugyanakkora lett, mint az eredeti alaplemezé. A képen látható, hogy nem is lehet megadni méretet.

Mondom, amit jól szeretnél csinálni, azt legalább egyszer újrakezded. Ezúttal nem kezdtem újra, hanem letöltöttem a vmtoolkit oldaláról a VHD-expanderből lett VHD resizer programocskát. Ennek segítségével a 3,5 GB-os fix méretű VHD-t átkonvertáltam 128 GB dinamikusan növekvő méretűvé. Nyertem, mert az állomány fizikailag már csak 3,1 GB lett. (a konvertálás ugyanis nem más, mint egy új VHD létrehozása.) Ezután letöltöttem a GParted LiveCD-jét ISO formátumban (50 MB), amivel kinyújtottam a még 3,5 GB-os NTFS partíciót 128 GB-ra. Izgalmas, hogy a tényleges fájl egy bájttal sem lett nagyobb. Ezután jöhetett az újabb differential disk definiálás, végül a mini-setup. Kész, felálltt az első, közös alaplemezt használó gépem.

Az eredmény: az alaplemez 3,1 GB lett, az első, belőle képzett virtuális gép differenciális lemeze pedig 766 MB. Vagyis, már az első gépnél 7 GB helyett csupán 3,8 GB helyfoglalás történt. Mivel minden gépem operációs rendszere azonos, ezért ha tíz géppel számolok, akkor 70 GB helyett elegendő lesz majd 3,1 +10x 700MB, ami cc 10 GB. 20 gép esetén (szerintem kb. ennyi gép lesz összesen a Contoso-ban) 140 GB helyett 17 GB is elég lesz, vagyis közelítem a 88%-os megtakarítást. No ez már derék. Ezen felül megoldódott a 7 GB-os belső helyszűke probléma is, az új rendszerek mind 128 GB-ot látnak. Sőt még a provízionálás is egyszerűbb lett, mert csupán a differenciális lemezt kellétrehozni, nem kell semmit másolgatnom. Arról már nem is beszélek, hogy 17 GB-t nevetve elfér még egy notebookon is. Ha tehát később az egész rendszert ki kell vinni egy ügyfélhez, csak az új gépemet kell majd a hónom alá csapni.

Mindehhez csupán arra van szükség, hogy nyugalmasabb időkben elkezdjem újrarakni a már meglévő Contoso gépeket. Szóval majd nyugalmasabb időkben. De ha egyszer jól akarod csinálni…

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: