Увеличить lvm диск в виртуальной машине

Обновлено: 03.07.2024

Чтобы увеличить размер виртуальной машины VMware, необходимо выполнить два основных шага. Во-первых, вам нужно увеличить размер диска в клиенте vSphere или через интерфейс командной строки. Это увеличит «аппаратный» диск, который может видеть ваша виртуальная машина. Затем вам нужно использовать это дополнительное пространство, разделив его. Если вы хотите просто изменить размер Linux LVM, перейдите к шагу 2.

В этом примере я увеличиваю диск емкостью 3 ГБ до 10 ГБ (чтобы вы могли следовать этим примерам).

Небольшое примечание заранее; если ваш сервер поддерживает горячее добавление новых дисков, вы можете так же легко добавить новый жесткий диск в свою виртуальную машину. Вы можете увеличить объем LVM без перезагрузки виртуальной машины, повторно просканировав шину SCSI, подробнее об этом далее в этой статье.

1) Проверка возможности расширения текущего диска или необходимости добавления нового

Это довольно важный шаг, потому что диск, разбитый на 4 основных раздела, уже не может быть расширен. Чтобы проверить это, войдите на свой сервер и запустите fdisk -l в командной строке.

Если это выглядит так, всего с двумя разделами вы можете безопасно расширить текущий жесткий диск в виртуальной машине.

Однако, если это выглядит так:

Это покажет вам, что в системе уже есть 4 основных раздела, и вам нужно добавить новый виртуальный диск к вашей виртуальной машине. Вы по-прежнему можете использовать этот дополнительный виртуальный диск для увеличения размера LVM, так что не беспокойтесь.

2) «Аппаратная» часть, «физически» добавляющая дисковое пространство к вашей виртуальной машине

Увеличить размер диска можно с помощью клиента vSphere, изменив настройки виртуальной машины (щелкните правой кнопкой мыши > Настройки).

Изменить настройки

Теперь, в зависимости от первого шага, если еще нет четырех основных разделов, вы можете увеличить выделенное дисковое пространство.

Увеличить размер диска

Если область «Provisioned Size» (верхний правый угол) неактивна, попробуйте сначала отключить виртуальную машину (если она не позволяет «горячее добавление» дисков/размеров) и проверьте, есть ли у вас моментальные снимки, сделанные из тот ВМ. Вы не можете увеличить размер диска, пока есть доступные снимки.

В качестве альтернативы, если у вас уже есть 4 основных раздела, вы также можете нажать «Добавить…», чтобы добавить новый аппаратный «виртуальный диск» к вашей виртуальной машине с желаемым дополнительным пространством.

Разделение нераспределенного пространства

Это можно сделать двумя способами.

3) Если вы увеличили размер диска

После того как вы изменили размер диска в VMware, снова загрузите виртуальную машину, если вам пришлось выключить ее, чтобы увеличить размер диска в vSphere. Если вы перезагрузили сервер, вам не придется повторно сканировать устройства SCSI, поскольку это происходит при загрузке. Если вы не перезагружали сервер, выполните повторное сканирование устройств SCSI как таковых.

Сначала проверьте имена ваших устройств scsi.

Затем повторно просканируйте шину scsi. Ниже вы можете заменить «0:0:0:0» на фактическое имя шины scsi, найденное с помощью предыдущей команды. Перед каждым двоеточием стоит косая черта, из-за чего оно выглядит странно.

Это приведет к повторному сканированию текущей шины scsi, и отобразится измененный размер диска.

3) Если вы добавили новый диск

Если вы добавили новый диск на сервер, действия аналогичны описанным выше. Но вместо того, чтобы повторно сканировать уже существующую шину scsi, как было показано ранее, вам нужно повторно сканировать хост, чтобы обнаружить новую шину scsi, поскольку вы добавили новый диск.

Ваше хост-устройство называется host0, повторно отсканируйте его как таковое:

Вывод не будет показан, но запуск fdisk -l покажет новый диск.

Создайте новый раздел

После повторного сканирования (должно занять всего несколько секунд) вы можете проверить, видно ли лишнее место на диске.

Теперь сервер может видеть 10-гигабайтный жесткий диск. Давайте создадим раздел, запустив fdisk для устройства /dev/sda.

Теперь введите «n», чтобы создать новый раздел.

Теперь выберите «p», чтобы создать новый основной раздел. Обратите внимание, что ваша система может иметь только 4 основных раздела на этом диске! Если вы уже достигли этого предела, создайте расширенный раздел.

Выберите номер своего раздела. Поскольку у меня уже были /dev/sda1 и /dev/sda2, логический номер будет равен 3.

