어떤 문제에 대해서는, WebUI를 사용할 수 없어서, CLI로 처리해야할 때가 있습니다. 예를 들어서 Dag를 모두 backfill 하고 싶고, Backfill 과정이 중단되더라도 트리거 되지 않은 Dag를 모두 실행하고 싶다면 이런 케이스에서는 CLI를 사용해야만 합니다.
docker exec -it 6f520130d591 /bin/bash
해당 도커 컨테이너 명령줄 인터페이스에 진입합니다.
airflow db init
메타데이터를 초기화하고, airflow에 의해 필요한 파일과 폴더를 생성합니다.
airflow db reset
모든 메타스토어의 모든 메타데이터를 삭제합니다. production 환경에서는 절대 사용하지 않습니다.
airflow db upgrade
메타스토어의 스키마를 업데이트합니다. airflow 버전을 업데이트하고 싶다면, 해당 명령을 실행합니다.
airflow webserver
에어플로우 웹서버를 실행합니다.
airflow scheduler
에어플로우 스케줄러를 실행합니다.
airflow celery worker
해당 머신은 에어플로우 worker라고 지정합니다.
airflow dags list
airflow의 dags 리스트를 확인합니다. dag가 업데이트 됐는지 확인할 때 유용합니다.
airflow dags trigger example_bash_operator -e 2020-01-01
대그를 작동시킵니다.
airflow dags list-runs -d example_bash_operator
dags의 history를 가져옵니다.
airflow dags backfill -s 2020-01-01 -e 2021-01-05 --reset-dagruns
airflow tasks list example_bash_operator(dag id)
해당 DAG의 task들을 가져옵니다.
airflow tasks test example_bash_operator(dag_id) runme_0 2021-01-01
airflow -h
모든 명령어를 확인할 수 있습니다.