Vmware virtual mashinasining disk hajmini kamaytirish. Ortib ketgan VirtualBox virtual diskini qanday qisqartirish kerak

Hyper-v bilan ishlash jarayonida uning hajmini o'zgartirish zarur bo'lishi mumkin qattiq disklar virtual mashinalar. Afsuski, standart vositalar Windows 2008 R2 Siz o'lchamlarni kamaytirishga ruxsat bermaysiz qattiq disk- faqat diskni kengaytirish yoki dinamikdan sobit holatga o'tkazish (va aksincha).

VHD o'lchamlarini o'zgartirish dasturi

Bu yordamchi dastur qattiq disk hajmini ham statik, ham dinamik ravishda oshirish va kamaytirish imkonini beradi. Afsuski, dasturning rasmiy sayti o'z faoliyatini to'xtatdi. Biroq, yordam dasturini Internetda yoki bizdan yuklab olishingiz mumkin.

Windows 2012 uchun Powershell

Hyper-V ning oldingi versiyalarida virtual disk almashinuvini umuman kamaytiradigan funksiya yo'q edi. Windows Server 2012 -dan boshlab, virtual disklarni kesishning standart varianti bor, lekin uni ishlatish hali ham oson emas. Gap shundaki, VHD hajmini kichraytirish uchun uning ichida ajratilmagan bo'sh joy bo'lishi kerak. Aks holda, Shrink varianti mavjud emas va GUIda yo'q, va ResSe-VHD yordamida diskni kichraytirishga urinishda PowerShell ishlamay qoladi.

Misol tariqasida, 40 Gb virtual diskli SRV01 virtual mashinasini olamiz va uni 30 Gbaytgacha qisqartiramiz. Buning uchun avval VMni o'zgaruvchiga qo'ying va uning virtual diskining xususiyatlarini ko'rsating:

$ vm = Get -VM -Ism SRV01
Get -VHD -VMId $ vm.VMId

VHD xususiyatlarida bizni quyidagi parametrlar qiziqtiradi:

  1. FileSize - VHD faylining joriy hajmi. Haqiqiy hajmni ko'rsatadi disk maydoni qaysi oladi virtual disk.
  2. Hajmi - virtual diskning joriy hajmi. Dinamik VHD holatida u o'sishi mumkin bo'lgan maksimal hajmni ko'rsatadi.
  3. MinimumSize - VHDni kesish mumkin bo'lgan virtual diskning minimal hajmi yoki eng kichik hajmi.

Misoldan ko'rinib turibdiki, bizda 40 Gb hajmli dinamik ravishda kengayadigan VHD bor, shundan bu lahza 20 Gb dan bir oz ko'proq joy egallaydi. Bo'sh joy bor, lekin hozirgi va minimal o'lchamlar Ular deyarli bir xil, shuning uchun siz diskni kesolmaysiz.

Keyingi manipulyatsiyalar uchun VM o'chirilgan bo'lishi kerak, shuning uchun biz uning holatini tekshiramiz va agar kerak bo'lsa, uni o'chirib qo'yamiz:

$ vm.Stat $ vm | Stop -VM -kuch

Keyin biz VHD -ni ota -tizimga o'rnatamiz va hosil bo'lgan diskning xususiyatlarini ko'rsatamiz:

Mount -VHD -Path $ vm.HardDrives.Path -Passthru | Get-disk

Olingan disk raqamini olamiz va undagi barcha bo'limlarni ko'rsatamiz:

Get -Partition -DiskNumber 3

Agar diskda birdaniga bir nechta kichik tushunarsiz bo'limlar bo'lsa, ularga tegmang. Ular o'z ichiga oladi muhim ma'lumotlar yuklash va tiklash uchun tizim talab qiladi. Bizga haydovchi harfi bo'lgan bo'lim kerak. Keling, uni 30 Gbaytgacha qisqartirib, nima bo'lganini tekshirib ko'ramiz:

O'lchamni o'zgartirish -bo'linish -DriveLetter -o'lchamlari 30 Gb
Get -Partition -DriveLetter E

VHD -ni ota -ona tizimidan ajratib oling:

O'chirish -VHD -Path $ vm.HardDrives.Path

Va biz uni eng past qiymatga kesib tashladik:

