반응형
일단 확실하진않은 해결법입니다. 전 이렇게 해서 해결이된 상태라 참고만 부탁드립니다 :)
Airflow에서 갑자기 Task들이 아무런 log가 발생안되고 죽는 현상이 빈번하게 발생해서 디버깅중에, airflow_scheduler에서 다음과같은 로그가 무수히 발생했다.
[2022-11-30 05:11:28,252] {scheduler_job.py:684} ERROR - Executor reports task instance <TaskInstance: TRIGGER_monthly_rm_fast_test_hac_1d5large.ssd_onedotfive_moreh-test-vm02.ssd_1.5xLarge307216_remove_virtual_env_moreh-test-vm02 manual__2022-11-29T14:15:45.634608+00:00 [queued]> finished (failed) although the task says its queued. (Info: None) Was the task killed externally?
대충 외부요소로 인해서 Task가 죽었다는건데, 자료 조사를 해보니 한가지 공통되는 원인이 보였다.
"일단 Redis에 문제가 발생했을 가능성이 있으니 Redis에서 발생한 로그를 살펴보아라"
하지만 난 Redis container의 log를 살펴보아도 별다른 문제가 보이지않았다...ㅠ
그래서 혹시 몰라서 재시도 횟수를 한번 늘려보았는데 더이상 아무런 로그없이 죽는현상은 보이지않았다...
즉 해결방법은,
- 만약에 task단위로 retry 횟수를 늘리고싶다면 Operator 인자값에 retries=3 이라는 인자값 추가
- 만약에 전체DAG에 대해서 retry횟수를 늘리고싶다면 default_args에 retries 요소를 넣어주면된다
반응형
'Data > Data Engineering' 카테고리의 다른 글
[Kafka] 공부-1 (1) | 2023.11.29 |
---|---|
[ELK] kibana-elasticsearch (WIP) (0) | 2023.04.03 |
[Grafana] Slack Alert 메세지 커스텀마이징 (0) | 2022.11.20 |
[Grafana] Slack Alert 만들기 (0) | 2022.11.20 |
[Airflow] DagFileProcessorManager heartbeat 관련에러 (0) | 2022.10.19 |