Гиперконвергенция подразумевает, что физические серверы, лежащие в основе ИТ-инфраструктуры — это универсальные единицы, реализующие программно-определяемые слои вычисления, хранения и сети. Слои объединены в единую платформу, элементы которой равнозначны и не имеют выделенных ролей. Особенность гиперконвергенции, в том, что она строится только на базе серверов. Управляется такая инфраструктура из одной панели управления, обеспечивая гибкость и быструю масштабируемость.
Переход на гиперконвергентную инфраструктуру позволяет снизить стоимость владения благодаря оптимизации затрат на оборудование, поддержку и ресурсы дата-центра.
Наложение слоев в гиперконверегентной архитектуре
Физический слой
В этом слое находятся базовые физические элементы — серверы и организована их сетевая связность.
Кластерный слой
В этом слое работают службы обеспечения программно-определяемых слоев: SDS, SDN, SDC. Главная задача кластерного слоя — обеспечение консистентного доступа к разделяемым ресурсам узлов. Доступ к ресурсам узлов возможен только со стороны узла, участвующего в работе кластера. Также в кластерном слое работают механизмы резервирования элементов инфраструктуры, вплоть до узлов. Failover происходит автоматически без участия человека. Этот слой формируется в результате работы кластерного ПО на каждом из узлов. Платформа vStack имеет собственную реализацию кластерного ПО.
Слой хранения — SDS
На основе ресурсных примитивов из кластерного слоя формируется слой хранения — SDS. Технологическая основа слоя — файловая система ZFS, объединенная с менеджером логических томов. Единица грануляции слоя SDS — пул, собранный из дисков каждого узла с избыточностью равной избыточности кластера (N+2, N+3 и так далее). В момент времени пул работает на конкретном узле кластера. Возможности слоя хранения:
- компрессия и дедупликация;
- внутренняя целостность данных;
- самовосстановление данных;
- транзакционная целостность.
Слой хранения имеет свои лимиты по размеру: один зеттабайт, при этом поддерживает неограниченное количество файловых систем и неограниченное количество блочных устройств.
Для всех промышленных инсталляций рекомендуется использование избыточности типа N+2 или выше (платформа поддерживает N+1, N+2 и N+3).
Рисунок 1. Пятиузловой кластер. Вертикальные контейнеры — пулы, горизонтальные — узлы кластера.
В случае выхода из строя узла, узел, на котором возникла проблема, будет исключен из кластера, а все пулы потеряют по одному диску. При этом кластер автоматически выполнит процедуру аварийного переключения (failover) ресурсов этого узла, и пул, работавший на узле, вышедшем из строя, станет доступен на другом узле. Все виртуальные машины продолжат свою работу на другом узле.
Слой сети — SDN
vStack предоставляет три варианта технологического обеспечения виртуальных сетей:
- VLAN;
- VxLAN;
- GENEVE собственной имплементации.
При создании новой виртуальной сети на каждом из узлов кластера также создается программно-определяемый коммутатор. Реализация самой виртуальной сети — собственная разработка команды vStack.
Рисунок 2. Software-Defined Networking
Каждый экземпляр сети имеет следующие свойства:
- собственный MTU;
- поддержка Jumbo Frames;
- поддержка TSO/GSO;
- поддержка TCP MSS clamping «из коробки»;
- поддержка Path MTU Discovery «из коробки».
Лимиты SDN:
- максимальное количество сетей — 65 536;
- 1 048 576 портов на коммутаторе одного узла;
- производительность виртуального порта ВМ: 22 GBps/2.5Mpps (зависит от скорости CPU).
Слой вычислений — SDC
Слой SDC работает на базе гипервизора vStack, созданного на основе bhyve. Экземпляр SDC — виртуальная машина, со следующими элементами:
- CPU/RAM;
- виртуальные сетевые порты, подключенные к слою SDN;
- виртуальные дисковые устройства, подключенные к слою SDS.
Рисунок 3. Software-Defined Computing
Виртуальная машина может работать под управлением гостевых ОС:
- FreeBSD;
- Linux (OEL/CentOS/Ubuntu/Debian и другие);
- Windows 2016, 2019, 2022;
- REDOS 7.3.1, 7.3.2;
- ALT Linux Server p10.
Работоспособность решения vStack с прочими гостевыми ОС не исключается из-за небольших требований к ним: возможность загрузки в режиме UEFI, наличие драйверов virtio и наличие cloud-init.
Для обеспечения комфортной работы с платформой в слое вычислений реализованы следующие возможности:
- поддержка спецификации virtio для сетевых портов, дисков и другой периферии (rnd, ballooning и т.п.);
- создание виртуальных машин при помощи облачных образов (cloud images);
- возможность персонализации настроек и поведения гостевых ОС в облачных образах с помощью стандарта cloud-init для unix-подобных систем и cloud-base для Windows;
- возможность в реальном времени лимитировать производительность сетевого порта (MBps) и диска (IOPS, MBps) и vCPU;
- поддержка создания снимков ВМ, содержащих конфигурацию виртуальной машины, в том числе сетевых портов и их IP/MAC-адресов. При этом время создания снимка от количества дисков ВМ и их размера.
Также в платформе реализован автономный и самодостаточный механизм обеспечения работы в условиях CPU overcommit. Он позволяет достигать значений экономической эффективности вплоть до 900%.
Топологии кластеров
Минимально возможная топология кластера: N+1. При этом минимальное количество узлов — 4. Также поддерживаются топологии N+2 и N+3.
Количество дисков определяется топологией кластера: минимальное количество дисков для разделяемых данных равно количеству узлов. Максимальное количество дисков не ограничено.
Итог
Гиперконвергентная платформа vStack — это современное надёжное решение виртуализации. Ее производительность и высокая экономическая эффективность лучше всего характеризует тот факт, что vStack востребована как у облачных провайдеров, так и у владельцев собственных (on-prem) инфраструктур.
Узнать дополнительную информацию и задать интересующие вас вопросы возможно на нашем портале — https://community.vstack.com/