Как показал недавний опрос Cloud Native Computing Foundation (CNCF), популярность открытого ПО для автоматизации развертывания и масштабирования контейнеров Kubernetes и других нативных облачных программ растет.
Еще несколько лет назад первым, что рисовало воображение при упоминании слова «контейнер», были портовые контейнеры, но ситуация в корне изменилась, пишет на портале ZDNet Стивен Воан-Николс, и теперь стоит дважды подумать о каких контейнерах идет речь — «настоящих» или виртуальных типа Docker. По данным последнего опроса, проведенного CNCF, в этом году последние применяют в коммерческой среде 84% компаний. Для сравнения, в 2016 г. с контейнерной технологией работало всего 23% предприятий. Подавляющее большинство (78%) задействуют для управления контейнерами платформу Kubernetes, развитием которой как раз и занимается CNCF. Интерес к Kubernetes напрямую связан с тем, что контейнеры являются частью облачного пула технологий.
Доминирующее положение Kubernetes подчеркивает собранная CNCF статистика: в настоящее время на рынке присутствует более 109 инструментов для управления контейнерами и 89% компаний задействуют различные версии Kubernetes. Так или иначе, это ПО на базе Open Source присутствует на всех типах облачных платформ. Что касается их выбора, то в 2019 г. публичным облачным сервисам отдали предпочтение 62% респондентов, тогда как в 2018 г. ими пользовалось 77% компаний. 42% респондентов прибегают к модели частных облаков, 38% выбрали гибридную модель развертывания. CNCF считает, что со временем популярность последней будет расти, «поскольку предприятия хотят обладать большей степенью контроля и стремятся избежать односторонней привязки к поставщикам».
Самым популярным пакетным менеджером для Kubernetes является Helm — он предоставляет внешний веб-трафик сервисам в кластере и заметно опережает конкурентов. Уверенную позицию занимает веб-сервер и почтовый прокси-сервер Nginx, который привлек 62% пользователей, HAProxy с 22% — на втором месте. Быстро набирает обороты предназначенный для работы в облаке высокопроизводительный распределенный прокси-сервер Envoy. Это относительно новый инструмент, но его применяют 19% респондентов. Более того, 59% уже задействуют его для реализации коммерческих проектов, но пока что в ограниченных масштабах.
Многие облачные технологии стали восприниматься как обычное явление. CNCF говорит, что это касается множества других опекаемых фондом проектов. К ним относятся: популярная платформа мониторинга систем и служб Prometheus (72%); DNS-сервер с поддержкой протоколов обнаружения сервисов Core DNS (69%); Open Source-инструмент для сбора данных и анализа логов Fluentd (64%); contianerd — контейнерная среда выполнения следующего поколения для Linux и Windows (53%).
Как показал опрос, медленнее прочего компании внедряют в своих кластерах сервисную сетку (service mesh) — в производственной среде ее применяют 18% респондентов, тогда как 47% продолжают экспериментировать с технологией. В отличие от рынка инструментов для управления контейнерами, здесь пока что нет очевидного лидера: на первом месте идет Consul, затем Istio и далее — Linkerd, но он недалеко ушел от лидеров.
И если интерес к service mesh еще не разгорелся, то этого не скажешь о бессерверных вычислениях (serverless computing) — ее задействует 41% компаний, при этом подавляющая часть из них (80%) применяет технологию в виде хостинговой платформы, а остальные 20% — в виде устанавливаемого ПО. Самыми популярными serverless-инструментами являются Knative (34%), OpenFaaS (15%) и Kubeless (11%). Из числа хостинговых платформ наиболее популярным инструментом оказалась AWS Lambda (53%). Это не удивительно, поскольку это пионер среди сервисов для бессерверных вычислений. Google Cloud Functions (18%) и Azure Functions (14%) находятся на втором и третьем месте соответственно.
Многие из упомянутых выше инструментов требуются компаниям для перехода от осуществляемых вручную, медленных циклов выпуска ПО к более быстрым автоматизированным циклам, которые осуществляются при помощи инструментов непрерывной интеграции и непрерывной доставки (CI/CD). Наиболее распространенным инструментом CI/CD является Jenkins (58%). За ним следуют GitLab (34%) и CircleCI (13%).
По словам редактора KubeWeekly Кима МакМахона, в целом результаты опроса показывают, что распространение многих облачных технологий стало повсеместным. Облачное ПО упрощает реализацию сложных проектов, в том числе ускоряет создание и развертывание программ. Фактически Kubernetes и остальная часть семейства облачных технологий уже начали менять компьютерный и программный мир.