# Lifecycle

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

---

Section pages:

- [Eviction](/uk/docs/reference/kubernetes-api/lifecycle/eviction-v1alpha1/): Eviction ініціює процес виселення, який в ідеалі повинен призвести до коректного виселення .spec.target (наприклад, завершення поду).

Контролер evictionrequest спостерігає за намірами всіх EvictionRequest і перетворює їх на Eviction. Він керує життєвим циклом Eviction. Запитувачі зберігаються в .status.requesters навіть після відкликання їхнього запиту. Якщо всі запитувачі відкличуть свій намір виселення для спільної цілі, виселення буде скасовано. Після видалення всіх EvictionRequest, що відповідають .spec.target цього Eviction, обʼєкт Eviction врешті-решт буде прибрано збирачем сміття.

Якщо ціллю є под, .status.targetResponders заповнюється з Pod.spec.evictionResponders.

Відповідачі повинні спостерігати та спілкуватися через .status, щоб допомогти з виселенням цілі, коли вони бачать свій стан == Active у .status.targetResponders. Структура ResponderStatus потім повинна періодично оновлюватися для вказівки прогресу або завершення процесу виселення кожним відповідачем у .status.responders. Якщо .status.responders[].heartbeatTime не оновлюється протягом терміну heartbeat, визначеного API Eviction (наразі 20 хвилин), виселення передається наступному відповідачу з нижчим пріоритетом.

Якщо інших відповідачів немає і ціллю є под, останній типовий імперативний відповідач imperative-eviction.k8s.io/evictor з пріоритетом 100 виселить под за допомогою імперативного API Eviction (pods/&lt;name&gt;/eviction subresource).
- [EvictionRequest](/uk/docs/reference/kubernetes-api/lifecycle/eviction-request-v1alpha1/): EvictionRequest визначає запит, який має призвести до коректного виселення .spec.target (наприклад, завершення поду).

Контролер evictionrequest відстежує наміри всіх запитів EvictionRequest і перетворює їх на об’єкти Eviction.

- .spec.requester встановлюється як мітка об’єкта Eviction для полегшення пошуку.
- Кожній цілі може бути призначено набір реагувальників. Об’єкти Eviction відстежуються цими реагувальниками, які реалізують логіку виселення та оновлюють статус об’єкта Eviction відповідно до прогресу.

Існує звʼязок «багато-до-багатьох» між EvictionRequest та Eviction загалом. І «багато-до-одного», якщо ціллю є под.

Якщо всі заявники відкликують свій намір виселення для спільної цілі, виселення буде скасовано. Видалення EvictionRequest також зараховується як відкликання. Після видалення всіх EvictionRequest для певної цілі відповідні Eviction врешті-решт будуть прибрані збирачем сміття.
