Cloud Composer ๊ฐœ์š”

Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1

์ด ํŽ˜์ด์ง€์—์„œ๋Š” Airflow์™€ DAG๋ฅผ ๊ฐ„๋žตํ•˜๊ฒŒ ์†Œ๊ฐœํ•˜๊ณ  Cloud Composer์˜ ๊ธฐ๋Šฅ์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

Cloud Composer ์ถœ์‹œ ๋ฒ„์ „์˜ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์ถœ์‹œ ๋…ธํŠธ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

Cloud Composer ์ •๋ณด

Cloud Composer๋Š” ํด๋ผ์šฐ๋“œ ๋ฐ ์˜จํ”„๋ ˆ๋ฏธ์Šค ๋ฐ์ดํ„ฐ ์„ผํ„ฐ ์ „์ฒด์˜ ์›Œํฌํ”Œ๋กœ ํŒŒ์ดํ”„๋ผ์ธ์„ ์ƒ์„ฑ, ์˜ˆ์•ฝ, ๋ชจ๋‹ˆํ„ฐ๋ง, ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์™„์ „ ๊ด€๋ฆฌํ˜• ์›Œํฌํ”Œ๋กœ ์กฐ์ • ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

Cloud Composer๋Š” ์ธ๊ธฐ ์žˆ๋Š” Apache Airflow ์˜คํ”ˆ์†Œ์Šค ํ”„๋กœ์ ํŠธ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์ถ•๋˜์–ด Python ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

Apache Airflow์˜ ๋กœ์ปฌ ์ธ์Šคํ„ด์Šค ๋Œ€์‹  Cloud Composer๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์„ค์น˜ ๋˜๋Š” ๊ด€๋ฆฌ ์˜ค๋ฒ„ํ—ค๋“œ ์—†์ด Airflow์˜ ์ด์ ์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Cloud Composer๋Š” ๊ด€๋ฆฌํ˜• Airflow ํ™˜๊ฒฝ์„ ์‹ ์†ํ•˜๊ฒŒ ๋งŒ๋“ค๊ณ  ๊ฐ•๋ ฅํ•œ Airflow ์›น ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ ๋ช…๋ น์ค„ ๋„๊ตฌ์™€ ๊ฐ™์€ Airflow ์ „์šฉ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ธํ”„๋ผ๊ฐ€ ์•„๋‹Œ ์›Œํฌํ”Œ๋กœ์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

Cloud Composer ๋ฒ„์ „ ๊ฐ„์˜ ์ฐจ์ด์ 

Cloud Composer์˜ ์ฃผ ๋ฒ„์ „ ๊ฐ„ ์ฐจ์ด์ ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ Cloud Composer ๋ฒ„์ „ ๊ด€๋ฆฌ ๊ฐœ์š”๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

Airflow ๋ฐ Airflow DAG(์›Œํฌํ”Œ๋กœ)

๋ฐ์ดํ„ฐ ๋ถ„์„์—์„œ ์›Œํฌํ”Œ๋กœ๋Š” ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘, ๋ณ€ํ™˜, ๋ถ„์„, ํ™œ์šฉ์„ ์œ„ํ•œ ์ผ๋ จ์˜ ํƒœ์Šคํฌ๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. Airflow์—์„œ ์›Œํฌํ”Œ๋กœ๋Š” DAG(๋˜๋Š” Directed Acyclic Graph)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

DAG์™€ ํƒœ์Šคํฌ์˜ ๊ด€๊ณ„
๊ทธ๋ฆผ 1. DAG์™€ ํƒœ์Šคํฌ์˜ ๊ด€๊ณ„

DAG๋Š” ๊ด€๊ณ„ ๋ฐ ์ข…์† ํ•ญ๋ชฉ์„ ๋ฐ˜์˜ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๊ตฌ์„ฑ๋œ ์˜ˆ์•ฝํ•˜๊ณ  ์‹คํ–‰ํ•˜๋ ค๋Š” ํƒœ์Šคํฌ์˜ ๋ชจ์Œ์ž…๋‹ˆ๋‹ค. DAG๋Š” ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ DAG ๊ตฌ์กฐ๋ฅผ ์ •์˜ํ•˜๋Š” Python ํŒŒ์ผ์—์„œ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. DAG์˜ ๋ชฉ์ ์€ ๊ฐ ํƒœ์Šคํฌ๊ฐ€ ์ ์ ˆํ•œ ์‹œ์ ์— ์˜ฌ๋ฐ”๋ฅธ ์ˆœ์„œ๋กœ ์‹คํ–‰๋˜๋„๋ก ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