Hajmi -VHD -Path $ vm.HardDrives.Path -ToMinimumSize

Ko'rib turganingizdek, hammasi yaxshi bo'ldi, virtual disk 30 Gbaytgacha qisqartirildi. VMni ishga tushirishgina qoldi.

Hayrli kun!. Vazifa oddiy, vmdk virtual disk hajmini kamaytiring ESXI 5 yoki 6.5 da. Bunday ehtiyoj noto'g'ri rejalashtirish yoki vazifani qo'ygan odamning noto'g'ri ma'lumoti tufayli paydo bo'lishi mumkin. Bizda mavjud bo'lgan virtual mashina windows serveri 2008 yil R2 disk C 50 Gb 20 Gb va D disk 100 Gb, lekin 1 ishlatiladi, siz uni 10 ga kamaytirishingiz kerak, shunday qilib u qalin bo'lib qoladi. Afsuski, buni oddiy vositalar yordamida amalga oshirish mumkin emas, bu Hyper-V-da siz sozlamalarga kirib kerakli miqdorni olib tashlagandek emas. Yaxshiyamki, uni hal qilishning qiyin usuli yo'q, ya'ni VMware vCenter Converter Standalone 5-6.2 yordam dasturi, men uning ishining misolini tasvirlab berdim.

Biz yordam dasturini ochamiz. "VMware infratuzilmasi virtual mashinasi" ni tanlang va xost yoki vCenter serveriga ulanish uchun hisob ma'lumotlarini kiriting. Keyin keyingi.

Biz disklarni qisqartirish uchun xost va virtual mashinani tanlaymiz.

Biz manzilni kiritamiz va ma'lumotlarga kiramiz, mening misolimda bu bir xil vcenter serveri.

O'rnatish papkasini va nomini tanlang

Biz xostni tanlaymiz, men sizga vmtools 9 -versiyasini tavsiya qilaman, shunda siz derazalar va ma'lumotlar omboridagi qalin mijozdan tahrir qilishingiz mumkin, aks holda siz virtual uskunalar versiyasini pasaytirasiz.

Va endi eng qiziq narsa - disklarning kamayishi. Ma'lumotni nusxalash turini tanlang "Ovozni tanlash" -ni tanlang va qattiq diskda tahrir qilish tugmasi ostida, ochiladigan menyuda siz hozirgi o'lchamni yoki eng kichigini tanlashingiz mumkin, eng kichigini tanlashingiz mumkin, keyin konvertatsiya tugagandan so'ng uni xohlaganingizga kengaytiring. sizga kerak, aslida keyingi tugmani bosing va jarayon boshlandi.

Muhim. Bu ko'rsatma vmdk disklarini siqish uchun rasman qo'llab -quvvatlanadigan echim emas, lekin maqola muallifi uni ishlab chiqarish muhitida bir necha bor ishlatgan. Ushbu maqola ESXi 5.1 yordamida yozilgan.

VMWare ESXi -da virtual disk hajmini kamaytirish tartibini bajarishdan oldin quyidagilarga ishonch hosil qiling:

  • Virtual mashinaning barcha rasmlarini o'chiring, aks holda siz virtual diskka zarar etkazishingiz mumkin
  • Vmdk faylining to'liq nusxasini yarating yoki buyruqlar yordamida minimallashtiring: cp vmname.vmdk backup_vmname.vmdk cp vmname-flat.vmdk backup_vmname-flat.vmdk

Virtual disk hajmini kamaytirishning ikkita bosqichi mavjud:

Mehmon OS ichidagi bo'limni qisqartirish

Avvalo, siz mehmon ichidagi disk bo'limining hajmini kamaytirishingiz kerak operatsion tizim... Buni diskni boshqarish menejeri yordamida amalga oshirish mumkin (operatsiya bilan boshlanadi Windows Vista) yoki uchinchi tomon yordam dasturlaridan foydalanish (masalan, Acronis disk Direktor). Agar buni qilmasangiz, virtual diskni kichraytirgandan so'ng, yaroqsiz fayl tizimiga aylanib qolishingiz mumkin.

Aytaylik, biz disk hajmini 19,5 GB ga kamaytirmoqchimiz. Bu shuni anglatadiki, tovush hajmi 19968 MB (19,5 GB x 1024) ga kamayishi kerak. Bu sehrgarning Shrink Volume maydoniga kiritish kerak bo'lgan qiymat. Bo'lim hajmini kamaytirgandan so'ng, diskda ma'lum miqdorda ajratilmagan joy qoladi (bizning misolimizda 19,5 Gb)

