s3fs — как отключить кэширование?

#amazon-s3 #s3fs

#amazon-s3 #s3fs

Вопрос:

Мы хотели бы использовать s3fs для подключения корзины s3 (или папки в корзине) к контейнеру docker. Наша версия s3fs — v1.84, наша контейнерная ОС docker — Alpine Linux.

Мы монтируем папку s3 bucket:/ в нашем контейнере docker с

 s3fs $DEBUG_OPTS ${S3FS_ARGS} -o passwd_file=${AWS_S3_AUTHFILE} -o url=${AWS_S3_URL} -o uid=$OWNER -o use_cache="" dataops-datastore:/Testuser ${AWS_S3_MOUNT}
  

ошибка, которую мы видим, заключается в
s3fs: на диске недостаточно места для каталога, используемого s3fs в качестве кэша (или временного).
Сбой монтирования

В документации опция ‘-o use_cache=»»‘ должна отключать локальное кэширование. Почему ошибка, которую мы видим, указывает на то, что s3fs все еще пытается локально кэшировать корзину?

Комментарии:

1. Какая операция использует временное пространство, чтение или запись?

2. Сколько свободного места на диске?

Ответ №1:

в настоящее время s3fs создает локальный временный файл для записей, который синхронизируется с S3 во время закрытия или fsync. Это делается для того, чтобы разрешить произвольную запись с разными смещениями в файле.

goofys, альтернативная файловая система S3, вместо этого выполняет прямую запись в S3 частями по 10 МБ. Это не требует временного пространства, но и не допускает случайной записи.