CNCF спонсировал этот пост.
Kubernetes стал предпочтительной платформой для развертывания новых корпоративных приложений, включая волну приложений искусственного интеллекта, которые, как ожидается, появятся в сети в ближайшие несколько лет. Но в обозримом будущем предприятия в основном будут продолжать запускать существующие приложения на базе архитектур виртуальных машин. Поиск способа сосуществования Kubernetes и виртуальных машин будет иметь решающее значение для поддержания гибкости и эффективности на предприятии.
Всего за 11 лет Kubernetes превратился из революционной, почти экспериментальной платформы оркестрации контейнеров в доминирующий метод развертывания новых приложений в корпоративных ИТ. По данным исследования The Cloud Native Computing Foundation за 2024 год, сегодня четыре из пяти организаций используют Kubernetes. Среди тех, кто самостоятельно назвал себя приверженцами Kubernetes, около 40% их новых приложений работают под Kubernetes, и ожидается, что эта цифра увеличится до 80% в течение трех лет.
Это настолько близко к повсеместному распространению, насколько это возможно в корпоративном ИТ-пространстве. Но независимо от того, как быстро появляются новые технологии, они все равно должны конкурировать за долю внимания и бюджет со старыми технологиями. Для Kubernetes самой большой альтернативой по-прежнему остается виртуальная машина (ВМ).
Виртуальные машины появились в начале 2000-х годов как способ отделить операционную систему от базового оборудования, позволяя рабочим нагрузкам перемещаться и масштабироваться независимо от оборудования. Хотя виртуальные машины дали предприятиям определенные эксплуатационные преимущества на уровне серверов, они не изменили фундаментально способы разработки и распространения приложений. Разработчики по-прежнему разрабатывали программное обеспечение с использованием трехуровневой или клиент-серверной архитектуры, что, в свою очередь, часто требовало большого ручного труда для тестирования и развертывания.
Вот тут-то и вмешалась контейнеризация. Вместо создания каждой корпоративной среды отдельно контейнеризация позволяет разработчикам один раз создать стандартную среду, протестировать ее на совместимость, заморозить изменения кода, а затем, по сути, клонировать ее — или содержать — для повторного последующего использования.
Эти «контейнеры» затем можно было бы развернуть по шаблону и запустить в системе управления. Это уменьшило необходимость кропотливой работы по интеграции и тестированию со стороны разработчиков, а также упростило процесс масштабирования приложений для поддержки растущих рабочих нагрузок. Эти преимущества позволили ранним пользователям Kubernetes, таким как Google, Twitter и Airbnb, внедрять инновации быстрее и масштабироваться дальше, чем при использовании виртуальных машин.
После того, как Google открыл исходный код Kubernetes, разработчики по всему миру приняли его. Вместо того, чтобы быть ограниченным возможностями администраторов по развертыванию программного обеспечения в производственных кластерах, Kubernetes позволил разработчикам развертывать собственную работу, что значительно снизило их зависимость от администраторов и позволило им работать быстрее и эффективнее. Kubernetes помог создать собственную облачную архитектуру вычислений, которая стала доминирующей парадигмой.
Хотя сегодня облачные вычисления лидируют, иногда они противоречат существующим парадигмам, включая виртуальные машины. За последние 20 лет предприятия вложили сотни миллиардов долларов в создание и развертывание корпоративных приложений на виртуальных машинах, и они не склонны вырывать их и заменять более современной архитектурой облачных вычислений.
Новые разработки часто выполняются в облачной среде, но большинство существующих приложений работают на виртуальных машинах. В результате в обозримом будущем виртуальным машинам и контейнерам придется сосуществовать. Однако это легче сказать, чем сделать. Таким образом, задача для лиц, принимающих решения в сфере ИТ, состоит в том, чтобы наметить путь, который позволит им работать как с виртуализированными, так и с контейнеризованными приложениями, не неся при этом чрезвычайных затрат.
Поиск точек соприкосновения между архитектурами Kubernetes и VM имеет первостепенное значение для эффективности предприятия. Компании, стремящиеся использовать как Kubernetes, так и среды виртуальных машин, должны выяснить, как они могут совместно запускать и управлять этими средами. Внедрения Kubernetes и облачных вычислений недостаточно; оно должно быть интегрировано с остальным портфелем корпоративных приложений, которые по-прежнему работают на виртуальных машинах.
Хорошей новостью является то, что Kubernetes и виртуальные машины могут сосуществовать. Во-первых, при правильном выборе платформы Kubernetes и виртуальные машины могут фактически работать на одних и тех же машинах x86, соответствующих отраслевым стандартам. Хотя многие предприятия используют виртуальные машины и Kubernetes на разных физических машинах, их совместная работа на одном оборудовании дает ряд преимуществ, в том числе лучшее использование оборудования, улучшенную управляемость, упрощенную интеграцию, повышенную безопасность и упрощение устранения неполадок.
Существует два основных способа объединения виртуализированных и контейнерных рабочих нагрузок на одном и том же оборудовании: либо запускать Kubernetes внутри виртуальных машин, либо запускать виртуальные машины с Kubernetes на «голом железе» с использованием такой технологии, как Kubevirt.
Хотя запуск Kubevirt для планирования рабочих нагрузок на базе виртуальных машин может показаться катапультированием в будущее, у него, безусловно, есть некоторые недостатки. Несмотря на то, что существуют корпоративные гипервизоры, которые уже более десяти лет разрабатывают экосистемы, пользовательские базы и наборы функций, Kubevirt еще не получил широкого и массового внедрения. Это также усугубляет дефицит навыков Kubernetes. Многие компании говорят, что им трудно найти достаточно квалифицированных специалистов для выполнения собственных облачных рабочих нагрузок; если для выполнения какой-либо рабочей нагрузки требуется опыт Kubernetes, это значительно усугубит проблему.
Предприятия, стремящиеся к стратегии сосуществования, могут предпочесть постепенный переход, который позволит ИТ-специалистам с навыками работы с виртуальными машинами продолжать управлять этими средами, одновременно развивая свои собственные навыки работы с Kubernetes. Запуск Kubernetes на виртуальных машинах дает компаниям возможность иметь корпоративное решение для своих виртуальных машин и чистое облачное решение для своих контейнеров. Он также предоставляет доступ ко всему спектру функций Kubernetes, включая динамическое определение размера и эфемерные кластеры — концепции, которые просто не имеют смысла при запуске Kubernetes на «голом железе».
Kubernetes ясно представляет будущий путь корпоративных ИТ-сред. Это более высокий уровень виртуализации всей системы, который устраняет многие болевые точки систем виртуальных машин предыдущего поколения. По мере того, как компании создают свои среды Kubernetes, правильный выбор для своего предприятия может означать разницу между переходом Kubernetes-VM или выжиманием большей полезности из существующих кластеров.
KubeCon + CloudNativeCon North America 2025 пройдет 10–13 ноября в Атланте, штат Джорджия. Зарегистрируйтесь сейчас.
Фонд Cloud Native Computing Foundation (CNCF) размещает критически важные компоненты глобальной технологической инфраструктуры, включая Kubernetes, Prometheus и Envoy. CNCF — это нейтральная площадка для сотрудничества, объединяющая ведущих разработчиков отрасли, конечных пользователей и поставщиков. Узнайте больше Последние новости от CNCF TRENDING STORIES YOUTUBE.COM/THENEWSTACK Технологии развиваются быстро, не пропустите ни одной серии. Подпишитесь на наш канал YouTube, чтобы смотреть все наши подкасты, интервью, демонстрации и многое другое. ПОДПИСАТЬСЯ Группа, созданная в Sketch. Дэн Цирули — вице-президент и генеральный менеджер группы облачных продуктов Nutanix. Его карьера в области управления продуктами включает работу в Google, Zuora и EMC, а в области открытого исходного кода он был одним из основателей OpenAPI… Подробнее от Дэна Цирули