Время окончания очистки узла Prometheus

Я пытаюсь выяснить, как я могу заставить prometheus очищать время завершения, в частности время, когда узел был остановлен с отметкой времени UNIX, узла внутри кластера kubernetes. Я использую метрики состояния kube для экспорта информации об узле, однако в документации нет упоминания о времени завершения, как в случае с подами.

Мне интересно, нужно ли мне очищать метрику датчика kube_node_status_condition и просто знать, когда изменяется статус. Однако я не уверен, какой статус я бы искал в этом случае.

Дайте мне знать, если потребуется дополнительная информация.

Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Kubernetes - это портативная, расширяемая платформа с открытым исходным кодом для управления контейнерными рабочими нагрузками и сервисами, которая...
0
0
95
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Если узел не нужен более 10 минут, он будет закрыт. Средство автомасштабирования кластера завершает непустой узел, чтобы снизить риск создания новых незапланированных модулей.

Как только узел завершается, следующий узел будет в рабочем состоянии, если он также не нужен более 10 минут и не зависит от тех же узлов в моделировании, но не вместе. Пустые узлы можно отключать массово, до 10 узлов за раз, если они не нужны.

Когда под удаляется, статус будет отображаться как завершение некоторыми командами kubectl. Этот завершающий статус не является одной из фаз Pod. Поду предоставляется срок для корректного завершения

Что касается времени завершения, по умолчанию у модулей есть 10-минутное время постепенного завершения (настраивается с помощью --max-graceful-termition-sec). Если модуль не будет остановлен в течение этих 10 минут, узел будет остановлен.

Спасибо за ответ! Однако я думаю, что я сформулировал свой вопрос несколько плохо. В частности, я ищу точное время, когда статус узла перешел на завершение или был удален из кластера, аналогично тому, как работает метрика Pod времени завершения. Я не смотрю, сколько времени потребуется узлу, чтобы покинуть кластер.

Daniel Wasserlauf 11.11.2022 17:06

Узлу потребуется 30 секунд для завершения работы после того, как он переместится в статус завершения.

Sai Chandini Routhu 15.11.2022 14:44

Хорошо, но из этого ответа я получаю то, что нет конкретной записанной временной метки unix, о которой вы знаете, только ожидаемое состояние после изменения статуса на завершено. Поэтому мне нужно было бы отслеживать время изменения статуса, а затем экстраполировать точное время завершения. Дайте мне знать, если вы думаете, что это правильно или нет.

Daniel Wasserlauf 16.11.2022 01:33

Да, вы правы, будет задержка из-за переключения контекста. Таким образом, общее время завершения равно задержке + время выполнения процесса.

Sai Chandini Routhu 16.11.2022 14:14

Похоже, теперь есть экспериментальная функция, в которой это доступно: github.com/kubernetes/kube-state-metrics/issues/1889 Просто хотел сообщить вам, если вы можете отредактировать свой ответ, который может быть полезно для других.

Daniel Wasserlauf 30.11.2022 22:12

Другие вопросы по теме