안녕하세요 BTC 1-tier 팀의 One입니다!
보통 Airflow를 Web에서 많이 사용하실텐데요
서버에서 CLI로 제어가 가능하다는 점 아셨나요?
Airflow CLI를 사용해 작업 실행, 스케줄 조작, 작업 상태 확인 등 다양한 작업 수행이 가능합니다.
얘기치 못하게 Web 프로세스가 종료되는 등, 웹에 접속하지 못하는 상황이라면 유용하게 사용이 가능하겠죠?
airflow cheat-sheet
위 명령어를 통해서 자주 쓰이는 명령어를 확인할 수 있으며
airflow --help
위 명령어를 통해 자세한 도움말을 확인 할 수 있습니다.
아래는 자주 쓰이는 일부 명령어들을 정리해놨으며,
Airflow CLI에는 더 많은 명령어와 옵션이 있습니다
자세한 내용은 공식 문서에서 확인이 가능합니다.
https://airflow.apache.org/docs/apache-airflow/stable/cli-and-env-variables-ref.html
아래는 명령어에서 자주 사용되는 arguments들입니다.
명령어를 살펴보기 전 미리 확인하고 갑시다!
- dag_id : 실행 할 DAG의 ID
- task_id : 실행 할 Task의 ID
- execution_date : 실행 할 날짜와 시간 (YYYY-MM-DD 또는 ISO 8601 형식)
자 그럼 이제 자주 쓰이는 명령어들을 알아보러 가볼까요?
DAG Trigger
필요에 따라 --conf 플래그를 사용하여 매개 변수 전달 가능
airflow dags trigger <dag_id> --conf '{"key": "value"}'
DAG ON
airflow dags pause [dag_id]
DAG OFF
airflow dags unpause [dag_id]
Task 상태 확인
airflow tasks state [dag_id] [task_id] [execution_date_or_run_id]
Task 클리어
airflow tasks clear [dag_id] --start-date [start_date] --end-date [end_date]
DAG 목록 확인
ariflow dag list
#dag의 실행정보 확인 가능 start/end date는 생략 가능
airflow dag run_list -d [dag_id] --start-date [start_date] --end-date [end_date]
Task 목록 확인
airflow tasks list [dag_id]
DAG와 Task의 상태를 확인하고 제어하는 아주 간단하고 기본적인 명령어들이었습니다.
찾아보면 아주 다양한 CLI 명령어들이 있으니, 적극적으로 활용해보면 좋을 것 같습니다.
그럼 다음 시간에 또 만나요
베바👏
'Database' 카테고리의 다른 글
Airflow를 통한 Dataproc 연동 (0) | 2023.08.16 |
---|---|
[Airflow] Decorator (0) | 2023.08.07 |
빅쿼리 INFORMATION_SCHEMA (0) | 2023.07.21 |
ElasticSearch (0) | 2023.07.21 |
[Airflow] 병렬 처리 Task (0) | 2023.07.17 |
댓글