Kubernetes та його архітектура з компонентами

Давайте почнемо з основ

Що таке Kubernetes?
Kubernetes — це інструмент для оркестрації контейнерів з відкритим кодом. Він спрощує управління контейнеризованими додатками, автоматизуючи такі завдання, як масштабування, розгортання та балансування навантаження.

Чому вибирати Kubernetes замість лише Docker?
Docker чудово підходить для контейнеризації, але має обмеження в управлінні динамічним трафіком. Наприклад, якщо трафік на вашому сайті раптово зростає, контейнери Docker не можуть автоматично масштабуватися для обробки збільшеного навантаження.

Ось тут і приходить Kubernetes. Kubernetes автоматично керує такими завданнями, як масштабування pods або вузлів, щоб ваш додаток залишався чутливим навіть під час коливань трафіку.

pic

Архітектура Kubernetes з її компонентами

Компоненти Kubernetes

Kubernetes працює на архітектурі майстер-раб

Основні компоненти в Kubernetes
Kubernetes працює за архітектурою контрольної плати та робочого вузла. Основні компоненти:

Etcd: Розподілена база даних типу "ключ-значення", яка служить центральним сховищем даних для стану кластера та конфігурації.

API Server: Точка входу в кластер та фронт-контроль плати, яка відкриває API Kubernetes для управління. Це дозволяє клієнту спілкуватися з кластером за допомогою команд, таких як kubectl.

Scheduler: Призначає Pods вузлам на основі вимог до ресурсів, політик і доступності.

Controller Manager: Запускає різні контролери, такі як Node Controller (керує здоров'ям вузлів), Job Controller (керує ресурсами завдань) та Service Account Controller (керує обліковими записами служб). Він також забезпечує підтримку бажаного стану кластера Kubernetes.

Kubelet: Основний агент, що працює на кожному робочому вузлі, забезпечуючи, щоб контейнери в Pods були здорові та працювали відповідно до вказаних параметрів.

Kube-Proxy: Керує мережею Pod, включаючи маршрутизацію, мережеві правила та балансування навантаження.

Container Runtime: Керує життєвим циклом контейнерів на робочих вузлах. Прикладом може бути Docker.

Дякую, удачі!

Перекладено з: Kubernetes and its architecture with component

Leave a Reply

Your email address will not be published. Required fields are marked *