← До фільтрів та технологій

← До списку лабораторних по Kubernetes

Kubernetes Лабораторна 61: ResourceQuota для namespace

Технологія: Kubernetes

Номер лабораторної: 61 · Рівень: middle

Тема: ResourceQuota для namespace

Повний опис / сценарій лабораторної:

Мета: навчитися задавати ліміти на ресурси namespace через resourcequota.



Крок 1. Створити namespace team-quota.

Команда: kubectl create namespace team-quota

Пояснення: в цьому namespace будуть працювати поди певної команди.



Крок 2. Написати yaml для ResourceQuota.

Опис: обмеження requests.cpu, requests.memory, limits.cpu, limits.memory і кількість pod.

Пояснення: так ми контролюємо сумарні ресурси команди.



Крок 3. Застосувати ResourceQuota.

Команда: kubectl apply -f rq-team.yaml

Пояснення: квота починає діяти для namespace team-quota.



Крок 4. Подивитися поточний стан квоти.

Команда: kubectl get resourcequota -n team-quota

Пояснення: у колонках видно використані та лімітні значення.



Крок 5. Створити deployment з ресурсами нижче квоти.

Команда: kubectl apply -f deploy-small.yaml -n team-quota

Пояснення: поди мають створитися без помилок.



Крок 6. Створити ще один deployment який перевищить квоту.

Пояснення: наприклад сумарні requests памʼяті виходять за ліміт.



Крок 7. Перевірити помилку від api.

Команда: kubectl describe resourcequota -n team-quota

Пояснення: у статусі буде вказано які ресурси перевищені.



Крок 8. Відредагувати deployment щоб вписатися у квоту.

Пояснення: зменш requests або кількість replica.



Крок 9. Ще раз застосувати змінений deployment.

Команда: kubectl apply -f deploy-fixed.yaml -n team-quota

Пояснення: тепер створення має пройти успішно.



Крок 10. Міні звіт.

Завдання: опиши яку базову квоту ти задав би для dev і prod namespace.