Что такое Kubernetes?

Кубернетес (Kubernetes) появился в далеком 2014-ом с открытием Google’ом исходного кода этого проекта для своих же приложений. Прошло 8 лет, и Кубернетес стал самым успешным и популярным open-sourse проектом в мире. Подавляющее большинство компаний выстраивают свою инфраструктуру именно на нем. Это касается и небольших проектов, и громадных кластеров с облаками обеспечивающими беспрепятственный и постоянный доступ к своим серверам. Так что же такое Кубернетес, что он делает и чем может быть полезен конкретно для вашего проекта?

Само слово восходит к греческим корням, и в переводе означает того, кто управляет чем либо, или просто — управляющий. Близкими по значению будут такие слова как капитан, пилот, водитель. Чтобы каждый раз не писать слово целиком используется его аббревиатура – K8S, где K и S начальная и конечная буквы, а 8 означает количество знаков между ними.

Для чего нужен Kubernetes?

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

  • Автоматизации развертывания приложений
  • Автоматизации масштабирования приложений
  • Автоматизации управления приложениями

Короче весь K8S это чистой воды автоматизация ваших контейнеров.

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

Структура K8S

Основным компонентом K8S является Кластер (Cluster). Создается K8S Кластер из различных серверов (Nodes). Nodes бывают двух видов:

  1. Worker Node или рабочий сервер, на котором запускаются и работают ваши контейнеры. Можно сравнить его с обычным портовым грузчиком, «работягой», выполняющим физическую работу.
  2. Master Node – сервер, который управляет работой Worker Nodes. Возвращаясь к житейским аналогам, это такой «менеджер» контролирующий работу портовых грузчиков.

Когда вы запускаете команды управления (CLI), они посылаются именно на Master Node. Напрямую с Worker Node команды не контактируют. Другими словами вы отдаете распоряжения о погрузке контейнеров «менеджеру» в порту и решаете все рабочие моменты через него, а уже он рулит обычными «работягами».

Минимальный кластер K8S состоит из одного Master Node, и одного Worker Node, поэтому обычно кластеры работают с одним «менеджером», и несколькими «работягами». Например: у вас, допустим 4 гигабайта памяти и 2 процессора на одном Worker Node, на другом столько-то, на третьем столько-то и так далее, а всего их, пусть будет 4. Master Node, как настоящий «менеджер», знает какими рабочими ресурсами он обладает, и самостоятельно принимает решение кому из «работяг» и какую нагрузку дать, в соответствии с задачами которые вы перед ним поставили.

Теперь вы можете смело запускать докер контейнеры на вашем кластере. Берутся они на Docker image registry и могут храниться на:

  • Docker Hub
  • Aws Container Registry
  • Google Container Registry
  • Azure Container Registry

В общем, создали вы докер имидж (Docker Image) на своем компьютере, запушили (от слова push) в один из этих репозиториев и запускаете свой K8S кластер. И уже непосредственно в самом кластере показываете «менеджеру» где брать контейнеры. А дальше он сам разберется, каким образом и как распределить нагрузку между «работягами» самым оптимальным способом. Такая вот получается экономия вашего времени и усилий.

Какие существуют K8S Cloud сервисы?

На данный момент все большие, и не очень, Cloud сервисы поддерживают K8S. Она включает в себя не только предоставление вам K8S кластера, но так же и полное управление им.

Из самых значимых можно выделить:

  1. AWS – Amazon Elastic Kubernetes Service (EKS)
  2. GCP – Google Kubernetes Engine (GKE)
  3. Azure – Azure Kubernetes Service (AKS)
  4. Ali Baba – Container Service for Kubernetes (ACK)
  5. Yandex – Yandex Managed Service for K8S

Подведем итоги

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

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *