Infra/Airflow

Infra/Airflow

docker에서 airflow 실행 중 Permission Denied 오류 해결

airflow를 실행하려고 할 때 발생하는 Permission Denied 오류 해결 방법에 대해 설명하고자 한다. situation airflow-worker_1 | Traceback (most recent call last): airflow-worker_1 | File "/usr/local/lib/python3.7/logging/config.py", line 563, in configure airflow-worker_1 | handler = self.configure_handler(handlers[name]) airflow-worker_1 | File "/usr/local/lib/python3.7/logging/config.py", line 736, in configure_handler airflow..

Infra/Airflow

airflow에서 TaskGroup 적용하기

TaskGroup이란 태스크 그룹은 여러 개의 task를 하나의 그룹으로 묶어 관리하는 airflow 기능이다. 이를 통해 코드의 재사용성을 높이고 복잡한 워크플로우를 더 구조화된 방식으로 작성할 수 있게 된다. 예시 코드 태스크 그룹으로 설정하는 코드는 매우 간단하다 ! with TaskGroup(group_id='GROUP_ID', dag=dag) as GROUP_ID_PYTHON : 그룹 ID를 지정해주고 들여쓰기를 통해 태스크들을 묶어주면 된다. GROUP_ID는 웹 UI상에서 보는 이름이고 as 뒤에 GROUP_ID_PYTHON은 python에서 사용하는 명칭이다. from airflow.utils.task_group import TaskGroup # 기본 dag 설정 default_args ..

Infra/Airflow

Docker 환경에서 Airflow DAG의 패키지 의존성 관리

이런 오류가 떴다면 필요한 python 라이브러리를 정의하지 않았거나 설치하지 않았다는 뜻이다. Airflow의 DAG를 Docker 컨테이너 내에서 실행시키려면 requirements.txt파일에 필요한 Python 패키지를 정의하고, 그 패키지들을 Docker 컨테이너 내에 설치해야 한다. 이렇게 해야 DAG가 필요한 모듈 및 라이브러리를 올바르게 사용할 수 있다. 1. requirements.txt 작성 예를 들어, 위와 같은 오류 메세지가 뜬 경우 xmltodict라는 라이브러리를 설치하도록 requirements.txt를 작성해주면 된다. 라이브러리만 작성할 경우 최신버전으로 설치되니 특정 버전을 설치하고 싶다면 ==1.4.0 과 같이 지정해주면 된다. 2. Dockerfile 작성 이제 doc..

향식이
'Infra/Airflow' 카테고리의 글 목록