Программное обеспечение

Kubernetes (K8s) – что это за платформа и зачем она нужна

Обзор программной платформы для автоматического управления контейнеризованными приложениями

Kubernetes (K8s) – что это за программная платформа и для чего она нужна

Kubernetes (K8s)
Kubernetes (K8s)

Kubernetes (K8s) – это специальная программная платформа для автоматического управления контейнеризованными приложениями.

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

Что делает Kubernetes?

Kubernetes часто упоминается наряду с Docker, но каждый из них выполняет разные задачи. Docker упаковывает приложения и все их зависимости в отдельные файлы.

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

Посмотрите надежные ноутбуки на AliExpress или Яндекс.Маркете!

  • Kubernetes (K8s) – это механизм оркестровки, предоставляющий платформу для запуска образов Docker. Он поддерживает использование изображений Docker. Они на сегодня являются самым популярным контейнерным форматом.

Как работает платформа Kubernetes (K8s)

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

  • Главный сервер Кубернетес будет управлять кластером рабочих узлов. Эти рабочие узлы могут запускать любое количество контейнеров, которые упакованы в модули Kubernetes.

Главный сервер обрабатывает развертывание модулей на рабочих узлах и пытается поддерживать заданную конфигурацию.

Если ваше приложение получает больше трафика, платформа Kubernetes (K8s) может предоставить больше ресурсов, и если на одном из ваших серверов возникнут проблемы, она может переместить модули на этом сервере в остальную сеть, пока вы устраняете проблему.

Главный сервер управляет кластером рабочих узлов, которые запускают любое количество контейнеров, упакованных в модули.

Рабочие узлы Kubernetes, на которых запущено несколько модулей

Но в то время как Kubernetes предоставляет множество функций, таких как как услуга PaaS, на самом деле она не предоставляет никакого оборудования.

Кубернетес
Кубернетес

Это чистое программное обеспечение с открытым исходным кодом. PaaS-системы, такие, как AWS EKS, построены поверх Kubernetes и во многих случаях предоставляют ему возможность выделять больше ресурсов для себя (автоматическое масштабирование).

Зачем использовать Kubernetes?

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

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

  • Образы Docker, запускаемые на платформе, отделены от самой платформы и понятия не имеют, что они запускаются в Kubernetes pods.

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

Быстрый цикл разработки оказывает большее давление на вашу операционную команду, заставляя ее беспокоиться о фактическом запуске вашего кода.

  • Если у вас возникают проблемы с управлением установкой и конфигурацией вашего приложения на ваших серверах каждый раз, когда ваш код нуждается в обновлении, Kubernetes (K8s) может сделать это намного быстрее.

И если вам действительно просто не нравится настраивать серверы и управлять ими, управляемый сервис Kubernetes, такой, как AWS EKS, может решить эту проблему и сделать ваше приложение “бессерверным”.

Как мне начать пользоваться?

Kubernetes не зависит от сервиса, поэтому вы можете настроить его самостоятельно на своих собственных серверах, если хотите.

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

  • Все они будут совместимы с Kubernetes (K8s), так что вы сможете переключаться между ними с минимальными проблемами. Рекомендую обратить внимание на услуги сайта https://cloud.obit.ru/, как раз по данной теме!

Если вы хотите настроить его самостоятельно, вы можете сделать это с помощью kubeadm toolbox. Вам понадобится главная машина для запуска kubeadm.

Она будет управлять одной или несколькими рабочими машинами, на которых запущен kubelet. Кстати, вы можете попробовать сделать установку kubernetes по ссылке https://cloud.obit.ru/kubernetes/.

  • Главная машина управляет развертыванием контейнера на рабочих машинах. Вы можете прочитать их руководство по началу работы в документах платформы для получения дополнительной информации, но будьте готовы к ночи настройки.

architecture-kubernetes

AWS EKS

AWS EKS – это решение Amazon, которое позволяет запускать приложения Kubernetes в нескольких зонах доступности AWS. EKS вообще не требует большой настройки.

Все, что вам нужно сделать, это предоставить новые узлы. Вы платите 0,20 доллара в час (150 долларов в месяц) за каждый работающий кластер, а также платите за ресурсы EC2 и EBS, потребляемые вашими рабочими узлами. AWS EKS может запускать приложения Kubernetes в нескольких зонах доступности AWS

  • Если вам не нужен полноценный кластер, но вы все равно хотели бы запускать контейнерные приложения, вы можете воспользоваться сервисом AWS Elastic Container Service (ECS). ECS запускает контейнеры Docker и имеет свою собственную систему масштабирования.

Служба Azure Kubernetes от Microsoft (AKS)

Служба Azure Kubernetes от Microsoft (AKS) – это управляемая служба Кубернетес, которая хорошо интегрируется с конвейером Azure, упрощая переход от кода в системе управления версиями к контейнерам, развернутым в вашем кластере Kubernetes (K8s).

Google является первоначальным создателем “Кубернетес” поэтому естественно, они предлагают управляемый сервис через облачную платформу Google.

НА ГЛАВНУЮ

2 Комментариев

  1. Отличная платформа, но очень сложная….. Я разобрался не сразу)

Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Кнопка «Наверх»