Kubernetes на AWS
Решение с открытым исходным кодом для оркестрации контейнеров и управления ими
Kubernetes – это программное обеспечение с открытым исходным кодом для развертывания приложений на основе контейнеров в любом масштабе и для управления ими. Kubernetes управляет кластерами вычислительных инстансов Amazon Elastic Compute Cloud (EC2) и запускает на них контейнеры, выполняя процедуры развертывания, обслуживания и масштабирования. Kubernetes позволяет запускать любые приложения на основе контейнеров с использованием одного и того же инструментария как локально, так и в облаке.
AWS упрощает использование Kubernetes в облаке. Для этого предлагается масштабируемая инфраструктура виртуальных машин с высоким уровнем доступности, разработанные сообществом средства интеграции с сервисами и управляемый сервис Amazon Elastic Kubernetes Service (EKS), сертифицированный на совместимость с Kubernetes.
КАК РАБОТАЕТ KUBERNETES
Kubernetes управляет кластером вычислительных инстансов и планирует запуск контейнеров в этом кластере в зависимости от доступных вычислительных ресурсов и требований каждого контейнера к ресурсам. Контейнеры объединяются в логические группы – так называемые «поды». В рамках пода можно запускать и масштабировать один или несколько контейнеров.
Программное обеспечение плоскости управления Kubernetes определяет время и место запуска подов, управляет маршрутизацией трафика и масштабирует поды в зависимости от нагрузки или других заданных метрик. Kubernetes автоматически запускает поды в кластере в зависимости от их требований к ресурсам и автоматически перезапускает поды в случае отказа самих подов или инстансов, на которых они запущены. Каждому поду Kubernetes присваивается IP-адрес и одно имя DNS, которое Kubernetes применяет для связи между сервисами и распределения внешнего трафика.
ПРЕИМУЩЕСТВА ИСПОЛЬЗОВАНИЯ KUBERNETES
Kubernetes – проект с открытым исходным кодом, поэтому его можно использовать для запуска приложений на основе контейнеров, не меняя текущие операционные инструменты. Поддержкой Kubernetes занимается большое сообщество волонтеров, поэтому решение постоянно развивается. Кроме того, многие другие проекты с открытым исходным кодом и поставщики разрабатывают и поддерживают программное обеспечение, совместимое с Kubernetes, что позволяет оптимизировать и расширять архитектуру приложений.
ЗАПУСК ПРИЛОЖЕНИЙ В ЛЮБОМ МАСШТАБЕ
Kubernetes позволяет создавать сложные приложения на основе контейнеров и запускать их в любом масштабе в кластере серверов.
УДОБНОЕ ПЕРЕМЕЩЕНИЕ ПРИЛОЖЕНИЙ
Kubernetes позволяет эффективно переносить приложения на основе контейнеров с локальных машин, на которых ведется разработка, в облако для рабочего развертывания с использованием одних и тех же операционных инструментов.
ЗАПУСК В ЛЮБОМ МЕСТЕ
Вы можете запускать на AWS масштабируемые кластеры Kubernetes с высокой доступностью, сохраняя при этом полную совместимость с локальными развертываниями Kubernetes.
РАСШИРЕНИЕ ФУНКЦИОНАЛЬНЫХ ВОЗМОЖНОСТЕЙ
Kubernetes – это проект с открытым кодом, поэтому добавлять в систему новые возможности не составляет труда. Большое сообщество индивидуальных разработчиков и компаний создает расширения, средства интеграции и подключаемые модули, расширяя возможности для пользователей.
ИСПОЛЬЗОВАНИЕ KUBERNETES НА AWS
AWS упрощает использование Kubernetes. Можно самостоятельно управлять инфраструктурой Kubernetes в сервисе Amazon EC2 или воспользоваться сервисом Amazon EKS, который автоматически выделяет ресурсы для плоскости управления Kubernetes и управляет ею. В обоих случаях можно пользоваться разработанными сообществом эффективными средствами интеграции с сервисами AWS, включая Amazon Virtual Private Cloud (VPC), AWS Identity and Access Management (IAM), а также безопасной и масштабируемой средой AWS с высоким уровнем доступности.
ЕСЛИ ВЫ ХОТИТЕ… |
РЕКОМЕНДУЕМ ИСПОЛЬЗОВАТЬ | |
---|---|---|
Полностью управлять развертыванием Kubernetes. Использовать для выделения ресурсов и запуска Kubernetes мощные типы инстансов по своему выбору. | Amazon EC2 | |
Использовать Kubernetes без необходимости выделять ведущие инстансы и etcd или управлять ими. |
Amazon EKS | |
Хранить и шифровать образы контейнеров для быстрого развертывания, а также управлять ими. |
Amazon ECR |
Сотрудничество AWS с сообществом Kubernetes
AWS активно работает с сообществом разработчиков Kubernetes, внося вклад в развитие базового кода Kubernetes, чтобы пользователи Kubernetes могли воспользоваться всеми преимуществами сервисов и возможностей AWS.
Плагин CNI
Инструмент для подключения подов Kubernetes к сети с использованием эластичных сетевых интерфейсов на AWS.
External DNS
Инструмент, позволяющий настроить в Route 53 обнаружение сервисов для сервисов и объектов Ingress в Kubernetes.
SIG AWS
Управляемая сообществом группа по интересам (SIG), работа которой посвящена интеграции сервисов AWS с API Kubernetes.
TorchServe
Модель PyTorch служит платформой для развертывания обученных моделей машинного обучения.
ВОПРОСЫ И ОТВЕТЫ ПО KUBERNETES
Подробнее о Kubernetes на AWS
Подробнее о контейнерах в AWS