Расширить размер VMFS хранилища в VMWare ESXi
В этой статье мы рассмотрим, как увеличить размер VMFS хранилища с помощью веб интерфейса vSphere Client и из командной строки VMWare ESXi.
При проверке свободного места на VMFS датасторах, вы обнаружили что на одном из них заканчивается свободное место. Вам нужно увеличить размер VMFS хранилища, добавив дополнительное место на СХД.
Сначала нужно увеличить размер LUN на СХД. Как это сделать – зависит от вендора вашей хранилки (если вы используете Microsoft iSCSI, то увеличить размер диска можно через Server Manager -> File and Storage Services -> iSCSI -> выберите диск -> Extend iSCSI Virtual Disk). В нашем примере мы увеличили размер LUN со 100 до 105 Гб.
VMWare ESXi поддерживает два способа расширения VMFS хранилищ – за счет неиспользуемого места на этом же LUN (этот способ мы рассматриваем в статье) или за счет добавление дополнительного LUN-а (способ называется extent). VMFS extent – своеобразный span раздела на несколько LUN. Запись на второй LUN начнется после того, как заполнится первый и т.д.
Как увеличить VMFS хранилище из веб-интерфейса VMWare vSphere Client?
- В интерфейсе vSphere Client выберите раздел Storage;
- Щелкните правой кнопкой мыши по датастору и выберите Increase Datastore Capacity;
- Выберите диск (LUN), который надо расширить. Обратите внимание на значение поля Expandable. В нем должно быть указано Yes. Это значит, что данное VMFS хранилище можно расширить;
Если тут указано No, значит расширить этот раздел можно только с помощью VMFS Extent, растянув VMFS раздел на два LUN.
- На следующем шаге вам будет предложено выбрать на сколько нужно увеличить хранилище. По умолчанию мастер предлагает использовать все доступное место для расширения (Use Free space 5Gb to expand the datastore). Вас опять предупредят, что вы расширяете (expand) текущий раздел за счет свободного места;
The datastore already occupies one or more extents on this device. Selecting free space adjacent to an extent in the datastore will expand that extent. Selecting any other option will add a new extent to the datastore.
- Если вас все устраивает, нажмите Next и на Summary экране будет указано на сколько будет увеличен размер VMFS хранилища (Increase Datastore Size by) и его новый размер (Future Datastore Size).
Максимальный размер VMFS хранилища для VMFS6 – 64 Тб. Том может состоять из одного LUN или из максимум 32 extent-ов общей емкостью до 64 Тб.
В некоторых случая расширить VMFS хранилище из графического интерфейса vSphere Client нельзя. Чаще всего проблема связана с невозможностью расширить VMFS хранилище на загрузочном диске. При этом появляется ошибка:
Failed to expand VMFS datastore datastore1 - Cannot change the host configuration.
В этом случае придется расширить хранилище из командной строки хоста ESXi.
Расширить VMFS хранилище из командной строки VMWare ESXi
- Подключитесь к хосту ESXi через SSH (можно использовать встроенный SSH клиент Windows)
- Пересканируйте адаптеры хранения:
esxcli storage core adapter rescan --all
- Затем нужно определить диск, соответствующий вашему VMFS хранилищу:
vmkfstools -P /vmfs/volumes/DCx2VMFS1
. В нашем случае диск выглядит так /vmfs/devices/disks/naa.60003ff44dc75adca68b263bd62e4d1f.:1 означает, что VMFS хранилище расположено на первом разделе диска; - Проверим таблицу разделов диска: partedUtil get /vmfs/devices/disks/naa.60003ff44dc75adca68b263bd62e4d1f
13706 255 63 220200960 1 2048 209713152 0 0
В нашем случае начальный сектор раздела 2048, а конечный – 209713152.
- Теперь нужно узнать номер конечного сектора, доступного для использования. Это будет сектор, до которого мы можем расширить VMFS раздел:
partedUtil getUsableSectors /vmfs/devices/disks/naa.60003ff44dc75adca68b263bd62e4d1f
- В моем примере команда вернула такую ошибку:
Error: The backup GPT table is not at the end of the disk, as it should be. This might mean that another operating system believes the disk is smaller. Fix, by moving the backup to the end (and removing the old backup)? Warning: Not all of the space available to /dev/disks/naa.60003ff44dc75adca68b263bd62e4d1f appears to be used, you can fix the GPT to use all of the space (an extra 10485760 blocks) or continue with the current setting? This will also move the backup table at the end if is is not at the end already. diskSize (220200960) AlternateLBA (209715199) LastUsableLBA (209715166) NewLastUsableLBA (220200926)
- Чтобы исправить ошибку в GPT таблице выполните команду:
partedUtil fixGpt /vmfs/devices/disks/naa.60003ff44dc75adca68b263bd62e4d1f
FixGpt tries to fix any problems detected in GPT table. Please ensure that you don't run this on any RDM (Raw Device Mapping) disk. Are you sure you want to continue (Y/N): Exiting ... gpt 13706 255 63 220200960 1 2048 209713152 AA31E02A400F11DB9590000C2911D1B8 vmfs 0
- Еще раз выведем номер последнего доступного сектора (NewLastUsableLBA):
partedUtil getUsableSectors /vmfs/devices/disks/naa.60003ff44dc75adca68b263bd62e4d1f
В этом примере можно расширить раздел до сектора 220200926; - Теперь у нас есть номер начального (2048) и конечного разделов (220200926). Расширим раздел:
partedUtil resize /vmfs/devices/disks/naa.60003ff44dc75adca68b263bd62e4d1f 1 2048 220200926
- Затем нужно растянуть файловую систему VMFS:
vmkfstools --growfs /vmfs/devices/disks/naa.60003ff44dc75adca68b263bd62e4d1f:1 /vmfs/devices/disks/naa.60003ff44dc75adca68b263bd62e4d1f:1
- Обновите список VMFS-хранилищ:
vmkfstools –V
- Проверьте размер локальных хранилищ командой:
df –h
Как вы видите, вы успешно расширили VMFS хранилище на 5 Гб. Операция выполнялась онлайн без отмонтирования хранилища и без остановки ВМ.
Виртуализация
Расширить размер VMFS хранилища в VMWare ESXi