Примечание; значения цилиндра будут отличаться в вашей системе. Достаточно просто намекнуть на ввод, так как fdisk выдаст вам значение по умолчанию для первого и последнего цилиндра (и для этого будет использоваться только что добавленное дисковое пространство).

Теперь введите t, чтобы изменить тип раздела. При появлении запроса введите номер раздела, который вы только что создали на предыдущих шагах. Когда вас попросят ввести «шестнадцатеричный код», введите 8e и подтвердите, нажав Enter.

После того как вы вернетесь к основной команде fdisk, введите w, чтобы записать разделы на диск. Вы получите сообщение о том, что ядро ​​все еще использует старую таблицу разделов, и вам нужно перезагрузиться, чтобы использовать новую таблицу. Перезагрузка не требуется, так как вы также можете повторно сканировать эти разделы с помощью partprobe. Выполните следующую команду, чтобы найти вновь созданный раздел.

Если это не работает для вас, вы можете попробовать использовать «partx» для повторного сканирования устройства и добавления новых разделов. В приведенной ниже команде замените /dev/sda на диск, на который вы только что добавили новый раздел.

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

3) Расширьте свой логический том новым разделом

Теперь создайте физический том в качестве основы для вашего LVM. Замените /dev/sda3 только что созданным разделом.

Теперь узнайте, как называется ваша группа томов.

Давайте расширим эту группу томов, добавив в нее только что созданный физический том.

С помощью pvscan мы можем увидеть наш недавно добавленный физический том и доступное пространство (в данном случае 7 ГБ).

Теперь мы можем расширить логический том (в отличие от физического тома, который мы добавили в группу ранее). Это команда «lvextend /dev/VolGroupxx /dev/sdXX».

Если вы используете это в Ubuntu, используйте следующее.

Все, что осталось сейчас, это изменить размер файловой системы на группу томов, чтобы мы могли использовать пространство. Замените путь к правильному устройству /dev, если вы используете системы, подобные Ubuntu/Debian.

Если вы получили подобную ошибку, это может означать, что ваша файловая система XFS, а не стандартная ext2/ext3.

В этом случае вам потребуется увеличить раздел XFS. Подробнее читайте здесь: Увеличение/расширение файловой системы XFS в RHEL 7 / CentOS 7.

Недавно я развернул виртуальную машину из шаблона OVF для мониторинга устройств брандмауэра, и через несколько дней виртуальная машина зависла из-за размера диска по умолчанию. Это виртуальная машина Linux, и мне нужно расширить диски, чтобы снова запустить виртуальную машину. В этом посте я расскажу о шагах, которые я предпринял для решения проблемы.

Сначала расширьте диск виртуальной машины

Щелкните правой кнопкой мыши на виртуальной машине — > Изменить настройку — > Выберите диск, измените размер диска и нажмите «ОК».


нам нужно создать отдельный раздел и увеличить размер LVM с небольшим разделом.

войдите на виртуальную машину из консоли или используйте шпатлевку, если доступен ssh, здесь мы выполняем эту процедуру из сеанса шпатлевки и запускаем приведенную ниже команду


Давайте проверим детали физического тома и lvm, выполнив следующие команды


Как вы видите, в физическом томе и группе томов нет свободного места, и мы не можем увеличить размер lvm. Чтобы расширить, нам нужно добавить один физический том ( PV ), а затем мы должны расширить группу томов, расширив vg .

Добавить физический том (PV)

Чтобы добавить новый PV, мы должны использовать команду fdisk и следующие шаги

Перезагрузите систему после завершения.

< бр />

Создайте новый PV (физический том), используя следующую команду.

Расширение группы томов

Добавьте этот PV в VG, чтобы увеличить размер группы томов и получить больше места для расширения LV.

Проверьте размер используемой группы томов.


Проверьте размер каждого имеющегося у нас логического тома, прежде чем расширять его.


  1. своп определен для Swap.
  2. корень определен для /
  3. Теперь у нас есть размер 6,67 ГБ для / (root).
  4. В настоящее время доступно 8192 физических расширения (PE).

Проверьте доступный размер физического расширения.


Доступно 74761 свободный PE = 292,04 ГБ свободного места, поэтому мы можем увеличить наш логический том до 292 ГБ.

Теперь сделаем расширение на 6000 PE

Примечание. Используйте +, чтобы добавить больше места.

После расширения измените размер файловой системы


Мы проверим существующий тип файловой системы с помощью следующей команды


здесь нашел его xfs, и мы должны использовать команду, связанную с xfs, для изменения размера, давайте сделаем это с помощью команд ниже


