Управление локальным общим хранилищем

В основу платформы виртуализации OpenStack заложен принцип предоставления референсной абстрактной модели IaaS. Все компоненты платформы построены по этому принципу и, если один из компонентов имеет возможность не выполнять какие-либо действия, то он не будет ничего выполнять фактически, кроме предоставления API. Все рабочие механизмы реализуются через плагины к модулям платформы, и реальная работа с инфраструктурой, в частности, организация сетевых тоннелей или подключение диска виртуальной машины, реализовываются подключаемыми драйверами и расширениями, которые создаются, как правило, различными вендорами. Это приводит к следующим последствиям:

  • скрытие механизмов работы за драйверами и расширениями модулей;
  • отсутствие гибкости в случае мультивендорной инфраструктуры;
  • необоснованное программное переусложнение модулей;
  • конфликты плагинов к модулям, например, невозможно завести под один Cinder backend СХД EMC и NetApp;
  • серьезная потеря гибкости и функциональности в угоду универсальности интерфейсов.

Реализованная в рамках CloudManager утилита для работы с локальным общим хранилищем позволяет:

  • получить абстракцию от вендорских СХД;
  • объединять СХД разных вендоров в один общий Cinder backend;
  • выводить вендорские СХД в режим обслуживания без прерывания сервиса для клиентов платформы виртуализации;
  • избавиться от проблем вендорских драйверов, связанных с их недоработкой.