1. Архитектура сервиса

Версия 7.1 от Ирина Сафонова на 08.02.2024, 01:30

Слои сервиса


Физический слой

В слое организована сетевая связность базовых физических элементов (серверов).

Кластерный слой

В слое работают службы обеспечения программно-определяемых слоев:

  • SDS (Software Defined Storage),
  • SDN (Software Defined Networking),
  • SDC (Software Defined Computing).

Главная задача слоя — обеспечение резервирования элементов инфраструктуры до узлов. Резервирование элементов инфраструктуры (Failover) — процедура резервирования при аварийных ситуациях. Процедура проводится кластерным фреймворком, поэтому не требует вмешательства человека.

Слой формируется в виде работы кластерного ПО на каждом из узлов.

SDS

Слой SDC работает на базе гипервизора второго типа (bhyve). Производительность bhyve выше, чем у других популярных гипервизоров. Оптимизация bhyve до сих пор продолжается. Средства аппаратного ускорения виртуальных вычислений поддерживаются на современных процессорах Intel. Гипервизор bhyve поддерживает работу в условиях CPU overcommit.

Экземпляр SDC — виртуальная машина (ВМ), являющаяся совокупной сущностью трех элементов:

  • CPU/RAM,
  • Виртуальные сетевые порты, подключенные к слою SDN.
  • Виртуальные дисковые устройства, подключенные к слою SDS.

1707342322756-453.png

В каталоге для ВМ доступно три образа гостевых ОС:

  • FreeBSD,
  • Linux (OEL/CentOS/Ubuntu/Debian и т.д.),
  • Windows 2016, 2019, 2022.

Работоспособность решения beecloud stack с другими гостевыми ОС не исключается из-за небольших требований к ним. Примеры требований:

  • загрузка в режиме UEFI,
  • наличие драйверов virtio,
  • наличие cloud-init.

Диски ВМ создаются на том же пуле, на котором была создана эта ВМ. В процессе создания ВМ существуют следующие возможности выбора пула, ресурсы которого будут использоваться:

  • Селекторы — автоматический выбор пула, на котором наименьшее совокупное значение таких параметров, как:
    • CPU,
    • RAM,
    • дисковое пространство.
  • Явное указание пула.

Легковесность beecloud stack — основная причина низкого значения Overhead (снижение производительности виртуальной машины относительно физического сервера вследствие значимости накладных расходов гипервизора).

SDS

На основе ресурсных примитивов из кластерного слоя формируется слой хранения (SDS). Технологической основой SDS является ZFS – файловая система, объединенная с менеджером логических томов, которая также обладает совокупностью уникальных свойств. Единица грануляции слоя SDS – пул, собранный из дисков каждого узла c избыточностью равной избыточности кластера (N+ 2). В момент времени пул работает на конкретном узле кластера.

Возможности слоя хранения:

  • компрессия и дедупликация;
  • внутренняя целостность данных;
  • клоны, снимки;
  • самовосстановление данных;
  • транзакционная целостность.

На схеме ниже изображен пятиузловой кластер. Вертикальные контейнеры — пулы, горизонтальные — узлы кластера.

В случае выхода из строя узла за счет механизма fencing (процесс исключения узла из кластера) узел, на котором возникла проблема, будет исключен из кластера, а все пулы потеряют по одному диску. При этом кластер автоматически выполнит процедуру аварийного переключения (failover) ресурсов данного узла, и пул, работавший на узле, вышедшем из строя, станет доступен на другом узле. Все ВМ продолжат свою работу на другом узле.

1707342322778-969.png

Рисунок 3. Пятиузловый кластер

  1. Слой сети – SDN

Beecloud stack предоставляет три варианта технологического обеспечения виртуальных сетей:

  • VLAN;
  • VxLAN;
  • GENEVE (собственная имплементация).

При создании новой виртуальной сети на каждом из Узлов Кластера создается программно-определяемый коммутатор.

1707342322789-137.png

РИСУНОК 4. SDN – SOFTWARE DEFINED NETWORKING

Каждый экземпляр сети имеет следующие свойства:

  • собственный MTU;
  • поддержка Jumbo Frames;
  • поддержка TSO/GSO;
  • поддержка TCP MSS clamping «из коробки»;
  • поддержка Path MTU Discovery «из коробки».

Лимиты SDN:

  • максимальное количество сетей – 65536;
  • 1 048 576 портов на коммутаторе одного узла;
  • Производительность виртуального порта ВМ: 22 GBps / 2.5Mpps.