31 Ekim 2012 Çarşamba

Vmware Snapshot Yeri Nasıl Değiştirilir


Yukarıdaki gibi bir hata ile karşılaştıysanız muhtemelen snapshot aldığınız sunucunun homefolder ı (vmx dosyasının tutulduğu yer) olması gerekenden küçük boyuttaydı veya aldığınız snapshot ı çok uzun süre silmeden kullanmaya devam ettiniz J
Bu gibi durumlarla karşılaştığınızda vm in durduğu datastore u extend etmeniz veya snapshot ı silmeniz gerekecektir.
Bunun gibi durumların sebebi genellikle sanal makine için disk oluşturulurken LUN size ının tamamına yakınının kullanılmasından kaynaklanmaktadır.
Snapshot aldığınızda alınan snapshot default olarak snapshot ını aldığınız makine nin vmx dosyasının yanında oluşacaktır.
Örn;
200 gb lık bir datastore içerisinde bir vm oluştururken 199 gb lık disk verildiğinde geriye 1gb tan daha az kullanılabilir bir alan kalacaktır.Oluşturduğunuz snapshot ta bu alanda yer alacak ve vm üzerinde değişiklikler yapıldıkça bu alan şişmeye başlayacak ve yukarıdaki hata ile karşılaşacaksınız.
Bu durumun önüne geçmek için snapshot alınan yeri farklı bir datastore olarak belirleyebilirsiniz.
Default snapshot alanını değiştirmek;
  1. Esx host a putty ile bağlanın
  2. İlgili sanal makinenin vmx dosyasını bulun
    Sanal makine nin vmx dosyasının nerede olduğunu bilmiyorsanız putty ile bağlandıktan sonra vmware-cmd –l komutunu çalıştırın size host üzerinde kayıtlı olan sanal makinelerin listesini gösterecektir (esxi için vim-cmd vmsvc/getallvms )
  3. Bulduğunuz vmx dosyasının yerini not edin ve sanal makine yi shutdown edin
  4. Makineyi shutdown ettikten sonra "remove from inventory" ile makineyi envanter den kaldırın
  5. Makineyi envanterden kaldırdıktan sonra vmx dosyasını edit lememiz gerekecek bunun için putty de "vi /vmx dosyasının yolu/sanalmakineadı.vmx" şeklinde yazarak vmx dosyasının içerisine girin(az önce not ettiğimiz editleyecek olduğumuz vmx dosyasının tam yolu)
  6. Vmx dosyasınına birşeyler ekleyebilmek için "insert" tuşuna basın ve en alt satıra aşağıdaki şekilde snapshot ların duracağı yeni yeri ekleyin
  7. workingDir = "/vmfs/volumes/4f916cd9-01dd579c-e567-e41f13bfac1c/snap"
  8. yukarıdaki örnekte
    "/vmfs/volumes/4f916cd9-01dd579c-e567-e41f13bfac1c/snap" kırmızı directory deki mavi snap dosyasının içerisine snapshot dosyalarını oluşturması için gereken eklemeyi yaptık.
  9. Değişiklikleri kaydetmek için "esc" tuşuna basıyoruz hemen sonrasında
    :wq
    Yazarak değişiklikleri kaydediyoruz.
  10. Yanlış birşey yazıdığınızda yada satırları kaydırıp yanlışlıkla vmx dosyasını bozarsanız kaydetmeden çıkmak için :q! Yapmanız yeterlidir.
  11. İşlem bittikten sonra sanal makinenin vmx dosyasının bulunduğu datastore a sağ tıklayarak "Browse datastore" dedikten sonra içersinde bulunan vmx dosyasına sağ tıklıyor ve "Add to inventory" diyerek tekrar envantere ekliyoruz
  12.  

  13. Envanter ekleme sihirbazını tamamladıktan sonra sanal makinemizi power on diyerek tekrar kullanmaya başlayabiliriz.
  14. Yeni alınacak snapshotlar artık belirtmiş olduğunuz datastore içerisinde belirtilen folder içerisine alınacaktır.

     

     Not: vmdk dosyalarınızın büyüklüklerine bağlı olarak snapshot için ayırdığınız alan (datastore) büyük size a sahip disklerin yer gereksinimlerini karşılamayabilir.Snapshot için oluşturulan datastore snapshot ı alınacak olan vm in bulunduğu datastore dan block size olarak küçük ve disk size ı olarak da vmware in belirttiği alandan ufak ise snapshot alamayabilirsiniz.Ve aşağıdaki hatayı alabilirsiniz
  • "Create virtual machine snapshot VIRTUALMACHINE File <unspecified filename> is larger than the maximum size supported by datastore '<unspecified datastore>'
  • File is larger than the maximum size supported by datastore