Airflow 시작하기
가상환경 설정
virtualenv 설정하기에서 가이드 한대로 모든 환경설정은 완료되어있다고 가정하고 진행
$ pyenv virtualenv 3.7.2 airflowairflow용 가상환경을 생성해준다. 생성이 완료되면 versions로 제대로 생성됐는지 확인이 가능하다.
$ pyenv versions
system
* 3.7.2
3.7.2/envs/airflow
3.7.2/envs/cassandra
3.7.2/envs/djangoVue
3.7.2/envs/sample-env
airflow
cassandra
djangoVue
sample-env가상환경 생성이 완료됐으면, 가상환경을 적용할 폴더로 이동해준다.
$ cd ~/Develop/airflow폴더로 이동했으면, 현재 디렉토리를 airflow 가상환경을 사용할 것이라고 설정해준다.
가상 환경 설정 후 versions로 확인하여, 다음과 같이 * airflow로 설정되어있으면 완료된 것이다.
airflow 설치 및 시작하기
Install
설치가 완료되면, airflow를 실행하여 기본 설정을 할 것이다.
환경 설정
일반적으로 Airflow의 Configuration파일은 ~/airflow에 위치해 있으며 파일 이름은 airflow.cfg이다.
샘플 숨기기
DB Init
Admin 계정 생성
사용자명, 이름, 역할, 이메일을 등록하여 생성하기를 누르면 비밀번호를 입력하라고 뜬다.
비밀번호를 입력하고나면 계정이 생성된다.
airflow 실행하기
http://localhost:8081/ 에 접속하면 다음과 같이 로그인 화면이 뜬다.

위에서 생성한 admin 계정으로 로그인을 하면 다음과 같이 샘플 화면을 볼 수 있다.

개념
DAG(Directed Acyclic Graphs)
작업의 관계를 방향성 비순환 그래프로 나타내며, DAG는 하나의 워크플로우라 생각하면된다.

DAG는 여러개의 Task를 포함하고 있는 구조로, 방향성 비순환 그래프이므로 작업간의 의존성 혹은 선후 관계가 생긴다고 할 수 있다.

생성해보기
airflow 실행 후 dags 디렉토리를 생성해준다.
그 다음에 해당 디렉토리를 ~/airflow/airflow.cfg 파일내의 dags_folder로 지정해준다.
가장 기본적인 BashOperation을 생성해볼 것이다.
test.txt 파일 생성
test.txt 파일 내 텍스트 출력
test.txt 파일 삭제
여기서 dag파일명은 아무렇게나 생성해도 되며 dag_id를 이용해 등록하기 때문에, dag_id를 제대로 등록해야한다.
dag등록후 $ airflow schedular 명령어를 수행해 스케쥴러를 등록한다.

다음과 같이 해당 dag를 활성화 시켜 준 후 제대로 workflow가 생성되었다면, 화살표방향 버튼을 클릭해 Trigger DAG를 눌러 workflow를 실행해준다.

workflow가 수행되고 나면, 다음과 같이 success 초록색으로 그래프가 변경되며 해당 Task를 눌러 Log 버튼을 누르면 수행 로그 이력을 볼 수 있다.

간단한 예제만 우선 다뤄보았으며, 자세한 튜터리얼은 https://airflow.apache.org/docs/apache-airflow/1.10.1를 참고하는 것이 좋다.
macros
https://airflow.apache.org/docs/apache-airflow/stable/templates-ref.html
참고
Last updated
Was this helpful?