CPU, а перезапускать поды нельзя — знакомая история. Обычно дальше начинается танец с ephemeral containers и пересборкой образа с профайлером внутри.Google выложил app-toolbox — кастомную сборку штатного COS Toolbox образа для хостов на Container-Optimized OS (ноды GKE, обычные GCE VM), которая снимает профили с живых контейнеров, ничего не перезапуская:-
Java — JFR через jattach, zero-copy, работает даже с read-only ФС контейнера-
Python — py-spy с --nonblocking и --idle-
Golang — on-CPU профилирование через bpftrace -
Node.js — off-CPU профилирование на eBPF- системная диагностика:
biolatency, tcpretrans, offcputime в CO-RE варианте, то есть без kernel headersВсё это заворачивается интерактивным скриптом
app-collector, результат складывается в .tar.xz с SHA-256.Идеи и бинари можно переиспользовать для собственной реализации в рамках своего окружения ;)