์ง์› ID ์ œํœด๋ฅผ ํ™œ์šฉํ•œ ์•ก์„ธ์Šค ํ™˜๊ฒฝ

Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1

์ด ํŽ˜์ด์ง€์—์„œ๋Š” Workforce Identity Federation์„ ์‚ฌ์šฉํ•˜์—ฌ Cloud Composer ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์•ก์„ธ์Šค๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

Cloud Composer์˜ ์ง์› ID ์ œํœด ์ •๋ณด

์ง์› ID ์ œํœด๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์™ธ๋ถ€ ID ๊ณต๊ธ‰์—…์ฒด (IdP)์—์„œ ์ง์›, ํŒŒํŠธ๋„ˆ, ๊ณ„์•ฝ์—…์ฒด์™€ ๊ฐ™์€ ์‚ฌ์šฉ์ž ๊ทธ๋ฃน์— ๋Œ€ํ•ด IAM์„ ์‚ฌ์šฉํ•˜์—ฌ ์ง์›์ž„์„ ์ธ์ฆํ•˜๊ณ  ์•ก์„ธ์Šค๋ฅผ ์Šน์ธํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํ•ด๋‹น ์‚ฌ์šฉ์ž๊ฐ€ Google Cloud ์„œ๋น„์Šค์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ง์› ID ์ œํœด์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์ง์› ID ์ œํœด๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.

์ง์› ID ์ œํœด๊ฐ€ ํ”„๋กœ์ ํŠธ์— ๊ตฌ์„ฑ๋œ ๊ฒฝ์šฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐฉ๋ฒ•์œผ๋กœ ํ™˜๊ฒฝ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • Google Cloud ์ฝ˜์†”์˜ Cloud Composer ํŽ˜์ด์ง€
  • Airflow UI
  • Google Cloud CLI(Airflow CLI ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋“ฑ)
  • Cloud Composer API
  • Airflow REST API

์‹œ์ž‘ํ•˜๊ธฐ ์ „์—

  • ๋ฒ„์ „ 2.1.11 ๋ฐ Airflow ๋ฒ„์ „ 2.4.3๋ถ€ํ„ฐ ์ƒ์„ฑ๋œ ๋ชจ๋“  ์ƒˆ Cloud Composer ํ™˜๊ฒฝ์€ Workforce Identity Federation์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ง์› ID ์ œํœด๋ฅผ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•ด ํ™˜๊ฒฝ์„ ํŠน์ • ๋ฐฉ์‹์œผ๋กœ ๊ตฌ์„ฑํ•  ํ•„์š”๋Š” ์—†์Šต๋‹ˆ๋‹ค.

  • ๋ฒ„์ „ 2.1.11 ๋ฐ Airflow ๋ฒ„์ „ 2.4.3 ์ด์ „์— ์ƒ์„ฑ๋˜์—ˆ๊ณ  ์ดํ›„ ๋ฒ„์ „์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ๋œ ํ™˜๊ฒฝ์€ ์ง์› ID ์ œํœด๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ™˜๊ฒฝ์—์„œ ์ง์› ID ์ œํœด๋ฅผ ์ง€์›ํ•˜๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ง์› ID ์ œํœด์— ๋Œ€ํ•œ Cloud Storage ์ œํ•œ์‚ฌํ•ญ์ด ํ™˜๊ฒฝ์˜ ๋ฒ„ํ‚ท์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ํŠนํžˆ ์™ธ๋ถ€ ID์—์„œ DAG ๋ฐ ํŒŒ์ผ์„ ์ด ๋ฒ„ํ‚ท์— ์—…๋กœ๋“œํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋ ค๋ฉด ํ™˜๊ฒฝ ๋ฒ„ํ‚ท์—์„œ ๊ท ์ผํ•œ ๋ฒ„ํ‚ท ์ˆ˜์ค€ ์•ก์„ธ์Šค๋ฅผ ์‚ฌ์šฉ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • Airflow์—์„œ ์ „์†ก๋œ ์ด๋ฉ”์ผ์—๋Š” Google ๊ณ„์ •์˜ Airflow UI URL๋งŒ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์™ธ๋ถ€ ID๋Š” ์™ธ๋ถ€ ID์˜ Airflow UI URL์„ ํ†ตํ•ด์„œ๋งŒ Airflow UI์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๋งํฌ๋ฅผ ์กฐ์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(์™ธ๋ถ€ ID์˜ URL๋กœ ๋ณ€๊ฒฝ).

Workforce Identity Federation์„ ์‚ฌ์šฉํ•˜์—ฌ ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ์„ค์ •

์ด ์„น์…˜์—์„œ๋Š” Cloud Composer ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ์™ธ๋ถ€ ID ์•ก์„ธ์Šค๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋‹จ๊ณ„๋ฅผ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

ID ๊ณต๊ธ‰์—…์ฒด ๊ตฌ์„ฑ

์ง์› ID ์ œํœด ๊ตฌ์„ฑ ๊ฐ€์ด๋“œ์— ๋”ฐ๋ผ ID ๊ณต๊ธ‰์—…์ฒด์˜ ์ง์› ID ์ œํœด๋ฅผ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

์™ธ๋ถ€ ID์— IAM ์—ญํ•  ๋ถ€์—ฌ

Identity and Access Management์—์„œ ์™ธ๋ถ€ ID ์ง‘ํ•ฉ์— IAM ์—ญํ• ์„ ๋ถ€์—ฌํ•˜์—ฌ ์™ธ๋ถ€ ID๊ฐ€ ํ™˜๊ฒฝ์— ์•ก์„ธ์Šคํ•˜๊ณ  ์ƒํ˜ธ์ž‘์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

  • Cloud Composer ๊ด€๋ จ ์—ญํ•  ๋ชฉ๋ก์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์—ญํ•  ๋ถ€์—ฌ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”. ์˜ˆ๋ฅผ ๋“ค์–ด ํ™˜๊ฒฝ ์‚ฌ์šฉ์ž ๋ฐ ์Šคํ† ๋ฆฌ์ง€ ๊ฐ์ฒด ๋ทฐ์–ด(composer.environmentAndStorageObjectViewer) ์—ญํ• ์„ ๋ถ€์—ฌ๋ฐ›์€ ์‚ฌ์šฉ์ž๋Š” ํ™˜๊ฒฝ์„ ๋ณด๊ณ  Airflow UI์— ์•ก์„ธ์Šคํ•˜๊ณ  DAG UI์—์„œ DAG๋ฅผ ๋ณด๊ณ  ํŠธ๋ฆฌ๊ฑฐํ•˜๋ฉฐ ํ™˜๊ฒฝ ๋ฒ„ํ‚ท์—์„œ ๊ฐ์ฒด๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์™ธ๋ถ€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ด๋Ÿฌํ•œ ์—ญํ• ์„ ํ• ๋‹นํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์ฃผ ๊ตฌ์„ฑ์›์— IAM ์—ญํ•  ๋ถ€์—ฌ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

  • IAM ์ •์ฑ…์—์„œ ์™ธ๋ถ€ ID๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ IAM ์ •์ฑ…์—์„œ ์ง์› ํ’€ ์‚ฌ์šฉ์ž ํ‘œํ˜„์„ ์ฐธ๊ณ ํ•˜์„ธ์š”.

์‹ ๊ทœ ์‚ฌ์šฉ์ž๊ฐ€ Airflow UI ์•ก์„ธ์Šค ์ œ์–ด์—์„œ ์˜ฌ๋ฐ”๋ฅธ Airflow ์—ญํ• ์„ ๋ฐ›๋Š”์ง€ ํ™•์ธ

Cloud Composer๋Š” Google ๊ณ„์ • ์‚ฌ์šฉ์ž์™€ ๋™์ผํ•œ ๋ฐฉ์‹์œผ๋กœ ์™ธ๋ถ€ ID์˜ Airflow ์‚ฌ์šฉ์ž๋ฅผ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฉ”์ผ ์ฃผ์†Œ ๋Œ€์‹  ์ฃผ ๊ตฌ์„ฑ์› ์‹๋ณ„์ž๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์™ธ๋ถ€ ID๊ฐ€ Airflow UI์— ์ฒ˜์Œ ์•ก์„ธ์Šคํ•˜๋ฉด Airflow ์‚ฌ์šฉ์ž๊ฐ€ ๊ธฐ๋ณธ ์—ญํ• ๋กœ Airflow ์—ญํ•  ๊ธฐ๋ฐ˜ ์•ก์„ธ์Šค ์ œ์–ด ์‹œ์Šคํ…œ์— ์ž๋™์œผ๋กœ ๋“ฑ๋ก๋ฉ๋‹ˆ๋‹ค.

์ƒˆ ์‚ฌ์šฉ์ž๊ฐ€ Airflow UI ์•ก์„ธ์Šค ์ œ์–ด์—์„œ ์˜ฌ๋ฐ”๋ฅธ Airflow ์—ญํ• ์„ ๋ฐ›๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์˜ต์…˜์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์™ธ๋ถ€ ID๊ฐ€ Airflow UI์— ์ฒ˜์Œ ์•ก์„ธ์Šคํ•œ ํ›„ ๊ธฐ๋ณธ ์—ญํ• ์„ ๋ฐ›๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ํ•„์š”ํ•œ ๊ฒฝ์šฐ Airflow ๊ด€๋ฆฌ์ž๊ฐ€ ์ด ์—ญํ• ์„ ๋‹ค๋ฅธ ์—ญํ• ๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ์ž ์ด๋ฆ„ ๋ฐ ์ด๋ฉ”์ผ ํ•„๋“œ๊ฐ€ ์ฃผ ๊ตฌ์„ฑ์› ์‹๋ณ„์ž๋กœ ์„ค์ •๋œ Airflow ์‚ฌ์šฉ์ž ๋ ˆ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ํ•„์š”ํ•œ ์—ญํ• ์ด ์„ค์ •๋œ ์™ธ๋ถ€ ID๋ฅผ ์‚ฌ์ „ ๋“ฑ๋กํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์™ธ๋ถ€ ID์— ๊ธฐ๋ณธ ์—ญํ• ์ด ์•„๋‹Œ ๊ฐœ๋ฐœ์ž๊ฐ€ ํ• ๋‹นํ•˜๋Š” ์—ญํ• ์ด ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

ํ™˜๊ฒฝ์—์„œ ์ง์› ID ์ œํœด๋ฅผ ์ง€์›ํ•˜๋Š”์ง€ ํ™•์ธ

ํ™˜๊ฒฝ์—์„œ Workforce Identity Federation์„ ์ง€์›ํ•˜๋Š”์ง€ ํ™•์ธํ•˜๋ ค๋ฉด ๋‹ค์Œ Google Cloud CLI ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ถœ๋ ฅ์— URI๊ฐ€ ํ‘œ์‹œ๋˜๋ฉด ํ™˜๊ฒฝ์—์„œ ์ง์› ID ์ œํœด๋ฅผ ์ง€์›ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

gcloud composer environments describe ENVIRONMENT_NAME \
  --location LOCATION \
  --format="value(config.airflowByoidUri)"

๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.

  • ENVIRONMENT_NAME: ํ™˜๊ฒฝ ์ด๋ฆ„
  • LOCATION: ํ™˜๊ฒฝ์ด ์œ„์น˜ํ•œ ๋ฆฌ์ „

์˜ˆ:

gcloud composer environments describe example-environment \
  --location us-central1 \
  --format="value(config.airflowByoidUri)"

Google Cloud ์ฝ˜์†”์—์„œ Cloud Composer ํŽ˜์ด์ง€์— ์•ก์„ธ์Šค

Google Cloud ์ง์› ID ์ œํœด ์ฝ˜์†”์—์„œ Cloud Composer ํŽ˜์ด์ง€์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

Google Cloud ์ง์› ID ์ œํœด ์ฝ˜์†”์˜ Composer ํŽ˜์ด์ง€์—์„œ ํ™˜๊ฒฝ, Cloud Composer ๋กœ๊ทธ, ๋ชจ๋‹ˆํ„ฐ๋ง, DAG UI๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” UI์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ œํœด ์ฝ˜์†”์˜ ๋ชจ๋“  Airflow UI ๋งํฌ๋Š” ์™ธ๋ถ€ ID์˜ Airflow UI ์•ก์„ธ์Šค ํฌ์ธํŠธ๋ฅผ ๊ฐ€๋ฆฌํ‚ต๋‹ˆ๋‹ค.

2.1.11 ์ด์ „ ๋ฒ„์ „ ๋˜๋Š” Airflow 2.4.3 ์ด์ „ ๋ฒ„์ „์˜ ํ™˜๊ฒฝ์—์„œ๋Š” Airflow UI ๋งํฌ๊ฐ€ '์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Œ'์œผ๋กœ ํ‘œ์‹œ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ํ•ด๋‹น ํ™˜๊ฒฝ์ด Airflow UI์—์„œ Workforce Identity Federation ์‚ฌ์šฉ์ž๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ด ํ™˜๊ฒฝ์˜ Airflow UI๋Š” Google ๊ณ„์ •์œผ๋กœ๋งŒ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Airflow UI ์•ก์„ธ์Šค

Cloud Composer ํ™˜๊ฒฝ์—๋Š” Airflow UI์— ๋Œ€ํ•œ ๋‘ ๊ฐœ์˜ URL์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ๊ฐ Google ๊ณ„์ •๊ณผ ์™ธ๋ถ€ ID๋ฅผ ์œ„ํ•œ URL์ž…๋‹ˆ๋‹ค. ์™ธ๋ถ€ ID๋Š” ์™ธ๋ถ€ ID URL์„ ํ†ตํ•ด Airflow UI์— ์•ก์„ธ์Šคํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • ์™ธ๋ถ€ ID URL์€ https://<UNIQUE_ID>.composer.byoid.googleusercontent.com์ž…๋‹ˆ๋‹ค.

  • Google ๊ณ„์ • URL์€ https://<UNIQUE_ID>.composer.googleusercontent.com์ž…๋‹ˆ๋‹ค.

์™ธ๋ถ€ ID๋กœ ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๋งŒ ์™ธ๋ถ€ ID๋ฅผ ์œ„ํ•œ URL์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ๋กœ๊ทธ์ธํ•˜์ง€ ์•Š์€ ์ƒํƒœ์—์„œ ์™ธ๋ถ€ ID์˜ URL์„ ๋ฐฉ๋ฌธํ•˜๋ฉด ๋จผ์ € ์ธ์ฆ ํฌํ„ธ๋กœ ๋ฆฌ๋””๋ ‰์…˜๋˜์–ด ์ง์› ํ’€ ๊ณต๊ธ‰์—…์ฒด ์ด๋ฆ„์„ ์ง€์ •ํ•œ ํ›„, ID ๊ณต๊ธ‰์ž๋กœ ๋ฆฌ๋””๋ ‰์…˜๋˜์–ด ๋กœ๊ทธ์ธํ•œ ๋‹ค์Œ, ํ™˜๊ฒฝ์˜ Airflow UI๋กœ ๋ฆฌ๋””๋ ‰์…˜๋ฉ๋‹ˆ๋‹ค.

Google Cloud ์ฝ˜์†”์—์„œ DAG UI์— ์•ก์„ธ์Šค

DAG UI๋Š” ์ œํœด ์ฝ˜์†”์˜ ์ผ๋ถ€๋กœ ์™ธ๋ถ€ ID ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. IAM ์ •์ฑ…์œผ๋กœ ์•ก์„ธ์Šค๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ „์ฒด ์ง์› ID ์ œํœด๋ฅผ ์ง€์›ํ•˜๋Š” ํ™˜๊ฒฝ์˜ Airflow ์—ญํ•  ๊ธฐ๋ฐ˜ ์•ก์„ธ์Šค๋„ ๊ณ ๋ ค๋˜๋ฉฐ ์ด๋ฅผ ์‚ฌ์šฉํ•ด Airflow UI ์•ก์„ธ์Šค ์ œ์–ด ์‚ฌ์šฉ์— ์„ค๋ช…๋œ ๋Œ€๋กœ ์—ญํ• ์„ ์„ค์ •ํ•˜์—ฌ ๊ฐœ๋ณ„ ์‚ฌ์šฉ์ž์—๊ฒŒ ํ‘œ์‹œ๋˜๋Š” DAG๋ฅผ ์ œํ•œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Google Cloud CLI ์•ก์„ธ์Šค

Google Cloud CLI๋ฅผ ํ†ตํ•ด ํ™˜๊ฒฝ์— ์•ก์„ธ์Šคํ•˜๋ ค๋ฉด ์™ธ๋ถ€ ID์—์„œ ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  1. ์™ธ๋ถ€ ID๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Google Cloud CLI์— ๋กœ๊ทธ์ธํ•ฉ๋‹ˆ๋‹ค.
  2. gcloud composer environments ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

Cloud Composer API ์•ก์„ธ์Šค

Cloud Composer API๋ฅผ ์™ธ๋ถ€ ID์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜์—ฌ OAuth ํ† ํฐ๊ณผ ๊ฐ™์€ ์ง€์›๋˜๋Š” ์ธ์ฆ ๋ฐฉ๋ฒ•์œผ๋กœ ๋ชจ๋“  Cloud Composer ํ™˜๊ฒฝ์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Airflow REST API ์•ก์„ธ์Šค

Airflow REST API๋Š” OAuth ํ† ํฐ๊ณผ ๊ฐ™์€ ์ง€์›๋˜๋Š” ์ธ์ฆ ๋ฐฉ๋ฒ•์œผ๋กœ ์™ธ๋ถ€ ID ์—”๋“œํฌ์ธํŠธ์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

ํ™˜๊ฒฝ์˜ ์™ธ๋ถ€ ID ์—”๋“œํฌ์ธํŠธ URL์„ ๊ฐ€์ ธ์˜ค๋ ค๋ฉด ๋‹ค์Œ Google Cloud CLI ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

gcloud composer environments describe ENVIRONMENT_NAME \
  --location LOCATION \
  --format="value(config.airflowByoidUri)"

๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.

  • ENVIRONMENT_NAME: ํ™˜๊ฒฝ ์ด๋ฆ„
  • LOCATION: ํ™˜๊ฒฝ์ด ์œ„์น˜ํ•œ ๋ฆฌ์ „

์˜ˆ:

gcloud composer environments describe example-environment \
  --location us-central1 \
  --format="value(config.airflowByoidUri)"

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