здесь вы можете видеть, что мы увеличили размер раздела с 7 ГБ до 32 ГБ


Заключение

Мы успешно расширили раздел LVM виртуальной машины Linux, и он доступен для использования.

Руководства, учебные пособия, обзоры и новости для системных администраторов.

Как увеличить размер LVM Linux за счет расширения диска виртуальной машины

В этом посте рассказывается, как увеличить дисковое пространство для виртуальной машины VMware под управлением Linux, использующей диспетчер логических томов (LVM). Во-первых, мы будем увеличивать размер фактического диска на виртуальной машине VMware, поэтому на аппаратном уровне — это файл .vmdk виртуальной машины. Как только это будет завершено, мы войдем в виртуальную машину и внесем необходимые изменения в операционную систему, чтобы воспользоваться дополнительным пространством, предоставленным расширяемым жестким диском. Это потребует создания нового раздела с новым пространством, расширения группы томов и логической группы, а затем, наконец, изменения размера файловой системы.

    - В этой статье виртуальный диск расширен, однако здесь нет LVM, а есть собственный раздел Linux, который расширяется с помощью GParted live CD. – В этой статье к виртуальной машине добавляется новый виртуальный диск, создается новый раздел, расширяются группа томов и логический том, а затем изменяется размер файловой системы. - В этой статье файловая система сжимается, а затем LVM, что позволяет вам освободить место в группе томов.

Обновление от 18 апреля 2015 г. Я создал видеоруководство по этому сообщению в CentOS 7, показанное ниже.

Важное примечание. Будьте очень осторожны при работе с командами, описанными в этой статье, поскольку они могут нанести большой ущерб вашим данным. Если вы работаете с виртуальными машинами, убедитесь, что вы заранее сделали снимок своей виртуальной машины или иным образом имеете актуальную резервную копию, прежде чем продолжить. Обратите внимание, что снимок нельзя делать до тех пор, пока виртуальный диск не будет увеличен, иначе вы не сможете его увеличить. Также может быть целесообразно сначала клонировать виртуальную машину и протестировать этот метод на клоне.

Предпосылки: поскольку этот метод использует дополнительное пространство для создания основного раздела, у вас не должно быть 4 разделов, поскольку вы не сможете создать больше 4. Если у вас нет места для другого раздела, вам потребуется чтобы рассмотреть другой метод, в приведенном выше списке есть и другие.

Во всех своих примерах я буду работать с виртуальной машиной VMware под управлением Debian 6, она была настроена с диском на 20 ГБ, и мы увеличим его на 10 ГБ до общего конечного размера 30 ГБ.

Определение типа раздела

Поскольку этот метод ориентирован на работу с LVM, мы сначала подтвердим, что тип нашего раздела на самом деле является Linux LVM, выполнив приведенную ниже команду.

Как вы можете видеть на изображении выше, /dev/sda5 указан как «Linux LVM» и имеет идентификатор 8e. Шестнадцатеричный код 8e показывает, что это Linux LVM, а 83 показывает родной раздел Linux. Теперь, когда мы подтвердили, что работаем с LVM, мы можем продолжить. Чтобы узнать, как увеличить размер собственного раздела Linux (шестнадцатеричный код 83), см. эту статью.

Ниже приведена информация о диске, показывающая, что наша первоначальная установка в настоящее время имеет только один диск емкостью 20 ГБ, который находится в логическом томе с именем /dev/mapper/Mega-root — это то, что мы будем расширять с помощью нового диска.

Обратите внимание, что /dev/mapper/Mega-root — это том, который в настоящее время состоит из /dev/sda5 — это то, что мы будем расширять.

Увеличение виртуального жесткого диска

Сначала мы увеличиваем выделенное дисковое пространство на самой виртуальной машине. Это можно сделать, щелкнув правой кнопкой мыши виртуальную машину в vSphere, выбрав параметры редактирования, а затем выбрав жесткий диск. На изображении ниже я изменил ранее установленный жесткий диск с 20 ГБ на 30 ГБ, пока виртуальная машина запущена и работает. После завершения нажмите OK, это все, что нужно сделать в VMware для этого процесса.

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

Определить новое место на диске

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

Прежде чем мы сможем это сделать, нам нужно убедиться, что новое нераспределенное дисковое пространство обнаружено сервером, вы можете использовать «fdisk -l», чтобы вывести список основного диска. Скорее всего, вы увидите, что дисковое пространство по-прежнему отображается как исходный размер, на этом этапе вы можете либо перезагрузить сервер, и он обнаружит изменения при загрузке, либо вы можете повторно просканировать свои устройства, чтобы избежать перезагрузки, выполнив приведенную ниже команду. Обратите внимание, что вам может потребоваться изменить host0 в зависимости от ваших настроек.

