데이터엔지니어링/Airflow
Airflow-(celeryexecutor)
데이터잼니
2023. 5. 7. 22:08
VMware(Ubuntu)에서 진행 - 단일 노드로 구성 -

sudo apt upgrade로 실제 업그레이드 가능한 패키지 업그레이드

sudo apt-get install postgresql로 postgre DB 설치하기

sudo su - postgres를 치고 psql을 쳐서 postgres DB접속

airflow_db라는 데이터베이스 만들어주기

유저 : airflow, 비밀번호 airflow로 유저 생성

pip install apache-airflow로 airflow 설치하기

유저 : airflow, 비밀번호 : airflow, 권한 : Admin로 유저 생성

sudo apt upgrade 후에 sudo apt install rabbitmq-server를 다운로드한다

유저 이름 : admin, 비밀번호 : admin 유저 생성

airflow_vhost 생성

tag 달아주기

퍼미션 세팅해주기
airflow폴더에 들어가서 airflow.cfg 파일을 수정해야한다.
sql_alchemy_conn = postgresql+psycopg2://airflow:airflow@localhost/airflow_db
# 이후에 psycopg2를 pip 하면 되는데, psycopg2 말고 psycopg2-binary로 깔면 잘 되더라..
executor = CeleryExecutor
broker_url = amqp://admin:admin@localhost:5672/airflow_vhost
# port는 rabbitmq의 port
result_backend = amqp://admin:admin@localhost:5672/airflow_vhost
# broker_url과 동일

db init을 하지 않고 하니까. 아래 데이터베이스 확인하라는 문구가 뜨긴했다.
rabbitmq-server
airflow celery worker
airflow webserver
airflow scheduler
# 차례로 켜주면 된다

example dag들이 보인다.
airflow.cfg 설정에서 삭제할 수 있다.
load_example = True를 False로 바꾸면 된다.

CeleryExecutor인걸 확인 할 수 있다.