Вход
  • Главная
  • Документация
  • Главная
  • Документация

АГИС Администрирование

Главная/Документация/АГИС Администрирование
Развернуть все Свернуть все
  • О разделе АГИС Модули
  •  Администрирование
    •   Ubuntu
      •   Установка ubuntu
        • Инсталяция
        • Docker и его установка
      •   LVM&Snapshot
        • LVM
        • Snapshot
        • agis_backup_lvm_xfs-v2
        • Ошибки
      •   Nginx, ssl, letsencrypt
        • Letsencrypt
      •   NAS
        • Synology
      •   SSH
        • Клиент ssh
      • date and time
      • Резервные копии
      •   Разные команды
        • Systemd (systemctl)
        • grub восстановление
    •   Базы данных
      • Запуск базы данных АГИС
      •   Mongo
        • mongodump-mongorestore
        • Как узнать версию mongodb
        • Test mongo db
        • Запросы mongodb
        • Запуск mongodb
        • Studio 3T for Mongo DB
        • Тестовый контейнер mongodb
        • mongodb формат даты
      •   PostgreSQL
        • Test postgis
        • Dump&Restore
        • Установка и запуск
        • PostgreSQL разное
      •   Elastic search
        • Команды elasticsearch
        • Tools to backup and restore ElasticSearch indices
      • Troubleshooting базы данных АГИС
    •   Docker
      • Команды Docker
      • Команды Docker (admin)
      • docker ps
      • .env
      • docker images save load
    •   Troubleshhoting
      • Mobaxterm
    •   Разное
      • Сколько байт(бит) в килобайте, мегабайте, гигабайте
      • Save bookmarks Studio 3T Mobaxterm
  •  АГИС ГИС сервер
    • Запуск и остановка Tile сервера
    • Экспорт шейпа из АГИС ГИС
    • Импорт шейпа в АГИС ГИС
    • Backup&restore postgis(postgres)
    • Troubleshooting postgis
  •  АГИС Администрирование
    •   Пользователи
      • Добавление нового пользователя
    •   Роли
      • Добавление новой роли
    •   Перевод
      • Добавления перевода

LVM

93 просмотров 0

— Коротко
fdisk /dev/sda
pvcreate /dev/sda4
vgcreate vg /dev/sda4
lvcreate -L 950G -n lv1 vg
mkfs.xfs /dev/vg/lv1 -n ftype=1
mkdir -p /data
mount /dev/vg/lv1 /data

nano /etc/fstab
. . .
/dev/vg/lv1 /data xfs defaults,nofail 0 0

— Шаг 1
Подготовка дисков и разделов для LVM
Установили ubuntu на /dev/sda
Device Start End Sectors Size Type
/dev/sda1 2048 1050623 1048576 512M EFI System
/dev/sda2 1050624 269486079 268435456 128G Linux swap
/dev/sda3 269486080 898631679 629145600 300G Linux filesystem
На /dev/sda есть свободное место.
Создаем новый Partition(4) максимальный по размеру. Тип – Linux filesystem (fdisk /dev/sda)
Device Start End Sectors Size Type
/dev/sda1 2048 1050623 1048576 512M EFI System
/dev/sda2 1050624 269486079 268435456 128G Linux swap
/dev/sda3 269486080 898631679 629145600 300G Linux filesystem
/dev/sda4 898631680 3513671646 2615039967 1.2T Linux filesystem

— Шаг 2
Создание блочных устройств.
Команда выведет все доступные блочные устройства, с которыми может взаимодействовать LVM:
lvmdiskscan
root@billsrv:~# lvmdiskscan
/dev/loop0 [ <27.09 MiB]
/dev/loop1 [ <54.95 MiB]
/dev/sda1 [ 512.00 MiB]
/dev/loop2 [ <68.97 MiB]
/dev/sda2 [ 128.00 GiB]
/dev/loop3 [ 96.98 MiB]
/dev/sda3 [ 300.00 GiB]
/dev/loop4 [ <125.85 MiB]
/dev/sda4 [ <1.22 TiB]
/dev/sdb [ <1.64 TiB]
/dev/sdc1 [ 931.51 GiB]
/dev/sdd4 [ <28.87 GiB]
1 disk
11 partitions
0 LVM physical volume whole disks
0 LVM physical volumes

