I created an AWS Fargate ECS Cluster to run a task. The task is a nodejs script that wraps a C++ processing application. I successfully set up a mount point of my EFS and I can read from it at the start of my task.
By the time my processing is over it seems that the EFS has disconnected and is unresponsive. My program blocks without any error on fs.existsSync(pathInEfs);
, there is no timeout either.
I know my program is working. I know the processing is not the issue because if I replace it with a sleep, the issue still occurs. And if I remove the sleep (by providing the expected result of the C++ processing inside the docker image as a test) it works and write the files on the EFS as expected.
I did not found any issue corresponding to my problem on the EFS Troubleshooting page (https://docs.aws.amazon.com/efs/latest/ug/troubleshooting-efs-mounting.html#mount-unresponsive)
The shortest processing time is around 2min30s up to 30min. The runner I request are 20G memory with 4 vCPU. The EFS is also mounted on a running EC2 instance.
On the EFS Monitoring tab I can see the additional "Client connections" of my running task but the connection disappears before I shutdown the task, which I think is the issue.
Following Mark B comments I created a new revision of my task switching the volume from mounting using an access point and encryption in transit to root directory without encryption in transit. It might not be a good long term solution but it allows me to move forward with my tests.