Ubicloud — открытое облако для управления bare metal серверами и экономии затрат
Помните, как лет десять назад все дружно мигрировали в AWS? Тогда казалось, что облака — это спасение от всех инфраструктурных головных болей. Но прошло время, и счета за AWS стали напоминать стоимость небольшой квартиры в провинции. А ещё появилась vendor lock-in, о котором все говорили, но никто не верил, что это коснётся именно их проекта.
Сегодня всё больше команд начинают искать альтернативы. Кто-то возвращается к bare metal, кто-то пробует Hetzner или другие дешёвые провайдеры. Но вот незадача: голое железо — это не облако. Нет привычной эластичности, автоскейлинга, удобных API. Приходится выбирать между удобством и деньгами.
Именно здесь появляется Ubicloud — open source проект, который обещает превратить любые bare metal серверы в полноценное облако. Звучит амбициозно? Давайте разберёмся, что это за зверь и зачем он вам может понадобиться.
Что это вообще такое?
Ubicloud позиционирует себя как открытую альтернативу облачным провайдерам. Если провести аналогию, то это как Linux для проприетарных операционных систем, только в мире облачной инфраструктуры.
В основе лежит простая идея: вы берёте bare metal серверы (скажем, из Hetzner, Leaseweb или даже AWS Bare Metal), и Ubicloud превращает их в настоящее IaaS-облако. Получается, что вы платите за железо по цене железа, но работаете с ним как с облаком — создаёте виртуальные машины, настраиваете сети, управляете доступами.
У проекта два варианта использования. Первый — managed-сервис, где команда Ubicloud всё настраивает за вас. Второй — self-hosted вариант, когда вы сами все разворачиваете и получаете полный контроль над инфраструктурой. Выбор зависит от того, насколько вам критична автономность и есть ли ресурсы на поддержку своего облака.
Как это работает под капотом?
Архитектура Ubicloud следует классической схеме публичных облаков: control plane управляет data plane. Но интересно другое — какие технологии они выбрали для реализации.
Для виртуализации используется Cloud Hypervisor — относительно молодой VMM, который позиционирует себя как более безопасная и лёгкая альтернатива KVM. Каждый инстанс VMM изолирован в отдельном Linux namespace, что добавляет ещё один уровень защиты. Это разумный выбор, учитывая, что безопасность в multi-tenant окружении — один из главных вызовов.
Сетевая часть построена на IPsec туннелях, что обеспечивает шифрованную и приватную сеть. Поддерживается dual-stack IPv4/IPv6, причём каждый клиент работает в своём network namespace. Для файрволов и балансировщиков используется Linux nftables — проверенное решение, которое не вызывает вопросов.
Блочное хранилище реализовано через SPDK (Storage Performance Development Toolkit). Это даёт возможность в будущем добавить enterprise-фичи вроде снапшотов и репликации. Кстати, данные шифруются, причём сам ключ шифрования тоже зашифрован — классический и правильный подход.
Control plane написан на Ruby с использованием Roda и Sequel. Для кого-то это может быть сюрпризом — в 2025 году Ruby не первый выбор для инфраструктурных проектов. Но команда явно знает, что делает: у них за плечами опыт работы в Azure, Amazon и Heroku. Плюс это же ребята из Citus Data, которую купил Microsoft. То есть люди не новички в системном программировании.
Экономика вопроса
А теперь о самом интересном — деньгах. Ubicloud заявляет, что их managed-сервис примерно в три раза дешевле AWS для типичных нагрузок. Звучит заманчиво, но давайте подумаем, откуда берётся эта экономия.
Во-первых, нет наценки за бренд и экосистему. AWS может себе позволить держать высокие цены, потому что у них сотни интегрированных сервисов. Ubicloud пока предлагает только базовые IaaS-функции, поэтому и цена соответствующая.
Во-вторых, они используют дешёвых провайдеров вроде Hetzner. Разница в стоимости bare metal между Hetzner и AWS огромная — иногда в 5-7 раз. Даже с учётом overhead на виртуализацию, экономия получается значительной.
В-третьих, open source модель позволяет избежать лицензионных выплат за проприетарное ПО. Всё, что они используют — Linux, Cloud Hypervisor, SPDK, nftables — это открытые проекты.
Для каких сценариев это особенно актуально? CI/CD пайплайны — очевидный кейс. Если у вас ephemeral нагрузки, которые живут минуты или часы, то переплачивать AWS втрое просто нет смысла. Тяжёлые тесты, временные окружения для разработки, batch-обработка — всё это идеальные кандидаты для миграции.
Self-hosted: своё облако с нуля
Отдельного внимания заслуживает возможность развернуть Ubicloud у себя. Представьте: у вас есть несколько bare metal машин (купленных, арендованных или просто лежащих в дата-центре), и вы хотите превратить их в облако.
Процесс достаточно прямолинейный. Клонируете репозиторий, поднимаете control plane в Docker Compose. Дальше подключаете свои серверы через специальный скрипт cloudify_server, который превращает обычную Linux-машину в часть вашего облака.
Есть один нюанс: виртуальным машинам по умолчанию назначаются IPv6-адреса. Если ваш провайдер не поддерживает IPv6 (а такое ещё встречается), придётся использовать VPN или tunnel broker. Либо арендовать IPv4-адреса отдельно и добавить их в control plane. Это не критично, но требует дополнительных действий.
Зачем вообще может понадобиться свое self-hosted облако? Причин несколько. Compliance — если вы в регулируемой индустрии и данные не должны покидать определённую юрисдикцию. Безопасность — полный контроль над всем стеком без риска, что AWS завтра изменит политику или отключит вам аккаунт. Портативность — можете взять и переехать на другого провайдера без переписывания половины инфраструктуры.
Реальность против амбиций
Давайте будем честными: Ubicloud — это не замена AWS. Пока. AWS предлагает около двухсот облачных сервисов, Ubicloud — несколько базовых. Команда проекта сама признаёт, что их цель — покрыть 10% сервисов, на которые приходится 80% потребления.
Сейчас доступно: Elastic Compute (виртуальные машины), Networking (виртуальные сети, файрволы, балансировщики), Block Storage (пока без репликации) и ABAC для управления доступами. В планах — managed Kubernetes или мониторинг. То есть набор сервисов растёт, но медленно.
Другой момент — зрелость проекта. Это не OpenStack с его пятнадцатилетней историей. Это относительно молодая разработка, хотя и с опытной командой. Баги будут, проблемы производительности — возможно. Документация пока не такая подробная, как хотелось бы. Community форум есть, но не такой активный, как у мейнстримных облаков.
Зато есть и преимущества молодости. Код написан с нуля, без legacy. Архитектурные решения принимались с учётом современных лучших практик. Нет необходимости поддерживать совместимость с решениями десятилетней давности.
Кому это подойдёт сегодня
Не каждому проекту нужен Ubicloud прямо сейчас. Но есть несколько категорий команд, которым стоит присмотреться к этому решению.
Стартапы на ранних стадиях. Когда вы ещё не знаете, взлетит ли проект, но счета за инфраструктуру уже выглядят пугающе. Три месяца экономии на облаке могут дать лишний месяц runway — а это иногда разница между успехом и провалом.
Команды с предсказуемыми нагрузками. Если вы точно знаете, сколько вам нужно вычислительных ресурсов, то managed облако становится просто переплатой за гибкость, которой вы не пользуетесь. Bare metal с облачной оболочкой — оптимальный вариант.
Проекты с требованиями к compliance. Когда данные должны лежать на конкретном железе в конкретной стране. Self-hosted Ubicloud даёт контроль без необходимости писать свою аркестрацию с нуля.
Разработчики инфраструктурных инструментов. Если вы делаете что-то для DevOps-аудитории, то интеграция с open source облаком может быть интересной фичей. Плюс можно заглянуть в код и понять, как устроены облака изнутри.
Вместо заключения
Ubicloud — это не революция, но важный шаг. Облачные провайдеры стали слишком дорогими и закрытыми. Open source альтернативы вроде OpenStack оказались слишком сложными для небольших команд. Между этими крайностями и появляется ниша для проектов вроде Ubicloud.
Возможно, через пару лет это будет серьёзный игрок на рынке облачной инфраструктуры. А может, проект останется нишевым решением для тех, кто хочет экономить или контролировать железо. Но уже сейчас это работающий proof of concept того, что облако не обязательно должно быть проприетарным и дорогим.