Учебники

Linux Admin — Управление томами

Управление логическими томами (LVM) — это метод, используемый Linux для управления томами хранения на разных физических жестких дисках. Это не следует путать с RAID. Тем не менее, это можно представить в аналогичной концепции, как RAID 0 или J-Bod. В LVM можно иметь (например) три физических диска по 1 ТБ каждый, а затем логический том размером около 3 ТБ, например / dev / sdb. Или даже два логических тома по 1,5 ТБ, 5 томов по 500 ГБ или любая комбинация. Один единственный диск может даже использоваться для моментальных снимков логических томов.

Примечание. Использование логических томов фактически увеличивает дисковый ввод-вывод при правильной настройке. Это работает аналогично RAID 0 для чередования данных на разных дисках.

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

PV Физический том SDA
PP Физический раздел sda1, sda2
В.Г. Том Группа Объединенные физические ресурсы
LV Логический том Рассматривается как хранилище для операционной системы

Физический том будет выглядеть как / dev / sda, / dev / sdb; физический диск, обнаруженный Linux.

Физическим разделом будет раздел диска, разделенный дисковой утилитой, такой как fdisk. Имейте в виду, физический раздел не рекомендуется в большинстве распространенных настроек LVM. Пример: диск / dev / sda разделен на два физических раздела: / dev / sda1 и / dev / sda1

Если у нас есть два физических диска по 1 ТБ каждый, мы можем создать из них группу томов объемом почти 2 ТБ.

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

Традиционные инструменты администрирования дисков Linux

Прежде чем знакомиться с новейшими и лучшими инструментами для управления LVM в CentOS 7, мы должны сначала изучить более традиционные инструменты, которые использовались для управления дисками Linux. Эти инструменты пригодятся и по-прежнему будут использоваться с современными инструментами LVM, такими как System Storage Manager: lsblk, parted и mkfs.xfs.

Теперь, если мы добавили еще один или два диска в нашу систему, нам нужно перечислить диски, обнаруженные Linux. Я всегда советую перечислять диски каждый раз перед выполнением операций, которые считаются разрушительными. lsblk — отличный инструмент для получения информации о диске. Посмотрим, какие диски обнаружит CentOS.

[root@localhost rdc]# lsblk
NAME         MAJ:MIN    RM    SIZE    RO    TYPE MOUNTPOINT
sda            8:0       0     20G     0        disk 
├─sda1         8:1       0      1G     0     part /boot
└─sda2         8:2       0     19G     0        part 
  ├─cl-root  253:0       0     17G     0      lvm  /
  └─cl-swap  253:1       0      2G     0      lvm  [SWAP]
    sdb       8:16       0      6G     0       disk 
    sdc       8:32       0      4G     0       disk 
    sr0       11:0       1   1024M     0       rom 

Как видите, в этой системе три диска: sda, sdb и sdc.

Диск sda содержит нашу рабочую установку CentOS, поэтому мы не хотим играть с sda. И sdb, и sdc были добавлены в систему для этого урока. Давайте сделаем эти диски пригодными для использования в CentOS.

Создать метку диска

[root@localhost rdc]# parted /dev/sdb mklabel GPT
Warning: The existing disk label on /dev/sdb will be destroyed and all data on this
   disk will be lost. Do you want to continue?
Yes/No? Yes                               
[root@localhost rdc]#

Теперь у нас есть один диск с надписью. Просто запустите команду parted таким же образом на sdc .

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

Мы создадим только один раздел на каждом диске. Для создания разделов снова используется команда parted.

[root@localhost rdc]# parted -a opt /dev/sdb mkpart primary ext4 0% 100%

Предупреждение. Вы запросили раздел размером от 0,00 до 6442 МБ (секторы 0..12582911).

Ближайшее местоположение, которым мы можем управлять, — от 17,4 до 1048 КБ (секторы 34,2047).

Это все еще приемлемо для вас?

Да нет? НЕТ

[root@localhost rdc]# parted -a opt /dev/sdc mkpart primary ext4 0% 100%

Информация — вам может потребоваться обновить / etc / fstab.

[root@localhost rdc]# lsblk                                               
NAME        MAJ:MIN   RM    SIZE    RO    TYPE MOUNTPOINT
sda           8:0      0     20G     0        disk 
├─sda1        8:1      0      1G     0      part / boot
└─sda2        8:2      0     19G     0        part 
 ├─cl-root  253:0      0     17G     0       lvm  /
 └─cl-swap  253:1      0      2G     0       lvm  [SWAP]
sdb          8:16      0      6G     0        disk 
└─sdb1       8:17      0      6G     0        part 
 sdc         8:32      0      4G     0        disk 
└─sdc1       8:33      0      4G     0        part 
sr0          11:0      1   1024M     0        rom

[root@localhost rdc]#

