Узел экземпляра/контроллера AWS случайным образом не может найти файлы на FSX, которые там есть

Это спорадическая проблема, которую я не смог придумать, чтобы воспроизвести.

Суть проблемы заключается в том, что узел экземпляра/контроллера случайно не сможет найти файлы, которые уже созданы в Amazon FSx. Пример сценария может быть таким простым:

      import dask

fn = '/mnt/fsx/home/user/something.txt'

def run():
  with open(fn) as f:
    s1 = f.readlines()
  with open(fn) as g: //<-- it is possible that this line can fail to read the file
    s2 = f.readlines() 
  return len(s1) + len(s2)

with open(fn, 'w') as f:
  f.write('balh blah blah')

ret = [dask.delayed(run)() for _ in range(2000)]

result = dask.compute(ret)

Возможно, что 2-й open(..) в run() завершится ошибкой с простым python FileNotFoundError.

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

1 ответ

К сожалению, вопрос был неправильно диагностирован, поскольку это не проблема FSX.

Где-то в путях были символические ссылки, основанные на другом общем диске. Это был общий диск, который подвел нас. FSX был устойчивым во всем.

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