Set up Airflow แบบง่าย ๆ จัดการโปรเจคบนเครื่องกันแบบชิล ๆ ด้วย airflowctl

เป็นเครื่องมือ CLI ที่ทำให้เราเซตอัพ Airflow ขึ้นมาเล่นเองบนเครื่องของเราแบบง่าย ๆ (ไม่ต้องใช้ Docker) เราสามารถที่จะสร้างโปรเจค จัดการ Version ของ Airflow และ Python รวมไปถึงเรื่องของ Connections กับ Variables ด้วยได้เลย

วิธีติดตั้งคือ เราอาจจะลง airflowctl ไว้แบบ System-wide Installation โดยใช้คำสั่ง

pip install airflowctl

เราก็จะสามารถใช้คำสั่ง airflowctl ได้ ซึ่งตัว CLI เค้าทำมาได้งามจริง ๆ ชอบมากกก :star_struck:

แล้วถ้าเราจะเริ่มโปรเจคใหม่ให้สั่ง

airflowctl init my_airflow_project --build-start

คำสั่งด้านบนจะสร้างโปรเจคให้เรามาประมาณนี้ :point_down:

my_airflow_project
├── .env
├── .gitignore
├── airflow.cfg
├── dags
│   └── example_dag_basic.py
├── logs
├── plugins
├── requirements.txt
├── settings.yaml
├── standalone_admin_password.txt
└── webserver_config.py

แล้วเราก็จะได้ Airflow รันบนเครื่องเรา พร้อมกับ example DAG มา 1 DAG :tada:

ตัว Username คือ admin ส่วน Password ให้ดูที่ไฟล์ standalone_admin_password.txt นะครับ

Executor จะเป็น SequentialExecutor และฐานข้อมูลเป็น SQLite โดย Default นะครับ สามารถเปลี่ยนได้อาจจะแก้ที่ไฟล์ airflow.cfg หรือแก้ Environment Variable ที่ไฟล์ .env ก็ได้เช่นกัน (แนะนำให้แก้ที่ .env ดีกว่า เราจะได้ไม่ต้องมี airflow.cfg หลายเวอร์ชั่น)

ลองเอาไปใช้กันดูนะครับ เผื่อบางทีเราไม่อยากจะรัน Docker ขึ้นมาให้เปลือง Resource ของเครื่อง เราก็ใช้เครื่องมือตัวนี้ได้ :smiley:

2 Likes