Как вы можете видеть из вывода lsblk, теперь у нас есть два раздела, каждый на sdb и sdc.

Сделать файловую систему

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

root@localhost rdc]# mkfs.xfs -f /dev/sdb1
meta-data = /dev/sdb1               isize = 512    agcount = 4, agsize = 393088 blks
            =                      sectsz = 512    attr = 2, projid32bit = 1
            =                         crc = 1      finobt = 0, sparse = 0
data        =                       bsize = 4096   blocks = 1572352, imaxpct = 25
            =                       sunit = 0      swidth = 0 blks
naming      = version 2             bsize = 4096   ascii-ci = 0 ftype = 1
log         = internal log          bsize = 4096   blocks = 2560, version = 2
            =                      sectsz = 512    sunit = 0 blks, lazy-count = 1
realtime    = none                  extsz = 4096   blocks = 0, rtextents = 0
[root@localhost rdc]# mkfs.xfs -f /dev/sdc1
meta-data   = /dev/sdc1             isize = 512    agcount = 4, agsize = 262016 blks
            =                      sectsz = 512    attr = 2, projid32bit = 1
            =                         crc = 1      finobt = 0, sparse = 0
data        =                       bsize = 4096   blocks = 1048064, imaxpct = 25
            =                       sunit = 0      swidth = 0 blks
naming      = version 2             bsize = 4096   ascii-ci = 0 ftype = 1
log         = internal log          bsize = 4096   blocks = 2560, version = 2
            =                      sectsz = 512    sunit = 0 blks, lazy-count = 1
realtime    = none                  extsz = 4096   blocks = 0, rtextents = 0

[root@localhost rdc]# 

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

[root@localhost rdc]# lsblk -o NAME,FSTYPE
NAME           FSTYPE
sda         
├─sda1         xfs
└─sda2         LVM2_member
 ├─cl-root     xfs
 └─cl-swap     swap
sdb         
└─sdb1         xfs
sdc         
└─sdc1         xfs
sr0

[root@localhost rdc]# 

Каждый теперь использует файловую систему XFS. Давайте смонтируем их, проверим монтирование и скопируем в каждый файл.

[root@localhost rdc]# mount -o defaults /dev/sdb1 /mnt/sdb
[root@localhost rdc]# mount -o defaults /dev/sdc1 /mnt/sdc

[root@localhost ~]# touch /mnt/sdb/myFile /mnt/sdc/myFile
[root@localhost ~]# ls /mnt/sdb /mnt/sdc
 /mnt/sdb:
  myFile

 /mnt/sdc:
  myFile

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

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

Одним из величайших дополнений к CentOS 7 стало включение утилиты System Storage Manager или ssm . System Storage Manager значительно упрощает процесс управления пулами LVM и томами хранения в Linux.

Мы пройдем процесс создания простого пула томов и логических томов в CentOS. Первым шагом является установка System Storage Manager.

[root@localhost rdc]# yum  install system-storage-manager

Давайте посмотрим на наши диски с помощью команды ssm list .

Команда SSM List

Как видно выше, в системе установлено всего три диска.

  • / sdba1Хостинг нашей установки CentOS

  • / sdb1 — монтируется в / mnt / sdb

  • / sdc1 — монтируется в / mnt / sdc

/ sdba1Хостинг нашей установки CentOS

/ sdb1 — монтируется в / mnt / sdb

/ sdc1 — монтируется в / mnt / sdc

Мы хотим создать группу томов, используя два диска (sdb и sdc). Затем сделайте три логических тома по 3 ГБ доступными для системы.

Давайте создадим нашу группу томов.

[root@localhost rdc]# ssm create -p NEW_POOL /dev/sdb1 /dev/sdc1

По умолчанию ssm создаст один логический том, расширяющий все 10 ГБ пула. Мы не хотим этого, поэтому давайте удалим это.

[root@localhost rdc]# ssm remove /dev/NEW_POOL/lvol001
 Do you really want to remove active logical volume NEW_POOL/lvol001? [y/n]: y
 Logical volume "lvol001" successfully removed
[root@localhost rdc]# 

Наконец, давайте создадим три логических тома.

[root@localhost rdc]# ssm create -n disk001 --fs xfs -s 3GB -p NEW_POOL
[root@localhost rdc]# ssm create -n disk002 --fs xfs -s 3GB -p NEW_POOL
[root@localhost rdc]# ssm create -n disk003 --fs xfs -s 3GB -p NEW_POOL

Теперь давайте проверим наши новые тома.

тома

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

Логические тома — это мощная функция, встроенная в CentOS Linux. Мы коснулись поверхности управления ими. Освоение пулов и логических томов сопровождается практикой и расширенным обучением в Tutorials Point. На данный момент вы изучили основы управления LVM в CentOS и обладаете способностью создавать базовые чередующиеся логические тома на одном хосте.