Використання Minikube для створення кластера

Використання Minikube для створення кластера

Цілі

  • Дізнайтесь, що таке кластер Kubernetes.
  • Дізнайтесь, що таке Minikube.
  • Запустіть кластер Kubernetes на вашому компʼютері.

Перш ніж ви розпочнете

Цей посібник передбачає, що ви вже встановили minikube. Інструкції зі встановлення див. у minikube start.

Примітка:

Виконуйте лише інструкції з кроку 1: Встановлення. Решту описано в цьому посібнику.

Вам також потрібно встановити kubectl. Інструкції зі встановлення див. у розділі Встановлення інструментів.

Команди оболонки в цьому посібнику використовують синтаксис оболонки POSIX, який підтримується стандартними оболонками у більшості систем Linux та macOS (наприклад, bash, zsh або sh). Користувачі Windows повинні використовувати оболонку, сумісну з POSIX, таку як Windows Subsystem for Linux (WSL) або Git Bash, щоб виконувати команди у наведеному вигляді. Команди, що використовують export, $() та подібні конструкції, не сумісні з PowerShell або командним рядком Windows.

Кластери Kubernetes

Kubernetes керує високодоступним кластером компʼютерів, зʼєднаних для роботи як єдине ціле. Абстракції в Kubernetes дозволяють розгортати контейнеризовані застосунки в кластері, не привʼязуючи їх до певних машин. Щоб скористатися цією новою моделлю розгортання, застосунки повинні бути упаковані таким чином, щоб відокремити їх від хостів: вони повинні бути контейнеризовані. Контейнеризовані застосунки є більш гнучкими та доступними, ніж у минулих моделях розгортання, коли застосунки встановлювалися безпосередньо на відповідні машини як пакунки, глибоко інтегровані в хост. Kubernetes автоматизує розподіл та планування контейнерів застосунків у кластері у більш ефективний спосіб. Kubernetes є платформою з відкритим кодом, готовою до промислового використання.

Кластер Kubernetes складається з двох типів ресурсів:

  • Панелі управління (Control Plane), що координує роботу кластера
  • Вузлів (Nodes) — робочих машин, на яких працюють застосунки

Схема кластера

Панель управління (Control Plane) відповідає за керування кластером. Вона координує всі процеси у вашому кластері, як-от планування застосунків, підтримання їх бажаного стану, масштабування застосунків і впровадження нових оновлень.

Вузол (Node) — це віртуальна машина або фізичний компʼютер, що виступає в ролі робочої машини в кластері Kubernetes. Кожен вузол має kubelet — агент для керування вузлом і взаємодії з панеллю управління Kubernetes. Також на вузлі мають бути інструменти для виконання операцій з контейнерами, як-от containerd або CRI-O. Поширена й підтримувана модель розгортання запускає компоненти панелі управління Kubernetes на виділених вузлах панелі управління.

Коли ви розгортаєте застосунки в Kubernetes, ви кажете панелі управління запустити контейнери застосунку. Панель управління планує запуск контейнерів на вузлах кластера. Компоненти рівня вузла, як-от kubelet, взаємодіють з панеллю управління через API Kubernetes, який надає панель управління. Кінцеві користувачі також можуть безпосередньо використовувати API Kubernetes для взаємодії з кластером.

Кластер Kubernetes можна розгорнути як на фізичних, так і на віртуальних машинах. Щоб розпочати розробку з Kubernetes, ви можете скористатися Minikube. Minikube — це спрощена реалізація Kubernetes, яка створює віртуальну машину на вашому локальному компʼютері та розгортає простий кластер, що містить лише один вузол. Minikube доступний для Linux, macOS і Windows. Minikube CLI надає основні операції початкового налаштування (bootstrapping) для роботи з кластером, зокрема start, stop, status і delete.

Створення кластера Minikube

Щоб запустити кластер Minikube:

minikube start

Щоб перевірити стан кластера:

minikube status

Повний покроковий приклад, зокрема розгортання вашого першого застосунку та ознайомлення з Kubernetes Dashboard, див. у посібнику Привіт Minikube.

Що далі