Защита требует идемпотентного удаления, повторной проверки принадлежности ресурса и исключения конкурирующих запусков.
Ты писал Python-скрипт для очистки orphan-ресурсов в Yandex Cloud и запускал его как CronJob в Kubernetes. Как ты обрабатывал race condition, если два pod'а запустились одновременно и оба захотели удалить один диск? И как ты мониторил успешность скрипта, чтобы не пропустить критичный ресурс?
Защита требует идемпотентного удаления, повторной проверки принадлежности ресурса и исключения конкурирующих запусков.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Защита требует идемпотентного удаления, повторной проверки принадлежности ресурса и исключения конкурирующих запусков.
ConcurrencyPolicy Forbid уменьшает пересечения одного CronJob, но не заменяет распределённую блокировку и проверку ресурса перед удалением. Используйте метки владельца, период ожидания и dry-run; отсутствие уже удалённого диска обрабатывайте как ожидаемый результат. Мониторьте завершение запуска, ошибки и число кандидатов; критичные ресурсы защищайте явным запретом удаления.