Процесс Python не отвечает при записи файла в том докера EFS - PullRequest
0 голосов
/ 26 ноября 2018

После настройки роя Docker с облачной информацией, используя информацию от https://docs.docker.com/docker-for-aws/. Рой запускает стек Django (django, nginx, celery), а для хранения мультимедиа используется том EFS докера (такая же настройка, как и у общего ресурса).том хранения в https://docs.docker.com/docker-for-aws/persistent-data-volumes/).

Когда я загружаю файл через веб-сайт (используя django FileField), контейнер django зависает, и в соответствующем экземпляре EC2 я вижу следующие ошибки ядра:

Nov 25 22:05:47 moby kernel: INFO: task uwsgi:6951 blocked for more than 120 seconds.
Nov 25 22:05:47 moby kernel:       Not tainted 4.9.114-moby #1
Nov 25 22:05:47 moby kernel: "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Nov 25 22:05:47 moby kernel: uwsgi           D    0  6951   6504 0x00000100
Nov 25 22:05:47 moby kernel:  00000000000190c0 0000000000000000 ffff9a00a6e9a400 ffff9a009ee5c340
Nov 25 22:05:47 moby kernel:  ffff9a00b2e80d00 ffff9a00b6e190c0 ffffffffb583caf6 0000000000000002
Nov 25 22:05:47 moby kernel:  ffff9a00b2e80d00 ffffa767c0bdfce0 7fffffffffffffff 0000000000000002
Nov 25 22:05:47 moby kernel: Call Trace:
Nov 25 22:05:47 moby kernel:  [<ffffffffb583caf6>] ? __schedule+0x35f/0x43d
Nov 25 22:05:47 moby kernel:  [<ffffffffb583cf26>] ? bit_wait+0x2a/0x2a
Nov 25 22:05:47 moby kernel:  [<ffffffffb583cc52>] ? schedule+0x7e/0x87
Nov 25 22:05:47 moby kernel:  [<ffffffffb583e8de>] ? schedule_timeout+0x43/0x101
Nov 25 22:05:47 moby kernel:  [<ffffffffb5019808>] ? xen_clocksource_read+0x11/0x12
Nov 25 22:05:47 moby kernel:  [<ffffffffb512e281>] ? timekeeping_get_ns+0x19/0x2c
Nov 25 22:05:47 moby kernel:  [<ffffffffb583c739>] ? io_schedule_timeout+0x99/0xf7
Nov 25 22:05:47 moby kernel:  [<ffffffffb583c739>] ? io_schedule_timeout+0x99/0xf7
Nov 25 22:05:47 moby kernel:  [<ffffffffb583cf3d>] ? bit_wait_io+0x17/0x34
Nov 25 22:05:47 moby kernel:  [<ffffffffb583d009>] ? __wait_on_bit+0x48/0x76
Nov 25 22:05:47 moby kernel:  [<ffffffffb519e758>] ? wait_on_page_bit+0x7c/0x96
Nov 25 22:05:47 moby kernel:  [<ffffffffb510f99e>] ? autoremove_wake_function+0x35/0x35
Nov 25 22:05:47 moby kernel:  [<ffffffffb519e842>] ? __filemap_fdatawait_range+0xd0/0x12b
Nov 25 22:05:47 moby kernel:  [<ffffffffb519e8ac>] ? filemap_fdatawait_range+0xf/0x23
Nov 25 22:05:47 moby kernel:  [<ffffffffb51a060c>] ? filemap_write_and_wait_range+0x3a/0x4f
Nov 25 22:05:47 moby kernel:  [<ffffffffb52bcf98>] ? nfs_file_fsync+0x54/0x187
Nov 25 22:05:47 moby kernel:  [<ffffffffb51f6c4d>] ? filp_close+0x39/0x66
Nov 25 22:05:47 moby kernel:  [<ffffffffb51f6c99>] ? SyS_close+0x1f/0x47
Nov 25 22:05:47 moby kernel:  [<ffffffffb50033b7>] ? do_syscall_64+0x69/0x79
Nov 25 22:05:47 moby kernel:  [<ffffffffb583f64e>] ? entry_SYSCALL_64_after_swapgs+0x58/0xc6
Nov 25 22:06:28 moby kernel: nfs: server fs-d5eb171d.efs.eu-west-1.amazonaws.com not responding, still trying

Я мог бы прибегнуть к использованию контейнеров S3, но это потребует больших усилий. Есть ли что-то очевидное, что я пропускаю / делаю неправильно? Или мне нужно выбрать альтернативный маршрут для хранения?

1 Ответ

0 голосов
/ 26 ноября 2018

Видимо мне нужно было понизить версию с Docker 18.06 до 18.03

Теперь все работает:)

...