Создание и настройка хранилищ LVM для тестового стенда
В данном примере представлены минимально необходимые настройки.
Описание тестовой среды
В данном примере в качестве тестовой среды выступает система виртуализации QEMU/KVM в ОС СН Astra Linux Special Edition 1.7.2.
При этом описываемые действия по созданию и настройке гостевых машин выполняются в программе Virt-manager версии 2.2.1-3.
Для организации программной системы хранения данных будет развернута гостевая машина (с наименованием iscsi-target
) со следующими параметрами:
- количество процессоров: 1;
- размер памяти (ОЗУ): 2 ГБ;
- один диск для размещения файлов ОС Astra Linux объемом 12 ГБ;
- два дополнительных диска для эмуляции сетевых блочных устройств объемом 24 ГБ.
При этом вычислительные ресурсы тестового стенда должны обеспечить одновременное функционирование гостевой машины iscsi-target
и гостевой машины виртуализации, на которой установлены программные компоненты ПК СВ (далее по тексту – фронтальной машины).
В этом примере в качестве установочного носителя используется файл образа технологического установочного диска 1.7.2-11.08.2022_15.28.iso
(установочный диск Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) с интегрированным обновлением БЮЛЛЕТЕНЬ № 2022-0819SE17 (оперативное обновление 1.7.2)).
1. Создание и настройка программной СХД (iSCSI-target)
Гостевой машине, предоставляющей блочные данные по протоколу iSCSI, будет присвоен IP-адрес: 172.16.1.41 и сетевое имя iscsi-target
.
Значение IP-адреса гостевой машины iscsi-target
выбрано исходя из диапазона, установленного при создании виртуальной сети в Virt-Manager (172.16.1.0 /24) – см.ПК СВ "Брест" в пределах одного сервера (сервисный режим).
- Создать гостевую машину
iscsi-target
. Действия по созданию гостевой машины аналогичны действиям, описанным в статье Создание гостевой машины (за исключением пункта установки дополнительного оборудования — канал SPICE добавлять не нужно). При этом необходимо установить следующие параметры гостевой машины:- количество процессоров: 1;
- размер памяти (ОЗУ): 2 ГБ;
объем диска для размещения ОС: 12 ГБ.
Диски для эмуляции сетевых блочных устройств будет добавлены позже.
Для организации системы хранения в ПК СВ «Брест» требуется выделение как минимум двух сетевых блочных устройств.
В гостевой машине
iscsi-target
установить операционную систему специального назначения "Astra Linux Special Edition" РУСБ.10015-01. При этом следует учитывать следующие особенности установки:- на странице Установка базовой системы выбрать для установки ядро
linux-5.15-generic
; - на странице Выбор программного обеспечения выбрать пункт Средства удаленного подключения SSH;
- на странице Дополнительные настройки ОС выбрать Базовый уровень защищенности "Орел";
- на странице Дополнительные настройки ОС выбрать пункт Запрет автонастройки сети.
- на странице Установка базовой системы выбрать для установки ядро
- Настроить сетевое соединение:
в файл
/etc/network/interfaces
добавить следующие строки:CODEзапустить в работу сетевой интерфейс командой:
sudo ifup eth0Далее можно подключиться к гостевой машине из хостовой ОС по SSH.файл
/etc/hosts
привести к следующему виду:CODEзадать сетевое имя гостевой машине, выполнив команду:
sudo hostnamectl set-hostname iscsi-targetСообщение об ошибке вида:CODEможно игнорировать (перед тем как выполнить команду инструмент командной строки
sudo
обращается к файлу/etc/hosts
чтобы определить IP-адрес используя предыдущее имя гостевой машины).
- Выключить гостевую машину
iscsi-target
. - В окне программы Virt-manager на панели инструментов окна гостевой машины
iscsi-target
нажать на кнопку [Показать виртуальное оборудование]. - Подключить к гостевой машине
iscsi-target
первый диск для эмуляции сетевого блочного устройства: - Аналогичным образом подключить к гостевой машине
iscsi-target
второй диск для эмуляции сетевого блочного устройства. - Подключить образ установочного носителя к гостевой машине
iscsi-target
(см. Подключение образа установочного носителя к гостевой машине). - Включить гостевую машину
iscsi-target
. В ОС гостевой машины
iscsi-target
вывести перечень блочных устройств:lsblkПример вывода после выполнения команды:CODEгде:
vda
– диск для размещения файлов ОС;vdb
иvdc
– диски для эмуляции сетевых блочных устройств.
В ОС гостевой машины
iscsi-target
установить консоль управления Linux-IO Target (пакетtargetcli-fb)
:sudo apt install targetcli-fbВойти в консоль управления Linux-IO Target командой:
sudo targetcliВ консоли управления вывести текущую конфигурацию командой:
lsПример вывода после выполнения команды:CODEСоздать (зарегистрировать) блочное устройство
/dev/vdb
в разделе/backstores/block
, присвоив устройству наименование, например,storage01
:/backstores/block create storage01 /dev/vdbПример вывода после выполнения команды:CODEПроверить результат командой
ls
. Пример вывода после выполнения команды:CODEСоздать цель (
target
) в разделе/iscsi
командой:/iscsi createПример вывода после выполнения команды:CODEПроверить результат командой
ls
. Пример вывода после выполнения команды:CODEСоздать LUN на основе блочного устройства, зарегистрированного в разделе
/backstores/block
/iscsi/<идентификатор_цели>/tpg1/luns/ create /backstores/block/<наименование_устройства>где:- <наименование_устройства> – в рассматриваемом примере имеет значение
"storage01"
(см. шаг 14); - <идентификатор_цели> – в рассматриваемом примере имеет значение
"iqn.2003-01.org.linux-iscsi.iscsi-target.x8664:sn.76c72e49ddc1"
(см. шаг 16).
Пример вывода после выполнения команды:
CODE- <наименование_устройства> – в рассматриваемом примере имеет значение
Проверить результат командой
ls
. Пример вывода после выполнения команды:CODE- В рассматриваемом примере контроль доступа не требуется, поэтому его можно отключить:
переместиться на ветку
/iscsi/<идентификатор_цели>/tpg1
:cd /iscsi/<идентификатор_цели>/tpg1где <идентификатор_цели> – в рассматриваемом примере имеет значение"iqn.2003-01.org.linux-iscsi.iscsi-target.x8664:sn.76c72e49ddc1"
(см. шаг 16).В консоли управления нажатие клавиши <Tab> автоматически дополняет текущую команду или путь к ветке дерева конфигурации, если возможен только один вариант.
отключить использования списков управления доступом (ACL) командой:
set attribute generate_node_acls=1Пример вывода после выполнения команды:CODEнастроить работу цели в demo-режиме (без аутентификации, видимым и доступным для всех) командой:
set attribute demo_mode_write_protect=0Пример вывода после выполнения команды:CODE
- Повторить шаги 14 – 20 для блочного устройства
/dev/vdc
(при выполнении действий шага 14 присвоить устройству наименование, например,storage02
). Выполнить сохранение настроек:
/ saveconfigПример вывода после выполнения команды:CODEВыйти из консоли управления:
exit
В консоли управления Linux-IO Target, используемой в ПК СВ версии 3.2, введена система бэкапов конфигурации, и, в связи с этим, после перезагрузки сохраненная конфигурация не загружается автоматически.
На текущий момент после перезагрузки конфигурацию необходимо восстанавливать командой:
sudo targetcli restoreconfig
Пример вывода после выполнения команды:
Для того чтобы автоматизировать восстановление конфигурации, необходимо выполнить действия, описанные ниже.
Создать службу
target
, сформировав unit-файл, например с помощью тестового редактораnano
, для этого выполнить команду:В открывшемся текстовом редакторе добавить следующие строки:sudo nano /lib/systemd/system/target.service
CODEПосле этого сохранить unit-файл и закрыть текстовый редактор.
Перезагрузить список служб командой:
sudo systemctl daemon-reloadДобавить службу
target
в автозагрузку командой:sudo systemctl enable targetПример вывода после выполнения команды:CODEДля проверки следует перезагрузить гостевую машину
iscsi-target
и вывести информацию о состоянии службыtarget
:sudo systemctl status targetПример вывода после выполнения команды:CODE
Действия, описанные в следующих разделах, выполняются в ОС фронтальной машины.
2. Подключение сетевых блочных устройств к ПК СВ (настройка iSCSI-initiator)
Установить пакет
open-iscsi
:sudo apt install open-iscsiВ конфигурационном файле
/etc/iscsi/iscsid.conf
для параметраnode.startup
установить значениеautomatic:
CODEЗапустить службу клиента (iSCSI-initiator):
sudo systemctl start iscsiВыполнить сканирование для поиска целей (iSCSI-target):
sudo iscsiadm -m discovery -t st -p 172.16.1.41где172.16.1.41
– IP-адрес гостевой машиныiscsi-target
.Пример вывода после успешного выполнения команды:
CODEПодключить найденные цели (iSCSI-target):
sudo iscsiadm -m node -lПример вывода после успешного выполнения команды:CODEДля проверки выполнить команду:
sudo lsblkПример вывода после выполнения команды:CODEгде в качестве локальных блочных устройств
sda
иsdb
выступают сетевые блочные устройства, предоставляемые программной СХД (гостевой машинойiscsi-target
).
3. Настройка хранилищ c драйвером FS_LVM
3.1. Особенности использования драйвера FS_LVM
Исходные образы хранятся как обычные файлы, но при создании ВМ они выгружаются в логические тома (LV). Виртуальные машины запускаются из LV на узле виртуализации.
3.2. Создание системного хранилища
- В веб-интерфейсе ПК СВ в меню слева выбрать пункт меню Хранилище — Хранилища и на открывшейся странице Хранилища нажать на кнопку [+], а затем в открывшемся меню выбрать пункт Создать.
- На открывшейся странице Создать хранилище:
- перейти во вкладку Расширенный;
в поле Сохранить шаблон Хранилища здесь ввести следующие строки:
CODE- нажать на кнопку [Создать].
- Дождаться когда на странице Хранилища для созданного хранилища в поле Статус будет установлено значение ON.
В представленном примере системному хранилищуfs_lvm-system
присвоен идентификатор100
.
3.3. Настройка ПК СВ для использования системного хранилища LVM
Инициализировать блочное устройство
sda
для работы с LVM командой:sudo pvcreate /dev/sdaПример вывода после успешного выполнения команды:CODEСоздать группу томов (в представленном примере группа состоит из одного тома):
sudo vgcreate vg-one-100 /dev/sdaгде 100 – идентификатор системного хранилищаfs_lvm-system
.
Пример вывода после успешного выполнения команды:CODE
3.4. Создание хранилища образов
- В веб-интерфейсе ПК СВ в меню слева выбрать пункт меню Хранилище — Хранилища и на открывшейся странице Хранилища нажать на кнопку [+], а затем в открывшемся меню выбрать пункт Создать.
- На открывшейся странице Создать хранилище во вкладке Мастер настройки:
- в поле Название задать наименование хранилища;
- в выпадающем списке Тип хранилища выбрать значение
"FS LVM"
; - установить флаг Образы;
- нажать на кнопку [Создать].
- Дождаться когда на странице Хранилища для созданного хранилища в поле Статус будет установлено значение ON.
В представленном примере хранилищу образовfs_lvm-images
присвоен идентификатор101
.
3.5. Настройка ПК СВ для использования хранилища образов
При использовании драйвера FS_LVM исходные образы ВМ хранятся в виде файлов. В представленном примере хранилище образов размещено в каталоге локальной файловой системы фронтальной машины. Дополнительная настройка не требуется.
3.6. Проверка работы хранилищ с драйвером FS_LVM
Для проверки работы хранилищ с драйвером FS_LVM необходимо выполнить действия, описанные в разделе Проверка работы хранилищ.
Перед выполнением действий, описанных в следующем разделе, необходимо удалить все образы, размещенные в хранилище образов с драйвером FS_LVM. А также удалить само хранилище образов с драйвером FS_LVM (в представленном примере – хранилище
fs_lvm-images
с идентификатором 101 ).
4. Настройка хранилищ c драйвером LVM_LVM
4.1. Особенности использования драйвера LVM_LVM
Драйвер LVM_LVM позволяет организовать и хранилище образов, и системное хранилище в LVM.
4.2. Изменение параметров системного хранилища, созданного ранее
- В веб-интерфейсе ПК СВ в меню слева выбрать пункт меню Хранилище — Хранилища и на открывшейся странице Хранилища выбрать системное хранилище, созданное ранее (см. 3.2. Создание системного хранилища).
- На открывшейся странице Хранилище:
- в секции Информация скорректировать наименование хранилища;
- в секции Атрибуты для параметра
TM_MAD
ввести значение"lvm_lvm"
; - в секции Атрибуты добавить параметр
DRIVER
: - в левом нижнем поле ввести наименование параметра:
"DRIVER"
; - в правом нижнем поле ввести значение параметра:
"raw"
; - нажать на кнопку [+].
- На странице Хранилище нажать на кнопку [Вернуться к списку].
4.3. Настройка ПК СВ для использования системного хранилища LVM
В представленном примере для размещения системного хранилища будет использоваться созданная ранее группа томов (см. 3.3. Настройка ПК СВ для использования системного хранилища LVM ). Дополнительная настройка не требуется.
4.4. Создание хранилища образов LVM
- В веб-интерфейсе ПК СВ в меню слева выбрать пункт меню Хранилище — Хранилища и на открывшейся странице Хранилища нажать на кнопку [+], а затем в открывшемся меню выбрать пункт Создать.
- На открывшейся странице Создать хранилище во вкладке Мастер настройки:
- в поле Название задать наименование хранилища;
- в выпадающем списке Тип хранилища выбрать значение
"LVM LVM"
; - установить флаг Образы;
- нажать на кнопку [Создать].
- Дождаться когда на странице Хранилища для созданного хранилища в поле Статус будет установлено значение ON.
В представленном примере хранилищу образовlvm_lvm-images
присвоен идентификатор102
.
4.5. Настройка ПК СВ для использования хранилища образов LVM
Инициализировать блочное устройство
sdb
для работы с LVM командой:sudo pvcreate /dev/sdbПример вывода после успешного выполнения команды:CODEСоздать группу томов (в представленном примере группа состоит из одного тома):
sudo vgcreate vg-one-102 /dev/sdbгде 102 – идентификатор хранилища образовlvm_lvm-images
.
Пример вывода после успешного выполнения команды:CODE
4.6. Проверка работы хранилищ с драйвером LVM_LVM
Для проверки работы хранилищ с драйвером FS_LVM необходимо выполнить действия, описанные в разделе Проверка работы хранилищ.
5. Настройка хранилищ c драйвером LVM_THIN
5.1. Особенности использования драйвера LVM_THIN
Драйвер LVM_LVM позволяет организовать и хранилище образов, и системное хранилище в LVM. При развертывании ВМ в системном хранилище из образа диска автоматически создается тонкий LVM-том в формате QCOW2. При этом для каждого узла виртуализации системное хранилище организуется индивидуально – для этого необходимо создать отдельный логический том.
В силу ограничений, накладываемых драйвером LVM_THIN,
невозможно перемещать тома между узлами, в том числе и для сохранения в системном хранилище при отмене размещения и остановке ВМ или миграци ВМ.
5.2. Изменение параметров системного хранилища LVM
- В веб-интерфейсе ПК СВ в меню слева выбрать пункт меню Хранилище — Хранилища и на открывшейся странице Хранилища выбрать системное хранилище LVM (см. 4.2. Изменение параметров системного хранилища, созданного ранее).
- На открывшейся странице Хранилище:
- в секции Информация скорректировать наименование хранилища;
- в секции Атрибуты для параметра
TM_MAD
ввести значение"lvm_thin".
- На странице Хранилище нажать на кнопку [Вернуться к списку].
5.3. Настройка ПК СВ для использования системного хранилища LVM_THIN
В представленном примере для размещения системного хранилища будет использоваться созданная ранее группа томов (см. 3.3. Настройка ПК СВ для использования системного хранилища LVM). При этом необходимо выполнить дополнительные настройки, описанные ниже.
Просмотреть перечень групп томов:
sudo vgsПример вывода после выполнения команды:CODEгде:
vg-one-100
– группа томов, предназначенная для размещения системного хранилища;vg-one-102
– группа томов предназначенная для размещения хранилища образов.
Переименовать группу томов, предназначенную для размещения системного хранилища:
sudo vgrename vg-one-100 vg-one-100-<имя_узла_виртуализации>где 100 – идентификатор системного хранилищаlvm_thin
.Пример
В представленном примере служба узла виртуализации и служба фронтальной машины развернуты на одной гостевой машине с сетевым именем
oneserver
. Команда для переименования группы томов:sudo vgrename vg-one-100 vg-one-100-oneserverПример вывода после успешного выполнения команды:
CODEСоздать логический том для размещения "тонких" LVM-томов:
sudo lvcreate -T -L <размер>G vg-one-100-<имя_узла_виртуализации>/onethinpoolгде<размер>
– размер "тонкого" LVM-тома в ГБ, должен быть не больше размера локального блочного устройства (в представленном примере —/dev/sda
).Пример
sudo lvcreate -T -L 20G vg-one-100-oneserver/onethinpoolПример вывода после успешного выполнения команды:
CODE
5.4. Изменение параметров хранилища образов LVM, созданного ранее
- В веб-интерфейсе ПК СВ в меню слева выбрать пункт меню Хранилище — Хранилища и на открывшейся странице Хранилища выбрать системное хранилище, созданное ранее (см. 4.4. Создание хранилища образов LVM).
- На открывшейся странице Хранилище:
- в секции Информация скорректировать наименование хранилища;
- в секции Атрибуты:
- для параметра
DS_MAD
ввести значение"lvm_thin";
- для параметра
TM_MAD
ввести значение"lvm_thin"
- для параметра
DRIVER
ввести значение"qcow2"
.
- для параметра
- На странице Хранилище нажать на кнопку [Вернуться к списку].
5.5. Настройка ПК СВ для использования хранилища образов LVM
В представленном примере для размещения хранилища образов будет использоваться созданная ранее группа томов (см. 4.5. Настройка ПК СВ для использования хранилища образов LVM). Дополнительная настройка не требуется.
5.6. Проверка работы хранилищ с драйвером LVM_THIN
Для проверки работы хранилищ с драйвером FS_THIN необходимо выполнить действия, описанные в разделе Проверка работы хранилищ.
Кроме того, можно запустить ВМ, подготовленную в ходе проверки работы хранилищ с драйвером FS_LVM.
6. Проверка работы хранилищ
Для проверки работы созданных хранилищ можно выполнить действия по развертыванию ВМ. Для этого:
- выполнить загрузку образа установочного носителя в хранилище образов – см. Загрузка установочного носителя в хранилище;
- создать образ диска виртуальной машины в хранилище образов – см. Создание диска ВМ (пустого) в хранилище;
- подготовить предварительный шаблон ВМ и выполнить установку ОС – см. Настройка шаблона для тиражирования ВМ;
- при необходимости в ОС виртуальной машины можно подключить интернет-репозитории (см. Настройка репозиториев в ВМ), установить пакет
one-context
и настроить шаблон ВМ для тиражирования (см. Настройка шаблона для тиражирования ВМ).
- Оглавление
- Описание тестовой среды
- 1. Создание и настройка программной СХД (iSCSI-target)
- 2. Подключение сетевых блочных устройств к ПК СВ (настройка iSCSI-initiator)
- 3. Настройка хранилищ c драйвером FS_LVM
- 4. Настройка хранилищ c драйвером LVM_LVM
- 4.1. Особенности использования драйвера LVM_LVM
- 4.2. Изменение параметров системного хранилища, созданного ранее
- 4.3. Настройка ПК СВ для использования системного хранилища LVM
- 4.4. Создание хранилища образов LVM
- 4.5. Настройка ПК СВ для использования хранилища образов LVM
- 4.6. Проверка работы хранилищ с драйвером LVM_LVM
- 5. Настройка хранилищ c драйвером LVM_THIN
- 5.1. Особенности использования драйвера LVM_THIN
- 5.2. Изменение параметров системного хранилища LVM
- 5.3. Настройка ПК СВ для использования системного хранилища LVM_THIN
- 5.4. Изменение параметров хранилища образов LVM, созданного ранее
- 5.5. Настройка ПК СВ для использования хранилища образов LVM
- 5.6. Проверка работы хранилищ с драйвером LVM_THIN
- 6. Проверка работы хранилищ