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

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

Kubernetes Лабораторна 98: PDB для stateful застосунків

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

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

Тема: Робота з Pod Disruption Budget для stateful сервісів

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

Мета: налаштувати pod disruption budget щоб не допустити одночасне падіння більшості replica.



Крок 1. Вибрати stateful сервіс з кількома replica.

Пояснення: наприклад база даних або черга.



Крок 2. Написати PodDisruptionBudget.

Пояснення: вкажи minAvailable або maxUnavailable відповідно до вимог.



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

Команда: kubectl apply -f pdb-stateful.yaml



Крок 4. Перевірити статус PDB.

Команда: kubectl get pdb

Пояснення: подивися скільки pod потрапляє під захист.



Крок 5. Спробувати drain ноду з частиною pod цього сервісу.

Команда: kubectl drain <node> --ignore-daemonsets

Пояснення: drain може бути заблокований через PDB.



Крок 6. Переглянути повідомлення kubectl.

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



Крок 7. Відмінити drain.

Команда: kubectl uncordon <node>



Крок 8. Налаштувати PDB для іншого сервісу з менш суворими вимогами.

Пояснення: порівняй поведінку при drain.



Крок 9. Продумати PDB для кожного критичного сервісу.

Пояснення: сформуй таблицю з параметрами.



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

Завдання: опиши як PDB впливає на планові роботи з нодами і оновлення кластера.