VMware virtual mashinasining VMDK fayl hajmini kamaytirish

Biz ikkinchi operatsiyaga o'tamiz - men VMDK faylining hajmini to'g'ridan -to'g'ri o'zgartiraman fayl tizimi VMWare VMFS.

  1. Virtual disk hajmini kamaytirmoqchi bo'lgan virtual mashinani o'chiring
  2. SSH orqali VM ro'yxatdan o'tgan ESXi gipervisorining konsoliga ulaning
  3. VM vmdk fayli saqlanadigan katalogga o'zgartiring (yo'lni vSphere grafik mijozidagi virtual disk xususiyatlarida topish mumkin): cd / vmfs / volumes / datastore / VM-name

  4. Cat buyrug'i yordamida * .vmdk kengaytmasi bilan konfiguratsiya faylining mazmunini ko'rib chiqamiz: cat VM-name.vmdk

    Vmdk diskining o'lchami bo'limda o'rnatiladi #Oxirgi tavsif(RW belgilaridan keyin). V bu ish raqam ko'rsatilgan 83886080 (40 GB * 1024 * 1024 * 1024/512)

  5. Biz vmdk disk hajmini 40 Gb dan 20 Gb gacha kamaytirmoqchimiz. Bu shuni anglatadiki, "Keng ko'lamli tavsif" bo'limida qiymatni ko'rsatish kerak: 41943040 (20 GB * 1024 * 1024 * 1024/512). Virtual diskning yangi hajmini o'rnating matn muharriri(vi yoki nano).
  6. Virtual mashinani klonlash yoki ko'chirish (Storage VMotion) boshqa xotiraga (ma'lumotlar ombori) qoladi. Virtual mashina fayllarini ko'chirgandan so'ng, uning xususiyatlari virtual diskning yangi hajmini ko'rsatadi.

    Maslahat... Agar vCenter yo'qolsa yoki bitta VMFS ombori bo'lsa, bu operatsiyalar mavjud emas. Bunday holda, vmdk diskini quyidagi buyruq bilan klonlashingiz mumkin:

    Vmkfstools -i vmname.vmdk vmname-new-size.vmdk

    Asl diskni o'chirib tashlang va vmdk diskini yana klonlang va asl nomiga qaytaring:

    Rm vmname.vmdk rm vmname-flat.vmdk vmkfstools -i vmname-new-size.vmdk vmname.vmdk

  7. Qolgan narsa - mehmon OS ni ishga tushirish va taqsimlanmagan maydon yo'qolganligiga ishonch hosil qilish.

    Maslahat... Agar vmkfstools yordam dasturi oldingi bosqichda ishlatilgan bo'lsa, virtual diskni VM sozlamalarida qayta ulashingiz kerak bo'ladi, chunki. uning yangi o'lchami to'g'ri ko'rsatilmasligi mumkin.

Shunday qilib, biz VMWare ESXi -da virtual vmdk disklarining hajmini kamaytirish operatsiyasini bajarish variantlaridan birini ko'rib chiqdik. Agar siz ishlatilmaydigan joy hisobiga ingichka VMWare disk hajmini kamaytirishingiz kerak bo'lsa, ko'rsatmalarni ishlatishni tavsiya etamiz.

Eslatma... Quyidagi sxemalar ko'pincha virtual vmdk disklarini siqishning umumiy muqobil usullari sifatida ishlatiladi:

  • VMware vCenter Converter yordamida virtual mashinani konvertatsiya qilish orqali virtual disk hajmini kamaytirish (konvertatsiya qilishda hosil bo'lgan disk hajmi asl hajmidan kichikroq ko'rsatiladi)
  • Virtual disk tarkibini klonlash uchinchi tomon dasturlari(masalan, Acronis Haqiqiy tasvir yoki Symantec Ghost32). Operatsiya virtual mashinaga kichikroq yangi disk qo'shish va unga kattaroq disk tarkibini klonlash orqali amalga oshiriladi. Keyin katta disk o'chiriladi.

