HYPER-V
R2’DE VHD BOYUTU NASIL ARTTIRILIR ?
Hyper-V Manager konsolunu
açın.
Disk boyunutu arttırmak
için alttaki resimde göreceğiniz Edit
Disk seçeneğine tıklayın.
Açılış ekranını next
tuşuna basarak geçin. Boyutunun arttırılmasını istediğiniz VHD dosyasını browse
tuşuna basarak seçin. ( bu uygulama yapılırken, VHD’nin kullanımda olmadığını
ve VM’in saved status konumunda olmadığına dikkat edin.) ayrıca bu uygulamanın
snapshot’lar ile çalışan vhd’lerde yapılmamasına dikkat ediniz.
VHD’yi seçtikten sonra
Next tuşuna bastığımızda aşağıdaki gibi 3 seçenek karşımıza çıkar.
Bunlardan
birincisi; compact seçeneği, bu VHD’deki disk boyutunu küçültür. Bu
küçültme işlemi, VHD’nin içinde kullanılmayan alanı kaldırarak yapmaktadır.
Diğer
bir seçenek olan convert ise, Dynamic Disk’ten fixed
Disk’e dönüştürmek için kullanılır. Bir hatırlatma yapmakta fayda var. Dynamic disk’ten
fixed size diske bir VHD’yi dönüştürmek istemeniz durumunda Fiziksel Disk’inizin
I/O performansının çok iyi olması gerekmektedir. Aksi halde yavaşlık problemi
yaşayabilirsiniz.
Üçüncü
seçenek olan Expand’i tıklayıp
Next tuşuna basın. Karşınıza aşağıdaki gibi bir pencere çıkacaktır.
Diskin boyutunu yükseltmek
istediğiniz boyutu yazıp Next tuşuna basın ve finish ile yapmak istediğiniz
işlemi tamamlayın.
Artık VHD’nizin kapasitesi
artmış durumdadır.
Tüm bunları GUI aracılığı
ile de yapmak istemezseniz aşağıdaki PowerShell script’i kullanarak da birkaç saniyede
bu işlemi yapabilirsiniz.
Kırmızı ile belirtilen
alana disk’inizin bulunduğu path’i ve yükseltilmesi gereken boyutu yazmanız
gerekmektedir.
# Expanding a VHD
param(
[string]$vhdPath
= $(throw "D:\Data.vhd"),
[string]$vhdSize
= $(throw "2000")
)
# Size in bytes
$MB = [System.UInt64]
$vhdSize*1024*1024
$ImageMgtService =
get-wmiobject -class "Msvm_ImageManagementService" -namespace
"root\virtualization"
# creating a dynamic vhd
$result =
$ImageMgtService.ExpandVirtualHardDisk($vhdPath,$MB)
if($result.ReturnValue -eq
4096){
$job =
[wmi]$result.Job
# waiting the job
while($job.jobstate
-lt 7){$job.get()}
# Return some error
code
return $job.ErrorCode
}
return $result.ReturnValue
------------------------------------------------------------------------------------------------------
Hiç yorum yok:
Yorum Gönder