์๋ฌธ: ์ด๋ช ์ ์์ง์ ๋ฐ๋ผ ํ์ ๊ณผํ(์ํ)์ ์ธ๊ณ์์ ์ ๋ณด ๊ธฐ์ ์ ์ธ๊ณ์ ๋ค์ด์ฐ์ต๋๋ค. ๊ทธ๊ณณ์์๋ ์คํ ๊ตฌ์ฑ ๋ฐฉ๋ฒ๋ก ๊ณผ ์คํ ๋ฐ์ดํฐ ๋ถ์ ์ ๋ต์ ๋ํ ์ง์์ ์ฌ์ฉํด์ผ ํ์ง๋ง, ๋์๊ฒ ์๋ก์ด ๊ธฐ์ ์คํ. ์ด๋ฌํ ๊ธฐ์ ์ ์ตํ๋ ๊ณผ์ ์์ ์ฌ๋ฌ ๊ฐ์ง ์ด๋ ค์์ ์ง๋ฉดํ๊ฒ ๋์๋๋ฐ, ๋คํ์ค๋ฝ๊ฒ๋ ์ง๊ธ๊น์ง๋ ์ด๋ฅผ ๊ทน๋ณตํ์ต๋๋ค. ์๋ง๋ ์ด ๊ฒ์๋ฌผ์ ์ด์ ๋ง Apache ํ๋ก์ ํธ ์์ ์ ์์ํ ์ฌ๋๋ค์๊ฒ ์ ์ฉํ ๊ฒ์ ๋๋ค.
๊ทธ๋์ ์์ ์. ํ์ํ
Windows ํ๊ฒฝ์์๋ Airflow๋ฅผ ์คํํ๊ธฐ ์ํ ์ผ๋ฐ์ ์ธ ์ง์นจ์ด ์ ์ฉ๋์ง ์๋ ๊ฒ ๊ฐ์ผ๋ฏ๋ก ์ด๋ฅผ ํ์ฉํ์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ญ์์ค.
์ง์นจ์ ๋จ๊ณ๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค(์คํฌ์ผ๋ฌ - 5๋จ๊ณ์์๋ ๋ชจ๋ ๊ฒ์ด ์ ์งํ๋์์ต๋๋ค).
1. Linux ๋ฐฐํฌํ์ ํ์ ์ค์น๋ฅผ ์ํด Linux์ฉ Windows ํ์ ์์คํ ์ค์น
๊ทธ๋ค์ด ๋งํ๋ ๊ฒ์ฒ๋ผ ์ด๊ฒ์ ๊ฐ์ฅ ์์ ๋ฌธ์ ์ ๋๋ค.
์ ์ดํ โ ํ๋ก๊ทธ๋จ โ ํ๋ก๊ทธ๋จ ๋ฐ ๊ธฐ๋ฅ โ Windows ๊ธฐ๋ฅ ์ผ๊ธฐ ๋๋ ๋๊ธฐ โ Linux์ฉ Windows ํ์ ์์คํ
2. ์ํ๋ Linux ๋ฐฐํฌํ์ ์ค์นํฉ๋๋ค.
๋๋ ์์ฉ ํ๋ก๊ทธ๋จ์ ์ฌ์ฉํ๋ค
3. pip ์ค์น ๋ฐ ์ ๋ฐ์ดํธ
sudo apt-get install software-properties-common
sudo apt-add-repository universe
sudo apt-get update
sudo apt-get install python-pip
4. ์ํ์น ์์ดํ๋ก์ฐ ์ค์น
export SLUGIFY_USES_TEXT_UNIDECODE=yes
pip install apache-airflow
5. ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด๊ธฐํ
๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ด ๋์ ์์ ์ด๋ ค์์ด ์์๋ ๊ณณ์
๋๋ค. ์ง์นจ์ ๋ฐ๋ผ ๋ช
๋ น์ ์
๋ ฅํด์ผ ํฉ๋๋ค. airflow initdb
๊ทธ๋ฆฌ๊ณ ๋ค์ ๋จ๊ณ๋ก ๋์ด๊ฐ๋๋ค. ๊ทธ๋ฐ๋ฐ ๋ ๋ต์ฅ์ ๋ฐ์์ด์. airflow: command not found
. Apache Airflow๋ฅผ ์ค์นํ๋ ๋์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ผ๋ฉฐ ํ์ํ ํ์ผ์ ์ฌ์ฉํ ์ ์๋ค๊ณ ๊ฐ์ ํ๋ ๊ฒ์ด ๋
ผ๋ฆฌ์ ์
๋๋ค. ๋ชจ๋ ๊ฒ์ด ์์ด์ผ ํ ์์น์ ์๋์ง ํ์ธํ ํ airflow ํ์ผ์ ์ ์ฒด ๊ฒฝ๋ก๋ฅผ ์ง์ ํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค(๋ค์๊ณผ ๊ฐ์์ผ ํจ). ะะพะปะฝัะน/ะฟััั/ะดะพ/ัะฐะนะปะฐ/airflow initdb
). ํ์ง๋ง ๊ธฐ์ ์ ์ผ์ด๋์ง ์์๊ณ ๋๋ต์ ๊ฐ์์ด์ airflow: command not found
. ํ์ผ์ ์๋ ๊ฒฝ๋ก๋ฅผ ์ฌ์ฉํด ๋ณด์์ต๋๋ค(./.local/bin/airflow initdb
), ์ด๋ก ์ธํด ์๋ก์ด ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค. ModuleNotFoundError: No module named json'
๋ผ์ด๋ธ๋ฌ๋ฆฌ ์
๋ฐ์ดํธ๋ก ๊ทน๋ณตํ ์ ์๋ ๋ฌธ์ ์๋จ (๋ด ๊ฒฝ์ฐ์๋ ๋ฒ์ 0.15.4๊น์ง):
pip install werkzeug==0.15.4
Werkzeug์ ๋ํด ์์ธํ ์์๋ณผ ์ ์์ต๋๋ค.
์ด ๊ฐ๋จํ ์กฐ์ ํ ๋ช
๋ น ./.local/bin/airflow initdb
์ฑ๊ณต์ ์ผ๋ก ์๋ฃ๋์์ต๋๋ค.
6. Airflow ์๋ฒ ์คํ
์ด๊ฒ์ ๊ณต๊ธฐ ํ๋ฆ์ ์ ๊ทผํ๋ ๋ฐ ๋ฐ๋ฅธ ์ด๋ ค์์ ๋์ด ์๋๋๋ค. ๋ช
๋ น ์คํ ./.local/bin/airflow webserver -p 8080
์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค No such file or directory
. ์๋ง๋ ์๋ จ๋ Ubuntu ์ฌ์ฉ์๋ ๋ค์ ๋ช
๋ น์ ์ฌ์ฉํ์ฌ ํ์ผ์ ์ก์ธ์คํ ๋ ์ด๋ฌํ ์ด๋ ค์์ ์ฆ์ ๊ทน๋ณตํ๋ ค๊ณ ์๋ํ ๊ฒ์
๋๋ค. export PATH=$PATH:~/.local/bin/
(์ฆ, ๊ธฐ์กด PATH ์คํ ๊ฐ๋ฅ ๊ฒ์ ๊ฒฝ๋ก์ /.local/bin/์ ์ถ๊ฐํ๋ ๊ฒ์
๋๋ค.) ๊ทธ๋ฌ๋ ์ด ๊ฒ์๋ฌผ์ ์ฃผ๋ก Windows์์ ์์
ํ๊ณ ์ด ์๋ฃจ์
์ด ๋ช
๋ฐฑํ์ง ์๋ค๊ณ ์๊ฐํ๋ ์ฌ๋๋ค์ ์ํ ๊ฒ์
๋๋ค.
์์์ ์ค๋ช
ํ ์กฐ์ ํ ๋ช
๋ น ./.local/bin/airflow webserver -p 8080
์ฑ๊ณต์ ์ผ๋ก ์๋ฃ๋์์ต๋๋ค.
7.URL:
์ด์ ๋จ๊ณ์์ ๋ชจ๋ ๊ฒ์ด ์์กฐ๋กญ๊ฒ ์งํ๋์๋ค๋ฉด ์ด์ ๋ถ์ ์ ์ ์ ์ ๋ณตํ ์ค๋น๊ฐ ๋ ๊ฒ์ ๋๋ค.
Windows 10์ Apache Airflow๋ฅผ ์ค์นํ ๋ ์์์ ์ค๋ช ํ ๊ฒฝํ์ด ์ด๋ณด ์ฌ์ฉ์์๊ฒ ์ ์ฉํ๊ณ ์ต์ ๋ถ์ ๋๊ตฌ ์ธ๊ณ๋ก์ ์ง์ ์๋๋ฅผ ๋์ด๋ ๋ฐ ๋์์ด ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
๋ค์๋ฒ์๋ ์ฃผ์ ๋ฅผ ์ด์ด๊ฐ๋ฉฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์
์ ์ฌ์ฉ์ ํ๋ ๋ถ์ ๋ถ์ผ์์ Apache Airflow๋ฅผ ์ฌ์ฉํ ๊ฒฝํ์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์ถ์ต๋๋ค.
์ถ์ฒ : habr.com