본문 바로가기
Programming/Python

[Python_Airflow] 설치 1.10버전

by 알 수 없는 사용자 2022. 12. 27.

파이썬 로직으로 구동되는 Airflow 설치 과정을 공유하겠습니다.

 

환경 : ubuntu 20.04, python 3.8, airflow 1.10 

ubuntu 20.04 여야 한다. airflow 1.10 버전은 python 3.8까지만 지원한다.

ubuntu 20.04는 python3버전 패키지가 기본이다.

ubuntu 22이상 버전은 python 10 버전을 기본 패키지인데. airflow 1.10 버전을 지원하지 않고 2 버전 이상대를 지원한다.

현재 현업에서는 1.10버전이 ui적으로 좀 더 보기 편해 1.10 버전을 많이 사용하고.

2 버전이더라도 사용성과 호환성은 같다.

 

1. (선택) python 가상 환경 생성

기존 python 환경에 영향이 없도록 별도의 가상 환경을 생성하여 사용할 것이다. 이 부분은 선택 사항이다.

# 가상 환경 생성
python3 -m venv ./airflow

# 활성화
source airflow/bin/activate

Python 가상 환경 virtualenv/venv 참고

2022.07.21 - [python3] venv 사용

2021.06.25 - [CentOS 7] virtualenv 설치 및 사용

 

 

2. Airflow 홈 디렉터리 설정

mkdir ~/airflow
export AIRFLOW_HOME=~/airflow

 

3. Airflow 버전, Python 버전 설정

AIRFLOW_VERSION=1.10.14
PYTHON_VERSION="$(python --version | cut -d " " -f 2 | cut -d "." -f 1-2)"

 

4. Airflow 설치 파일 경로 선언

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

 

5. Airflow 설치

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

 

+ ERROR: Failed building wheel for blinker 에러 발생 시

내 경우, wheel 명령어가 설치되어 있지 않아 발생한 것 같다. pip로 설치하여 해결했다.

sudo apt install python3-pip

pip install wheel

 

6. 설치 확인

airflow version

 

 

 

Airflow 실행

airflow 2 버전과 다르게 standalone 명령이 없다. 따라서 아래와 같은 절차를 따라야 한다.

# 데이터베이스 초기화
airflow initdb

# 웹 서버 시작
airflow webserver --port 8081 -D
# --port : 포트 지정
# -D : 백그라운드로 실행

# 스케쥴러 시작
airflow scheduler -D

 

웹 서버가 8081 포트를 사용하도록 설정했으므로, IP:8081 주소를 웹 브라우저에 입력하여 접근할 수 있다. 2 버전과 다르게 로그인을 요구하지 않는다.

 

댓글