Ниже показано изображение после выполнения этого действия и подтверждения отображения нового пространства.

Разделите новое дисковое пространство на разделы

Как показано на моих предыдущих изображениях, в моем примере я работаю с диском /dev/sda, поэтому мы используем fdisk для создания нового основного раздела, чтобы использовать новое расширенное дисковое пространство. Обратите внимание, что у нас еще нет 4 основных разделов, что делает этот метод возможным.

Сейчас мы используем fdisk для создания нового раздела. Введенные мной данные выделены ниже жирным шрифтом. Обратите внимание, что вы можете нажать «m», чтобы получить полный список команд fdisk.

Для добавления нового раздела было выбрано ‘n’.

Затем выбирается ‘p’, так как мы создаем основной раздел.

Поскольку у меня уже есть /dev/sda1 и /dev/sda2, как показано на предыдущих изображениях, я использовал «3» для этого нового раздела, который будет создан как /dev/sda3

Мы просто дважды нажимаем Enter выше, так как по умолчанию первый и последний цилиндры нераспределенного пространства должны быть правильными. После этого раздел готов.

«t» выбран для изменения системного идентификатора раздела, в этом случае мы меняем на «3», который мы только что создали.

Введен шестнадцатеричный код «8e», так как это код для Linux LVM, которым мы хотим, чтобы этот раздел был, поскольку мы будем объединять его с исходным /dev/sda5 Linux LVM.

«w» используется для записи таблицы на диск и выхода, в основном все сделанные изменения будут сохранены, а затем вы выйдете из fdisk.

Вы увидите предупреждение, которое в основном означает, что для использования новой таблицы с изменениями требуется перезагрузка системы. Если вы не видите новый раздел с помощью «fdisk -l», вы можете запустить «partprobe -s» для повторного сканирования разделов. В моем тесте на данном этапе мне не требовалась ни одна из этих вещей (позже я перезагружаюсь), сразу после нажатия «w» в fdisk я смог увидеть новый раздел /dev/sda3 моего 10 ГБ пространства, как показано на изображении ниже.

Для CentOS/RHEL запустите «partx -a /dev/sda3», чтобы избежать перезагрузки позже.

Это все, что касается разделения, теперь у нас есть новый раздел, который использует ранее нераспределенное дисковое пространство из-за увеличения VMware.

Увеличение логического тома

Мы используем команду pvcreate, которая создает физический том для последующего использования диспетчером логических томов (LVM). В этом случае физическим томом будет наш новый раздел /dev/sda3.

Чтобы обойти это, вы можете либо перезагрузиться, либо использовать partprobe/partx, как упоминалось ранее, чтобы избежать перезагрузки, так как в этом случае диск не отображается правильно, несмотря на то, что отображается в «fdisk -l». После перезагрузки или использования partprobe/partx используйте ту же команду, которая завершится успешно.

Далее нам нужно подтвердить имя текущей группы томов с помощью команды vgdisplay. Имя будет варьироваться в зависимости от вашей настройки, для меня это имя моего тестового сервера. vgdisplay предоставляет много информации о группе томов, в этом примере я показал только ее имя и текущий размер.

Теперь мы расширяем группу томов «Mega», добавляя физический том /dev/sda3, созданный ранее с помощью команды pvcreate.

С помощью команды pvscan мы сканируем все диски на наличие физических томов, это должно подтвердить исходный раздел /dev/sda5 и только что созданный физический том /dev/sda3

Далее нам нужно увеличить логический том (а не физический том), что в основном означает, что мы возьмем наш исходный логический том и расширим его на наш новый раздел/физический том /dev/sda3.

Сначала подтвердите путь к логическому тому с помощью lvdisplay. Это имя пути зависит от вашей настройки.

Затем логический том расширяется с помощью команды lvextend.

Затем остается последний шаг, который заключается в изменении размера файловой системы, чтобы она могла использовать дополнительное пространство. Это делается с помощью команды resize2fs для файловых систем на основе ext. Обратите внимание, что это может занять некоторое время, для моего дополнительного места потребовалось около 30 секунд.

В качестве альтернативы, если вы используете файловую систему XFS (по умолчанию в RedHat/CentOS 7), вы можете расширить файловую систему с помощью «xfs_growfs /dev/Mega/root».

Вот и все, теперь с помощью команды «df» мы видим, что общее доступное дисковое пространство увеличилось.

Обзор

