Kubernetes (произносится «CUBE-A-NET-IS») — это платформа с открытым исходным кодом, которая помогает управлять контейнерными приложениями, такими как Docker.

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

Эта статья поможет вам понять основные концепции Kubernetes и почему он вызывает такой сейсмический сдвиг на рынке серверов, когда поставщики, а также облачные провайдеры, такие как Azure и Google Cloud, предлагают услуги Kubernetes.

Kubernetes краткая история

Kubernetes — это один из подарков Google сообществу разработчиков открытого кода.

Контейнерная платформа была частью Borg, внутреннего проекта Google на протяжении более десяти лет.

Борг позволил Google управлять сотнями и даже тысячами задач (называемых «Borglets») из разных приложений в кластерах.

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

Такая же архитектура была популярна у других компаний, которые искали способы эффективного обеспечения высокой доступности.

Где-то в 2015 году, как только вышел Kubernetes 1.0, Google отказался от контроля над этой технологией.

У Kubernetes теперь есть фонд под названием Cloud Native Computing Foundation (CNCF), который сам является частью Linux Foundation.

Как работает Kubernetes

Заимствуя идеи проекта Borg, «borglets» уступили «pods», которые являются планировщиками, в которых размещаются контейнеры.

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

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

Кроме того, они находятся внутри машин (или виртуальных машин), называемых «worker nodes», также известными как «minions».

С этого момента «master node» управляет всем кластером, организуя контейнеризацию с использованием API Kubernetes.

Docker может работать на каждом рабочем узле, где он может загружать образы и запускать контейнеры.

Чтобы получить соединение API в кластере Kubernetes, используется синтаксис CLI, называемый kubectl.

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

Освоение kubectl требует немного обучения, но как только вы научитесь, вы можете начать использовать кластеры Kubernetes.

Kubernetes, а также Docker написаны на языке программирования Go.

Приложения

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

Некоторые из общих применений Kubernetes включают в себя:

  • Управление серверами приложений. Большинство серверов приложений требуют безопасности, управления конфигурацией, обновлений и многого другого, которые могут работать с использованием Kubernetes.
  • С Kubernetes вам не нужно беспокоиться о развертывании продуктов или откатах по нескольким конечным узлам.
  • Развертывание приложений без сохранения состояния. Веб-приложения теперь доступны для удаленного управления. Например, Kubernetes может помочь вам запустить серверы Nginx, используя развертывание приложения без сохранения состояния.
  • Развертывание приложений с отслеживанием состояния. Kubernetes может работать с базой данных MySQL.
  • Хранение объектов API. Для различных потребностей в хранении Kubernetes обеспечивает идеальное хранение, поскольку использует принципы контейнеров.
  • Из коробки. Kubernetes очень полезен в готовых приложениях, таких как обнаружение сервисов, ведение журналов, мониторинг и аутентификация.
  • IoT приложения. Kubernetes находит все более широкое применение в IoT из-за его масштабирования.
  • Вы можете запускать Kubernetes где угодно

В итоге

Задача Kubernetes — максимально использовать вычислительные ресурсы.

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

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

Чтобы узнать больше о Kubernetes, посетите официальный сайт, который содержит учебные пособия.

 

Please follow and like us:

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