Amazon EFS зависает при попытке перечислить файлы внутри

При выполнении ls внутри точки монтирования Amazon EFS он просто зависает.

Раздел устранения неполадок EFS по устранению неполадок AWS EFS

Упоминает следующее:

Гора не отвечает

Монтирование Amazon EFS не отвечает. Например, такие команды, как ls hang.

Действие принять

Эта ошибка может возникнуть, если другое приложение записывает большие объемы данных в файловую систему. Доступ к записываемым файлам может быть заблокирован до завершения операции. Как правило, любые команды или приложения, которые пытаются получить доступ к файлам, в которые выполняется запись, могут зависать. Например, команда ls может зависнуть, когда попадет в файл, который записывается. Это связано с тем, что некоторые дистрибутивы Linux используют псевдоним команды ls, чтобы он извлекал атрибуты файла в дополнение к списку содержимого каталога.

Чтобы устранить эту проблему, убедитесь, что другое приложение записывает файлы в монтирование Amazon EFS и находится в состоянии непрерывного ожидания (D), как в следующем примере:

$ ps aux | grep large_io.py

root 33253 0,5 0,0 126652 5020 pts/3 D+ 18:22 0:00 python large_io.py /efs/large_file

Убедившись, что это так, вы можете решить проблему, подождав завершения другой операции записи или применив обходной путь. В примере с ls вы можете использовать команду /bin/ls напрямую, а не псевдоним, что позволит команде продолжаться без зависания при записи файла. В общем, если приложение, записывающее данные, может периодически принудительно сбрасывать данные, возможно, с помощью fsync(2), это может помочь улучшить отзывчивость вашей файловой системы для других приложений. Однако это улучшение может быть в ущерб производительности, когда приложение записывает данные.

Так что я проверил, что-нибудь пишет, но единственное, что появилось, было

root 43556 0,0 0,0 124356 756 баллов / 6 D + 19:15 0:00 ls --color = auto / efs /

root 43558 0,0 0,0 112664 972 pts/3 S+ 19:16 0:00 grep --color=auto efs

Насколько я знаю, в EFS ничего не пишется. Есть ли другие причины, которые я могу рассмотреть в качестве причин этого?

Я также попытался смонтировать EFS на отдельном компьютере, просто чтобы проверить, я также протестировал другой компьютер в другом AZ с другой точкой монтирования в этом AZ и увидел такое же поведение.

Обновить:

Исоф показывает:

nfsv4.1-s 113422 root cwd DIR 202,1 4096 128 /

nfsv4.1-s 113422 root rtd DIR 202,1 4096 128 /

nfsv4.1-s 113422 txt cwd неизвестно /proc/113422/exe

Это исчезает при размонтировании и появляется снова после монтажа.

1 ответ

Учитывая всю предыдущую информацию, сложно сказать, что именно происходит. Однако для работы Amazon EFS вам потребуется:

Ваш lsof результаты показывают, что является вероятным псевдофилем в файловой системе /proc. В какой-то момент этот процесс потерял свой исполняемый файл, и я подозреваю, что он пытается продолжить работу. Он исчезает при размонтировании, поскольку команда lsof не видит том, а при повторном монтировании команда снова видит потерянный исполняемый файл. Вероятно, это процесс, который жует ресурсы. Когда вы запускаете ps команда, вы видите процесс 113422? Поскольку вы не сообщили, что запущено другое приложение, вы можете попытаться убить этот процесс.

Сначала я бы побежал ps -aux чтобы увидеть все запущенные процессы, включая фоновые процессы, и посмотреть, можете ли вы найти процесс 113422. Если да, то что он запускает? (Или думая, что он работает.) Если вы чувствуете себя комфортно, остановив этот процесс, запустите kill -9 113422 и останови это полностью.

Повторите команду ls, и она должна работать нормально. Вы также можете использовать /bin/ls командовать напрямую. На самом деле, поскольку у вас так много маленьких файлов, я бы рекомендовал использовать только этот метод, чтобы система не зависала в ожидании файла.

Что касается производительности, из вашего комментария кажется, что вы выбрали EFS из-за неограниченного размера файловой системы, поэтому, скорее всего, EBS не был вариантом, хотя он может обеспечить лучшую производительность. У каждого типа есть свои плюсы и минусы. Однако, если вы продолжаете испытывать проблемы, возможно, повторное посещение решения файловой системы поможет.

Другие вопросы по тегам