HeadlinesBriefing HeadlinesBriefing.com

Virtual Oxide Labs: эмуляция стойки Oxide

Hacker News •
×

Тестирование и разработка оборудования уровня стойки затруднены, поскольку полные стойки в дефиците: их быстро отправляют в дата-центры клиентов. Как член команды Product Assurance компании Oxide, автор описывает потребность в воспроизведении различных сетевых топологий клиентов, запуске реальной управляющей плоскости, тестировании актуального ПО и представлении аппаратных компонентов, включая коммутаторы и микроконтроллеры, без выпуска специальных «тестовых» версий.

Для решения этих задач Oxide использует «racklettes» — небольшие стойки, каждая из которых содержит четыре sled и два коммутатора. Поскольку это настоящие стойки, их можно инициализировать и запускать так же, как производственное оборудование. Сейчас у компании четыре такие стойки, запланировано восемь, и они позволяют тестировать любые сочетания аппаратных и программных требований. Oxide также запускает симулированные версии своей управляющей плоскости Omicron, которые могут работать независимо, параллельно и с разной степенью симуляции.

Основной инструмент — Virtual OXid E Labs (Voxel), преемник более ранних виртуальных лабораторий a4x2. Voxel ставит во главу угла точность — «Прямую директиву», согласно которой лаборатории используют стандартное ПО Oxide без хаков и модификаций. Построенный на illumos на языке Rust, он эмулирует виртуализацию sled через Propolis, сетевое взаимодействие по BGP или статической маршрутизации с Debian и FRR, коммутаторы на P4 через Soft NPU от Oxide, а также симуляцию микроконтроллеров для Service Processor и Root of Trust.

Voxel занимает мало ресурсов. Автор запускает его на мини-ПК Minisforum MS-A2 с 32-поточным AMD Ryzen 9 9955 HX и 96 ГБ оперативной памяти, поднимая шесть sled в одной стойке или в многостоечной конфигурации. Запуск занимает около 10 минут и требует только Oxide Helios и быстрого NVMe-накопителя. Поскольку Voxel использует стандартное ПО, он также упрощает создание образов: sled Oxide бывают либо обычными, либо «scrimlets», подключёнными к коммутаторам sidecar.

Источник: Hacker News · Сводку подготовил HeadlinesBriefing