Forum

Bildirimler
Hepsini Temizle

Hyper-V: Fixed Size VHD’leri Çok Daha Hızlı Yaratın

3 Yazılar
3 Üyeler
0 Reactions
1,208 Görüntüleme
(@serhatakinci)
Gönderiler: 4117
Famed Member
Konu başlatıcı
 

VHD’nin  (Virtual Hard Disk) Hyper-V üzerinde çalışan VM’lerin 
(Virtual Machine) sanal disk formatı olduğunu artık biliyorsunuz 🙂 .
Bu format aynı zamanda Virtual Server ve Virtual PC ortamları içinde
geçerli. Yani MS tarafında genel sanal disk formatı diyebiliriz.

Hyper-V üzerinde 3 farklı VHD tipi vardır.

Dynamically Expanding
Fixed Size
Differencing

Genelde ilk iki tip VHD’i kullanırız. Bu iki tip arasındaki temel farklardan ise burada kısaca bahsetmiştim.

Hyper-V Manager konsolu üzerinden 10GB boyutlu yeni bir Dynamically Expanding VHD
yaratmak istediğimizde işlem saniyeler içinde gerçekleşir çünkü
Dynamically Expanding tipinde örneğin 10GB olarak belirlenen sanal disk
alanı, oluşan VHD dosyasının boyutunu etkilemez.  Bu Dynamically
Expanding VHD’lere özel bir durumdur. Sanal disk boyutu VHD yaratılma
işlemi sırasında fiziksel disk/partition üzerinde rezerve edilmez. Bu
nedenle Dynamically Expanding VHD dosyası çok hızlı bir şekilde
yaratılır.

Yine Hyper-V Manager konsolu üzerinden bu sefer 10GB boyutlu bir Fixed SizeVHD
yaratmak istediğimizde işlem çok daha uzun sürecektir çünkü Fixed
SizeVHD tipinde belirlenen sanal disk alanı, oluşan VHD dosyasının
boyutunu etkiler ve eşittir. Yani 10GB size’a sahip bir Fixed SizeVHD
dosyası, fiziksel disk/partition üzerinde de 10GB boyutlu bir dosya
şeklinde olacaktır çünkü oluşturulma işlemi sırasında boyut rezerve
edilir. Bu da Fixed SizeVHD oluşturulma işlem zamanının belirlenen
boyut ile doğru orantılı olarak uzamasına neden olur. 10 yada 20 GB
kapasiteli Fixed SizeVHD’ler belki 2-3 dk içerisinde oluşacaktır ancak
200 – 300 GB kapasiteli Fixed SizeVHD’ler yaratmak oldukça zaman alır.

Bu iki tip arasındaki farkları daha iyi anlamak için buraya bakmanızı öneririm.

Peki Fixed SizeVHD yaratma işlemlerini daha hızlı gerçekleştirebilir misiniz? Kesinlikle evet 

MSDN Code Gallery üzerinde yayınlanan VHD Tool yardımı ile çok kısa sürede ve tamamen sağlıklı Fixed Size VHD’ler yaratabilirsiniz.

Birkaç örnek ile aracı inceleyelim.

Öncelikle VhdTool.exe yi aşağıdaki link üzerinden indiriyoruz.

http://code.msdn.microsoft.com/vhdtool/Release/ProjectReleases.aspx?ReleaseId=2437

Bu tool Server tarafından Windows Server 2003 ve üzeri, Client
tarafında ise Windows XP ve üzeri sistemlerde çalışabilir ve NTFS
partition gerekliliği vardır.

Tool ile kullanabileceğiniz komutlar aşağıda.

VhdTool.exe /create <FileName> <Size>
VhdTool.exe /convert <FileName> /quiet
VhdTool.exe /extend <FileName> <NewSize>

Gördüğünüz gibi 3 temel komut var.

/Create ile yeni bir Fixed Size VHD yaratabilirsiniz

/Convert var olan bir dosyayı (ör: IMG) Fixed Size VHD’e convert edebilirsiniz

/Extend ile var olan bir Fixed Size VHD’nin boyutunu genişletebilirsiniz

Bu arada VhdTool.exe’nin bir grafik ara yüzü bulunmuyor. İşlemleri komut satırından gerçekleştiriyoruz.

Örneğin 30GB boyutlu bir Fixed Size VHD yaratalım.

Bu işlem için kullanmanız gereken komut:

VhdTool.exe /create e:\TestVHDs\FX.vhd 32212254720

Bu komut içindeki e:\TestVHDs\FX.vhd VHD dosyasının yaratılacağı dizini ve dosyanın ismini temsil ediyor. 32212254720 ise sanal disk miktarını temsil ediyor. Byte cinsindendir.

32212254720byte =  30GB

Nasıl hesaplanır? Mantık şu: GB> MB> KB> Byte şeklinde, 1024 ile çarparak aşağı inilir.

30GB         * 1024 = 30720 MB
30720MB     * 1024 = 31457280 KB
31457280KB     * 1024 = 32212254720 Byte

Yaratacağımız VHD’nin boyutunu byte cinsinden belirledikten sonra, cmd.exe açıyoruz, VhdTool.exe’nin olduğu dizine geçiyoruz ve VhdTool.exe /create e:\TestVHDs\FX.vhd 32212254720 komutunu uyguluyoruz.

1 Numarada E:\ içinde VhdToll.exe nin olduğunu görüyorsunuz.
2 Numarada uyguladığımız komut var

2 Numaralı komutun hemen altında uygulanan adımları görüyorsunuz ve en sonda Complate bilgisi var.

Bu yöntemle saniyeler içinde ve boyuttan bağımsız olarak Fixed Size VHD’ler yaratabilir, genişletebilir, convert edebilirsiniz.

Extend ve Convert komutları da aşağıdaki gibi uygulanabilir.

Yukarıda Extend komutuyla 3GB’lık Fixed Size VHD dosyasının boyutunu 20GB’a genişletiyorum

Aşağıda ise .img dosyasını Fixed Size yapıyoruz. Bu komutta /quiet parametresi olduğu için print yoktur.

En güzel yanı da tüm bu işlemlerin saniyeler içinde gerçekleşiyor
olması. Bu işlemleri normal yollar ile uyguladığımızda oldukça zaman
alır.

Serhat AKINCI – IT Pro.

 
Gönderildi : 10/04/2009 22:05

(@mesutsariyar)
Gönderiler: 2515
Co-Founder
 

Serhat hocam yine 10 numara bilgi, teşekkürler!

 
Gönderildi : 10/04/2009 22:35

(@muratcan-2)
Gönderiler: 2192
Üye
 

Serhat hocam, hyper-v konusunda teksin ne diyim artık... [:)] Eline sağlık teşekkürler hocam.

 
Gönderildi : 10/04/2009 23:00

Paylaş: