Общие сведения

Общие сведения#

В ПВ для развертывания ВМ используется два типа облачного хранилища данных:

  • хранилище образов (Images Datastore) — предназначено для хранения всех зарегистрированных образов, которые могут использоваться для создания ВМ или хранения пользовательских данных;

  • системное хранилище (System Datastore) — используется для хранения дисков виртуальных машин, работающих в текущий момент.

Кроме того, отдельно выделяют хранилище файлов и ядер (Files & Kernels Datastore), которое используется для хранения обычных файлов. Такими файлами могут быть ядра виртуальных машин (kernels), временные диски (ramdisks) или контекстные файлы. Например, в хранилище файлов и ядер можно поместить определенный инит-скрипт и указать его в контекстуализации для ВМ. Тогда при загрузке ОС этой ВМ будет выполняться указанный инит-скрипт. Для передачи файлов из хранилища файлов в runtime-директорию ВМ используется метод передачи ssh (устанавливается по умолчанию).

Упрощенная схема взаимодействия облачных хранилищ данных:

../../../../_images/datastore_links.jpg

В зависимости от назначения выделяют два типа образов:

  • непостоянный образ, предназначен для создания системного диска ВМ. При создании ВМ такой образ, условно говоря, «копируется» из хранилища образов в системное хранилище. После удаления ВМ «копия» образа в системном хранилище также удаляется;

  • постоянный образ, предназначен для хранения пользовательских данных (БД, файловый репозиторий и т.д.). При создании ВМ такой образ, условно говоря, «перемещается» из хранилища образов в системное хранилище. После удаления ВМ постоянный образ «перемещается» обратно в хранилище образов. Таким образом, изменения, внесенные во время работы ВМ, будут сохранены.

Образы дисков передаются (копируются и перемещаются) между хранилищем образов и системным хранилищем с помощью драйверов программного обеспечения (ПО) Transfer Manager (TM). Эти драйверы представляют собой специальные элементы ПО, которые выполняют низкоуровневые операции хранения. Для построения облачного хранилища данных используются следующие базовые технологии хранения:

  • Filesystem — файловая технология хранения;

Предупреждение

Сетевая файловая система (Network File System — NFS) не поддерживает файловые атрибуты безопасности, поэтому использование данной ФС при построении облачного хранилища, функционирующего в мандатном контексте, недопустимо.

  • LVM — блочная технология хранения с использованием LVM (logical volume manager — менеджер логических томов);

  • Ceph — программно-определяемая технология хранения Ceph;

  • Raw Device Mapping — прямое подключение к ВМ существующих блочных устройств, используется только для организации хранилища образов;

  • iSCSI-Libvirt — прямое подключение к ВМ существующих устройств iSCSI, используется только для организации хранилища образов.

Описание доступных методов передачи данных (драйверов) для используемых базовых технологий хранения приведено в таблице:

Технологии хранения

Методы передачи данных между хранилищем образов и системным хранилищем

Filesystem

ssh — образы копируются с помощью ssh-протокола; shared — образы экспортируются в соответствующий каталог системного хранилища на узле виртуализации; qcow2 — аналогично shared, но для образов формата qcow2. Образы создаются и передаются с помощью команды qemu-img с использованием оригинального образа в качестве опорного файла

Ceph

ceph — все образы экспортируются в Ceph-пулы; ssh — rbd-файл, ассоциируемый с образом, экспортируется в файл локальной файловой системы узла виртуализации

LVM

fs_lvm — образы хранятся как обычные файлы, при создании ВМ они выгружаются в логические тома (LV); lvm_lvm — создаются отдельные группы LVM-томов для хранилища образов и системного хранилища; lvm_thin — создаются отдельные группы LVM-томов для хранилища образов и системного хранилища, но системное хранилище организуется индивидуально для каждого узла виртуализации

Raw Devices

dev — образы представляют собой существующие блочные устройства в узлах

iSCSI libvirt

iscsi — образы представляют собой компоненты iSCSI target

По умолчанию после инициализации сервисов ПВ облачные хранилища настроены на использование локальной файловой системы (каталоги /var/lib/one/datastores/<идентификатор_хранилища>). При этом в качестве метода передачи данных между хранилищем образов и системным хранилищем установлен ssh.

Идентификаторы и наименования облачных хранилищ, созданных по умолчанию во время инициализации сервисов ПВ, приведены в таблице:

Идентификатор

Наименование

Описание

0

system

системное хранилище

1

default

хранилище образов

2

files

хранилище файлов и ядер

Примечание

Стандартный путь для хранилищ /var/lib/one/datastores можно изменить в конфигурационном файле /etc/one/oned.conf через параметр настройки DATASTORE_LOCATION.