Сравните EKS и самоуправляемый Kubernetes на AWS

Прочитано: 99 раз(а)


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

У пользователей AWS, которые хотят развернуть Kubernetes на AWS, есть два основных варианта: действовать в одиночку или позволить Amazon сделать всю тяжелую работу. Каждый подход имеет свои плюсы и минусы.

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

У AWS есть довольно успешный собственный сервис оркестровки управляемых контейнеров — Amazon Elastic Container Service. В качестве альтернативы пользователи могут запускать свои собственные кластеры Kubernetes на EC2. В конце концов, однако, Amazon не смогла игнорировать спрос на управляемое предложение Kubernetes, и в конце 2017 года Amazon добавила Elastic Container Service для Kubernetes ( EKS ).

Чтобы выбрать между EKS и Kubernetes с самоуправлением, тщательно взвесьте преимущества и недостатки каждого варианта.

Kubernetes на AWS: знайте свои возможности

С помощью EKS Amazon полностью управляет плоскостью управления, включая такие компоненты, как etcd и сервер API Kubernetes, с интеграцией с другими сервисами AWS, такими как Identity and Access Management ( IAM ).

Вся инфраструктура управления работает за кулисами в нескольких зонах доступности. AWS автоматически заменяет любые неработоспособные узлы, чтобы поддерживать высокую доступность. Он также обрабатывает все обновления и исправления. Для пользователей плоскость управления EKS — это, по сути, черный ящик.

Для плоскости данных для пользователей EKS есть три варианта: узлы с самостоятельным управлением, группы узлов, управляемые EKS, и AWS Fargate.

Самоуправляемые узлы

При использовании самоуправляемых узлов пользователям необходимо создавать узлы и управлять ими с ручной настройкой или с помощью шаблонов AWS CloudFormation, предоставляемых EKS. Когда виртуальные машины EC2 запущены и работают, они присоединяются к плоскости управления Kubernetes. Затем плоскость управления Kubernetes назначает модули узлам и запускает контейнеры. Кроме того, пользователям необходимо выполнить обновление ОС и версии Kubernetes узлов плоскости данных.

Группы узлов, управляемые EKS

При использовании групп узлов, управляемых EKS, EKS автоматически создает и обновляет узлы плоскости данных. Пользователям нужно нажать всего пару кнопок в веб-консоли, чтобы добавить новые узлы и обновить версии ОС или Kubernetes.

АМС Фаргейт

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

Разработчик может развернуть кластер EKS с помощью eksctl. Этот сторонний инструмент может предоставить всю инфраструктуру Kubernetes, включая управляемую плоскость управления и неуправляемые рабочие узлы. Он также может вносить последующие изменения, когда это необходимо. Используйте kubectl для запуска реальных команд в кластере Kubernetes и управления контейнерными ресурсами внутри него. Это стандартный инструмент вне зависимости от версии Kubernetes.

В качестве альтернативы ИТ-команды могут запустить самоуправляемую среду Kubernetes на экземпляре EC2. Выполняйте развертывание с помощью таких инструментов, как kops, которые помогают создавать кластер Kubernetes и управлять им . В этом случае плоскость управления видна и доступна пользователям, которые смогут видеть компоненты, работающие на выделенных экземплярах EC2. Администраторам также придется исправлять и поддерживать все вручную, что в некоторых случаях может быть неудобно.

Kubernetes на AWS: EKS против самостоятельного управления

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

Доступность и управление

Хотя EKS работает с Upstream Kubernetes и сертифицирован как совместимый с Kubernetes, у него есть некоторые недостатки. Он доступен не во всех регионах AWS, и скорость его выпуска низкая. На момент публикации EKS работает только до версии Kubernetes 1.22, хотя версия 1.24 уже вышла.

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

Хотя создать масштабируемый и высокодоступный самоуправляемый кластер Kubernetes непросто, EKS всегда гарантирует, что плоскость управления запущена и работает. Кроме того, EKS с Fargate помогает пользователям создать масштабируемую плоскость данных с минимальными затратами.

Безопасность и обновления

Безопасность и обновления плоскости управления и плоскости данных необходимы для безопасной и надежной установки Kubernetes. При неуправляемой установке Kubernetes пользователям необходимо обновить компоненты плоскости управления и узлы. При использовании управляемого сервиса EKS ответственность за плоскость управления будет возложена на AWS, в то время как для плоскости данных существуют разные подходы.

  • Управляемые узлы EKS. Пользователи могут легко обновлять узлы одним щелчком мыши в консоли.
  • Самоуправляемые узлы. Ответственность за безопасность и обновление узлов полностью лежит на пользователе.
  • АВС Фаргейт. Fargate будет запускать контейнеры в актуальной и безопасной среде.

Расходы

Стоимость является еще одним фактором. EKS взимает 0,10 доллара США в час за каждый кластер Amazon EKS, что составляет 73 доллара США в месяц в регионе Восток США (Огайо). В дополнение к уровню управления организации дополнительно оплачивают рабочие узлы. Если пользователям требуется большое количество кластеров Kubernetes с меньшими средами разработки, затраты на плоскость управления могут возрасти до 73 долларов.

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

Сравните EKS и самоуправляемый Kubernetes на AWS



Новости партнеров