์„œ๋น„์Šค ๊ณ„์ • ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ

Apigee Hybrid๋Š” ์„œ๋น„์Šค ๊ณ„์ • ํ‚ค์˜ ์œ„์น˜๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ณ  GCP ํ”„๋กœ์ ํŠธ์— ์ ์ ˆํ•œ ๊ถŒํ•œ์ด ๊ณ„์ •์— ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋Š” ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ์šฉ ์„ค์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ์„น์…˜์—์„œ๋Š” ์„œ๋น„์Šค ๊ณ„์ • ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ์‚ฌ์šฉ ์„ค์ • ๋˜๋Š” ์ค‘์ง€ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์ด ๋‹จ๊ณ„๋ฅผ ํ†ตํ•ด GCP ํ”„๋กœ์ ํŠธ๋ฅผ ์œ„ํ•œ ์ ์ ˆํ•œ API๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์‚ฌ์šฉ ์„ค์ •๋˜๋„๋ก ํ•˜์—ฌ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๊ฐ€ ์ž‘๋™ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

์„œ๋น„์Šค ๊ณ„์ • ๊ถŒํ•œ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์‚ฌ์šฉ ์„ค์ •

๊ถŒํ•œ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ์‚ฌ์šฉ ์„ค์ •ํ•˜๋ ค๋ฉด ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฅด์„ธ์š”.

  1. GCP ํ”„๋กœ์ ํŠธ์— Cloud Resource Manager API๊ฐ€ ์‚ฌ์šฉ ์„ค์ •๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
    1. Google Cloud ์ฝ˜์†”์„ ์—ด๊ณ  1๋‹จ๊ณ„: Google Cloud ๊ณ„์ • ๋งŒ๋“ค๊ธฐ์—์„œ ๋งŒ๋“  ๊ณ„์ •์œผ๋กœ ๋กœ๊ทธ์ธํ•ฉ๋‹ˆ๋‹ค.
    2. 2๋‹จ๊ณ„: Google Cloud ํ”„๋กœ์ ํŠธ ๋งŒ๋“ค๊ธฐ์—์„œ ๋งŒ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
    3. API ๋ฐ ์„œ๋น„์Šค > ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
    4. 'Cloud Resource Manager'๋ฅผ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.
    5. Cloud Resource Manager API ์„œ๋น„์Šค๋ฅผ ์ฐพ์•„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    6. ์‚ฌ์šฉ ์„ค์ •๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฉด ์‚ฌ์šฉ ์„ค์ •์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    gcloud๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ API๋ฅผ ์‚ฌ์šฉ ์„ค์ •ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

    gcloud services enable cloudresourcemanager.googleapis.com --project GCP_project_ID
  2. ์žฌ์ •์˜ ํŒŒ์ผ์—์„œ validateServiceAccounts ์†์„ฑ์„ ์ถ”๊ฐ€ํ•˜๊ณ  true๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
    ...
    # Enables strict validation of service account permissions.
    validateServiceAccounts: true
    ...

์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๊ฐ€ ์‚ฌ์šฉ ์„ค์ •๋˜๋ฉด apigeectl์ด Apigee Hybrid ๋Ÿฐํƒ€์ž„ ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ํด๋Ÿฌ์Šคํ„ฐ์— ์ ์šฉํ•  ๋•Œ๋งˆ๋‹ค ์žฌ์ •์˜ ํŒŒ์ผ์— ํฌํ•จ๋œ ์„œ๋น„์Šค ๊ณ„์ • ํ‚ค์˜ ์œ ํšจ์„ฑ์„ ๊ฒ€์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์˜ค๋ฅ˜ ๋ฌธ์ œ ํ•ด๊ฒฐ

์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๊ฐ€ ์‹คํŒจํ•˜๋ฉด ๋Ÿฐํƒ€์ž„ ๋ฐฐํฌ๊ฐ€ ์ค‘์ง€๋˜๊ณ  apigeectl์ด ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค. ์„œ๋น„์Šค ๊ณ„์ • ์‹คํŒจ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๊ฐ€ ๋‹ค์Œ์˜ ์ˆœ์„œ๋Œ€๋กœ ๊ถŒํ•œ์„ ํ™•์ธํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ์•„๋‘๋ฉด ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

  1. ํ”„๋กœ์ ํŠธ ID์˜ ๊ถŒํ•œ
  2. (UDCA ๋ฐ ๋™๊ธฐํ™” ๋‹ด๋‹น์ž์—๋งŒ ํ•ด๋‹น) ํ”„๋กœ์ ํŠธ์˜ ๊ถŒํ•œ ํ™•์ธ์— ์‹คํŒจํ•˜๋ฉด ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋Š” Apigee ํ™˜๊ฒฝ์˜ IAM ์ •์ฑ…์— ๋Œ€ํ•œ ๊ถŒํ•œ ํ™•์ธ์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ SA๋Š” ํ™˜๊ฒฝ ๋ฒ”์œ„๋กœ ์ง€์ •๋˜๋ฉฐ ํ™˜๊ฒฝ์—์„œ๋Š” ์„ธ๋ถ„ํ™”๋œ ๊ถŒํ•œ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

    ํŠน์ • ํ™˜๊ฒฝ์˜ IAM ์ •์ฑ…์„ ์—…๋ฐ์ดํŠธํ•˜๋ ค๋ฉด ํ•˜์ด๋ธŒ๋ฆฌ๋“œ UI๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค. ๊ด€๋ฆฌ > ํ™˜๊ฒฝ > ์•ก์„ธ์Šค๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ์€ ๊ถŒํ•œ ์‹คํŒจ์˜ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€์ž…๋‹ˆ๋‹ค.

Invalid Metrics Service Account. Service Account
"apigee-metrics@hybrid-project.iam.gserviceaccount.com" is missing 1 or more required
permissions [monitoring.metricDescriptors.create monitoring.metricDescriptors.get monitoring.metricDescriptors.list
monitoring.monitoredResourceDescriptors.get monitoring.monitoredResourceDescriptors.list monitoring.timeSeries.create].
Visit Service accounts and roles used by
hybrid components for more details on setting up Apigee hybrid service account permissions.

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

๊ถŒํ•œ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์‚ฌ์šฉ ์ค‘์ง€

์„œ๋น„์Šค ๊ณ„์ • ๊ถŒํ•œ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ์‚ฌ์šฉ ์ค‘์ง€ํ•˜๋ ค๋ฉด ๋‹ค์Œ ์˜ˆ์‹œ์™€ ๊ฐ™์ด ์žฌ์ •์˜ ํŒŒ์ผ์˜ validationServiceAccounts ์†์„ฑ์„ false๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

...
# Enables strict validation of service account permissions.
validateServiceAccounts: false
...