Хранилище

Описание хранилища

Система хранения данных

Система хранилищ в облаке SIM-Cloud построена из программно-определяемых хранилищ (Software-defined storage, SDS). Наилучшим для задач SIMCloud, стало решение на базе Ceph.

alternate text

Ceph – это объектная сеть хранения с блочным и файловым доступом, она управляется свободным программным обеспечением с открытым исходным кодом.

Распределенная файловая система Ceph обеспечивает возможности:

  • репликации (хранения запасных дубликатов каждого блока данных в разных узлах сети);
  • распределения рабочей нагрузки между узлами;
  • создания дубликатов блоков данных (взамен недоступных) на других узлах, в случае отказа диска, узла или группы узлов;
  • перебалансировки массивов данных при удалении (отказе) узлов или добавлении новых в сеть (восстановлении);
  • увеличения производительности за счет кеширования (переноса самых востребованных данных и журналов файловой системы на самые быстрые диски).
../_images/CEPH.png

Все это гарантирует высокую доступность и надёжность системы хранения данных.

Типы хранилищ

В SIM-Cloud доступны 2 типа хранилищ (cs1 и gs1)

gs1 – основное хранилище (general storage), универсальное хранилище; применяется для большинства сервисов, также подойдет для высоконагруженных приложений с интенсивным обменом данных.

cs1 – хранилище (cold storage), предназначенное для решения задач с низкой нагрузкой.

Производительность хранилищ

Для удобства сравнения хранилищ, мы разместили их качественные характеристики в табличном виде:

Storage type Bandwith IOPS Volume Size
cs1 200MB/s 750/s 1GB до 2000GB
gs1 300MB/s 10000/s 1GB до 2000GB
  • Пропускная способность - «Bandwith»;
  • Количество операций ввода-вывода - «IOPS»;
  • Объем - «Volume Size».

Как видно из таблицы, хранилище gs1 имеет более высокую пропускную способность и значительно превосходит хранилище cs1 по количеству операций ввода-вывода, что делает его востребованнным для высоконагруженных систем с интенсивным обменом данных.

Отказоустойчивость

Все данные в системе хранения SIM-Cloud реплицируются с фактором x2 (каждый идентичный блок данных находится на двух различных физических узлах, размещённых в двух разных стойках в ДЦ).

Каждому проекту назначается определенная квота на хранилище типа cs1 или gs1. Объем необходимой квоты определяет владелец проекта. Дополнительно пользователь может увеличить объем хранилища.

В пределах доступной квоты хранилища того или инного типа, пользователь проекта может создавать тома (volumes), а на их основе создавать и запускать инстансы.

Примечание

Обратите внимание, что в документации не использовать термин «диск» как физическое устройство (hard disk), а вместо этого применяем более точные определения - «хранилище» или «том» в зависимости от контекста. Прежде всего это связано с тем, что основные качественные характеристики физического диска (пропускная способность, IOPS) отличаются от характеристик тома в понимании сервиса openstack. Кроме того, понятие «том» или «хранилище» уже подразумевает использование избыточности, за счет которой достигается отказойстойчивость и надежность блочного устройства хранения данных.

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

Описание томов

Том - это блочное устройство, созданное на базе хранилища cs1 или gs1. В зависимости от хранилища, в котором стоздаются блочные устройства, тома наследуют их показатели производительности. Это значит, что том, созданный в хранилище cs1, будет иметь следующие характериситики: пропускная способность: 200MB/s, количество операций ввода-вывода - 750 IOPS, а том, созданный в хранилище gs1, будет иметь пропускную способность: 300MB/s, количество операций ввода-вывода - 10000 IOPS.

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

Пользователь может создать как загрузочный (системный) том, с которого в дальнейшем будет запускаться инстанс, так и «чистый»том - пустой том, который не содержит файловой системы или таблицы разделов. «Пустой» том можно подключить к инстансу в качестве дополнительного.

Доступные операции с томами

Пользователю проекта доступны следующие операции с томами:

  • Создание тома
  • Редактирование тома
  • Подключение тома к инстансу
  • Отключение тома
  • Удаление тома
  • Расширение тома
  • Изменение типа тома
  • Трансфер тома
  • Создание снапшота тома
  • Удаление снапшота
  • Создание образа из снапшота

Более предметно ознакомиться с вышеперечисленными операциями с томами Вы можете в нашей статье.