k8s-image-availability-exporter
k8s-image-availability-exporter copied to clipboard
Отсутствуют все заявленные метрики
Собирал релиз с мастер ветки, ставил через хелм чарт использую такие values: k8sImageAvailabilityExporter: image: repository: xxxxxxxxxx.dkr.ecr.us-east-1.amazonaws.com/image-availability-exporter tag: master-1
В метриках которые я получаю с сервиса во такой вывод с контейнера:
HELP k8s_image_availability_exporter_completed_rechecks_total Number of image rechecks completed.
TYPE k8s_image_availability_exporter_completed_rechecks_total counter
k8s_image_availability_exporter_completed_rechecks_total 5174
HELP log_statements_total Number of log statements, differentiated by log level.
TYPE log_statements_total counter
log_statements_total{level="info"} 2
HELP process_cpu_seconds_total Total user and system CPU time spent in seconds.
TYPE process_cpu_seconds_total counter
process_cpu_seconds_total 3398.21
HELP process_max_fds Maximum number of open file descriptors.
TYPE process_max_fds gauge
process_max_fds 1.048576e+06
HELP process_open_fds Number of open file descriptors.
TYPE process_open_fds gauge
process_open_fds 12
HELP process_resident_memory_bytes Resident memory size in bytes.
TYPE process_resident_memory_bytes gauge
process_resident_memory_bytes 9.2213248e+07
HELP process_start_time_seconds Start time of the process since unix epoch in seconds.
TYPE process_start_time_seconds gauge
process_start_time_seconds 1.65426765079e+09
HELP process_virtual_memory_bytes Virtual memory size in bytes.
TYPE process_virtual_memory_bytes gauge
process_virtual_memory_bytes 8.28502016e+08
HELP process_virtual_memory_max_bytes Maximum amount of virtual memory available in bytes.
TYPE process_virtual_memory_max_bytes gauge
process_virtual_memory_max_bytes 1.8446744073709552e+19
HELP promhttp_metric_handler_requests_in_flight Current number of scrapes being served.
TYPE promhttp_metric_handler_requests_in_flight gauge
promhttp_metric_handler_requests_in_flight 1
HELP promhttp_metric_handler_requests_total Total number of scrapes by HTTP status code.
TYPE promhttp_metric_handler_requests_total counter
promhttp_metric_handler_requests_total{code="200"} 3651 promhttp_metric_handler_requests_total{code="500"} 0 promhttp_metric_handler_requests_total{code="503"} 0
Будто RBAC некорректен. Есть ли что-то в логах?
I installed via helm using my namespace prometheus role and rolebinding exist in namespace and look ok...
I see only two line in logs`s pod time="2022-06-03T14:47:31Z" level=info msg="Waiting for cache sync" time="2022-06-03T14:47:32Z" level=info msg="Caches populated successfully"
@zuzzas Проверили RBAC - все записалось так, как указано в чарте. Проверили k8s audit logs - там тоже нет ошибок. Есть логи, что сервисаккаунт получает доступ к необходимым ресурсам (деплойменты, кронджобы и т.д.). По логам видно, что возвращается 200 статус в следующем виде:
{metadata={}, code=200, message=Connection closed early, status=Success}
Настораживает сообщение Connection closed early, status=Success . При этом ответ на запрос метадаты приходит в ту же секунду, когда запрос отправляется. Т.е. сообщение отваливается не по таймауту
@granescb Кажется, есть идеи. Подскажи версию Kubernetes, пожалуйста.
@zuzzas v1.18.6
@zuzzas что-то получилось?
@zuzzas Any updates here?
Скорее всего проблема возникает, когда не указывается --ignored-images
Здесь парсинг
Здесь обработка
Мы тоже натолкнулись на эту проблему и после указания несуществующего image в ignored-images метрики появились
Если значение для опции ignored-images
отсутствует, то в итоге получается массив из одного пустого regex выражения, с которым происходит matching любого docker image и они все пропускаются
@verdel Возможно пофиксить?
@verdel Возможно пофиксить?
Я уже закинул PR #57
@zuzzas можно попросить о ревью PR #57?