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

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

Kubernetes Лабораторна 62: LimitRange та дефолтні ресурси

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

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

Тема: LimitRange та дефолтні ресурси

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

Мета: навчитися задавати мінімальні та максимальні ресурси для контейнерів через limitrange.



Крок 1. Створити namespace limits-demo.

Команда: kubectl create namespace limits-demo

Пояснення: у ньому ми включимо limitrange.



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

Опис: тип Container з min і max для cpu та памʼяті, а також default requests і limits.

Пояснення: pod без вказаних ресурсів отримають значення за замовчуванням.



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

Команда: kubectl apply -f lim-range.yaml -n limits-demo

Пояснення: тепер кожен новий pod буде перевірятися на відповідність правилам.



Крок 4. Створити pod без зазначених ресурсів.

Команда: kubectl run no-res --image=nginx -n limits-demo

Пояснення: kube додасть дефолтні значения з limitrange.



Крок 5. Переглянути опис pod.

Команда: kubectl get pod no-res -n limits-demo -o yaml | grep -A5 resources

Пояснення: видно які requests і limits були підставлені автоматично.



Крок 6. Спробувати створити pod з ресурсами нижче min.

Пояснення: очікується помилка валідації від api сервера.



Крок 7. Проаналізувати повідомлення про помилку.

Пояснення: запамʼятай формат помилок які повертає admission.



Крок 8. Створити pod який перевищує max.

Пояснення: знову має бути помилка зі згадкою limitrange.



Крок 9. Виправити pod щоб він вписувався у діапазон.

Команда: kubectl apply -f pod-ok.yaml -n limits-demo

Пояснення: перевір що він успішно запускається.



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

Завдання: опиши як поєднати limitrange і resourcequota для контролю dev namespace.