Categories: VMware

Сжимаем тонкий (thin) диск в ESXi 5

Тонкие (thin) диски VMWare позволяют существенно сэкономить место на файловой системе VMFS хранилища при создании виртуальной машине. Такие vmdk диски при создании практически не занимают место на файловой системе и постепенно разрастаются до максимального размера по мере накопления информации. Однако основная проблема при использовании thin диски заключается в том, что они со временем разрастаются даже в том случае, если вы освободили место внутри гостевой операционной системы.

Примечание . При удалении данных в ОС Windows (и Linux это также касается) система не заполняет освоившееся место нулями, а просто помечает области как удаленные в метаданных раздела (их можно использовать для записи). Получается, что ESXi сервер не может самостоятельно определить какие из отданных ей блоков на самом деле свободны

Стандартного средства сжатия тонких дисков в ESXi нет, а сама система виртуализации ничего не знает об особенностях хранения данных внутри гостевой ОС.

В этой статье мы опишем простой способ сжатия тонкого vmdk диска в ESXi.

  1. На первом этапе необходимо помочь гипервизору, заполнив все свободное место на дисках внутри гостевой ОС нулями.Обнулить свободные блоки в Windows можно с помощью утилиты Марка Русиновича SDelete (на момент написания статьи последняя доступная версия SDelete v1.61, если вы используете более раннюю версии SDelete, имейте в виду, в ней могут использоваться немного другие параметры). Скачать SDelete можно тут: http://technet.microsoft.com/en-us/sysinternals/bb897443.aspx.Распакуйте архив на диск, откройте командную строку (естественно, с правами администратора) и выполните следующую команду
    Sdelete –z c:

    В данном случае c: — это виртуальный тонкий vmdk диск, который мы планируем сжать.

    В Linux эту операцию можно выполнить с помощь dd

    dd if=/dev/zero bs=64k of=zero.temp ; rm zero.temp
  2. Выключаем гостевую ОС (Shutdown).
    Примечание . Сжать диск можно и с помощью миграции виртуальной машины на другое хранилище (Storage VMotion). Однако отметим, что данный способ не является универсальным и работает только при соблюдении определенных условий.
  3. Подключаемся к ESXi серверу по SSH под root –ом (не забудьте включить службу SSH и разрешить входящий трафик на файерволе ESXi). Переходим в каталог c файлами виртуальной машины:
    cd vmfs/volumes/storage1/vm1

    где storage1 – имя хранилища, а vm1 – каталог, в котором хранятся файлы с vmdk дисками виртуальной машины

  4. Выведем «полный» размер виртуального диска.
    ls -lh *.vmdk

    “Реальный” размер виртуального диска, который он занимает на файловой системе можно узнать так:

    du –h *.vmdk

    Как вы видите, thin диск занимает на хранилище 33 Гб (максимальный его размер 40 Гб). Причем внутри гостевой ОС Windows занято всего 15 Гб.

  5. Сжимаем vmdk диск с помощью vmkfstools. Команда сжатия диска thin будет выглядеть так:
    vmkfstools --punchzero /vmfs/volumes/storage1/vm1/vm1.vmdk

    Процедура сжатия в нашем примере заняла около 5 минут (скорость от размера диска и скорости и загруженности хранилища и сети SAN). После окончания процедуры сжатия проверим текущий размер vmdk файла.

    Как вы видите vmdk диск сжался до 15 Гб!

Примечание . Если дисков несколько, данную процедуру необходимо выполнить для каждого.

К счастью расширить виртуальный диск гораздо проще

admin

Share
Published by
admin

Recent Posts

Консоль удаленного рабочего стола(rdp console)

Клиент удаленного рабочего стола (rdp) предоставляет нам возможность войти на сервер терминалов через консоль. Что…

2 недели ago

Настройка сети в VMware Workstation

В VMware Workstation есть несколько способов настройки сети гостевой машины: 1) Bridged networking 2) Network…

2 недели ago

Логи брандмауэра Windows

Встроенный брандмауэр Windows может не только остановить нежелательный трафик на вашем пороге, но и может…

2 недели ago

Правильный способ отключения IPv6

Вопреки распространенному мнению, отключить IPv6 в Windows Vista и Server 2008 это не просто снять…

2 недели ago

Ключи реестра Windows, отвечающие за параметры экранной заставки

Параметры экранной заставки для текущего пользователя можно править из системного реестра, для чего: Запустите редактор…

2 недели ago

Как управлять журналами событий из командной строки

В этой статье расскажу про возможность просмотра журналов событий из командной строки. Эти возможности можно…

2 недели ago