Бессерверные вычисления: хайп или новая парадигма облачного бизнеса?
Облачные решения продолжают завоевывать мировой рынок. По мере проникновения в новые сферы ИТ, отмечается и усиливающаяся специализация отдельных технологий, в связи с этим, традиционное деление на IaaS, PaaS, SaaS становится все более условным. А в последние несколько лет существенно растет популярность бессерверных вычислений. В чем их особенность и как они помогают трансформировать бизнес?
Облачный рынок продолжает эволюционировать
По данным аналитической компании Gartner, мировые расходы конечных пользователей на публичные облачные сервисы по итогам 2021 г. вырастут на 18,4% и составят $304,9 млрд, по сравнению с $257,5 млрд. в 2020 г. Похожего мнения придерживаются и в IDC, по данным которой, расходы на общедоступное облако вырастут с $229 млрд в 2019 г. до $500 млрд к 2023 г. при среднегодовых темпах роста более 22%. Если добавить сюда еще $59 млрд глобального сегмента гибридных решений (такие оценки озвучены в исследовании Quince Market Insights), то в итоге мы получим огромный и при этом быстро растущий мировой рынок, который в немалой степени влияет на развитие других направлений ИТ. По мере развития облаков, углубляется и специализация сервисов. Одним из наиболее перспективных направлений сегодня считаются так называемые бессерверные вычисления (Serverless Computing), которые открывают новые возможности для развития и цифровой трансформации бизнеса многих компаний, в том числе не связанных напрямую с отраслью информационных технологий.
Первые коммерчески успешные Serverless платформы появились еще в 2010-х г.г., но рост популярности и начало массового использования стоит отнести скорее к периоду после 2016 г. По мнению Gartner сегодня бессерверные вычисления, так или иначе, уже используют от 10% до 20% предприятий по всему миру. Более того, аналитики относят Serverless Computing к числу основных направлений развития облачного рынка на ближайшие годы. Во многом такое мнение обусловлено тем, что бессерверные вычисления хорошо вписываются в новые модели разработки программного обеспечения.
По мнению многих зарубежных экспертов и руководителей крупных ИТ-предприятий, когда сегодня дело касается разработки ПО, компаниям уже недостаточно базовых облачных инструментов, а вместо этого растет спрос на готовые платформы, предоставляющими не только вычислительную мощность или ресурсы хранения, но и соответствующее программное окружение. Также по мере развития рынка увеличивается и потребность в еще более интеллектуальном инструментарии таком как решения для аналитики или машинного обучения. Все это как раз и должны обеспечить бессерверные платформы.
Serverless — немного о сути
Хотя само понятие Serverless Computing активно используется на рынке уже лет пять, оно все же еще не стало общеизвестным. Тем более, в самом термине есть некоторое противоречие, ведь несмотря на название, программное окружение, естественно, развернуто на физических серверах. Понятие «бессерверный» относится к логическим единицам — виртуальным машинам, контейнерам, серверам баз данных и пр. При этом, разработчик не контролирует процесс администрирования и обслуживания инфраструктуры — этим занимается провайдер сервиса. Поставщик услуги разворачивает, настраивает, поддерживает и защищает облачную среду, необходимую для выполнения кода, а заказчик полностью сконцентрирован на своих специфических задачах.
Такое распределение труда, характерное для современной экономики в целом, позволяет разработчикам существенно экономить время, деньги и прочие ресурсы, необходимые для вывода продукта на рынок. Важной особенностью бессерверного вычисления является также высокая степень гибкости и автоматизации, благодаря чему, ресурсы облака предоставляются автоматически и в строго необходимом объеме. Благодаря этому, по некоторым данным, в сравнении с использованием классических виртуальных машин, бессерверная модель позволяет сократить финансовые затраты на десятки процентов.
Если вам показалось, что Serverless модель похожа на облачную концепцию PaaS (Platform as a Service), то это недалеко от истины. По сути Serverless Computing представляет собой одну из разновидностей PaaS. В отличие от обычного подхода, бессерверная платформа обеспечивает большую степень автоматизации процесса выделения/сокращения ресурсов, но вместе с тем дает клиенту меньше инструментов для контроля инфраструктуры, чем классический PaaS.
Также стоит отметить, что для выполнения фрагментов кода, создаваемых пользователем-разработчиком, бессерверная платформа выделяет виртуальные контейнеры — свои под каждое событие — с уже готовым программным окружением. По мере выполнения задачи контейнеры автоматически уничтожаются либо, в случае необходимости, создаются новые. Такой подход, работающий как единый комплексный облачный сервис, называется Function as a Service (FaaS) — «функция как услуга». Вторым проявлением бессерверных технологий является концепция Backend as a Service («бэкэнд как сервис»). В рамках BaaS облачным пользователям обеспечивается доступ к различным сервисам, а также осуществляется автоматизация и управление работающей на сервере (отсюда и backend в названии) части приложения. Сервис-провайдер может также обеспечить функции аутентификации пользователей, шифрования данных, поддержки облачных баз данных и т.д.
Что доступно на рынке
Технологии бессерверных вычислений активно продвигают мировые лидеры облачного рынка. В первую очередь это, конечно «большая тройка» — Amazon Web Services, Microsoft Azure и Google Cloud Platform предлагающие такие продукты как AWS Lambda, Azure Functions и Cloud Functions. Есть свои бессерверных платформы у IBM Cloud (Apache OpenWhisk), Alibaba Cloud (сервис Function Compute), Cloudflare (Cloudflare Workers) и многих других игроков рынка. С недавних пор подобные решения доступны и у российских облачных операторов. Из наиболее свежих примеров можно назвать запуск двух новых сервисов Selectel — «Serverless: облачные функции» и «Облачные базы данных». Первая — это собственная разработка оператора на базе Apache OpenWhisk, которая позволяет развертывать информационные системы в облаке автоматически и в легко масштабируемом окружении. Сервис «Облачные базы данных» предназначен для быстрого создания кластеров БД на инфраструктуре облачной платформы оператора.
Сервис-провайдерами рынок не ограничивается. Целую серию бессерверных решений недавно выпустила компания NetApp. В их числе платформа для публичных облаков NetApp Spot Ocean для контейнерных нагрузок c функциями NetApp Spot Storage для полностью
автоматизированного постоянного хранения (persistent volumes), позволяющая привнести возможности оркестрации stateful приложениями в Kubernetes как для хранения, так и для вычислений. Подобно тому, как это реализовано в serverless вычислениях Spot Ocean, Spot Storage привносит концепцию storageless, полностью автоматизированного управления инфраструктурой хранения.
Решение NetApp Cloud Manager, обеспечивает единый опыт управления гибридными мультиоблачными сервисами, позволяет осуществлять централизованный контроль в локальном хранилище, а также сервисах Azure, AWS, GCP. Кроме того, стоит упомянуть автоматизированное облачное решение NetApp Virtual Desktop Management Service (VDMS) и новый дизайн инфраструктуры виртуальных ПК (VDI) в гибридном облаке. Все эти решения призваны помочь компаниям масштабировать свои инфраструктурные ресурсы, чтобы удовлетворять постоянно возрастающие потребности в связи с переводом сотрудников на режим удаленной работы. Список примеров можно продолжать еще долго, в мире их уже десятки.
В чем преимущество для бизнеса
Несмотря на то, что сервисы бессерверных вычислений часто выступают в качестве удобной платформы для разработки ПО, они также хорошо проявляют себя и во многих других сферах. Благодаря гибкости и масштабируемости Serverless-решения могут выступать как универсальная основа для широчайшего спектра бизнес-задач. По сути они применимы везде, где требуется оптимизация бизнес-процессов, ускорение вывода программных продуктов, быстрая обработка данных, упрощение работы в облаке.
Бессерверные системы позволяют непрофильным компаниям отказаться от услуг дорогостоящих облачных ИТ-специалистов (ведь все управление платформой обеспечивает оператор сервиса), сократить финансовые расходы, обеспечить соблюдение стандартов безопасности и т.д. Поэтому, кроме разработчиков программного обеспечения бессерверные вычисления, сегодня используют организации, работающие в сферах финансов, здравоохранения, крупной розничной торговли, предоставления интернет-сервисов и этот список постоянно расширяется.
Новости
Интервью
Фёдор Прохоров:
Сбер дает доступ к своему облачному суперкомпьютеру и искусственному интеллекту