Поиск по сайту:

Как создать дисковое хранилище с помощью LVM в Linux — часть 1


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

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

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

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

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

Представляем обширную серию «Подготовка к настройке LVM (управление логическими томами)», тщательно составленную из частей с 1 по 6, с углубленным изучением следующих основных тем:

Прежде чем приступить к настройке LVM, учтите следующие предварительные условия:

Настройка моего сервера – требования
  • ОС — RHEL 9 с установкой LVM
  • ИП – 192.168.0.200
  • Диски – 3 диска по 20Гб каждый.

Проверьте дисковое хранилище LVM в Linux

1. Чтобы получить представление о настройке LVM, мы можем использовать следующие команды для выявления отдельных компонентов: Физический объем (PV), Группа томов (VG) и Логический том (LV).

pvs 
vgs
lvs

Вот описание каждого параметра, показанного на скриншоте выше.

  • Физический размер диска (размер PV)
  • В качестве диска использовался Virtual Disk sda.
  • Размер группы томов (размер VG)
  • Имя группы томов (vg_tecmint)
  • Имя логического тома (LogVol00, LogVol01)
  • LogVol00 Назначается для подкачки размером 956 МБ.
  • LogVol01 Назначено для 18,63 ГБ/с 18,63 ГБ.

Итак, отсюда мы узнаем, что на диске VDA недостаточно свободного места.

Создайте новую группу томов в LVM.

2. Чтобы создать новую группу томов, нам нужно добавить к этому серверу еще 3 жестких диска. Однако не обязательно использовать 3 накопителя; всего 1 достаточно, чтобы создать новые VG и LV (логический том) внутри этого VG.

Я добавляю сюда следующие 3 диска в демонстрационных целях и для предоставления дополнительных пояснений к командам функций.

sdb, sdc, sdd

3. Чтобы получить список всех дисков и их разделов, таких как имя диска, размер, тип раздела, начальный и конечный секторы и т. д., используйте утилиту fdisk, как показано.

fdisk -l

Вот описание каждого диска, показанного на скриншоте выше.

  • Диск по умолчанию, используемый для операционной системы, — RHEL 9.
  • На диске по умолчанию определены следующие разделы: (sda1=загрузочный), (sda2=/).
  • Кроме того, добавленные диски обозначаются как Disk1, Disk2 и Disk3.

Размер каждого диска составляет 20 ГБ.

4. Теперь запустите команду vgdisplay, чтобы просмотреть подробную информацию обо всех группах томов, присутствующих в системе, включая их имя, размер, свободное пространство, физический том (PV). информация и многое другое.

vgdisplay

Вот описание каждого параметра, показанного на скриншоте выше.

  • Имя VG — имя группы томов.
  • Формат – в архитектуре LVM используется lvm2.
  • Доступ к VG: Группа томов находится в режиме чтения и записи и готова к использованию.
  • Состояние VG: размер группы томов можно изменить. Мы можем расширить его, если нам нужно добавить больше места.
  • Cur LV – в настоящее время в этой группе томов имеется 2 логических тома.
  • CurPV и Act PV – в настоящее время используется физический диск 1 (vda), и он активен. Итак, мы можем использовать эту группу томов.
  • Размер PE. Физические размеры (PE) и размер диска можно определить с использованием размера PE или ГБ. Размер PE по умолчанию для LVM составляет 4 МБ. Например, если нам нужно создать логический том объемом 5 ГБ, мы можем использовать в сумме 1280 PE. Ты понимаешь, что я говорю?

Вот объяснение: 1 ГБ равен 1024 МБ, поэтому 1024 МБ x 5=5120 PE=5 ГБ. Теперь разделите 5120 на 4=1280. 4 — это размер PE по умолчанию.

  • Всего PE – в этой группе томов есть.
  • Alloc PE – общее количество использованных PE, полное PE уже использовано, 5008 x 4PE=20032.
  • Бесплатный PE – здесь он уже использовался, поэтому бесплатного PE не было.

5. Теперь перечислите информацию о дисковом пространстве файловой системы, здесь только sda используется с /boot, /, и поменять на физическом диске sda с помощью LVM. На этом диске не осталось места.

df -TH

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

Создать раздел диска

6. Итак, давайте создадим новый физический том (PV) и группу томов (VG) с именем tecmint_add_vg и создадим внутри него логические тома (LV). Здесь мы можем создать 4 логических тома с именами tecmint_documents, tecmint_manager и tecmint_public.

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

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

fdisk -c /dev/sdb

Затем выполните следующие шаги, чтобы создать новый раздел.

  • Выберите n, чтобы создать новый.
  • Выберите p, чтобы создать основной раздел.
  • Выбираем, какое количество разделов нам нужно создать.
  • Нажмите enter дважды, чтобы использовать все пространство диска.
  • Нам нужно изменить тип вновь созданного раздела типа t.
  • Какой номер раздела нужно изменить, выбираем номер, под которым мы создали его 1.
  • Здесь нам нужно изменить тип, нам нужно создать LVM, поэтому мы будем использовать код типа LVM как 8e, если мы не знаем код типа. Нажмите L перечислить все типы кодов.
  • Распечатайте раздел, который мы создали, чтобы просто подтвердить.
  • Здесь мы видим идентификатор как 8e LINUX LVM.
  • Запишите изменения и выйдите из fdisk.

7. Выполните указанные выше действия для двух других дисков sdc и sdd, чтобы создать новые разделы. Затем перезагрузите компьютер, чтобы проверить таблицу разделов с помощью команды fdisk.

fdisk -l

Создать физический том LVM

8. Теперь пришло время создать физические тома, используя все три диска. Здесь я перечислил физические диски с помощью команды «pvs», и теперь указан только один PV по умолчанию.

pvs

9. Затем создайте новые физические диски и подтвердите вновь созданные физические диски.

pvcreate /dev/sdb1 /dev/sdc1 /dev/sdd1
pvs

Создание групп томов LVM

10. Создайте группу томов с именем tecmint_add_vg, используя доступный бесплатный PV и размер PE, равный 32. Для отображения текущих групп томов, мы видим, что есть одна группа томов с 1 PV.

vgs

11. Будет создана группа томов с именем tecmint_add_vg с размером 32 МБ и тремя физическими томами, которые мы создали на последних шагах.

vgcreate -s 32M tecmint_add_vg /dev/sdb1 /dev/sdc1 /dev/sdd1

12. Затем проверьте группу томов, еще раз выполнив команду vgs.

vgs

Понимание вывода команды vgs:

  • Имя группы томов.
  • Физические тома, используемые в этой группе томов.
  • Показывает свободное место, доступное в этой группе томов.
  • Общий размер группы томов.
  • Логические тома внутри этой группы томов. Здесь мы еще не создали, поэтому их 0.
  • SN=количество снимков, содержащихся в группе томов. (Позже мы сможем создать снимок).
  • Статус группы томов: доступен для записи, чтения, изменения размера, экспорта, частичного и кластеризованного. Здесь это wz–n-, что означает w=возможность записи, z=изменяемый размер.
  • Номер физического тома (PV), используемого в этой группе томов.

13. Чтобы отобразить дополнительную информацию о группе томов, используйте команду.

vgs -v

14. Чтобы получить дополнительную информацию о вновь созданных группах томов, выполните следующую команду.

vgdisplay tecmint_add_vg

Вот описание каждого параметра, показанного на скриншоте выше.

  • Имя группы томов
  • Используемая архитектура LVM.
  • Его можно читать и записывать, он готов к использованию.
  • Размер этой группы томов можно изменять.
  • Физический диск не использовался, и они активны.
  • Общий размер группы томов.
  • Размер Single PE здесь был 32.
  • Общее количество PE, доступных в этой группе томов.
  • В настоящее время мы не создали ни одного LV внутри этой виртуальной группы, поэтому это совершенно бесплатно.
  • UUID этой группы томов.

Создание логических томов LVM

15. Теперь создайте 3 логических тома с именами tecmint_documents, tecmint_manager и tecmint_public. Здесь мы покажем, как создавать логические тома, используя как размер PE, так и размер ГБ.

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

lvs

16. Эти логические тома входят в группу томов vg_tecmint. Чтобы узнать, сколько свободного места доступно для создания логических томов, перечислите группу томов и доступные физические тома с помощью команды «vgs».