С помощью этого метода мы увеличили виртуальный диск с помощью VMware, создали новый раздел из этого недавно нераспределенного пространства в гостевой ОС, превратили его в физический том, расширили группу томов, а затем, наконец, расширили исходный логический раздел. том поверх нового физического тома, что приводит к успешному увеличению общего дискового пространства.

У меня была очень специфическая проблема. У меня есть LVM, работающий на одном физическом томе на виртуальной машине. Размер логического тома составляет ~150 ГБ, и я хочу увеличить его до ~250 ГБ.

Мне удалось расширить физический том из диспетчера виртуальных машин, но изменение физического размера не отразилось на моем логическом томе LVM.

Я не нашел никаких ответов напрямую, и путем некоторых экспериментов нашел решение. Я подумал, что поделюсь этим в своем ответе ниже.

Добро пожаловать в AskUbuntu! Спасибо, что нашли время написать такой качественный пост! Хотя я упомяну, что AU - это сайт вопросов и ответов, а не форум, поэтому я могу предложить указать проблему, которая у вас возникла в вашем вопросе, и перейти к решению в ответ. (Вы можете сами ответить на свой вопрос)

1 Ответ 1

Пример диаграммы LVM:

введите здесь описание изображения

Идея LVM заключается в том, что он абстрагирует логический том от физического тома, так что несколько физических томов представляются пользователю как один непрерывный логический том.

Корневая файловая система находится в /dev/file-server-vg/root, а подкачка — в /dev/file-server-vg/swap . Идея состоит в том, что у нас может быть несколько реальных жестких дисков на уровне PV, и все они могут быть добавлены в группу томов, что позволит им всем отображаться как единая непрерывная файловая система для системы в /dev/file-server. -vg/корень .

В этой проблеме я использовал /dev/file-server-vg/root в качестве файлового сервера, и ему не хватило места. К счастью, эта система находится на виртуальной машине, и я смог расширить физический том /dev/sda с помощью диспетчера виртуальных машин. Однако увеличение размера не передается автоматически в файловую систему /dev/file-server-vg/root. Нам нужно выполнить несколько простых команд, чтобы заставить это работать.

Прежде чем мы начнем, используйте pvdisplay, чтобы увидеть, какие физические тома присутствуют. В нем будут перечислены все физические тома и группа томов, к которой они принадлежат. В этом случае у нас есть только один физический том /dev/sda3 .

Текущая таблица разделов может быть указана с помощью sudo parted, а затем напечатана.

В этом примере мы хотим увеличить емкость со 155,56 ГиБ до 255,56 ГиБ. Обычно с помощью диспетчера виртуальных машин мы можем увеличить дисковое пространство, и в этом случае мы увеличим его на 100 ГиБ.

После успешного расширения результирующая таблица разделов (используйте print free ) будет выглядеть следующим образом. Обратите внимание, что в разделе «Свободное место» указано 108 ГБ (~100 ГиБ).

Есть два способа расширить логический том: создать новый раздел и добавить его в группу томов или увеличить тот же раздел.

На мой взгляд, второй способ лучше, если это возможно. Конечно, если /dev/sda3 — это физический жесткий диск, и вы купили еще один жесткий диск для расширения места, то логичнее будет использовать первый способ.

В parted type resize 3 794MB 275GB изменит размер раздела 3, чтобы он занял все свободное место, ну почти:

Этого достаточно, всего 1 МБ не используется.

Далее мы перезагрузим машину. Это необходимо для обновления таблицы разделов.

Теперь вы увидите, что размер физического тома увеличился с помощью pvdisplay

Это увеличение размера будет автоматически передано в группу томов, с помощью vgdisplay вы получите следующее. Обратите внимание, что vgextend на самом деле не делает того, что вы могли бы подумать. Он не занимает свободного места, а используется для добавления новых физических томов в определенную группу томов.

Размер логического тома не увеличивается автоматически. На самом деле это имеет смысл, потому что компьютер понятия не имеет, какой логический том вы хотите увеличить в размере, или, возможно, вы хотите создать новый логический том с дополнительным пространством в группе томов. Итак, с lvdisplay вы увидите следующую таблицу, показывающую, что /dev/file-server-vg/root имеет только 153,26 ГБ, но не волнуйтесь, мы очень близки.

Чтобы увеличить логический том, используйте lvextend -L +100GB /dev/file-server-vg/root

После этого расширьте файловую систему с помощью resize2fs /dev/file-server-vg/root

И готово. Вы можете выполнить команду lvdisplay, чтобы убедиться, что том /dev/file-server-vg/root расширился до 253,26 ГиБ

Читайте также: