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

LLMS index: [llms.txt](/llms.txt)

---

## Цілі

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

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

Цей посібник передбачає, що ви вже встановили `minikube`. Дивіться [minikube start](https://minikube.sigs.k8s.io/docs/start/) для інструкцій з встановлення.


<div class="alert alert-info" role="note"><h4 class="alert-heading">Примітка:</h4>Виконуйте лише інструкції з <strong>кроку 1: Встановлення</strong>. Решта покривається в цьому посібнику.</div>


Вам також потрібно встановити `kubectl`. Дивіться [Встановлення інструментів](/docs/tasks/tools/#kubectl) для інструкцій з встановлення.

Команди оболонки в цьому посібнику використовують синтаксис оболонки POSIX, який підтримується стандартними оболонками у більшості систем Linux та macOS (наприклад, bash, zsh або sh). Користувачі Windows повинні використовувати оболонку, сумісну з POSIX, таку як [Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/install) або [Git Bash](https://gitforwindows.org/), щоб виконувати команди у наведеному вигляді. Команди, що використовують `export`, `$()` та подібні конструкції, **не** сумісні з PowerShell або командним рядком Windows.

## Kubernetes кластери {#kubernetes-clusters}

<div class="alert alert-primary" role="alert">


_Kubernetes — це платформа промислового класу з відкритим вихідним кодом, яка організовує розміщення (планування) та виконання контейнерів застосунків всередині та поміж кластерами компʼютерів._
</div>


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

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

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

### Схема кластера {#cluster-diagram}



<figure>
    <img src="/docs/tutorials/kubernetes-basics/public/images/module_01_cluster.svg"/> 
</figure>

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

<div class="alert alert-primary" role="alert">


_Панелі управління керують кластером, а вузли призначені для запуску застосунків._
</div>


**Вузол (Node) — це віртуальна машина або фізичний компʼютер, що виступає у ролі робочої машини в кластері Kubernetes.** Кожен вузол має kubelet — агента для управління вузлом та обміну даними з панеллю управління Kubernetes. Також на вузлі мають бути встановлені інструменти для виконання операцій з контейнерами, такі як <a class='glossary-tooltip' title='Середовище виконання контейнера з акцентом на простоту, надійність та переносимість.' data-bs-toggle='tooltip' data-bs-placement='top' href='https://containerd.io/docs/' target='_blank' aria-label='containerd'>containerd</a> або <a class='glossary-tooltip' title='CRI-O — це легке середовище виконання контейнерів, спеціально розроблене для Kubernetes.' data-bs-toggle='tooltip' data-bs-placement='top' href='https://cri-o.io/#what-is-cri-o' target='_blank' aria-label='CRI-O'>CRI-O</a>. Кластер Kubernetes, що обслуговує операційний трафік має складатися як мінімум із трьох вузлів. Якщо один вузол вийде з ладу, втрачається як член [etcd](/docs/concepts/architecture/#etcd), так і екземпляр панелі управління, що ставить під загрозу потрібну наявність зарезервованих ресурсів. Ви можете зменшити цей ризик шляхом додавання більшої кількості вузлів панелі управління.

Коли ви розгортаєте застосунки в Kubernetes, ви наказуєте панелі управління запустити контейнери застосунку. Панель управління розподіляє (планує) контейнери для запуску на вузлах кластера. **Компоненти на рівні вузла, такі, як kubelet, спілкуються з панеллю управління за допомогою [API Kubernetes](/docs/concepts/overview/kubernetes-api/)**, який надається панеллю управління. Кінцеві користувачі також можуть використовувати API Kubernetes для взаємодії з кластером.

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

## Створення кластера Minikube {#create-a-minikube-cluster}

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

```shell
minikube start
```

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

```shell
minikube status
```

Для повного проходження, включаючи розгортання вашого першого застосунку та ознайомлення з Kubernetes Dashboard, дивіться підручник [Привіт Minikube](/docs/tutorials/hello-minikube/).

## Що далі

* Розділ [Розгортання застосунку](/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/).
* Дізнайтесь більше про [Архітектуру кластера](/docs/concepts/architecture/).
