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

1.1.1 Обозначение и наименование

Программное обеспечение для облачной платформы – «Облачная платформа ТИОНИКС» (англ. Tionix Cloud Platform). Далее может применяться сокращенный термин – платформа ТИОНИКС или ОП TIONIX.

1.1.2 Назначение ПО

ПО «Облачная платформа ТИОНИКС» предназначено для создания инфраструктурных облачных сервисов и облачных хранилищ, с применением компонентов технологического программного обеспечения с открытым исходным кодом (Open Sourсe).

Модель предоставления инфраструктуры – IaaS – означает, что контроль со стороны поставщика услуги (облачного оператора) за устанавливаемым внутри облака программным обеспечением не предусмотрен. Контролируется только физическая и виртуальная составляющие инфраструктуры: управляющие и вычислительные узлы (УУ и ВУ), а также – сеть.

На базе облачной платформы может быть организована услуга «Виртуальный ЦОД» (VDC) – предоставление виртуализированных ресурсов ЦОД для конечных потребителей IT-услуг.

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

Использование технологии виртуализации и ПО «Виртуальные рабочие столы ТИОНИКС» для развертывания VDI-решений позволяет оптимизировать управление IT-инфраструктурой, связанное с многочисленными задачами системного администрирования в корпоративной среде.

1.1.3 Основные функциональные возможности

Виртуальный дата-центр, организованный с применением ОП TIONIX, позволяет организовать объекты, составляющие основу систем виртуализации, в единое целое – облачную инфраструктуру.

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

  1. Сетевое взаимодействие (NETWORK).
  2. Хранение данных (STORAGE).
  3. Вычислительные мощности (COMPUTE).
  4. Кластер управления (CONTROL).

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

Платформа ТИОНИКС включает в себя проприетарные программные модули, которые обеспечивают:

  • управление и контроль УУ и ВУ;
  • безопасный доступ к облачным ресурсам (виртуальным машинам);
  • создание и управление средой виртуализации рабочих столов.

Используя компоненты и инструментарий OpenStack [1], настраиваются инфраструктурные процессы, обеспечивающие идентификацию, аутентификацию, оркестрацию. Прямое влияние инструментов OpenStack на бизнес-логику облачных приложений исключено, не считая изменений в организации сетевого взаимодействия между объектами инфраструктуры.

Интерфейс пользователя и администратора облачной инфраструктуры доступен через веб-браузер, установленный на ПК или ТК.

Администратор или пользователь может использовать веб-доступ к виртуальным машинам, используя консоль. Кроме того, для пользователя ОП могут быть доступны виртуальные рабочие столы (VDI). Доступ контролируется посредством брокера, проверяющего реквизиты доступа перед тем, как разрешить удаленное подключение с применением поддерживаемого терминального протокола.

Для настольных виртуальных машин поддерживается автоматизация входа в AD. Это позволяет администраторам использовать групповые политики для обеспечения единообразия настройки пользовательской рабочей среды.

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

1.1.4 Используемые технологии

В основе функциональности ОП ТИОНИКС лежит технология OpenStack – комплекс проектов свободного ПО, предоставляющих архитектурно полную модель функционально-интегрированных компонентов [2]. Программное обеспечение OpenStack свободно используется для создания, развертывания и масштабирования безопасных и устойчивых публичных или частных облаков. В качестве среды функционирования могут быть использованы различные дистрибутивы Linux [3] .

Большинство используемого при построении облачной инфраструктуры ПО интегрируется через библиотеки поддержки языка Python [4] на общесистемном уровне. Фактически, исполнительная система языка Python представляет собой технологию распределения рантайма на множество узлов.

Практически все службы OpenStack для хранения служебной информации используют реляционные базы данных. В качестве СУБД, поддерживающих SQL, могут использоваться широко распространенные OpenSource-проекты, однако в рамках текущей реализации VDC и референсной архитектуры используется MySQL или кластеризуемая MariaDb [5].

Работа модуля OpenStack Horizon (Dashboard), позволяющего контролировать выделение и распределение ресурсов и выполнять операции по управлению облачной инфраструктурой, основана на использовании веб-фреймворка Django [6].

Архитектура OpenStack спроектирована таким образом, чтобы доступное физическое оборудование могло быть включено в платформу частного, публичного или гибридного облака, которое включает в себя:

  • постоянное хранилище блочного уровня (Block-level Storage);
  • ядро развертывания виртуальных машин и хранилище образов (Image Storage);
  • механизмы аутентификации и авторизации (Identification);
  • интегрированную сеть (Networking);
  • распределенное объектное хранилище (Object Storage).

NETWORK

Для распределения потоков обмена информацией по сетевым каналам используется открытая технология программно-определяемых сетей – коммутатор Open vSwitch [7] (далее – OVS). Коммутатор VLAN (Virtual Local Area Network), построенный на основе этой технологии, является логической структурой и может быть гибко подстроен под любое архитектурное решение. Интеграция ПО коммутатора OVS и OpenStack образуют единую, гибко модифицируемую интегрированную сеть.

STORAGE

Сетевой доступ к системам хранения данных осуществляется с помощью семейства драйверов (Tionix Storage Driver):

  • драйвер Cinder: предоставляет возможность для работы с блочными устройствами Cinder на общем хранилище LVM без использования iSCSI;
  • драйвер ML2: инфраструктура, позволяющая OpenStack Networking использовать множество сетевых технологий 2-го уровня, не зависящих от поставщика.

ML2 упрощает добавление поддержки новых сетевых технологий (2-го уровня) и обеспечивает динамическое предоставление VLAN/VXLAN на коммутаторах в среде OpenStack.

COMPUTE

Для распределения вычислительных ресурсов на уровне отдельных узлов используется виртуальная машина на основе ядра (KVM) (гипервизор), а также libvirt API [8]. Гипервизор тесно интегрирован с коммутатором Open vSwitch, что позволяет строить изолированные каналы управления виртуализацией, на которые не могут повлиять бизнес-приложения, развертываемые в инфраструктуре (IaaS-типа).

CONTROL

Сбой сервера управления (управляющий узел/контроллер) приведёт к тому, что поддерживаемые им приложения или сетевые сервисы будут недоступны до восстановления его работоспособности, выполняемого системным администратором или инженером.

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

Сноски

[1]https://ru.wikipedia.org/wiki/OpenStack
[2]https://docs.openstack.org/contributors/common/introduction.html
[3]https://ru.wikipedia.org/wiki/Linux
[4]https://www.python.org
[5]https://dev.mysql.com/doc/, https://mariadb.com/docs/reference/
[6]https://ru.wikipedia.org/wiki/Django
[7]https://ru.wikipedia.org/wiki/Open_vSwitch, https://ru.wikipedia.org/wiki/VLAN
[8]https://ru.wikipedia.org/wiki/KVM
[9]https://ru.wikipedia.org/wiki/Libvirt