본문 바로가기

Data Mining & Distributed/Airflow

[ Airflow ] db init - PostgreSQL 과 함께 초기 설정하기

반응형

데이터 베이스 설치 후 airflow.cfg를 설정을 해야 합니다.
그 후 db init를 통해서 데이터 베이스를 사용해야 합니다.

 

1. airflow.cfg 생성 시점

airflow.cfg 파일은 Airflow를 처음 설치한 뒤 airflow CLI를 실행하면 생성됩니다. 즉, airflow db init 명령을 실행하기 전에 CLI를 한 번 실행하면 기본 설정 파일이 생성됩니다.

예를 들어:

airflow version
airflow info

위 명령을 실행하면 Airflow 설치 디렉토리에 airflow.cfg 파일이 자동으로 생성됩니다.

 

2. PostgreSQL 설정 선행 가능 여부

airflow db init 이전에 PostgreSQL과 같은 외부 데이터베이스 설정을 할 수 있습니다. 이를 위해 airflow.cfg를 수동으로 수정하거나 환경 변수를 사용하여 데이터베이스 연결 정보를 미리 정의할 수 있습니다.

방법 1: airflow.cfg 파일 직접 수정

  1. 위에서 설명한 방식으로 airflow.cfg를 생성합니다.
  2. 생성된 파일에서 아래 항목을 수정합니다:
   [database]
   sql_alchemy_conn = postgresql+psycopg2://username:password@hostname:port/dbname

방법 2: 환경 변수로 설정

Airflow는 환경 변수로도 설정을 오버라이드할 수 있습니다. 예를 들어:

export AIRFLOW__DATABASE__SQL_ALCHEMY_CONN='postgresql+psycopg2://username:password@hostname:port/dbname'

이렇게 하면 airflow db init 명령을 실행하기 전에 PostgreSQL 데이터베이스 연결을 설정할 수 있습니다.

 

3. PostgreSQL 설정 후 db init

db init 명령은 지정된 데이터베이스에서 Airflow의 메타데이터 테이블을 생성하는 역할을 합니다. 따라서 sql_alchemy_conn을 PostgreSQL로 설정한 이후에 airflow db init을 실행하면 해당 데이터베이스에 테이블이 생성됩니다.


결론

  • airflow.cfgdb init 이전에도 생성 가능하며, PostgreSQL 설정을 미리 완료할 수 있습니다.
  • 환경 변수를 활용하면 airflow.cfg 파일을 생성하지 않고도 설정을 진행할 수 있습니다.

필요한 추가 정보나 궁금한 점이 있으면 말씀해주세요! 😊

반응형