vgs

Размер группы томов составляет почти 60 ГБ, и она не используется, поэтому мы можем создавать в ней LV. Давайте разделим группу томов на равные размеры, чтобы создать 3 логических тома. Это означает, что 60 ГБ/3=20 ГБ. После создания каждый логический том будет иметь размер 20 ГБ.

Способ 1. Создание логических томов с использованием размера PE

Сначала давайте создадим логические тома, используя размер физического экстента (PE). Нам необходимо знать размер PE по умолчанию, назначенный этой группе томов, и общее количество доступных PE для создания новых логических томов.

Выполните следующую команду, чтобы получить эту информацию.

vgdisplay tecmint_add_vg

  • PE по умолчанию, назначенный для этого VG, составляет 32 МБ. Здесь размер одного PE будет 32 МБ.
  • Всего доступных PE — 1917.

Просто выполните и посмотрите небольшой расчет с помощью команды bc.

bc
1917PE/3 = 639 PE. 
639 PE x 32MB = 20448 --> 20GB

Нажмите CRTL+D, чтобы выйти из bc.

Давайте теперь создадим 3 логических тома, используя 639 PE. Здесь -l используется для увеличения размера, а -n — для назначения логического имени тома.

lvcreate -l 639 -n tecmint_documents tecmint_add_vg
lvcreate -l 639 -n tecmint_manager tecmint_add_vg
lvcreate -l 639 -n tecmint_public tecmint_add_vg

Выведите список созданных логических томов с помощью команды lvs.

lvs

Способ 2. Создание логических томов с использованием размера в ГБ

При создании логического тома с использованием размера ГБ мы не можем получить точный размер. Итак, лучший способ — создать, используя расширение.

lvcreate -L 20G -n tecmint_documents tecmint_add_vg
lvcreate -L 20G -n tecmint_manager tecmint_add_vg
lvcreate -L 20G -n tecmint_public tecmint_add_vg
lvcreate -L 20G -n tecmint_public tecmint_add_vg

Выведите список созданных логических томов с помощью команды lvs.

lvs

Здесь мы видим, что при создании третьего тома мы не можем округлить до 20 ГБ, это связано с небольшими изменениями в размере, но эта проблема будет игнорироваться при создании раздела с использованием расширения размера.

Создание файловой системы

17. Для использования логических томов нам необходимо отформатировать их. Здесь я использую файловую систему ext4 для создания томов и собираюсь смонтировать их в /mnt/.

mkfs.ext4 /dev/tecmint_add_vg/tecmint_documents
mkfs.ext4 /dev/tecmint_add_vg/tecmint_public
mkfs.ext4 /dev/tecmint_add_vg/tecmint_manager

18. Давайте создадим каталоги в /mnt и смонтируем логические тома, в которых мы создали файловую систему.

mount /dev/tecmint_add_vg/tecmint_documents /mnt/tecmint_documents/
mount /dev/tecmint_add_vg/tecmint_public /mnt/tecmint_public/
mount /dev/tecmint_add_vg/tecmint_manager /mnt/tecmint_manager/

19. Перечислите и подтвердите использование точки монтирования.

 
df -h

Постоянное монтирование логических томов

20. Теперь он временно смонтирован, для постоянного монтирования нам нужно добавить запись в fstab, для этого давайте получим запись монтирования из mtab с помощью

cat /etc/mtab

21. Нам нужно внести небольшие изменения в запись fstab при вводе копий содержимого записи монтирования из mtab, нам нужно изменить rw на значения по умолчанию.

vi /etc/fstab

Наши записи fstab должны выглядеть примерно так, как показано ниже.

/dev/mapper/tecmint_add_vg-tecmint_documents    /mnt/tecmint_documents  ext4    defaults 0 0
/dev/mapper/tecmint_add_vg-tecmint_public       /mnt/tecmint_public     ext4    defaults 0 0
/dev/mapper/tecmint_add_vg-tecmint_manager      /mnt/tecmint_manager    ext4    defaults 0 0

22. Наконец, запустите команду mount -a, чтобы проверить наличие записи fstab перед перезапуском.

mount -av

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

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