Как видите, на данный момент существует
один свободный раздел (partition) /dev/sda4 <1.22 TiB (остался свободный после установки)
один свободный диск, не разбитый на partition /dev/sdb <1.64 TiB
один свободный раздел (partition) /dev/sdc1 931.51 GiB (это внешний usb диск)
один свободный раздел (partition) /dev/sdd4 <28.87 GiB (эта установочная флешка)

Важно! Убедитесь, что устройства, которые вы собираетесь использовать в LVM, не содержат важных данных. Использование этих устройств в LVM перезапишет текущее содержимое. Если на устройствах уже есть важные данные, сделайте их резервные копии.

— Шаг 3
Создание физических томов.
Вы получили информацию о физических устройствах, и теперь их можно отметить как физические тома.
Выбираем раздел (partition) sda4. Эта команда присвоит устройствам заголовок LVM, чтобы указать, что их можно добавить в группу томов.

pvcreate /dev/sda4
root@billsrv:~# pvcreate /dev/sda4
Physical volume “/dev/sda4” successfully created.

Проверяем
root@billsrv:~# lvmdiskscan
/dev/loop0 [ <27.09 MiB]
/dev/loop1 [ <54.95 MiB]
/dev/sda1 [ 512.00 MiB]
/dev/loop2 [ <68.97 MiB]
/dev/sda2 [ 128.00 GiB]
/dev/loop3 [ 96.98 MiB]
/dev/sda3 [ 300.00 GiB]
/dev/loop4 [ <125.85 MiB]
/dev/sda4 [ <1.22 TiB] LVM physical volume
/dev/sdb [ <1.64 TiB]
/dev/sdc1 [ 931.51 GiB]
/dev/sdd4 [ <28.87 GiB]
1 disk
10 partitions
0 LVM physical volume whole disks
1 LVM physical volume

Чтобы просмотреть физические тома, зарегистрированные в LVM, наберите:
root@billsrv:~# pvs
PV VG Fmt Attr PSize PFree
/dev/sda4 lvm2 — <1.22t <1.22t

Добавим диск /dev/sdb как физические том

root@billsrv:~# pvcreate /dev/sdb
Physical volume “/dev/sdb” successfully created.
root@billsrv:~# lvmdiskscan
/dev/loop0 [ <27.09 MiB]
/dev/loop1 [ <54.95 MiB]
/dev/sda1 [ 512.00 MiB]
/dev/loop2 [ <68.97 MiB]
/dev/sda2 [ 128.00 GiB]
/dev/loop3 [ 96.98 MiB]
/dev/sda3 [ 300.00 GiB]
/dev/loop4 [ <125.85 MiB]
/dev/sda4 [ <1.22 TiB] LVM physical volume
/dev/sdb [ <1.64 TiB] LVM physical volume
/dev/sdc1 [ 931.51 GiB]
/dev/sdd4 [ <28.87 GiB]
0 disks
10 partitions
1 LVM physical volume whole disk
1 LVM physical volume

Если pvcreate выдает ошибку
Device /dev/sda4 excluded by a filter
То удалить раздел /dev/sda4 и заново создать
pvcreate /dev/sda4

Можно удалить ненужные физические тома – pvremove
root@billsrv:~# pvremove /dev/sdb
Labels on physical volume “/dev/sdb” successfully wiped.
root@billsrv:~# lvmdiskscan
/dev/loop0 [ <27.09 MiB]
/dev/loop1 [ <54.95 MiB]
/dev/sda1 [ 512.00 MiB]
/dev/loop2 [ <68.97 MiB]
/dev/sda2 [ 128.00 GiB]
/dev/loop3 [ 96.98 MiB]
/dev/sda3 [ 300.00 GiB]
/dev/loop4 [ <125.85 MiB]
/dev/sda4 [ <1.22 TiB] LVM physical volume
/dev/sdb [ <1.64 TiB]
/dev/sdc1 [ 931.51 GiB]
/dev/sdd4 [ <28.87 GiB]
1 disk
10 partitions
0 LVM physical volume whole disks
1 LVM physical volume

— Шаг 4
Добавление физического тома в группу томов
Теперь, когда у вас есть физические тома, можно создать группу томов. Для группы томов нужно выбрать имя. В большинстве случаев для максимальной гибкости в каждой системе находится одна группа томов. Будем называть группу томов vg
Чтобы создать группу томов и добавить в неё физические тома, введите:

root@billsrv:~# vgcreate vg /dev/sda4
Volume group “vg” successfully created
root@billsrv:~# pvs
PV VG Fmt Attr PSize PFree
/dev/sda4 vg lvm2 a– <1.22t <1.22t

