Являются ли Unikernels ответом на облачные рабочие нагрузки ИИ нового поколения?

Никто не любит ждать, пока запустится приложение или загрузится база данных. Конечно, не Версель. Ни Призма.

Венчурное подразделение Vercel инвестировало в Unikraft, компанию облачного хостинга, созданную на основе одноименной одноядерной технологии Linux Foundation. Ранее в этом месяце компания привлекла стартовый раунд в размере 6 миллионов долларов, включая пакет от Vercel, облачной платформы для разработчиков внешнего интерфейса. В рамках сделки Unikraft также сможет воспользоваться опытом Vercel в управлении облачными сетями доставки контента.

А Prisma, облачный сервис, предлагающий бессерверную облачную службу системы баз данных Postgres, даже запустил unikernel в работу.

Фактически, небольшой размер одноядерного экземпляра Prisma Postgres позволил компании создать бесплатный уровень для любопытных пользователей.

Как Prisma использует Unikernels для повышения производительности базы данных

Для запуска базы данных или любого приложения, чувствительного ко времени, по сети требуется сверхнизкая задержка и быстрое время загрузки.

Чтобы добиться этого, Prisma создала технологический стек, используя пограничные сервисы Cloudflare Workers, запускающие каждую базу данных внутри выделенного одноядра. Компания использовала Unikraft SDK, основанный на проекте с открытым исходным кодом, поддерживаемом Linux Foundation, для сборки виртуальных машин (через Docker Compose) и разместила их на платформе Unikraft Cloud.

Unikernels — это легкие и одноцелевые виртуальные машины. Каждая виртуальная машина имеет только приложение и минимальный объем ядра, необходимый для запуска приложения.

Такой подход позволяет Prisma запускать тысячи экземпляров PostgreSQL на одном сервере и уменьшать их количество до нуля, когда они не нужны.

«Так что это позволило Prisma предлагать базы данных за небольшую часть стоимости одного экземпляра», — сказал Фелипе Уич, соучредитель и генеральный директор компании Unikraft и один из первых исследователей проекта Unikraft.

Unikernels против контейнеров: понимание различий

Unikernels приобрели некоторую известность около 10 лет назад, но были почти забыты в стремительно растущей популярности Docker.

Обе технологии схожи. Оба могут размещать приложения и вспомогательные библиотеки. Но хотя контейнеры используют собственную ОС хоста, каждое уникернель представляет собой «микроВМ» со своей урезанной ОС.

По своей конструкции unikernels представляют собой двоичный объект с одним адресным пространством: в них нет разделения между ядром и пользовательским адресным пространством традиционной ОС. Это позволяет значительно ускорить выполнение приложений даже по сравнению с традиционными контейнерными технологиями.

Идея unikernel пришла к своему нынешнему состоянию благодаря статье 2013 года «Unikernels: библиотечные операционные системы для облака», которая породила MirageOS, первый из ряда современных unikernel-проектов, включая сам Unikraft. В 2016 году Docker купила Unikernel Systems, которая поддерживала ответвление MirageOS. Docker продолжил использовать эту технологию в своих чувствительных к задержкам приложениях, таких как HyperKit.

Но контейнеры в то время были настолько удивительной технологией, с их способностью делать рабочие нагрузки переносимыми, что юникеры казались ненужными. Unikernels также потребовали много дополнительной работы: было множество критических замечаний по поводу неадекватных инструментов и возможностей отладки. Еще одним препятствием для системных архитекторов была неадекватная поддержка стандарта POSIX, языка всех систем Linux.

Unikernels для облачных вычислений нового поколения и рабочих нагрузок искусственного интеллекта

Но может ли новое поколение широко распределенных облачных приложений для развивающегося рынка искусственного интеллекта сделать unikernels стоящими? Именно на это делает ставку Unikraft. Если вы упаковываете свои приложения в большое количество контейнеров, возможно, вам захочется еще раз взглянуть на unikernels, — сказал Уики.

Например, хорошо подойдут рабочие нагрузки ИИ. Они, как правило, работают на большом количестве контейнеров и часто переключаются между режимами онлайн и оффлайн.

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

Хуичи отметил, что одноядерный образ меньше, быстрее и безопаснее, чем образы контейнеров, предлагая время загрузки в миллисекундах и пропускную способность на 50–100 % выше, чем у обычного ванильного Linux.

Преимущества Unikernels: скорость, безопасность и экономическая эффективность

Эти функции аккуратно решают ряд проблем Prisma. Поскольку Unikernels загружаются быстрее, новый экземпляр готов за миллисекунды, а не за десятки секунд, необходимые для загрузки контейнерной версии Postgres. Кроме того, уровень безопасности меньше, производительность юникеров можно настроить, и они занимают меньше места в памяти сервера.

В случае Prisma одноядро также устраняет проблему холодного запуска, которая может досаждать микросервисам и приложениям Java. Поддержание работоспособности виртуальных машин или контейнеров при отсутствии рабочей нагрузки может оказаться непомерно дорогостоящим, но их загрузка приведет к задержке при поступлении нового запроса.

Напротив, затраты на поддержание работы одноядерного ядра на сервере минимальны благодаря его небольшому размеру.

Одноядерная архитектура также позволяет Prisma находить пул соединений на тех же машинах, на которых работают одноядерные экземпляры Prisma Postgres, тем самым экономя на дорогостоящих сетевых переходах.

Управление Unikernels с помощью интеграции Kubernetes

Платформа Unikraft еще больше облегчает бремя управления благодаря недавней интеграции с Kubernetes, позволяя администраторам управлять unikernelми наряду с другими ресурсами. Каждый экземпляр работает как отдельный узел, и к этим узлам можно применить всю логику масштабирования Kubernetes, что делает управление ими таким же простым, как и любым другим контейнером.

ТЕНДЕНЦИОННЫЕ ИСТОРИИ YOUTUBE.COM/THENEWSTACK Технологии развиваются быстро, не пропустите ни одной серии. Подпишитесь на наш канал YouTube, чтобы смотреть все наши подкасты, интервью, демонстрации и многое другое. ПОДПИСАТЬСЯ Группа, созданная в Sketch. Джоаб Джексон — старший редактор The New Stack, специализирующийся на облачных вычислениях и системных операциях. Он освещал вопросы ИТ-инфраструктуры и ее развития более 30 лет, в том числе работал в IDG и Government Computer News. До этого он… Подробнее от Джоава Джексона

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *