Почему Kubernetes стал настолько популярен

Сегодня все крупные и технологически развитые компании фактически живут в digital-реальности. Каждая из них как минимум развивает мобильное приложение, как максимум – полностью перестраивает коммуникации с клиентами, используя преимущественно цифровые каналы. Параллельно с этим растет значимость ИТ-разработки, а жизненно важной потребностью становится time-to-market. Ведь чем быстрее выпустишь новый продукт и завладеешь вниманием аудитории, тем больше вероятность обойти другие компании в конкурентной гонке. Запрос на высокую скорость разработки в свою очередь приводит к росту популярности специализированных ИТ-инструментов, которые помогают упростить и ускорить вывод на рынок новых сервисов и их обновление. Самым популярным из таких инструментов можно назвать, пожалуй, Kubernetes.

Развертывание приложений с помощью кластеров под управлением Kubernetes в облаке – это один из наиболее распространенных сценариев для ИТ-разработчиков из числа клиентов КРОК Облачные сервисы. Почему именно это средство управления контейнерами пользуется таким спросом, попробуем простыми словами рассказать в статье.

​Виктория Сатаева, руководитель группы маркетинга КРОК Облачные сервисы
​Виктория Сатаева, руководитель группы маркетинга КРОК Облачные сервисы

Как было раньше?

Когда-то программы жили сами по себе: каждая на своем физическом сервере. Программу писал программист, сервером управлял администратор, и это значит, что для работы сервисов и приложений им нужно было как минимум договориться между собой. Так у каждой программы и приложения появлялся свой «дом» в виде сервера, то есть место, где они живут и где обрабатываются данные.

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

Однако программ становилось больше, а в совокупности с развитием сетевых технологий встал вопрос: как помочь программам наилучшим образом находить себе место, а главное - взаимодействовать между собой? Ведь когда вы снимаете апартаменты на Пхукете через Airbnb и приезжаете туда в предвкушении приятного отдыха, вполне может оказаться, что на шикарной кухне не окажется удобной сковородки, а в санузле - мыла и туалетной бумаги. Или пример из программного мира: вы скачали новую онлайн-игру и уже собираетесь поиграть, но ваш ноутбук требует обновить все, что можно, загрузить новые кодеки и видеоплеер.

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

Как это работает сейчас?

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

У контейнеров есть еще одна важная надстройка - оркестратор. Это программа, которая точно помнит, в какой квартире поселился конкретный контейнер, что он может и любит делать, когда его лучше не беспокоить и главное - как всем контейнерам в этом доме общаться друг с другом и переселяться в случае необходимости. Этакий домоуправляющий.

Преимущества контейнеризации

Контейнеры в разработке используются уже около десяти лет, и, как уже было сказано, в последние несколько лет их популярность начала резко расти. На рынке есть множество решений для запуска контейнеров и их оркестрации, однако более 4/5 контейнеров запускается в среде Docker, а для оркестрации более половины пользователей используют Kubernetes. Так сложилось исторически.

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

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

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

Благодаря контейнерам программа, которая хорошо работала в песочнице, на родном компьютере программиста, одинаково хорошо и адекватно чувствует себя и в боевой среде. Теперь за работу в поле отвечает не только администратор сервера, но и сам программист, границы между их задачами размылись, и так родилась методология DevOps — взаимное проникновение Dev- (разработка) и Ops- (администрирование) команд во все циклы разработки софта: от проектирования до работы в бою и починки силами тех, кто писал код.

Что будет дальше?

Американская компания StackRox опубликовала результаты своего исследования Kubernetes, которое показало 50%-ный рост популярности Kubernetes среди инструментов для оркестровки контейнеров. Kubernetes, по данным Cloud Native Computing Foundation (CNCF), в 2019 году использовался в разработке 40% компаний, а 87% в принципе использовали оркестрацию контейнеров.

Сегодня растет коммьюнити Kubernetes (open source проект), а количество сервис-провайдеров, которые работают с ним, достигло 100 в прошлом году. Следующий год для Kubernetes обещает быть горячим. К Kubernetes разворачиваются крупные корпорации, которые строят свою ИТ-инфраструктуру на базе микросервисов: это крупные банки, в том числе финтех, ритейлеры и операторы связи. Среди клиентов КРОК Облачные сервисы микросервисами уже не первый год пользуется сервис путешествий Туту.ру, а также большое количество ИТ-компаний, например, Cymulate – разрабочик SaaS-платформы для симуляции атак и взломов. .

Как сказал вице-президент и технический директор Red Hat Крис Райт: «Как Linux стал в центре open source разработки в 2000-е, так и Kubernetes становится фундаментов для создания технологий и решений». Поэтому не удивительно, что все больше компаний во всем мире делают свой первый шаг в сторону Kubernetes и микросервисов в целом.

55
7 комментариев

Комментарий недоступен

3
Ответить

Комментарий недоступен

1
Ответить

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

Ответить

насколько вы знаете устройство собственного компьютера? LOL

Ответить

Как это работает ? Типа dll для exe ?
Простите, я из 2005. 

Ответить