Базовая архетиктура
Рассмотрим 2 вида узлов 1 - master 2 - slave
рабочие сервисы (node \ узел ) сервис кластера выполняющий всю работу
На каждой ноде должны быть установлены минимум эти компоненты!
Kublet процесс самого kubernetes правляет и планирует
среда выполнения контейнера например Docker но может быть и любая другая технология.
отвечает за пересылку запросов от служб к модулям Kube Proxy и логику отправляющую запрос на ту же node которой был отправлен запрос. Таким образом мы избигаем большого количества запросов и расходы на сеть
Взаимодействие с кластером....
как опеределяетья время запуска приложения
какие процессы отслеживаются если реплика или бд умерает и т.д а затем пеерносит или запускает снова
когда происходит добовление нового сервера как он присоеденяеться к кластеру чтобы запускать на нем модули и т.д Все эти процессы управления управляються главными узлами или Master node 4 процесса запущены на всех master node которые управляют состоянием кластера и рабочими node
API Server для взаимодействия с кластером CLI или GUI. Так же выступает в роле Getkeeper для аутентификации
Scheduler или планировщик решает на каком узле будет запущен процесс нового модуля от master node идет запрос в slave дергает Kublet и запускает нужный нам процесс
controller manager когда модули умерают нужно перенести их когда это будет возможно. он выполняет эту роль. Отслеживает состояние кластра. Для этого он отпраляет запрос в scheduler планировку этих мертвых модулей
ETCD - хранилище ключевых значений состояние кластера (мозг кластера) каждое назначение в кластере, когда модуль назначаеться или умирает все эти значения сохраняются в ETCD. Но в нем не храняться фактические данные приложения.
Exumple Cluster Set-Up 2 master node требуеться меньше ресурсов 3 worker nodes требуеться больше ресурсов
Last updated