В статье описывается, как платформа контейнеров Titus справляется с проблемой "осиротевших" pod'ов, возникающих из-за сбоев ядра Linux (kernel panic). Такие pod'ы не завершаются корректно, что особенно критично для batch-задач, требующих точного кода завершения.
Для решения этой проблемы Netflix внедрил механизм аннотаций
pod-termination-reason, позволяющий фиксировать причину завершения pod'а. При возникновении kernel panic используется модуль netconsole, который отправляет UDP-пакет с последним сообщением ядра перед сбоем. Специальный контроллер Kubernetes перехватывает эти пакеты, идентифицирует соответствующий узел и связанные с ним pod'ы, аннотирует их с указанием причины сбоя и удаляет, обеспечивая прозрачность и оперативность в обработке подобных ситуаций.Такой подход повышает наблюдаемость и надежность платформы, предоставляя пользователям информацию о причинах сбоев и позволяя быстрее реагировать на проблемы.
https://netflixtechblog.com/kubernetes-and-kernel-panics-ed620b9c6225
📲 Мы в MAX
#devops #девопс
Подпишись 👉@i_DevOps