DAG์˜ ๊ฐ ํƒœ์Šคํฌ๋Š” ๊ฑฐ์˜ ๋ชจ๋“  ๊ฒƒ์„ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ํ•œ ํƒœ์Šคํฌ๋Š” ๋‹ค์Œ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ˆ˜์ง‘์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ์ค€๋น„
  • API ๋ชจ๋‹ˆํ„ฐ๋ง
  • ์ด๋ฉ”์ผ ๋ณด๋‚ด๊ธฐ
  • ํŒŒ์ดํ”„๋ผ์ธ ์‹คํ–‰

์ผ์ •์— ๋”ฐ๋ผ DAG๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ ์™ธ์—๋„ Cloud Storage ๋ฒ„ํ‚ท ๋ณ€๊ฒฝ์‚ฌํ•ญ๊ณผ ๊ฐ™์€ ์ด๋ฒคํŠธ์— ๋Œ€ํ•œ ์‘๋‹ต์œผ๋กœ ๋˜๋Š” ์ˆ˜๋™์œผ๋กœ DAG๋ฅผ ํŠธ๋ฆฌ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ DAG ์˜ˆ์•ฝ ๋ฐ ํŠธ๋ฆฌ๊ฑฐ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

DAG ๋ฐ ํƒœ์Šคํฌ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ Apache Airflow ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

Cloud Composer ํ™˜๊ฒฝ

Cloud Composer ํ™˜๊ฒฝ์€ Google Kubernetes Engine์— ๊ธฐ๋ฐ˜์„ ๋‘” ๋…๋ฆฝ ์‹คํ–‰ํ˜• Airflow ๋ฐฐํฌ์ž…๋‹ˆ๋‹ค. Airflow์— ๊ธฐ๋ณธ ์ œ๊ณต๋˜๋Š” ์ปค๋„ฅํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ Google Cloud ์„œ๋น„์Šค์™€ ํ•จ๊ป˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์ง€์›๋˜๋Š” ๋ฆฌ์ „์˜ ๋‹จ์ผ Google Cloudํ”„๋กœ์ ํŠธ์—์„œ ํ™˜๊ฒฝ์„ ํ•œ ๊ฐœ ์ด์ƒ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Cloud Composer๋Š” ์›Œํฌํ”Œ๋กœ ๋ฐ ๋ชจ๋“  Airflow ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” Google Cloud ์„œ๋น„์Šค๋ฅผ ํ”„๋กœ๋น„์ €๋‹ํ•ฉ๋‹ˆ๋‹ค. ํ™˜๊ฒฝ์˜ ์ฃผ์š” ๊ตฌ์„ฑ์š”์†Œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • GKE ํด๋Ÿฌ์Šคํ„ฐ: Airflow ์Šค์ผ€์ค„๋Ÿฌ, ํŠธ๋ฆฌ๊ฑฐ, ์ž‘์—…์ž์™€ ๊ฐ™์€ Airflow ๊ตฌ์„ฑ์š”์†Œ๋Š” ํ™˜๊ฒฝ์„ ์œ„ํ•ด ์ƒ์„ฑ๋œ ๋‹จ์ผ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ GKE ์›Œํฌ๋กœ๋“œ๋กœ ์‹คํ–‰๋˜๋ฉฐ ์ฒ˜๋ฆฌ ๋ฐ DAG ์‹คํ–‰์„ ๋‹ด๋‹นํ•ฉ๋‹ˆ๋‹ค.

    ์ด ํด๋Ÿฌ์Šคํ„ฐ๋Š” ๋˜ํ•œ Composer Agent ๋ฐ Airflow Monitoring๊ณผ ๊ฐ™์€ ๋‹ค๋ฅธ Cloud Composer ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ํ˜ธ์ŠคํŒ…ํ•˜์—ฌ Cloud Composer ํ™˜๊ฒฝ ๊ด€๋ฆฌ๋ฅผ ๋•๊ณ , Cloud Logging์— ์ €์žฅํ•  ๋กœ๊ทธ๋ฅผ ์ˆ˜์ง‘ํ•˜๊ณ , Cloud Monitoring์— ์—…๋กœ๋“œํ•  ์ธก์ •ํ•ญ๋ชฉ์„ ์ˆ˜์ง‘ํ•ฉ๋‹ˆ๋‹ค.

  • Airflow ์›น ์„œ๋ฒ„: ์›น ์„œ๋ฒ„๋Š” Apache Airflow UI๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

  • Airflow ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—๋Š” Apache Airflow ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

  • Cloud Storage ๋ฒ„ํ‚ท: Cloud Composer๋Š” Cloud Storage ๋ฒ„ํ‚ท๊ณผ ํ™˜๊ฒฝ์„ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ํ™˜๊ฒฝ ๋ฒ„ํ‚ท์ด๋ผ๊ณ ๋„ ํ•˜๋Š” ์ด ๋ฒ„ํ‚ท์€ DAG, ๋กœ๊ทธ, ์ปค์Šคํ…€ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ฐ ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ํ™˜๊ฒฝ ๋ฒ„ํ‚ท์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ Cloud Storage์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

ํ™˜๊ฒฝ์˜ ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ์ž์„ธํžˆ ์‚ดํŽด๋ณด๋ ค๋ฉด ํ™˜๊ฒฝ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

Cloud Composer ์ธํ„ฐํŽ˜์ด์Šค

Cloud Composer๋Š” ํ™˜๊ฒฝ, ํ™˜๊ฒฝ ๋‚ด์—์„œ ์‹คํ–‰๋˜๋Š” Airflow ์ธ์Šคํ„ด์Šค, ๊ฐœ๋ณ„ DAG๋ฅผ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด Google Cloud ์ฝ˜์†”, Google Cloud CLI, Cloud Composer API ๋˜๋Š” Terraform์—์„œ Cloud Composer ํ™˜๊ฒฝ์„ ๋งŒ๋“ค๊ณ  ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋˜ ๋‹ค๋ฅธ ์˜ˆ๋กœGoogle Cloud ์ฝ˜์†”, ๊ธฐ๋ณธ Airflow UI์—์„œ ๋˜๋Š” Google Cloud CLI ๋ฐ Airflow CLI ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜์—ฌ DAG๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Cloud Composer์˜ Airflow ๊ธฐ๋Šฅ

Cloud Composer๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ Airflow ๊ธฐ๋Šฅ์„ ๊ด€๋ฆฌํ•˜๊ณ  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • Airflow DAG: Google Cloud ์ฝ˜์†”์—์„œ ๋˜๋Š” ๊ธฐ๋ณธ Airflow UI๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Airflow DAG๋ฅผ ์ถ”๊ฐ€, ์—…๋ฐ์ดํŠธ, ์‚ญ์ œ ๋˜๋Š” ํŠธ๋ฆฌ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • Airflow ๊ตฌ์„ฑ ์˜ต์…˜: Airflow ๊ตฌ์„ฑ ์˜ต์…˜์„ Cloud Composer์— ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ๋ณธ๊ฐ’์—์„œ ์ปค์Šคํ…€ ๊ฐ’์œผ๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Cloud Composer์—์„œ ์ผ๋ถ€ ๊ตฌ์„ฑ ์˜ต์…˜์€ ์ฐจ๋‹จ๋˜์–ด ์žˆ์œผ๋ฉฐ, ํ•ด๋‹น ๊ฐ’์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

  • Airflow ์—ฐ๊ฒฐ

  • Airflow UI

  • Airflow CLI

  • ์ปค์Šคํ…€ ํ”Œ๋Ÿฌ๊ทธ์ธ: ์ปค์Šคํ…€, ์‚ฌ๋‚ด Apache Airflow ์—ฐ์‚ฐ์ž, ํ›„ํฌ, ์„ผ์„œ ๋˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค์™€ ๊ฐ™์€ ์ปค์Šคํ…€ Airflow ํ”Œ๋Ÿฌ๊ทธ์ธ์„ Cloud Composer ํ™˜๊ฒฝ์— ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • Python ์ข…์† ํ•ญ๋ชฉ: ํ™˜๊ฒฝ์— ์žˆ๋Š” Python ํŒจํ‚ค์ง€ ์ƒ‰์ธ์—์„œ ๋˜๋Š” Artifact Registry ์ €์žฅ์†Œ๋ฅผ ํฌํ•จํ•œ ๋น„๊ณต๊ฐœ ํŒจํ‚ค์ง€ ์ €์žฅ์†Œ์—์„œ Python ์ข…์† ํ•ญ๋ชฉ์„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ข…์† ํ•ญ๋ชฉ์ด ํŒจํ‚ค์ง€ ์ƒ‰์ธ์— ์—†์œผ๋ฉด ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

  • DAG, Airflow ๊ตฌ์„ฑ์š”์†Œ, Cloud Composer ํ™˜๊ฒฝ์˜ ๋กœ๊น… ๋ฐ ๋ชจ๋‹ˆํ„ฐ๋ง:

