Рубрики
Uncategorized

Архитектура Куберанес

Все, что вы знаете о монолитной архитектуре, но когда мы мигрируем в архитектуру Micro-Service, где … Tagged с Kubernetes, CDCI, DEVOPS.

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

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

Давайте посмотрим на архитектуру,

Kubernetes — это решение для оркестрации контейнера для развертывания приложений, масштабирования. Он был разработан Google, и теперь он поддерживается облачными нативными вычислениями Фонда.

Многие популярные облачные сервисы, такие как Google, Amazon, ETC, предлагают платформу на основе Kubernetes в качестве обслуживания или инфраструктуры в качестве службы, на котором Kubernetes развернут в качестве обслуживания платформы.

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

Кубернес Мастер —

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

etcd —

Это магазин данных о значении легкой ключей, который хранит детали конфигурации кластера. Это также представляет общее состояние кластера в любое время. Server API Kubernetes использует API EtCD Watch для мониторинга кластера и изменения конфигурации/обновления/понижения в соответствии с указанными правилами. Допустим, если Deployer установил пять экземпляров стручков, которые необходимо запустить, это сохраняется в ETCD. Если установлено, что запущены только 4 экземпляра, эта разница будет обнаружена путем сравнения с данными ETCD и Kubernetes создаст дополнительный экземпляр нового POD.

API Server —

API-сервер обслуживает API, используя json через http. API Server обрабатывает и подтверждает запросы на отдых и обновляет состояние объекта API в ETCD, поэтому он помогает клиентам настроить рабочие нагрузки и контейнеры на узлах рабочих.

Планировщик —

Планировщик выбирает незапланированные стручки узла. Он отслеживает ресурсы. Таким образом, на основе требований к ресурсам он может запланировать POD в узле.

Менеджер контроллера —

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

Узлы —

Узлы — это система, в которой развернуты контейнеры. Где работает Docker Image/Services. Содержит кублет, Kube-прокси, контейнер.

Кублет —

Kublet отвечает за работу/начало/остановку и поддержание узла и обеспечения контейнеров (PODS) на узле здоровы. Kubelet также контролирует состояние стручка, если каковеренности не в желаемом состоянии, он повторно развертывает тот же узел.

Статус узла проверяется в определенные секунды. Если он обнаружит сбой узла, контроллер репликации наблюдает этот изменение состояния и запускает POD на других здоровых узлах.

Kube-Proxy —

Это реализация сетевого прокси и балансировщик нагрузки. Он несет ответственность за маршрутизацию трафика для соответствующих контейнеров на основе IP и номера порта входящих запросов.

Контейнер Runtime —

Контейнер — это основной уровень микросервисов, который содержит приложения, библиотеки и зависимости. Он выставлен через внешний IP-адрес. Kubernetes поддерживает контейнеры Docker для запуска внутри POD.

POD —

POD — это подразделение планирования в Кубейнетах, Kubernetes содержит один или несколько, чем один контейнер и расположен на одном узле.

Каждый POD в Kubernetes присваивается уникальный IP-адрес в кластере, который позволяет приложениям использовать порты без риска конфликта.

Внутри стручка контейнеры ссылаются друг на друга на localhost. Но контейнер в одном POD не имеет способа напрямую подключить контейнер другого POD, для этого контейнер должен использовать IP-адрес POD.

Спасибо за блог!

Kpiteng |. Цифровая трансформация www.kpiteng.com/blogs |. hello@kpiteng.com Соединить |. Следуйте за нами на — LinkedIn |. Facebook |. Instagram.

Оригинал: «https://dev.to/kpiteng/kubernetes-architecture-45hp»