Cloud KMS ํ• ๋‹น๋Ÿ‰ ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ ์กฐ์ •

์ด ํŽ˜์ด์ง€์—์„œ๋Š” Cloud Key Management Service ํ• ๋‹น๋Ÿ‰์„ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. Cloud KMS์™€ ๊ด€๋ จ๋œ ํ• ๋‹น๋Ÿ‰์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ํ• ๋‹น๋Ÿ‰์„ ์ฐธ์กฐํ•˜์„ธ์š”.

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

ํ”„๋กœ์ ํŠธ ํ• ๋‹น๋Ÿ‰์„ ๋ณด๋ ค๋ฉด ๋‹ค์Œ ๊ถŒํ•œ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

  • resourcemanager.projects.get
  • monitoring.timeSeries.list
  • serviceusage.services.list
  • serviceusage.quotas.get

ํ”„๋กœ์ ํŠธ ํ• ๋‹น๋Ÿ‰์„ ๋ณ€๊ฒฝํ•˜๋ ค๋ฉด serviceusage.quotas.update ๊ถŒํ•œ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๊ถŒํ•œ์ด ํฌํ•จ๋œ IAM ์—ญํ• ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ IAM ๊ถŒํ•œ ์ฐธ์กฐ๋ฅผ ํ™•์ธํ•˜์„ธ์š”.

Cloud KMS ํ• ๋‹น๋Ÿ‰ ๊ฒ€์‚ฌ

  1. Google Cloud ์ฝ˜์†”์—์„œ Cloud KMS API์˜ API/์„œ๋น„์Šค ์„ธ๋ถ€์ •๋ณด ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

    Cloud KMS API/์„œ๋น„์Šค ์„ธ๋ถ€์ •๋ณด๋กœ ์ด๋™

    ์ด ํŽ˜์ด์ง€์—์„œ๋Š” Cloud KMS API์˜ ํ• ๋‹น๋Ÿ‰ ์„ธ๋ถ€์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  2. ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ์˜ ํ• ๋‹น๋Ÿ‰์„ ๋ณด๋ ค๋ฉด Google Cloud ์ฝ˜์†” ํ—ค๋”์—์„œ ์›ํ•˜๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  3. ํ• ๋‹น๋Ÿ‰ ์œ ํ˜•์œผ๋กœ ํ•„ํ„ฐ๋งํ•˜๋ ค๋ฉด ํ•„ํ„ฐ ํ‘œ์‹œ์ค„์„ ํด๋ฆญํ•˜๊ณ  ์†์„ฑ ๋ชฉ๋ก์—์„œ ํ• ๋‹น๋Ÿ‰์„ ์„ ํƒํ•œ ํ›„ ์›ํ•˜๋Š” ํ• ๋‹น๋Ÿ‰์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  4. ๋ฆฌ์ „๋ณ„๋กœ ํ•„ํ„ฐ๋งํ•˜๋ ค๋ฉด ํ•„ํ„ฐ ํ‘œ์‹œ์ค„์„ ํด๋ฆญํ•˜๊ณ  ์†์„ฑ ๋ชฉ๋ก์—์„œ ์ธก์ •๊ธฐ์ค€(์˜ˆ: ์œ„์น˜):์„ ์„ ํƒํ•œ ํ›„ ์›ํ•˜๋Š” ๋ฆฌ์ „ ์ด๋ฆ„์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

ํ• ๋‹น๋Ÿ‰์— ๊ทผ์ ‘ํ•˜๊ฑฐ๋‚˜ ์ดˆ๊ณผํ•˜๋Š” ๊ฒฝ์šฐ ๋” ํฐ Cloud KMS ํ• ๋‹น๋Ÿ‰์„ ์š”์ฒญํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ• ๋‹น๋Ÿ‰ ๋ฌธ์ œ ํ•ด๊ฒฐ