VMware vCenter Converter Standalone yordamida konvertatsiya qilish orqali virtual disk hajmini kamaytirish

GUI yordamida VMWare -dagi VM -larda virtual disklar hajmini kamaytirishning yana bir usuli - bu foydalanish bepul konvertor — .

Kamchilik:

  • Yo'l tez emas
  • vCenter yoki ESXi xost konsolini ochishning hojati yo'q
  • VMning aniq nusxasi yaratiladi
  • konvertatsiya vazifasining parametrlarini belgilashda xato bo'lsa, manba buzilmaydi

Quyida asta -sekin ko'rsatmalar mavjud

Eslatma.Biz aylantirmoqchi bo'lgan virtual mashina (disklar hajmini o'zgartirish va hk) bo'lishi kerak o'chirilgan.

O'chirilgan.
Ya'ni, konvertatsiya qilishdan oldin, asl virtual mashinada ishga tushirish kerak: Yopmoq yoki Quvvatni o'chirish, lekin emas To'xtatish.

Biz ESXi hostining manzilini ko'rsatamiz.

VM manbasini tanlang.

Biz yangi VM parametrlarini ko'rsatamiz.

Diskni tahrirlash rejimiga o'ting (ma'lumotlarni nusxalash -> tahrirlash)

Nusxa ko'chirish rejimini tanlang: Nusxalash uchun jildlarni tanlang

Biz kerakli disk hajmini yangi VMda ko'rsatamiz. Ko'rib turganingizdek, mehmondagi disk - 48 Gb, diskning o'zi - 150. Biz uni 60 Gbgacha kamaytiramiz.



Biz konvertatsiya jarayonini boshlaymiz, asl VMni o'chirib qo'yamiz, yangisini yoqamiz. Biz disk hajmi kamayganligini tekshiramiz, shundan so'ng asl VM o'chirilishi mumkin.

To'g'ridan -to'g'ri bajarilishi mumkin bo'lgan VMWare virtual mashinasi diskini kengaytirish protsedurasidan farqli o'laroq, VMWare ESXi gipervizoridagi vmdk fayl hajmini kamaytirish protsedurasi ancha murakkab vazifadir va uni bajarish deyarli mumkin emas. u to'g'ridan -to'g'ri vSphere Client grafik interfeysi orqali - kichikroq o'lchamni ko'rsatish ishlamaydi.

Eslatma

E'tibor bering oxirgi versiya Microsoft gipervizor - Hyper –V Online VHDX Resize deb nomlangan virtual disklarning dinamik hajmini o'zgartirish (kengaytirish va qisqartirish) texnologiyasi mavjud.

Bu ko'rsatma vmdk disklarini siqish uchun rasman qo'llab -quvvatlanadigan echim emas, lekin maqola muallifi uni ishlab chiqarish muhitida bir necha bor ishlatgan. Ushbu maqola ESXi 5.1 yordamida yozilgan.

VMWare ESXi -da virtual disk hajmini kamaytirish tartibini bajarishdan oldin quyidagilarga ishonch hosil qiling:

    Virtual mashinaning barcha rasmlarini o'chiring, aks holda siz virtual diskka zarar etkazishingiz mumkin

    To'liq yaratish zaxira virtual mashina yoki buyruqlar yordamida kichraytirilgan vmdk faylining nusxasini yarating:

cm vmname.vmdk backup_vmname.vmdk cp vmname-flat.vmdk backup_vmname-flat.vmdk

Virtual disk hajmini kamaytirishning ikkita bosqichi mavjud:

    Mehmon OS ichidagi bo'limni qisqartirish

    VMware virtual mashinasining VMDK fayl hajmini kamaytirish

Mehmon OS ichidagi bo'limni qisqartirish

Birinchi qadam - mehmon operatsion tizimidagi disk bo'limining hajmini kamaytirish. Buni Disk Management (Shrink Volume operatsiyasi, Windows Vista-dan beri qo'llab-quvvatlanadi) yoki uchinchi tomon yordamchi dasturlari (masalan, Acronis Disk Director) yordamida amalga oshirish mumkin. Agar buni qilmasangiz, virtual diskni kichraytirgandan so'ng, yaroqsiz fayl tizimiga aylanib qolishingiz mumkin.

Aytaylik, biz disk hajmini 19,5 GB ga kamaytirmoqchimiz. Bu shuni anglatadiki, tovush hajmi 19968 MB (19,5 GB x 1024) ga kamayishi kerak. Bu sehrgarning Shrink Volume maydoniga kiritish kerak bo'lgan qiymat. Bo'lim hajmini kamaytirgandan so'ng, diskda ma'lum miqdorda ajratilmagan joy qoladi (bizning misolimizda 19,5 Gb)

VMware virtual mashinasining VMDK fayl hajmini kamaytirish

Biz ikkinchi operatsiyaga o'tamiz - men VMWare VMFS fayl tizimidagi VMDK faylining hajmini to'g'ridan -to'g'ri o'zgartiraman.

    Virtual disk hajmini kamaytirmoqchi bo'lgan virtual mashinani o'chiring

    SSH orqali VM ro'yxatdan o'tgan ESXi gipervisorining konsoliga ulaning

    VM vmdk fayli saqlanadigan katalogga o'zgartiring (yo'lni vSphere grafik mijozidagi virtual disk xususiyatlarida topish mumkin):

cd / vmfs / volumes / ma'lumotlar bazasi / VM-nomi

4. Cat buyrug'i yordamida * .vmdk kengaytmasi bilan konfiguratsiya faylining mazmunini ko'rib chiqaylik:

mushuk VM-nomi.vmdk

Vmdk diskining o'lchami #Extent tavsifi bo'limida o'rnatiladi (RW belgilaridan keyin). Bu holda, raqam 83886080 (40 GB * 1024 * 1024 * 1024/512)

5. Biz vmdk disk hajmini 40 Gbaytdan 20 Gbgacha kamaytirmoqchimiz. Bu shuni anglatadiki, "Keng ta'rif" bo'limida siz qiymatni ko'rsatishingiz kerak: 41943040 (20 GB * 1024 * 1024 * 1024/512). Matn muharriri (vi yoki nano) yordamida virtual disk uchun yangi hajmni o'rnating.

6. Virtual mashinani klonlash yoki ko'chirish (Storage VMotion) boshqa xotiraga (ma'lumotlar ombori) qoladi. Virtual mashinaning fayllarini ko'chirgandan so'ng, uning xususiyatlari virtual diskning yangi hajmini ko'rsatadi.

Agar vCenter yo'qolsa yoki bitta VMFS ombori bo'lsa, bu operatsiyalar mavjud emas. Bunday holda, vmdk diskini quyidagi buyruq bilan klonlashingiz mumkin:

vmkfstools -i vmname.vmdk vmname-new-size.vmdk

Asl diskni o'chiring va vmdk diskini yana klonlang va asl nomiga qaytaring:

rm vmname-flat.vmdk

vmkfstools -i vmname-new-size.vmdk vmname.vmdk

7. Mehmon OTni ishga tushirish va ajratilmagan maydon yo'qolganligiga ishonch hosil qilish qoladi.

Maslahat. Agar vmkfstools yordam dasturi oldingi bosqichda ishlatilgan bo'lsa, virtual diskni VM sozlamalarida qayta ulashingiz kerak bo'ladi, chunki. uning yangi o'lchami to'g'ri ko'rsatilmasligi mumkin.

Shunday qilib, biz VMWare ESXi -da virtual vmdk disklarining hajmini kamaytirish operatsiyasini bajarish variantlaridan birini ko'rib chiqdik. Agar siz VMWare ingichka diskining hajmini ishlatilmaydigan joy hisobiga kamaytirishingiz kerak bo'lsa, biz ushbu ko'rsatmani ishlatishni tavsiya etamiz.

Ishda, ESXi 5 gipervizorini boshqaradigan bir nechta virtual mashinalar bor, men ularni disklarni yaratganimda ingichka qilib qo'yganman, lekin bir paytlar egallab turgan disk hajmi kattalashgan, garchi men virtual serverdagi ma'lumotlarni o'chirib tashlagan bo'lsam ham, disk bir xil o'lchamda qoladi. , diskni qanday siqishim mumkin?

Yupqa VMWare disklari virtual mashinani yaratishda VMFS saqlash fayl tizimidagi joyni sezilarli darajada tejash imkonini beradi. Bunday vmdk disklar, yaratilganda, fayl tizimida amalda joy egallamaydi va ma'lumot to'planganda asta -sekin maksimal hajmgacha o'sadi. Biroq, ingichka disklarning asosiy muammosi shundaki, ular mehmon operatsion tizimida bo'sh joy bo'shatsangiz ham, ular vaqt o'tishi bilan o'sib boradi.

