Увеличение размера диска в виртуальной машине под управлением VMware.
Для увеличения размера диска в виртуальной машине под управлением VMware, необходимо выполнить несколько важных шагов. Во-первых, необходимо увеличить размер диска в vSphere Client. Эта операция увеличит размер жесткого диска на уровне оборудования. Затем необходимо увеличить размер раздела.
Небольшая заметка, если сервер поддерживает “hot swap“, можно легко добавить новый жесткий диск к виртуальной машине. В противном случае, будет означать, что мы не можем увеличить размер LVM без перезагрузки. Если увеличим размер присоединенного диска (как в примере ниже), необходимо перезагрузить сервер или, по крайней мере, перечитать таблицу разделов.
Устр-во Загр Начало Конец Блоки Id Система /dev/sda1 * 1 64 512000 83 Linux Раздел 1 не заканчивается на границе цилиндра. /dev/sda2 64 2611 20458496 8e Linux LVM
Насколько видно из вывода команды, то у нас только два раздел, поэтому увеличение диска в данном случае возможно.
Шаг 2. “Физическое” добавление диска на виртуальную машину
Увеличиваем диск виртуальной машины через vSphere клиент
Если «Provisioned Size» недоступно, необходимо выключить виртуальную машину (так как не поддерживается «горячее» добавление дисков), и проверить, если есть какие-то снепшоты, сделанные в этой виртуальной машине. Невозможно изменить размер диска пока доступны снепшоты.
Альтернатива, если уже есть четыре раздела, можно выбрать «Add…» и добавить новое оборудование «Virtual Disk» в виртуальную машину, чтобы увеличить размер диска.
Шаг 3. Создание разделов на нераспределенном пространстве
После того как мы изменили размер диска, необходимо включить виртуальную машину еще раз, или перезагрузить, если она работала. Системе необходимо загрузиться с нового диска, для того чтобы он мог обнаружить добавленное (незанятое) дисковое пространство. После загрузки можно проверить, есть ли дополнительное пространство на диске.
Устр-во Загр Начало Конец Блоки Id Система /dev/sda1 * 1 64 512000 83 Linux Раздел 1 не заканчивается на границе цилиндра. /dev/sda2 64 2611 20458496 8e Linux LVM
Как видим - объем диска изменился, теперь создадим раздел, используя утилиту fdisk для устройства /dev/sda. Пожалуйста, обратите внимание, что система может иметь только 4 основных разделов на диске! Если уже достигнут предел, необходимо создать расширенный раздел.
# fdisk /dev/sda
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u'). Команда (m для справки): n Действие команды e расширенный p основной раздел (1-4) p Номер раздела (1-4): 3 Первый цилиндр (2611-5221, по умолчанию 2611): Используется значение по умолчанию 2611 Last цилиндр, +цилиндры or +size{K,M,G} (2611-5221, по умолчанию 5221): Используется значение по умолчанию 5221
Значение цилиндров могут отличатся в системе. FDISK даст значение по умолчанию для первого и последнего цилиндра (как раз будет использоваться добавленное дисковое пространство).
Теперь изменим тип раздела. Вводим номер раздела, берем из предыдущего шага. Когда необходимо будет вводить «Hex code», вводим 8e, и подтверждаем.
Команда (m для справки): t Номер раздела (1-4): 3 Шестнадцатеричный код (введите L для получения списка кодов): 8e Системный тип раздела 3 изменен на 8e (Linux LVM)
Команда (m для справки):
Возвращаемся в главное меню и нажимаем w для записи раздела на диск. Получим сообщение, что ядро все еще использует старую таблицу раздела, необходимо перезагрузить машину для применения новой таблицы.
После перезагрузки, можно увидеть новый раздел, используя команду fdisk.
Устр-во Загр Начало Конец Блоки Id Система /dev/sda1 * 1 64 512000 83 Linux Раздел 1 не заканчивается на границе цилиндра. /dev/sda2 64 2611 20458496 8e Linux LVM /dev/sda3 2611 5221 20966162+ 8e Linux LVM
Теперь создаем физический том как основной для LVM командой pvcreate /dev/sda3
# pvcreate /dev/sda3 Physical volume "/dev/sda3" successfully created
Узнаем Volume Group
# vgdisplay --- Volume group --- VG Name vg_specialfeeling System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 1 Act PV 1 VG Size 19,51 GiB PE Size 4,00 MiB Total PE 4994 Alloc PE / Size 4994 / 19,51 GiB Free PE / Size 0 / 0 VG UUID NUd3j0-54xM-f9WZ-iVXR-Tm09-YL2C-FpQYHj
И расширяем Volume Group только что добавленным томом, выполнив команду vgextend VolumeGroupName /dev/sda3
# vgextend vg_specialfeeling /dev/sda3 Volume group "vg_specialfeeling" successfully extended
Используя команду pvscan, можно обнаружить новый том и дисковое пространство (20Гб в нашем случае).
Следующим действием, расширяем Logical Volume командой lvextend /dev/VolGroup00/LogVol00 /dev/sda3. (Для поиска LogVol00 значения используем команду lvdisplay -v)
Using logical volume(s) on command line. Finding all volume groups. --- Logical volume --- LV Path /dev/vg_specialfeeling/lv_root LV Name lv_root VG Name vg_specialfeeling LV UUID Z5c3hO-xmeP-EPKb-qMmA-d3Uv-wutX-YS4W30 LV Write Access read/write LV Creation host, time special-feeling, 2015-10-01 21:55:58 +0300 LV Status available # open 1 LV Size 17,51 GiB Current LE 4482 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:0 --- Logical volume --- LV Path /dev/vg_specialfeeling/lv_swap LV Name lv_swap VG Name vg_specialfeeling LV UUID gYbe2C-kkni-Aumv-wiDC-beq6-qsus-idyCk0 LV Write Access read/write LV Creation host, time special-feeling, 2015-10-01 21:56:05 +0300 LV Status available # open 1 LV Size 2,00 GiB Current LE 512 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:1
# lvextend /dev/vg_specialfeeling/lv_root /dev/sda3 Size of logical volume vg_specialfeeling/lv_root changed from 17,51 GiB (4482 extents) to 37,50 GiB (9600 extents). Logical volume lv_root successfully resized
Если испольузется убунтоподобная система, то выполняем команду lvextend /dev/mapper/vg-name /dev/sda3
Чтобы использовать новое дисковое пространство, необходимо только изменить размер файловой системы в группе томов.
# resize2fs /dev/vg_specialfeeling/lv_root resize2fs 1.41.12 (17-May-2010) Filesystem at /dev/vg_specialfeeling/lv_root is mounted on /; on-line resizing required old desc_blocks = 2, new_desc_blocks = 3 Performing an on-line resize of /dev/vg_specialfeeling/lv_root to 9830400 (4k) blocks. The filesystem on /dev/vg_specialfeeling/lv_root is now 9830400 blocks long.
Если используется файловая система XFS, как правило на CentOS 7 она идет по умолчанию, то при запуске команды resize2fs появится ошибка:
# resize2fs /dev/sda3 resize2fs 1.42.9 (28-Dec-2013) resize2fs: Устройство или ресурс занято while trying to open /dev/sda3 Couldn't find valid filesystem superblock.