Cloud KMS๊ฐ€ ๊ด€๋ จ ํ• ๋‹น๋Ÿ‰ ํ•œ๋„์— ๋„๋‹ฌํ•˜์—ฌ ์š”์ฒญ์„ ๊ฑฐ๋ถ€ํ•˜๋ฉด RESOURCE_EXHAUSTED ์˜ค๋ฅ˜๊ฐ€ ๋ฐ˜ํ™˜๋ฉ๋‹ˆ๋‹ค. Cloud KMS REST API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒ์„ฑ๋œ ์š”์ฒญ์˜ ๊ฒฝ์šฐ RESOURCE_EXHAUSTED ์˜ค๋ฅ˜์—๋Š” HTTP ์ƒํƒœ ์ฝ”๋“œ 429๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. Cloud KMS ํ˜ธ์ŠคํŒ… ํ”„๋กœ์ ํŠธ ํ• ๋‹น๋Ÿ‰์€ ์ดˆ ๋‹จ์œ„๋กœ ์ ์šฉ๋˜๋ฏ€๋กœ HSM ๋˜๋Š” EKM ํ‚ค์˜ RESOURCE_EXHAUSTED ์˜ค๋ฅ˜๊ฐ€ 1์ดˆ ํ›„ ๋‹ค์‹œ ์‹œ๋„๋˜์–ด ํ•ด๊ฒฐ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐ˜๋ณต๋˜๋Š” RESOURCE_EXHAUSTED ์˜ค๋ฅ˜๋Š” ํ”„๋กœ์ ํŠธ๊ฐ€ ํ•˜๋‚˜ ์ด์ƒ์˜ ํ• ๋‹น๋Ÿ‰์„ ์ •๊ธฐ์ ์œผ๋กœ ์ดˆ๊ณผํ•จ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ๋‹ค์Œ ์ค‘ ์ผ๋ถ€ ๋˜๋Š” ์ „๋ถ€๋ฅผ ์‹œ๋„ํ•ด ๋ณด์„ธ์š”.

  • ํ”„๋กœ์ ํŠธ๊ฐ€ Cloud KMS ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•œ ์š”์ฒญ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์†๋„๋ฅผ ์ค„์ž…๋‹ˆ๋‹ค.

  • ๋” ํฐ Cloud KMS ํ• ๋‹น๋Ÿ‰ ์š”์ฒญ

  • ์—ฌ๋Ÿฌ ๋ฆฌ์†Œ์Šค๊ฐ€ ๋™์ผํ•œ ํ• ๋‹น๋Ÿ‰์„ ๊ณต์œ ํ•˜์ง€ ์•Š๋„๋ก ์ ์ ˆํ•œ ๊ฒฝ์šฐ ๋ฆฌ์†Œ์Šค์— ๋ณ„๋„์˜ ํ”„๋กœ์ ํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

    • ํ˜ธ์ถœ ํ”„๋กœ์ ํŠธ ํ• ๋‹น๋Ÿ‰ - ๋†’์€ ์š”์ฒญ ๋น„์œจ๋กœ Cloud KMS API๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์—ฌ๋Ÿฌ ๋ฆฌ์†Œ์Šค๊ฐ€ ํฌํ•จ๋œ ๋‹จ์ผ ํ”„๋กœ์ ํŠธ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ 60,000QPM ํ•œ๋„๋ฅผ ๊ณต์œ ํ•˜์ง€ ์•Š๋„๋ก ๋ฆฌ์†Œ์Šค๋ฅผ ์ž์ฒด ํ”„๋กœ์ ํŠธ๋กœ ์ด๋™ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

    • ํ”„๋กœ์ ํŠธ ํ• ๋‹น๋Ÿ‰ ํ˜ธ์ŠคํŒ… - QPS๊ฐ€ ๋†’์€ ๊ฐœ๋ณ„ ๋ฆฌ์†Œ์Šค๋ฅผ ์ง€์›ํ•˜๋Š” Cloud HSM ๋˜๋Š” Cloud EKM ํ‚ค๊ฐ€ ํฌํ•จ๋œ ๋‹จ์ผ ํ”„๋กœ์ ํŠธ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ Cloud KMS ํ‚ค๋ฅผ ์šฐ์„ ์ˆœ์œ„ ๋˜๋Š” ์›Œํฌ๋กœ๋“œ์™€ ๊ฐ™์€ ์„ธ๋ถ€์ •๋ณด๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ณ„๋„ ํ”„๋กœ์ ํŠธ๋กœ ๋ถ„ํ• ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋™์ผํ•œ Cloud HSM ๋ฐ Cloud EKM ํ• ๋‹น๋Ÿ‰์„ ๊ณต์œ ํ•˜๋Š” ํ‚ค๊ฐ€ ์ ์–ด์ง‘๋‹ˆ๋‹ค.

  • ํด๋ผ์ด์–ธํŠธ์— ๋ฐฑ์˜คํ”„ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์ถ”๊ฐ€ํ•˜์—ฌ RESOURCE_EXHAUSTED ์˜ค๋ฅ˜๋ฅผ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๋” ํฐ Cloud KMS ํ• ๋‹น๋Ÿ‰ ์š”์ฒญ

  1. Google Cloud ์ฝ˜์†”์—์„œ Cloud KMS API์˜ API/์„œ๋น„์Šค ์„ธ๋ถ€์ •๋ณด ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

    Cloud KMS API/์„œ๋น„์Šค ์„ธ๋ถ€์ •๋ณด๋กœ ์ด๋™

    ์ด ํŽ˜์ด์ง€์—์„œ๋Š” Cloud KMS API์˜ ํ• ๋‹น๋Ÿ‰ ์„ธ๋ถ€์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  2. ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ์˜ ํ• ๋‹น๋Ÿ‰ ์ƒํ–ฅ์„ ์š”์ฒญํ•˜๋ ค๋ฉด Google Cloud ์ฝ˜์†” ํ—ค๋”์—์„œ ์›ํ•˜๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  3. ํ• ๋‹น๋Ÿ‰ ๋ชฉ๋ก์—์„œ ๋Š˜๋ฆฌ๋ ค๋Š” ๊ธฐ๋ณธ ๋˜๋Š” ๋ฆฌ์ „๋ณ„ ํ• ๋‹น๋Ÿ‰์„ ์„ ํƒํ•œ ๋‹ค์Œ ํ• ๋‹น๋Ÿ‰ ์ˆ˜์ •์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  4. ํ• ๋‹น๋Ÿ‰ ๋ณ€๊ฒฝ ์ฐฝ์—์„œ ์„ ํƒํ•œ ํ• ๋‹น๋Ÿ‰์— ์›ํ•˜๋Š” ํ•œ๋„๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

  5. ์š”์ฒญ ์„ค๋ช…์— ์š”์ฒญ ์‚ฌ์œ ์— ๊ด€ํ•œ ์„ค๋ช…์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

  6. ๊ณ„์†ํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  7. ์ด๋ฆ„, ์ด๋ฉ”์ผ, ์ „ํ™”๋ฅผ ํฌํ•จํ•œ ์—ฐ๋ฝ์ฒ˜ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

  8. ์š”์ฒญ์„ ์ œ์ถœํ•˜๋ ค๋ฉด ์š”์ฒญ ์ œ์ถœ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    ์š”์ฒญ์ด ์ œ์ถœ๋˜๋ฉด ํ‰๊ฐ€๋ฅผ ์œ„ํ•ด ์Šน์ธ์ž์—๊ฒŒ ์ „์†ก๋ฉ๋‹ˆ๋‹ค. ๊ฒ€ํ† ๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด ์š”์ฒญ ์ƒํƒœ์— ๋Œ€ํ•œ ์•Œ๋ฆผ์ด ์ „์†ก๋ฉ๋‹ˆ๋‹ค.

