Устранение ошибки Timed out waiting for the condition
при монтировании тома с большим количеством файлов
Статья создана
Обновлена 16 августа 2024 г.
Описание проблемы
При запуске пода возникает ошибка
Warning FailedMount 49s kubelet Unable to attach or mount volumes: unmounted volumes=[jenkins-home], unattached volumes jenkins-home jenkins config kube-api-access-2ldxk sc-config-volume admin-secret jenkins-additional-secrets jenkins-cache tmp-volume[]: timed out waiting for the condition
Диагностика и воспроизведение
Проанализируйте системные журналы:
journalctl -t kernel --no-pager --since "today"
journalctl --system --no-pager --since "today"
journalctl -u kubelet --no-pager --since "today"
В журналах системного сервиса kubelet в момент запуска проблемного пода появляется сообщение:
If the volume has a lot of files then setting volume ownership could be slow...
Решение
Причина долгого монтирования заключается в большом количестве файлов в целевой файловой системе. По умолчанию конфигурация fsgroup
рекурсивно устанавливается при каждом монтировании тома. Подробности по ошибке приведены на странице ее обсуждения в git-репозитории Kubernetes
Рекомендуем настроить контекст безопасности для пода с использованием следующей инструкции