Чтобы получить краткую информацию о каждой группе томов, введите – vgs
root@billsrv:~# vgs
VG #PV #LV #SN Attr VSize VFree
vg 1 0 0 wz–n- <1.22t <1.22t

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

Можно удалить группы томов vgremove
root@billsrv:~# vgremove vg
Volume group “vg” successfully removed
root@billsrv:~# pvs
PV VG Fmt Attr PSize PFree
/dev/sda4 lvm2 — <1.22t <1.22t
Видно, что отметка VG теперь пустая

Дополнительно:
Пример, если добавим два физических тома
vgcreate vg /dev/sda4 /dev/sdb

root@billsrv:~# pvs
PV VG Fmt Attr PSize PFree
/dev/sda4 lvm2 — <1.22t <1.22t
/dev/sdb lvm2 — <1.64t <1.64t
root@billsrv:~# vgcreate vg /dev/sda4 /dev/sdb
Volume group “vg” successfully created
root@billsrv:~# pvs
PV VG Fmt Attr PSize PFree
/dev/sda4 vg lvm2 a– <1.22t <1.22t
/dev/sdb vg lvm2 a– <1.64t <1.64t
root@billsrv:~# vgs
VG #PV #LV #SN Attr VSize VFree
vg 2 0 0 wz–n- 2.85t 2.85t

— Шаг 5
Создание логического тома из группы томов: lvcreate -L 950G -n lv1 vg

root@billsrv:~# lvcreate -L 950G -n lv1 vg
Logical volume “lv1” created.
root@billsrv:~# vgs -o +lv_size,lv_name
VG #PV #LV #SN Attr VSize VFree LSize LV
vg 1 1 0 wz–n- <1.22t <296.95g 950.00g lv1

И осталось свободного( не распределленого простнства) <296.95g. Будем его использовать для создания snapshot
root@billsrv:~# pvs
PV VG Fmt Attr PSize PFree
/dev/sda4 vg lvm2 a– <1.22t <296.95g


Дополнительно:
Чтобы создать логические тома, используйте команду lvcreate. Укажите в команде группу томов и выберите имя логического тома с помощью параметра –n. Чтобы создать два логических тома, используйте –L:
root@dump:~# lvcreate -L 30G -n lv1 vg1
Logical volume “lv1” created.
root@dump:~# lvcreate -L 40G -n lv2 vg1
Logical volume “lv2” created.

Чтобы просмотреть логические тома и их связь с группой томов, введите:
root@dump:~# vgs -o +lv_size,lv_name
VG #PV #LV #SN Attr VSize VFree LSize LV
vg1 1 2 0 wz–n- 931.51g 861.51g 30.00g lv1
vg1 1 2 0 wz–n- 931.51g 861.51g 40.00g lv2

Два последних столбца показывают пространство, выделенное для логических томов.

Оставшееся пространство можно присвоить последнему тому lv3 с помощью флага –l, который работает с экстентами. Чтобы передать тому всё оставшееся пространство, укажите в команде 100%FREE:

root@dump:~# lvcreate -l 100%FREE -n lv3 vg1
Logical volume “lv3” created.


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

root@dump:~# vgs -o +lv_size,lv_name
VG #PV #LV #SN Attr VSize VFree LSize LV
vg1 1 3 0 wz–n- 931.51g 0 30.00g lv1
vg1 1 3 0 wz–n- 931.51g 0 40.00g lv2
vg1 1 3 0 wz–n- 931.51g 0 861.51g lv3

Как видите, теперь оставшееся пространство принадлежит тому lv3. Группа томов vg1 полностью распределена.

— Шаг 6
Форматирование и монтирование логических томов
Docker настоятельно рекомендует использваоть файловую систему XFS
xfs filesystems must have been created with d_type=true, which can be verified by using xfs_info and searching for ftype=1

Соотвественно форматировать будем под XFS
Проверяем, что у нас есть
root@billsrv:~# vgs -o +lv_size,lv_name
VG #PV #LV #SN Attr VSize VFree LSize LV
vg 1 1 0 wz–n- <1.22t <296.95g 950.00g lv1

Создаем файловую систему mkfs.xfs /dev/vg/lv1 -n ftype=1. Или форсированно, если не получилась предыдущая команда mkfs.xfs -f /dev/vg/lv1 -n ftype=1

root@billsrv:~# mkfs.xfs /dev/vg/lv1 -n ftype=1
meta-data=/dev/vg/lv1 isize=512 agcount=4, agsize=62259200 blks
= sectsz=4096 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=1
data = bsize=4096 blocks=249036800, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=121600, version=2
= sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0

