[MLOps] Airflow Init

less than 1 minute read

airflow-version-2.3.0

Step 0. Install

pip install apache-airflow


Step 1. Initialize DB

Default DB: SQLite3

DAG, Task 관리를 위한 DB 생성
기본 DB인 SQLite3 사용시, SequentialExecutor만 사용가능하여 병렬처리 불가

airflow db init

초기 DB 생성 Path는 ${AIRFLOW_HOME}이지만,
해당 환경변수가 없는 경우 ${HOME}/airflow가 기본값이 된다.
변경을 원한다면 다음과 같이 환경변수를 임의로 선언이 필요하다.

export AIRFLOW_HOME="${AnyPath}"


생성되는 파일의 구조는 다음과 같다.

${AIRFLOW_HOME}
├── airflow.cfg
├── airflow.db
├── logs
│   └── scheduler
│       ├── YYYY-MM-DD
│       └── latest
└── webserver_config.py


Step 2. Create User

airflow users create \
    --email ${Email} \
    --firstname ${FirstName} \
    --lastname ${LastName} \
    --password ${Password} \
    --role ${ROLE} \
    --username ${UserName}
  • --role: Admin, User, Op, Viewer, Public


Step 3. Run Airflow Scheduler

airflow scheduler

Options

  • -D: run as daemon


Step 4. Run Airflow Web Server

airflow webserver

Options

  • --port(Default: 8080)



CLI Commands

Show Dag List

airflow dags list

Leave a comment