본문 바로가기

Apache/Airflow4

GCP VM으로 Airflow 구축하기 이전에는 로컬에서의 Airflow를 구축했으니, 이번에는 구글 클라우드 플랫폼의 VM(가상머신)을 이용한 Airflow를 구축(?)하는 시간이다. 구글 클라욷 플랫폼에서 새로운 프로젝트를 만들어준다. Airflow를 작동시킬 메인 VM을 만들어준다.(vCPU : 2개, RAM : 8GB를 main node로) Compute engine의 VM 인스턴스에서 인스턴스 만들기를 눌러 만들어준다. (worker node는 vCPU : 2개, RAM : 4GB로 만들어준다) (리전과 영역은 만약 기존에 쓰는 다른 서비스가 있다면, 맞춰주는게 좋은것 같다) 우분투가 편해서 우분투로 설정하고, 방화벽에서 HTTP/HTTPS의 트래픽 허용을 체크한다. 이렇게 만들어주면 main-node VM 생성.. 인스턴스 생성이 .. 2023. 6. 4.
Airflow(celeryexecutor - docker-compose) 이번엔 Docker를 이용한 Celeryexecutor 배포를 구현 아나콘다를 이용했다. 우선, 도커를 설치해야한다. sudo apt-get update 위와 같은 명령어를 입력해 업그레이드 시키기 sudo apt-get docker 위 명령어를 이용해 도커를 설치해준다. sudo apt-get install \ ca-certificates \ curl \ gnupg 레포지토리 접근에 필요한 패키지들을 설치해준다. sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+.. 2023. 5. 13.
Airflow-(celeryexecutor) 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, 비밀번.. 2023. 5. 7.
Airflow 간단 개념 Airflow란? Airflow는 AirBnB에서 만든 워크플로우 시스템이다. Airflow는 워크플로우를 작성하고, 스케줄링하며 모니터링작업을 프로그래밍 할 수 있게 해주는 플랫폼이다. 파이썬으로 쉬운 프로그래밍이 가능하고, 웹 대시보드가 있으며, 커스터마이징이 가능하다. Airflow는 위와 같은 구조로 이루어져 있다. 작동 방식은 DAG Directory에 DAG 파일을 Scheduler와 Webserver가 읽고, Executor가 Worker에게 이 DAG의 Task를 주어 Worker들이 Task를 시작하게 한다. Metadata에는 스케줄러, 워커, 웹서버의 상태를 저장하고, 이를 UI를 통해서 DAG 작업 동작 확인, 트리거, 디버그등 확인할 수 있게 된다. 여기서 DAG(Directed .. 2023. 5. 3.