๊ถŒ์žฅ์‚ฌํ•ญ

์ด ํŽ˜์ด์ง€๋Š” IAP(Identity-Aware Proxy) ์‚ฌ์šฉ์— ๋Œ€ํ•œ ๊ถŒ์žฅ์‚ฌํ•ญ์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

์บ์‹ฑ

  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์•ž์— ์ œ3์ž CDN์„ ์‚ฌ์šฉํ•˜์ง€ ๋งˆ์„ธ์š”. CDN์€ ์ฝ˜ํ…์ธ ๋ฅผ ์บ์‹œํ•˜๊ณ  ์บ์‹œ๋œ ํŽ˜์ด์ง€๋ฅผ ์ธ์ฆ๋˜์ง€ ์•Š์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • CDN์—์„œ ์ œ๊ณตํ•˜๋ ค๋Š” ๋ฏผ๊ฐํ•˜์ง€ ์•Š์€ ๋Œ€๋Ÿ‰์˜ ๋ฆฌ์†Œ์Šค๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ, ํ•ด๋‹น ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•ด images.yourapp.com๊ณผ ๊ฐ™์€ ๋ณ„๋„์˜ ๋„๋ฉ”์ธ์„ ์‚ฌ์šฉํ•˜์„ธ์š”. ํ•ด๋‹น ๋„๋ฉ”์ธ์— CDN์„ ์‚ฌ์šฉํ•˜๊ณ , ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž์—๊ฒŒ๋งŒ ์ œ๊ณต๋˜์–ด์•ผ ํ•˜๋Š” ๋ชจ๋“  ๊ฐ์ฒด์— Cache-control: private HTTP ์‘๋‹ต ํ—ค๋”๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์•ฑ ๋ณดํ˜ธํ•˜๊ธฐ

์ ์ ˆํ•œ ์•ฑ ๋ณดํ˜ธ๋ฅผ ์œ„ํ•ด์„œ๋Š” App Engine ํ‘œ์ค€ ํ™˜๊ฒฝ, Compute Engine, GKE ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋Œ€ํ•ด ์„œ๋ช…๋œ ํ—ค๋”๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ฐฉํ™”๋ฒฝ ๊ตฌ์„ฑํ•˜๊ธฐ

  • Compute Engine ๋˜๋Š” GKE์— ๋Œ€ํ•œ ๋ชจ๋“  ์š”์ฒญ์ด ๋ถ€ํ•˜ ๋ถ„์‚ฐ๊ธฐ๋ฅผ ํ†ตํ•ด ๋ผ์šฐํŒ… ๋˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
    • ์ƒํƒœ ์ ๊ฒ€์„ ํ—ˆ์šฉํ•˜๋„๋ก ๋ฐฉํ™”๋ฒฝ ๊ทœ์น™์„ ๊ตฌ์„ฑํ•˜๊ณ  VM(๊ฐ€์ƒ ๋จธ์‹ )์— ๋Œ€ํ•œ ๋ชจ๋“  ํŠธ๋ž˜ํ”ฝ์ด GFE(Google Front End) IP์—์„œ ์‹œ์ž‘๋˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
    • ์ถ”๊ฐ€ ๋ณดํ˜ธ๋ฅผ ์œ„ํ•ด์„œ๋Š” ์•ฑ์—์„œ ์š”์ฒญ์˜ ์†Œ์Šค IP๊ฐ€ ๋ฐฉํ™”๋ฒฝ ๊ทœ์น™์ด ํ—ˆ์šฉํ•˜๋Š” ๋™์ผํ•œ IP ๋ฒ”์œ„์—์„œ ์‹œ์ž‘๋˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฐฉํ™”๋ฒฝ ๊ทœ์น™์ด ์ž˜๋ชป ์„ค์ •๋œ ๊ฒƒ์œผ๋กœ ๋ณด์ด๋ฉด Google Cloud ์ฝ˜์†”์—์„œ IAP์— ์˜ค๋ฅ˜ ๋˜๋Š” ๊ฒฝ๊ณ ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. IAP Google Cloud ์ฝ˜์†”์€ ๊ฐ ์„œ๋น„์Šค์— ์‚ฌ์šฉ๋˜๋Š” VM์„ ๊ฐ์ง€ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๊ธฐ๋ณธ๊ฐ’ ์ด์™ธ์˜ ๋„คํŠธ์›Œํฌ ๋ฐ ๋ฐฉํ™”๋ฒฝ ๊ทœ์น™ ํƒœ๊ทธ์™€ ๊ฐ™์€ ๊ณ ๊ธ‰ ๊ธฐ๋Šฅ์ด ๋ฐฉํ™”๋ฒฝ ๋ถ„์„์— ํฌํ•จ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๋ถ„์„์„ ์šฐํšŒํ•˜๋ ค๋ฉด gcloud compute backend-services update ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด IAP๋ฅผ ์‚ฌ์šฉ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.