Merhabalar,
VMware vCenter üzerinde bir sanal sunucu kurulumu sırasında, kurulum için gerekli ISO dosyasını bu sanal sunucuya mount ediyoruz . Fakat daha sonrasında bu ISO dosyasını unmount ya da disconnect etmeyi unutuyoruz. Sonuçta bazı sıkıntılarla karşılaşıyoruz.
Örneğin ISO ile işiniz bittikten sonra belki datastore üzerinden silmek ya da taşımak isteyeceksiniz. Fakat hala bu sanal sunucuya bağlı olduğu için işlem başarısız olacak. Başka bir örnek vMotion için verilebilir. Taşımak istediğinizde CD-ROM a bağımlılık olduğuna dair hata alacaksınız.
Bu durumda bu silmek istediğimiz ISO dosyası hangi sanal sunucuda bağlı? Ortamınızda çok fazla VM varsa bunu bulmak işkence olabilir. Bu amaçla çok basit 2 komutla bu işlemi nasıl yapabileceğinizi paylaşmak istiyorum.
Öncelikle, CD-ROM‘ları bağlı olan tüm sanal sunucuları bulalım.
Get-VM | Where-Object {$_.PowerState –eq “PoweredOn”} | Get-CDDrive | FT Parent, IsoPath
Bu komutu, çıktısını biraz daha farklı isterseniz şu şekilde de kullanabilirsiniz:
Get-VM | Get-CDDrive | select @{N=”VM”;E=”Parent”},IsoPath | where {$_.IsoPath -ne $null}
Bu listeye göre gidip ilgili sanal sunucudan CD-ROM’da bağlı olan ISO dosyasını unmount edebilir, ya da aşağıdaki komut ile bu işlemi toplu şekilde gerçekleştirebilirsiniz.
Yalnız şunu hatırlatmak isterim ki, bu işlemi toplu yapmanız durumunda, o an CD-ROM daki ISO’ya ihtiyaç duyan sanal sunucuların çalışmasını etkileyebilirsiniz.
Get-VM | Where-Object {$_.PowerState –eq “PoweredOn”} | Get-CDDrive | Set-CDDrive -NoMedia -Confirm:$False
-Confirm:$False ile onaylamadan işlemin yapılmasını sağlamış oluyorsunuz.
Diğer bir toplu unmount komutu ise şudur:
Get-VM | Get-CDDrive | where {$_.IsoPath -ne $null} | Set-CDDrive -NoMedia -Confirm:$False
Yararlı olması dileğiyle.
Yusuf İşleyen