Создаем точку монтирование
mkdir -p /data
Монтируем
mount /dev/vg/lv1 /data

Смотрим подробности
root@billsrv:/# blkid /dev/vg/lv1
/dev/vg/lv1: UUID=”c74444f5-bdc3-4e95-a68b-4192e461674b” TYPE=”xfs”

root@billsrv:/# ls -l /dev/disk/by-uuid
total 0
lrwxrwxrwx 1 root root 10 Aug 1 07:47 1ef27f33-e6f1-40df-bad2-f589a4369142 -> ../../sda2
lrwxrwxrwx 1 root root 10 Aug 1 07:47 25168242-3aa6-4109-b563-79b04748ea59 -> ../../sda3
lrwxrwxrwx 1 root root 10 Aug 1 07:47 7B63-3625 -> ../../sda1
lrwxrwxrwx 1 root root 10 Aug 1 07:37 B4FE-5315 -> ../../sdd4
lrwxrwxrwx 1 root root 10 Aug 1 07:37 D4523C68523C520A -> ../../sdc1
lrwxrwxrwx 1 root root 10 Aug 1 08:58 c74444f5-bdc3-4e95-a68b-4192e461674b -> ../../dm-0

Прописываем строку в fstab
nano /etc/fstab
. . .

/dev/vg/lv1 /data xfs defaults,nofail 0 0

или
/dev/vg/lv1 /data xfs defaults,errors=remount-ro 0 1

root@dump:/var/lib# cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use ‘blkid’ to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/disk/by-uuid/1ef27f33-e6f1-40df-bad2-f589a4369142 none swap sw 0 0
# / was on /dev/sda3 during curtin installation
/dev/disk/by-uuid/25168242-3aa6-4109-b563-79b04748ea59 / ext4 defaults 0 0
# /boot/efi was on /dev/sda1 during curtin installation
/dev/disk/by-uuid/7B63-3625 /boot/efi vfat defaults 0 0
/swap.img none swap sw 0 0
/dev/vg/lv1 /data xfs defaults,nofail 0 0


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

Логические устройства (как и другие устройства хранения) находятся в каталоге /dev. Вы можете получить к ним доступ двумя путями:

/dev/vg/lv1
/dev/mapper/vg-lv1

Чтобы отформатировать логическиt тома с файловой системой Ext4, введите:

mkfs.ext4 /dev/vg/lv1
mkfs.ext4 /dev/vg/lv2

root@dump:~# mkfs.ext4 /dev/vg/lv1
mke2fs 1.44.1 (24-Mar-2018)
Creating filesystem with 7864320 4k blocks and 1966080 inodes
Filesystem UUID: b8aacc0b-8fcc-48e3-94be-6cbd88228f02
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000

Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

root@dump:~# mkfs.ext4 /dev/vg/lv2
mke2fs 1.44.1 (24-Mar-2018)
Creating filesystem with 10485760 4k blocks and 2621440 inodes
Filesystem UUID: c8593b23-5662-495c-8f54-3f2840c71df3
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624

Allocating group tables: done
Writing inode tables: done
Creating journal (65536 blocks): done
Writing superblocks and filesystem accounting information: done


Или:

sudo mkfs.ext4 /dev/mapper/vg-lv1
sudo mkfs.ext4 /dev/mapper/vg-lv2

После этого можно создать точки монтирования:

sudo mkdir -p /mnt/{lv1,lv2}

Чтобы смонтировать логические тома, введите:

mount /dev/vg/lv1 /mnt/lv1
mount /dev/vg/lv1 /mnt/lv2

Чтобы настроить постоянную поддержку смонтированных томов, добавьте их в /etc/fstab:

sudo nano /etc/fstab
. . .
/dev/vg/lv1 /mnt/lv1 ext4 defaults,nofail 0 0
/dev/vg/lv2 /mnt/lv2 ext4 defaults,nofail 0 0

Теперь операционная система будет автоматически монтировать логические тома LVM во время загрузки.

root@agis:~# blkid /dev/vg/lv1
/dev/vg/lv1: UUID=”4bcb6b06-7f23-4aca-ae93-06b8fbd13552″ TYPE=”xfs”

 

— Шпаргалка

Список команд для работы с LVM