ํŠน์ • ํ”„๋กœ์ ํŠธ์˜ Cloud KMS ์‚ฌ์šฉ๋Ÿ‰ ํ•œ๋„ ์„ค์ •

Cloud KMS ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉ๋Ÿ‰์— ๋” ์—„๊ฒฉํ•œ ํ• ๋‹น๋Ÿ‰์„ ์ ์šฉํ•˜๋ ค๋ฉด ์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์˜ ํ• ๋‹น๋Ÿ‰์„ ๊ธฐ๋ณธ๊ฐ’๋ณด๋‹ค ๋‚ฎ์€ ํ•œ๋„๋กœ ์„ค์ •ํ•˜๋„๋ก ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋™์ผํ•œ ํ”„๋กœ์ ํŠธ์—์„œ ๋ฆฌ์†Œ์Šค๊ฐ€ Cloud HSM ๋˜๋Š” Cloud EKM ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœ์ ํŠธ๊ฐ€ ์—ฌ๋Ÿฌ ๊ฐœ ์žˆ๋Š” ๊ฒฝ์šฐ ํ•ด๋‹น ํ‚ค๋ฅผ ํ˜ธ์ŠคํŠธํ•˜๋Š” ํ”„๋กœ์ ํŠธ์˜ ๋ฆฌ์ „๋‹น HSM ๋Œ€์นญ ์•”ํ˜ธํ™” ์š”์ฒญ๊ณผ ๊ฐ™์ด ํ• ๋‹น๋Ÿ‰์„ ์ดˆ๊ณผํ•˜์ง€ ์•Š๋„๋ก ๊ฐ ํ˜ธ์ถœ ํ”„๋กœ์ ํŠธ์—์„œ ์•”ํ˜ธํ™” ์š”์ฒญ ํ• ๋‹น๋Ÿ‰์„ ๋” ๋‚ฎ๊ฒŒ ์„ค์ •ํ•˜๋„๋ก ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. Google Cloud ์ฝ˜์†”์—์„œ Cloud KMS API์˜ API/์„œ๋น„์Šค ์„ธ๋ถ€์ •๋ณด ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

    Cloud KMS API/์„œ๋น„์Šค ์„ธ๋ถ€์ •๋ณด๋กœ ์ด๋™

    ์ด ํŽ˜์ด์ง€์—์„œ๋Š” Cloud KMS API์˜ ํ• ๋‹น๋Ÿ‰ ์„ธ๋ถ€์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  2. ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ์˜ ํ• ๋‹น๋Ÿ‰์„ ์ค„์ด๋ ค๋ฉด Google Cloud ์ฝ˜์†” ํ—ค๋”์—์„œ ์›ํ•˜๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  3. ํ• ๋‹น๋Ÿ‰ ๋ชฉ๋ก์—์„œ ์ค„์ด๋ ค๋Š” ๊ธฐ๋ณธ ๋˜๋Š” ๋ฆฌ์ „ ํ• ๋‹น๋Ÿ‰์„ ์„ ํƒํ•œ ๋‹ค์Œ ํ• ๋‹น๋Ÿ‰ ์ˆ˜์ •์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  4. ํ• ๋‹น๋Ÿ‰ ๋ณ€๊ฒฝ ์ฐฝ์—์„œ ์„ ํƒํ•œ ํ• ๋‹น๋Ÿ‰์— ์›ํ•˜๋Š” ํ•œ๋„๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

  5. ๊ณ„์†ํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    ํ• ๋‹น๋Ÿ‰์„ ํ˜„์žฌ ํ•œ๋„๋ณด๋‹ค 10% ๋„˜๊ฒŒ ์ค„์ด๋ฉด ๊ฒฝ๊ณ ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๊ณ„์† ์ง„ํ–‰ํ•˜์—ฌ ๊ธฐ๋ณธ๊ฐ’๋ณด๋‹ค ๋‚ฎ์€ ํ• ๋‹น๋Ÿ‰์„ ์ ์šฉํ•˜๋ ค๋ฉด ํ™•์ธ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์ทจ์†Œ๋ฅผ ํด๋ฆญํ•˜์—ฌ ๋Œ์•„๊ฐ€์„œ ์ƒˆ ํ•œ๋„๋ฅผ ์„ ํƒํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

  6. ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์ €์žฅํ•˜๋ ค๋ฉด ์š”์ฒญ ์ œ์ถœ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    ์ƒˆ ํ•œ๋„๊ฐ€ ์ฆ‰์‹œ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

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