Question

그런데 ecs fargate task 실행 시 적지 않은 빈도로 아래와 같은 에러 메세지가 표시 됩니다.

Timeout waiting for network interface provisioning to complete.

해당 부분에 대한 해결책이나 원인을 확인해 주실 수 있나요?


Answer

일반적으로 "Timeout waiting for network interface provisioning to complete." 에러 메시지가 발생하는 경우에 대해 설명드리자면 'RunTask' API를 수행 시 해당 Task가 Fargate로 설정이 된 경우 내부적으로는 ECS Fargate와 관련된 리소스들을 프로비저닝하게 됩니다. 이 단계에서 Fargate 내부 오류나 네트워크 및 API 호출 오류등 여러 이유로 인하여 Fargate 리소스에 ENI를 할당하는 작업이 실패를 하는 경우가 있습니다.

이 때 발생하는 에러 메시지가

 'Timeout waiting for network interface provisioning to complete.' 입니다.

현재로서는 구동에 실패한 Task에 대해서는 재시도를 하는 것이 유일한 해결방법이고, Service를 통해 구성하신 경우에는 Service Scheduler가 Task를 다시 띄울 것이기 때문에 특별한 조치를 하지 않으셔도 됩니다. 

하지만 단일 Task로 수행하시는 경우에는 Task가 구동에 실패했을 경우를 대비하여 Retry를 할 수 있도록 구성하시기를 추천드립니다. 단일 Task에 대해 Task 구동을 모니터링하고 Retry할 수 있는 방법 중 하나로 Step Function+CloudWatch 구성하는 방법[1]이 있습니다. 

관련 내용에 대해서는 다음 문서를 참고하시기 바랍니다. 

[1] https://aws.amazon.com/premiumsupport/knowledge-center/ecs-fargate-network-interface-errors/