lvchange
Изменить атрибуты логического тома
lvcreate
Создать логический том
lvdisplay
Показать информацию о логическом томе
lvextend
Добавить места в логический том
lvmchange
(команда устарела, её лучше не использовать)
lvmdiskscan
Показать список устройств, которые могут быть использованы как физический том
lvmsadc
Собрать данные об активности использования LVM
lvmsar
Создать отчёт об активности использования LVM
lvreduce
Уменьшить размер логического тома
lvremove
Удалить логический том из системы
lvrename
Переименовать логический том
lvresize
Изменить размер логического тома
lvs
Показать информацию о логическом томе
lvscan
Показать список логических томов во всех группах томов
pvchange
Изменить атрибуты физического тома
pvcreate
Инициализировать физический том для использования в LVM
pvdata
Показать информацию (из метаданных на диске) о физическом томе
pvdisplay
Показать информацию о физическом томе
pvmove
Переместить эстенты с одного физического тома на другой
pvremove
Удалить метку LVM с физического тома
pvresize
Изменить размер физического тома, использующегося в группе томов
pvs
Показать информацию о физическом томе
pvscan
Показать список всех физических томов
vgcfgbackup
Сделать резервную копию конфигурации группы томов
vgcfgrestore
Восстановить из резервной копии конфигурацию группы томов
vgchange
Изменить атрибуты группы томов
vgck
Проверить целостность группы томов
vgconvert
Изменить формат метаданных группы томов
vgcreate
Создать группу томов
vgdisplay
Показать информацию о группе томов
vgexport
Разрегистрировать группу томов в системе
vgextend
Добавить физический том в группу томов
vgimport
Зарегистрировать эскпортированную группу томов в системе
vgmerge
Объединить группы томов
vgmknodes
Создать файлы устройств для групп томов в каталоге /dev/
vgreduce
Удалить физический том из группы томов
vgremove
Удалить группу томов
vgrename
Переименовать группу томов
vgs
Показать информацию о группах томов
vgscan
Выполнить поиск групп томов
vgsplit
Переместить физический том в новую группу томов

— Теория
https://www.8host.com/blog/vvedenie-v-lvm-osnovnye-ponyatiya-i-operacii/

LVM (Logical Volume Management), или управление логическими томами – это технология управления устройствами хранения, позволяющая объединять области различных физических устройств в один логический том. С помощью подсистемы device mapper текущая версия LVM2 может объединять физические устройства хранения в группы и по мере необходимости выделять логические единицы из полученного тома.

Основными преимуществами LVM являются повышенная абстракция, гибкость и высокий контроль. Логическим томам можно присваивать описательные и понятные имена (например, databases или root-backup). Кроме того, по мере изменения требований к пространству том можно динамически изменять и перемещать между физическими устройствами в пуле текущей системы или легко экспортировать в другую систему. LVM также предлагает продвинутые функции: снепшоты, страйпинг и зеркалирование.

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

Структуры управления хранилищами LVM
Работа LVM основана на иерархии физических устройств хранения. Рассмотрим основные уровни абстракции в этой иерархии LVM, начиная с самого простого.

Физические тома (physical volumes, префикс pv) – физические блочные устройства или другие устройства, подобные дискам (например, созданные device mapper устройства, такие как RAID-массивы). Они используются LVM в качестве исходного строительного материала для более высоких уровней абстракции. Физические тома – это обычные устройства хранения.
Группа томов (volume groups, префикс vg) – пул хранения, состоящий из нескольких физических томов. Группы томов абстрагируют характеристики базовых устройств и функционируют как единое логическое устройство (при этом объемы компонентов пула объединяются).
Логический том (logical volumes, префикс lv или lvm) – это логический раздел, который выделяется из единого пространства группы томов. Логические тома эквивалентны разделам на физическом диске, но они гораздо более гибкие. Логические тома являются основным компонентом, с которым будут взаимодействовать пользователи и приложения.
Таким образом, LVM может объединять физические тома в группы томов и получить общий пул памяти, доступной в системе. В дальнейшем этот пул можно делить на произвольные логические тома, которые функционируют как гибкие разделы.

Что такое экстенты?
Каждый том в группе томов сегментируется на небольшие куски фиксированного размера, называемые экстентами. Размер экстентов определяется группой томов (все тома в группе соответствуют одному размеру экстента).

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

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

 

Вам может быть интересно
  • mongodb формат даты
  • Клиент ssh
  • О разделе АГИС Модули
  • Mobaxterm
  • Troubleshhoting
  • grub восстановление
  • Copyright 2020 AGIS. Все права защищены