Bootcamp/Airflow
[Airflow] naver 리뷰 airflow 하기(버전만)
K_Hyul
2024. 3. 27. 17:54
728x90
Final Project 때 했던 크롤링을 바탕으로 Airflow를 입혀 Data 축적을 자동화 해보는걸 목표로 한다.
Ubuntu 환경과 Window 환경을 왔다갔다 할 예정이다.
// Ubuntu
// mysql 상태를 확인한다
sudo systemctl status mysql
// ip를 확인해 window에서 DB 인터페이스를 연결한다
ifconfig
// mysql 접속
sudo mysql -u root -p
// Airflow용 계정을 만든다
CREATE USER 'hyul'@'%' IDENTIFIED BY '비밀번호';
// 권한 부여 완료
GRANT ALL PRIVILEGES ON *.* TO 'hyul'@'%';
이제 Airflow를 설치하겠다
// apache-airflow 설치
pip install apache-airflow==2.8.1 --constraint https://raw.githubusercontent.com/apache/airflow/constraints-2.8.1/constraints-3.10.txt
// 환경설정을 하는데 이슈가 있었다
hyul@DESKTOP-A9AF8PR:~/workspace/Airflow$ airflow db init
airflow: command not found
// 이런상황이여서 경로 설정을 해준 뒤
export PATH="$HOME/.local/bin:$PATH"
// pandas, sqlalchemy이 버전 충돌나서 이걸로 하면 해결됨
pip install virtualenv
virtualenv venv
source venv/bin/activate
pip install pandas==2.0.3
pip install sqlalchemy==1.4.50
pip install apache-airflow[cncf.kubernetes]
pip install pymysql
pip install mysqlclient
vi airflow.cfg
/sql_alchemy_conn
sql_alchemy_conn = mysql://hyul:비밀번호@localhost/airflow
airflow db init
airflow users create --username hyul --password hyul --firstname Anonymous --lastname Admin --role Admin --email hyul@example.org
airflow webserver &
airflow scheduler &
// or
nohup airflow webserver &
nohup airflow scheduler &
// 파일 전송
scp ./Airflow_naver.py hyul@172.20.51.1:/home/hyul/airflow/dags
// 종료시
pgrep -f "airflow webserver"
pgrep -f "airflow scheduler"
kill pid
결과>> (버전 충돌로 빨간줄이 몇번 떳지만 정상 작동함)
728x90