Cloud Composer์˜ ์•ก์„ธ์Šค ์ œ์–ด

Google Cloud ํ”„๋กœ์ ํŠธ ์ˆ˜์ค€์—์„œ ๋ณด์•ˆ์„ ๊ด€๋ฆฌํ•˜๊ณ  ๊ฐœ๋ณ„ ์‚ฌ์šฉ์ž๊ฐ€ ํ™˜๊ฒฝ์„ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋„๋ก IAM ์—ญํ• ์„ ํ• ๋‹นํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†๊ฑฐ๋‚˜ ์ ์ ˆํ•œ Cloud Composer IAM ์—ญํ• ์ด ํ• ๋‹น๋˜์ง€ ์•Š์€ ์‚ฌ์šฉ์ž๋Š” ํ•ด๋‹น ํ™˜๊ฒฝ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

IAM ์™ธ์—๋„ Apache Airflow ์•ก์„ธ์Šค ์ œ์–ด ๋ชจ๋ธ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” Airflow UI ์•ก์„ธ์Šค ์ œ์–ด๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Cloud Composer์˜ ๋ณด์•ˆ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ Cloud Composer ๋ณด์•ˆ ๊ฐœ์š”๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

ํ™˜๊ฒฝ ๋„คํŠธ์›Œํ‚น

Cloud Composer๋Š” ํ™˜๊ฒฝ์˜ ์—ฌ๋Ÿฌ ๋„คํŠธ์›Œํ‚น ๊ตฌ์„ฑ์„ ๋‹ค์–‘ํ•œ ๊ตฌ์„ฑ ์˜ต์…˜๊ณผ ํ•จ๊ป˜ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋น„๊ณต๊ฐœ IP ํ™˜๊ฒฝ์—์„œ DAG ๋ฐ Airflow ๊ตฌ์„ฑ์š”์†Œ๋Š” ๊ณต๊ฐœ ์ธํ„ฐ๋„ท์œผ๋กœ๋ถ€ํ„ฐ ์™„์ „ํžˆ ๊ฒฉ๋ฆฌ๋ฉ๋‹ˆ๋‹ค.

Cloud Composer์˜ ๋„คํŠธ์›Œํ‚น์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๊ฐœ๋ณ„ ๋„คํŠธ์›Œํ‚น ๊ธฐ๋Šฅ ํŽ˜์ด์ง€๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

Cloud Composer์˜ ๊ธฐํƒ€ ๊ธฐ๋Šฅ

๊ธฐํƒ€ Cloud Composer ๊ธฐ๋Šฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ(FAQ)

Cloud Composer๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” Apache Airflow ๋ฒ„์ „์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

Cloud Composer ํ™˜๊ฒฝ์€ Cloud Composer ์ด๋ฏธ์ง€๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ํ™˜๊ฒฝ์„ ๋งŒ๋“ค ๋•Œ ํŠน์ • Airflow ๋ฒ„์ „์ด ํฌํ•จ๋œ ์ด๋ฏธ์ง€๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • Cloud Composer 3์€ Airflow 2๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • Cloud Composer 2๋Š” Airflow 2๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • Cloud Composer 1์€ Airflow 1 ๋ฐ Airflow 2๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

ํ™˜๊ฒฝ์˜ Apache Airflow ๋ฒ„์ „์„ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Cloud Composer ์ด๋ฏธ์ง€์˜ ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ํ™˜๊ฒฝ์„ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋„๋ก ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ Cloud Composer ์ถœ์‹œ ๋ฒ„์ „์€ ์—ฌ๋Ÿฌ Apache Airflow ๋ฒ„์ „์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ Airflow UI์™€ CLI๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‚˜์š”?

ํ™˜๊ฒฝ์˜ Apache Airflow ์›น ์ธํ„ฐํŽ˜์ด์Šค์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ™˜๊ฒฝ๋งˆ๋‹ค ๊ณ ์œ ํ•œ Airflow UI๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. Airflow UI์— ์•ก์„ธ์Šคํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ Airflow ์›น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

