2020/07/22 11:25:39

Контейнеризация (контейнерное ПО)

Контейнеризация — это «облегченная» форма виртуализации на уровне операционной системы

Содержание

Что такое контейнеризация

Контейнеризация — это «облегченная» форма виртуализации на уровне операционной системы, которая позволяет запускать приложение и системные библиотеки в изолированной области, «контейнере», каждый из которых содержит все компоненты, необходимые для запуска приложения, не зависит от архитектуры серверной системы и взаимодействует с ОС при помощи стандартных интерфейсов. В этом программные контейнеры похожи на транспортные — неважно, что «внутри» контейнера, главное, чтобы он имел стандартные интерфейсы (в реальном мире — один из стандартных размеров)[1].

В чем разница между контейнерами и виртуальными машинами


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

Контейнерное (мировой рынок)

Размер мирового рынка коммерческого контейнерного программного обеспечения будет расти в 2018-2023 гг. в среднем на 30% ежегодно, превысив к концу периода $1,6 млрд — такой прогноз дается в отчете Technology Multi-Tenant Server Software Market Tracker аналитиков IHS Markit. Лидирует компания Red Hat с 44% долей рынка.


Аналитики Gartner также прогнозируют значительный рост доходов от глобального программного обеспечения и услуг по управлению контейнерами, хотя и более скромны в оценках. Они полагают, что выручка соответствующего сегмента рынка в 2020-2024 гг. вырастет с $465,8 млн до $944 млн.Банковская цифровизация: ускоренное импортозамещение и переход на инновации. Обзор и рейтинг TAdviser 13.3 т

Наиболее популярны средства контейнеризации у провайдеров облачных сервисов, они, по данным IHS Markit, применяют контейнерные технологии более чем на трети своих серверов. Для сравнения, телекоммуникационные компании и корпоративный сектор используют контейнерное ПО примерно на 8% мультитенантных серверов (то есть, выделенных под обслуживание пользователей из разных организаций).

Это отставание в развертывании обусловлено сложностью управления средствами оркестрации контейнеров. Предприятиям и телекоммуникационным компаниям для широкого внедрения контейнеризации требуются более развитые инструменты автоматизации управления.

Главные действующие лица

Сфера контейнеризации быстро развивается, но в ней уже появилось два стандарта «де-факто». Это формат контейнеров Docker и программное обеспечение для оркестрации контейнеров Kubernetes.

Docker — это открытое программное обеспечение для автоматизации развертывания и управления приложениями в средах контейнеризации. Оно разделяет ядро ОС на контейнеры, работающие как отдельные процессы. Изначально этот продукт был разработан одноименной компанией, у которой есть также своя платформа оркестрации Docker Swarm. Однако последняя все больше уступает Kubernetes.

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

Как свидетельствуют данные исследования компании StackRox, которая в 2018-2020 гг. изучала динамику внедрения контейнеров, Kubernetes доминирует на рынке: 86% респондентов используют его для оркестрации контейнеров.

Примечания