ProCloud Yandex
17.08.2023
читать 8 минут

Особенности планирования СХД для платформы OpenStack

/upload/iblock/5b0/vvpmyrwyvdnw32nejdcrr1zny7miha4a/Exploring-The-World-of-Literature-at-the-Library_%281%29.jpg

Во время проектировки инфраструктуры для публичного или корпоративного облака, основанного на базе OpenStack непременно возникает вопрос выбора системы хранения данных (СХД)? В этом обзоре мы рассмотрим несколько возможных вариантов создания СХД.

Зачем нам СХД?

Современные системы хранения данных обходятся многим крупным компаниям очень дорого. Несмотря на постепенное удешевление услуг по хранению, объем данных увеличивается в геометрической прогрессии.

Для обеспечения растущего спроса в будущем необходимы кардинальные изменения в ИТ, такие как новые технологии автоматизации и расширение облачных решений. Платформа OpenStack, известная своей растущей популярностью, предоставляет возможность создания программно-управляемого ЦОД и стоит в авангарде облачных технологий. Она позволяет:

  • выделять необходимые виртуальные ресурсы “on-demand” через web-интерфейс;
  • динамично масштабировать приложения с ростом нагрузки;
  • ускорять процесс развертывания приложений;
  • предлагать пользователям оптимизированные и разнообразные методы хранения данных;
  • в итоге, существенно уменьшать ИТ-расходы.

СХД в OpenStack

OpenStack реализует хранение информации в различных сервисах, таких как:

  • Glance – отвечает за хранение образов;
  • Nova – эфемерные диски;
  • Cinder – блочные хранилища;
  • Swift – объектное хранилище;
  • Manila – предоставляет согласованный доступ к распределенным файловым системам.

Все гостевые операционные системы применяют специальную блочную системы, которая позволяет расположить файловые системы. Таким образом образуется “эфемерное” и надежное хранение важной информации. Подобные диски продолжают функционировать, пока работает виртуальная машина. То есть при удалении VM удаляется и диск. Данные диски можно назвать коренными, так как они хранят информацию об операционной системе и дисках для подкачки.

Все гостевые операционные системы опираются на блочные устройства для хранения своих файловых систем. Различают "эфемерное" и постоянное хранение данных.

"Эфемерные" диски существуют столько, сколько существует соответствующая ВМ. Обычно это корневые диски с ОС. В сервисе Nova не предусмотрено постоянное хранение. Диски, связанные с ВМ пропадают вместе с удалением самой машины. В то время как постоянные блочные устройства сохраняются даже после удаления ВМ и могут быть переподключены к другим машинам неограниченное количество раз при необходимости. Ниже приведена сравнительная таблица самых популярных сервисов OpenStack, отвечающих за хранение.

Nova Swift Cinder Manila
Запуск ОС Используется для эффективного, безопасного и недорогого хранения больших объемов неструктурированных данных Постоянные диски Предоставляет согласованный доступ к распределенным файловым системам
Удаляется вместе с ВМ Создается и удаляется независимо от ВМ Создается и удаляется независимо от ВМ Создается и удаляется независимо от ВМ
Доступ к данным осуществляется через ВМ Доступ через web-интерфейс или по сети Доступ к данным осуществляется через ВМ Доступ к данным осуществляется через ВМ

Возможные сценарии

Nova: Локальная файловая система

Такая архитектура предполагает использование локальной ФС на гипервизорах с целью создания и хранения эфемерных дисков виртуальных машин. Этот подход обладает рядом преимуществ, например, обеспечивает локализацию операций ввода/вывода, высокие показатели масштабирования и возможность использования Copy on Write клонов. Очевидным недостатком подхода является факт, что при недоступности гипервизора не будет возможности запустить копию виртуальной машины на другом гипервизоре, так как диски находятся локально и недоступны для других хостов.

Так как этот метод не предполагает инвестирования в отдельную СХД, это один из наиболее экономичных способов размещения VM дисков в OpenStack.

Такой тип СХД идеально подходит для виртуальных машин, работающих с дистрибутивными облачными приложениями, у которых отказоустойчивость зависит от приложения, а не инфраструктуры. Он также подходит для временных лабораторных стендов и сред разработки. Основное применение этого способа хранения - это запуск множества однотипных VM в больших количествах.

Распределенное хранилище Ceph

Достаточно распространенным методом создания СХД для платформы OpenStack является распределенное хранилище Ceph. Данное хранилище сберегает информацию в формате объектов на дисках локальных серверов. Главным преимуществом Ceph считается отказоустойчивость, которая стала возможной благодаря избыточности хранения. Стоит отметить, что уровень отказоустойчивости можно настроить. Он может достигать до 3 копий для всех объектов, распределенных по нескольким серверам. Помимо отказоустойчивости Ceph выделяется высоким уровнем масштабирования. Однако взамен налаживаются достаточно строгие требования пропускной способности сети, а также требования к процессору. Другие компоненты OpenStack, такие как Nova, Glance и Cinder, интегрированы с Ceph, позволяя его использовать как для эфемерных, так и для постоянных дисков.

Гибкие механизмы интеграции с большим количеством промышленных СХД может предоставить Cinder. При получении команды на создание диска, OpenStack начинает выполнять необходимые действия на СХД с помощью API интеграций. Таким образом создается блочное устройство на стороне системы хранения. Так, OpenStack функционирует как высокоуровневый интерфейс между базовыми компонентами системы и конечным пользователем. Несмотря на разнообразие поддерживаемых систем хранения данных, для пользователя все действия выглядят стандартизированными. Всю техническую сложность интеграции OpenStack успешно скрывает от пользователя.

Swift: Объектное хранилище

Для хранения объектов юзеров, таких как резервные копии и файлы, можно использовать объектное хранилище Swift. Данный способ выделяется таким же уровнем отказоустойчивости, как в Ceph, что стало возможным благодаря копиям информации, которые располагаются на разных серверах. Начальная конфигурация применяет локальные файловые системы нод хранения. Стандартная настройка предполагает использование локальных файловых систем на узлах хранения. Также есть возможность интеграции с Glance, позволяя сохранять образы виртуальных машин в Swift.

Выводы

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

Новости
5 апреля 202405.04.2024
читать 1 минутучитать 1 мин
ProCloud CPO Диана Беда в рейтинге ИТ-лидеров от Global CIO
28 марта 202428.03.2024
читать 1 минутучитать 1 мин
Запуск новой локации: Казахстан
6 марта 202406.03.2024
читать 1 минутучитать 1 мин
ProCloud №1 в Рейтинге облачных провайдеров 2023