Eslatma... Windows -da (va Linux -da, bu ham amal qiladi) ma'lumotlarni o'chirganda, tizim odatdagi bo'sh joyni nol bilan to'ldirmaydi, balki bo'limlarning metadatasida o'chirilgan joylarni belgilaydi (ular yozish uchun ishlatilishi mumkin). Ma'lum bo'lishicha, ESXi serveri unga berilgan bloklarning qaysi biri aslida bepul ekanligini mustaqil ravishda aniqlay olmaydi

ESXi -da ingichka disklarni siqishning standart vositasi yo'q va virtualizatsiya tizimining o'zi mehmon OT ichida ma'lumotlarni saqlashning o'ziga xos xususiyatlari haqida hech narsa bilmaydi.

Ushbu maqolada biz ESXi -da ingichka vmdk diskini siqishning oson usulini tasvirlab beramiz.

  1. Birinchi bosqichda, gipervisorga hammasini to'ldirib yordam berish kerak bo'sh joy Mehmon operatsion tizimidagi disklar nol bilan. Siz Mark Rusinovichning SDelete yordam dasturidan foydalanib, Windows -dagi bo'sh bloklarni nolga qo'yishingiz mumkin. mavjud versiya SDelete v1.61, agar siz SDelete -ning oldingi versiyasidan foydalanayotgan bo'lsangiz, shuni bilingki, u biroz boshqacha parametrlardan foydalanishi mumkin). Siz SDelete-ni bu erdan yuklab olishingiz mumkin: http://technet.microsoft.com/en-us/sysinternals/bb897443.aspx.

    Arxivni diskka oching, oching buyruq qatori(albatta administrator huquqlari bilan) va quyidagi buyruqni bajaring

    Sdelete - z c:

    Bu holda, c: biz siqishni rejalashtirgan virtual ingichka vmdk disk.

    Linuxda buni dd yordamida bajarish mumkin

    Dd if = / dev / zero bs = 64k of = zero.temp; rm nol.temp

  2. Mehmon OSni o'chiring (O'chirish).

    Eslatma... Virtual mashinani boshqa xotiraga ko'chirish orqali diskni kichraytirishingiz mumkin (Storage VMotion). Biroq, bunga e'tibor bering Bu yerga universal emas va faqat ma'lum sharoitlarda ishlaydi.

  3. Biz ESXi serveriga SSH orqali ildiz sifatida ulanamiz (SSH xizmatini yoqishni va ESXi xavfsizlik devorida kiruvchi trafikka ruxsat berishni unutmang). Virtual mashina fayllari bilan katalogga o'ting:
    CD vmfs / volumes / storage1 / vm1

    bu erda storage1 - bu saqlash nomi va vm1 - bu virtual mashinaning vmdk diskli fayllari saqlanadigan katalog.

  4. Keling, virtual diskning "to'liq" hajmini ko'rsataylik.
    ls -lh * .vmdk

    Fayl tizimida joylashgan virtual diskning "haqiqiy" hajmini quyidagicha topish mumkin.

    Du –h * .vmdk

    Ko'rib turganingizdek, ingichka disk 33 Gb xotirani egallaydi (uning maksimal hajmi 40 Gb). Bundan tashqari, Windows mehmonlar operatsion tizimida atigi 15 GB joy bor.

  5. Vmkfstools yordamida vmdk diskini siqish. Yupqa diskni siqish buyrug'i quyidagicha bo'ladi:
    vmkfstools --punchzero /vmfs/volumes/storage1/vm1/vm1.vmdk

    Bizning misolimizdagi siqish protsedurasi taxminan 5 daqiqa davom etdi (disk hajmi va tezligi, saqlash va SANdan foydalanish tezligi). Siqish jarayonini tugatgandan so'ng, vmdk faylining joriy hajmini tekshiring.

    Ko'rib turganingizdek, vmdk disk 15 Gbaytgacha qisqardi!

Eslatma... Agar bir nechta disklar bo'lsa, bu protsedura har biri uchun bajarilishi kerak.