[Apache Airflow] Airflow 설치하기

2023. 10. 22. 16:01·Data Engineering
목차
  1.  
  2.  
  3. Apache Airflow 환경 구성
  4. Airflow 초기화하기 
  5. Example DAGs 삭제하기 
728x90

 

 

Apache Airflow 환경 구성

  • MacOS 환경
  • Python 3.8.10 버전
  • 단일 local server 

위의 환경에서 Apache Airflow 를 설치한다. 

우선, airflow 를 설치할 가상 환경을 생성한다.  

 python3 -m venv ./airflow

가상환경을 activate 시켜줍니다. 

 source airflow/bin/activate

다음으로 AIRFLOW_HOME 이라는 환경변수에 airflow 의 경로를 저장합니다. 

export AIRFLOW_HOME=~/airflow

echo 명령어로 환경변수가 잘 설정되었는지 확인합니다. 

airflow version 에 대한 환경 변수를 설정한다. airflow 2.7 version 은 Python 3.8, 3.9, 3.10, 3.11 을 지원한다. 

export AIRFLOW_VERSION=2.7.2

python version 에 대한 환경 변수를 설정한다. 

export PYTHON_VERSION="$(python3 --version | cut -d " " -f 2 | cut -d "." -f 1-2)"

다운로드 받을 airflow 의 url 을 환경 변수로 설정한다. 

export CONSTRAINT_URL="https://raw.githubusercontent.com/apache/airflow/constraints-${AIRFLOW_VERSION}/constraints-${PYTHON_VERSION}.txt"

pip 를 통해 airflow 를 설치한다. 

pip install "apache-airflow==${AIRFLOW_VERSION}" --constraint "${AIRFLOW_URL}"

airflow version 을 확인하여 설치가 잘 되었는지 확인한다. 

airflow --version

Airflow 초기화하기 

1. standalone 명령어 (개발 환경에서만 사용하기)

airflow standalone 명령어를 통해 airflow 워크플로우 실행에 필요한 database가 초기화 되고, admin user 를 생성한다. 

airflow standalone

admin 이란 이름으로 password 까지 초기화되어 standalone 명령어가 airflow 환경을 초기 구성했다. 

airflow 는 기본적으로 8080번 포트를 사용하므로 localhost:8080 으로 접속한다. 위에서 확인한 user정보로 로그인한다. 

로그인하면 airflow에서 기본적으로 가지고 있는 example dags 들을 볼 수 있다. 

 

2. standalone 명령어를 manual 하게 구성하기 (Production 환경에서 추천)

airflow db migrate

airflow users create \
    --username admin \
    --firstname Peter \
    --lastname Parker \
    --role Admin \
    --email spiderman@superhero.org

airflow webserver --port 8080

airflow scheduler

 

Example DAGs 삭제하기 

  • airflow.cfg 에서 load_examples = False 로 설정을 바꾸면 된다. 

 

 

공식 문서 

https://airflow.apache.org/docs/apache-airflow/stable/start.html 

 

Quick Start — Airflow Documentation

 

airflow.apache.org

 

728x90

'Data Engineering' 카테고리의 다른 글

데이터 인프라 이해하기, Spark + HDFS + Hive  (0) 2024.02.17
[LLM] OpenSearch 로 챗봇의 RAG 개발하기  (0) 2023.12.10
[Colab] 코랩 런타임 연결 끊김 방지하기  (0) 2023.07.23
빅데이터로 성공하기 (서가명강 조성준 교수님 강의) 요약  (0) 2023.04.02
GNN과 Graph 자료구조의 특성  (0) 2022.12.10
  1.  
  2.  
  3. Apache Airflow 환경 구성
  4. Airflow 초기화하기 
  5. Example DAGs 삭제하기 
'Data Engineering' 카테고리의 다른 글
  • 데이터 인프라 이해하기, Spark + HDFS + Hive
  • [LLM] OpenSearch 로 챗봇의 RAG 개발하기
  • [Colab] 코랩 런타임 연결 끊김 방지하기
  • 빅데이터로 성공하기 (서가명강 조성준 교수님 강의) 요약
minjiwoo
minjiwoo
Data Engineering과 Cloud Native 기술에 대해 Dive Deep 하는 플랫폼 엔지니어가 되는 것을 목표로 하고 있습니다. 경험과 공부한 내용을 기록하며 지속가능한 엔지니어가 되는 것이 꿈입니다.
minjiwoo
minji's engineering note
minjiwoo
전체
오늘
어제
  • 분류 전체보기 (613)
    • Data Engineering (42)
      • Apache Spark (11)
      • Databricks & Delta Lake (9)
      • Airflow (3)
      • SQL (6)
      • Trouble Shooting (2)
      • Hadoop (2)
      • MLOps (1)
    • Cloud Engineering (104)
      • AWS (23)
      • Linux 🐧 (29)
      • Docker 🐳 (21)
      • Kubernetes ⚙️ (20)
      • Ansible (10)
    • Computer Science (87)
      • 네트워크 (9)
      • 운영체제 (25)
      • 정보처리기사 (48)
      • CS 기술 면접 스터디 (3)
    • Programming Languages (27)
      • Python (17)
      • C와 C++ (10)
    • Backend (5)
      • Django (2)
    • 프로젝트 (2)
      • 테크포임팩트 (2)
    • iOS (11)
      • 레이블러리 (2)
    • Algorithm (PS) (275)
      • LeetCode (6)
    • 개발일기 (30)
      • 내돈내산 후기🎮 (3)
      • 개발자 취준생 (5)
      • Today I Learned (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • Hi there

인기 글

태그

  • ansible
  • 알고리즘
  • Kubernetes
  • EC2
  • 백준
  • 빅데이터
  • dfs
  • AWS
  • 클라우드
  • 운영체제
  • 데이터엔지니어링
  • 카카오코딩테스트
  • docker
  • Leetcode
  • 스파크
  • 코딩테스트
  • 파이썬
  • python
  • linux
  • 데이터브릭스
  • 리눅스
  • BFS
  • 백트래킹
  • 데이터엔지니어
  • SPARK
  • 쿠버네티스
  • 프로그래머스
  • dp
  • Swift
  • Databricks

최근 댓글

최근 글

hELLO· Designed By정상우.v4.5.2
minjiwoo
[Apache Airflow] Airflow 설치하기
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.