728x90
🚀 개요
이 문서에서는 Python 3.10.14와 PostgreSQL 13.18을 활용하여 Apache Airflow 2.7.3을 설치한 후 OS 계정, PostgreSQL, Apach Airflow 세 개의 계정을 연동하는 과정을 설명한 글입니다.
💡 1. 사전 준비
2025.02.04 - [OS/Linux] - [Linux] Airflow & PostgreSQL 13.18 설치 및 설정 매뉴얼 (Python 3.10.14 환경)
이전 포스팅 한 글을 통하여 Airflow, PostgreSQL, python 환경을 구축하면 됩니다.
🚧PostgreSQL, Airflow 및 OS 계정 연동
1️⃣ PostgreSQL 사용자 및 데이터베이스 생성
# su - postgres
$ psql
CREATE DATABASE airflow_db;
CREATE USER estar987 WITH PASSWORD 'root///';
GRANT ALL PRIVILEGES ON DATABASE airflow_db TO estar987;
\q(ctrl + d)
2️⃣ OS 계정과 PostgreSQL 계정 연동
- OS 사용자 생성
# sudo useradd -m -s /bin/bash estar987
# sudo passwd estar987
- PostgreSQL에서 OS 계정과 동일한 이름의 계정 생성
# su - postgres
$ psql
CREATE ROLE estar987 LOGIN ENCRYPTED PASSWORD 'root///';
ALTER ROLE estar987 CREATEDB;
GRANT ALL PRIVILEGES ON DATABASE airflow_db TO estar987;
\q (ctrl + d)
3️⃣ Airflow 초기화 및 기본 설정
- Airflow 초기화
# source /APP/enhpc/profile.d/python-v3.10.14
- 기존 설정 초기화(장애 발생 시)
# rm -rf ~/airflow
# mkdir -p ~/airflow/dags ~/airflow/logs ~/airflow/plugins
- Airflow 데이터베이스 초기화
# airflow db init
4️⃣ Airflow 관리자 계정 생성
# airflow users create \
--username estar987 \
--password root/// \
--firstname Admin \
--lastname User \
--role Admin \
--email estar987@example.com
5️⃣ Airflow 웹 서버 및 스케줄러 실행
# airflow webserver --port 8787 &
# airflow scheduler --port &
🖥️Airflow 웹 UI에서 PostgreSQL 연결 설정
- 브라우저에서 http://localhost:8787로 접속합니다.
- **Admin 계정(admin/admin123)**으로 로그인합니다.
- Admin > Connections로 이동합니다.
- + 버튼을 눌러 새로운 연결 추가:
- Conn Id: postgres_default
- Conn Type: Postgres
- Host: localhost
- Schema: airflow_db
- Login: estar987
- Password: root///
- Port: 5432
✅데이터 입력및 검증
- Airflow UI에서 테스트 DAG 생성 후 실행합니다.
- PostgreSQL 데이터베이스에 정상적으로 데이터가 저장되는지 확인합니다
# su - postgres
# psql -d airflow_db -U estar987
SELECT * FROM dag_run;
\q
⚠️ Troubleshooting
1️⃣ 로그인 실패 시 조치 사항
- 비밀번호 재설정
# airflow users update \
--username admin \
--password root///
- Airflow 재시작
# pkill -f "airflow webserver"
# pkill -f "airflow scheduler"
# airflow webserver --port 8787 &
# airflow scheduler &
- 로그 파일 확인
# tail -f ~/airflow/logs/airflow-webserver.log
# tail -f ~/airflow/logs/airflow-scheduler.log
'OS > Linux' 카테고리의 다른 글
[Linux] PostgreSQL & Airflow 연동간 발생한 문제 (0) | 2025.02.20 |
---|---|
[Linux] Dell 서버 iDRAC(IPMI) 관리용 ipmitool 소스 컴파일 설치 가이드 (0) | 2025.02.19 |
[Linux] Airflow 2.7.3 & PostgreSQL 13.18 설치 및 설정 매뉴얼 (Python 3.10.14 환경) (0) | 2025.02.17 |
[Linux] CentOS7.4 버전에서 Python 3.10.14 설치 및 Troubleshooting 매뉴얼 (0) | 2025.02.16 |
[Linux] watch 명령어 : 실시간 모니터링 (0) | 2025.02.09 |