ํ™˜๊ฒฝ์—์„œ Airflow CLI ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋ ค๋ฉด gcloud ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. Cloud Composer ํ™˜๊ฒฝ์—์„œ Airflow CLI ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ Airflow ๋ช…๋ น์ค„ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์ž์ฒด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ Airflow ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‚˜์š”?

Cloud Composer๋Š” Airflow ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•ด ๊ด€๋ฆฌํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ œ๊ณต ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ Airflow ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

์ž์ฒด ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ Cloud Composer ํด๋Ÿฌ์Šคํ„ฐ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‚˜์š”?

Cloud Composer๋Š” Google Kubernetes Engine ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•ด์„œ Airflow ๊ตฌ์„ฑ์š”์†Œ๊ฐ€ ์‹คํ–‰๋˜๋Š” ํ™˜๊ฒฝ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๋งŒ๋“ค๊ณ , ๊ด€๋ฆฌ, ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํด๋Ÿฌ์Šคํ„ฐ๋Š” Cloud Composer์—์„œ ์™„์ „ํžˆ ๊ด€๋ฆฌ๋ฉ๋‹ˆ๋‹ค.

์ž์ฒด ๊ด€๋ฆฌํ˜• Google Kubernetes Engine ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ Cloud Composer ํ™˜๊ฒฝ์„ ๋นŒ๋“œํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค.

์ž์ฒด Container Registry๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‚˜์š”?

Cloud Composer๋Š” Artifact Registry ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Cloud Composer ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€ ์ €์žฅ์†Œ๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์‚ฌ์šฉ์ž๊ฐ€ ์ œ๊ณตํ•œ Container Registry๋กœ ๋ฐ”๊ฟ€ ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค.

Cloud Composer ํ™˜๊ฒฝ์ด ์˜์—ญ ๋˜๋Š” ๋ฆฌ์ „์— ํ•ด๋‹นํ•˜๋‚˜์š”?

ํ™˜๊ฒฝ์„ ๋งŒ๋“ค ๋•Œ ํ™˜๊ฒฝ์˜ ๋ฆฌ์ „์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

  • ํ‘œ์ค€ Cloud Composer ํ™˜๊ฒฝ์—๋Š” ์˜์—ญ๋ณ„ Airflow ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๋‹ค์ค‘ ์˜์—ญ Airflow ์‹คํ–‰ ๋ ˆ์ด์–ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. Airflow ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์ง€์ •๋œ ๋ฆฌ์ „์˜ ์˜์—ญ ์ค‘ ํ•˜๋‚˜์— ์žˆ์œผ๋ฉฐ Airflow ๊ตฌ์„ฑ์š”์†Œ๋Š” ์—ฌ๋Ÿฌ ์˜์—ญ์— ๋ถ„์‚ฐ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๋ณต์›๋ ฅ์ด ์šฐ์ˆ˜ํ•œ (๊ณ ๊ฐ€์šฉ์„ฑ) Cloud Composer ํ™˜๊ฒฝ์—๋Š” ๋‹ค์ค‘ ์˜์—ญ Airflow ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๋‹ค์ค‘ ์˜์—ญ Airflow ์‹คํ–‰ ๋ ˆ์ด์–ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณต์›๋ ฅ์ด ์šฐ์ˆ˜ํ•œ ํ™˜๊ฒฝ์€ ์„ ํƒํ•œ ๋ฆฌ์ „์˜ ์ตœ์†Œ ๋‘ ๊ฐœ ์ด์ƒ์˜ ์˜์—ญ์—์„œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. Cloud Composer๋Š” ํ™˜๊ฒฝ์˜ ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ์˜์—ญ ๊ฐ„์— ์ž๋™์œผ๋กœ ๋ถ„์‚ฐํ•ฉ๋‹ˆ๋‹ค. Airflow ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ €์žฅํ•˜๋Š” Cloud SQL ๊ตฌ์„ฑ์š”์†Œ์—๋Š” ์„ ํƒํ•œ ๋ฆฌ์ „์˜ ์˜์—ญ ๊ฐ„์— ๋ถ„์‚ฐ๋œ ๊ธฐ๋ณธ ์ธ์Šคํ„ด์Šค์™€ ๋Œ€๊ธฐ ์ธ์Šคํ„ด์Šค๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ ๋‹จ๊ณ„