Общие сведения#
В ПВ для развертывания ВМ используется два основных типа хранилища данных:
хранилище образов (Images Datastore) — предназначено для хранения всех зарегистрированных образов, которые могут использоваться для создания ВМ. В качестве таких образов могут выступать:
образ операционной системы (образ загрузочного диска),
CD-ROM — файл в формате ISO, содержащий образ оптического диска. Такие образы предназначены только для чтения,
общий блок данных — образ диска, на котором могут быть размещены любые данные, необходимые пользователю;
системное хранилище (System Datastore) — используется для размещения образов дисков созданных ВМ. Эти образы могут быть полными копиями исходного образа, дельтами или символическими ссылками на исходный образ, в зависимости от используемой технологии хранения. При использовании файловой технологии хранения в системном хранилище размещаются служебные файлы ВМ, создаваемые при формировании снимка состояния этой ВМ.
Кроме того, отдельно выделяют хранилище файлов (Files & Kernels Datastore), которое используется для хранения обычных файлов. Такими файлами могут быть быть резервные копии виртуальных машин или контекстные файлы. Например, в хранилище файлов можно поместить определенный init-скрипт и указать его в контекстуализации для ВМ. Этот файл будет размещен на контекстном CD-ROM, доступном в ОС этой ВМ. Таким образом можно настроить выполнение указанного init-скрипта при загрузке ОС виртуальной машины.
При размещении в хранилище образов каждому образу диска необходимо присвоить атрибут постоянный или непостоянный:
постоянный (persistent) — диск постоянного хранения данных. Изменения, внесенные в такой образ диска, будут сохранены после удаления ВМ или отсоединения его от ВМ. В любой момент времени может быть только одна ВМ, использующая постоянный образ;
непостоянный (non-persistent) — диск непостоянного хранения данных. Изменения не сохранятся после удаления ВМ или отсоединения этого образа диска от ВМ. Непостоянные образы могут использоваться несколькими ВМ одновременно, поскольку каждая из них будет работать со своей собственной копией.
Особенности использования постоянных и непостоянных образов диска, в том числе порядок формирования снимков состояния диска, зависит от используемой технологии хранения. И представлены в разделах, описывающих особенности методов передачи данных между хранилищем образов и системным хранилищем для каждой технологии хранения.
Для построения хранилища данных используются следующие базовые технологии хранения:
Filesystem
— файловая технология хранения;
Предупреждение
Сетевая файловая система (Network File System — NFS) не поддерживает файловые атрибуты безопасности, поэтому использование данной ФС при построении облачного хранилища, функционирующего в мандатном контексте, недопустимо.
LVM
— блочная технология хранения с использованием LVM (logical volume manager — менеджер логических томов);Ceph
— программно-определяемая технология хранения Ceph;Raw Device Mapping
— прямое подключение к ВМ существующих блочных устройств, используется только для организации хранилища образов;iSCSI-Libvirt
— прямое подключение к ВМ существующих устройствiSCSI
, используется только для организации хранилища образов.
Базовые технологии хранения (параметр DS_MAD
) и соответствующие им методы передачи данных между хранилищем образов и системным хранилищем (параметр TM_MAD
) представлены в таблице:
Базовая технология хранения |
Значение параметра DS_MAD |
Значение параметра TM_MAD |
Описание метода передачи данных (драйвера) |
---|---|---|---|
Файловая технология хранения |
fs |
ssh |
Образы копируются с помощью ssh-протокола |
shared |
Образы экспортируются в соответствующий каталог системного хранилища на сервере виртуализации |
||
qcow2 |
Аналогично shared, но для образов формата qcow2. Образы создаются и передаются с помощью команды qemu-img с использованием оригинального образа в качестве опорного файла |
||
Блочная технология хранения с использованием LVM |
fs |
fs_lvm |
Образы хранятся как обычные файлы, при создании ВМ они выгружаются в логические тома (LV) |
lvm |
lvm_lvm |
При загрузке образа диска ВМ в хранилище образов автоматически создается LVM-том, в который записывается загружаемый образ в формате raw. При развертывании ВМ в системном хранилище автоматически создается копия LVM-тома из хранилища образов |
|
lvm_thin |
lvm_thin |
При загрузке образа диска ВМ в хранилище образов автоматически создается LVM-том, в который пишется загружаемый образ в формате raw. При развертывании ВМ в системном хранилище из образа диска автоматически создается тонкий LVM-том в формате qcow2 |
|
Ceph |
ceph |
ceph |
Все образы экспортируются в Ceph-пулы |
Raw Device Mapping |
dev |
dev |
Прямое подключение к ВМ существующих блочных устройств, используется только для организации хранилища образов |
Тип хранилища определяется параметром TYPE
, который может принимать следующие значения:
IMAGE_DS
— для хранилища образов;SYSTEM_DS
— для системного хранилища;FILE_DS
— для хранилища файлов.
Кроме того, для хранилищ можно дополнительно определить значения параметров, представленных в таблице:
Параметр |
Описание |
---|---|
RESTRICTED_DIRS |
Перечень каталогов, разделенных символом пробела, в которых запрещается размещать образы. По умолчанию имеет значение «/» — корневой каталог. Перечень каталогов, разделенных символом пробела, в которых запрещается размещать образы. По умолчанию имеет значение «/» — корневой каталог |
SAFE_DIRS |
Перечень каталогов, разделенных символом пробела, в которых разрешается размещать образы. Используется, если необходимо разместить образ в дочернем каталоге «запрещенного» каталога. По умолчанию имеет значение |
NO_DECOMPRESS |
Если имеет значение «yes», то перед размещением в хранилище файл не будет распакован, если он был предварительно архивирован или сжат |
LIMIT_TRANSFER_BW |
Максимальная скорость (байтов в секунду) загрузки файла из URL-источника. Возможно использование суффиксов K, M или G |
DATASTORE_CAPACITY_CHECK |
Если имеет значение «yes», то перед созданием нового образа будет проведена проверка наличия свободного дискового ресурса |
LIMIT_MB |
Разрешенный максимальный размер хранилища (Мбайт) |
DRIVER |
Формат файла образа диска (RAW или Qcow2) |
COMPATIBLE_SYS_DS |
Используется только для хранилищ образов. Перечень идентификаторов системных хранилищ, разделенных запятой, с которыми совместимо и может быть использовано хранилище образов (например, «0,100») |
По умолчанию после инициализации сервисов ПВ облачные хранилища настроены на использование локальной файловой системы (каталоги /var/lib/one/datastores/<идентификатор_хранилища>
). При этом в качестве метода передачи данных между хранилищем образов и системным хранилищем установлен ssh.
Идентификаторы и наименования облачных хранилищ, созданных по умолчанию во время инициализации сервисов ПВ, приведены в таблице:
Идентификатор |
Наименование |
Описание |
---|---|---|
|
|
системное хранилище |
|
|
хранилище образов |
|
|
хранилище файлов и ядер |
Примечание
Стандартный путь для хранилищ /var/lib/one/datastores
можно изменить в конфигурационном файле /etc/one/oned.conf
через параметр настройки DATASTORE_LOCATION
.