create-service-account

๊ฐœ๋ณ„ Apigee Hybrid ๊ตฌ์„ฑ์š”์†Œ๊ฐ€ ์Šน์ธ๋œ API ํ˜ธ์ถœ์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ์—ฐ๊ฒฐ๋œ ์„œ๋น„์Šค ๊ณ„์ • ํ‚ค ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ๋Š” ์—ญํ• ์ด ํ• ๋‹น๋œ Google Cloud Platform ์„œ๋น„์Šค ๊ณ„์ •์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ๊ตฌ์„ฑ ์žฌ์ •์˜ ํŒŒ์ผ์—์„œ ์ด ๋ช…๋ น์–ด๋กœ ์ƒ์„ฑ๋œ ์„œ๋น„์Šค ๊ณ„์ • ํ‚ค ํŒŒ์ผ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

create-service-account ๋„๊ตฌ๋Š” HYBRID_ROOT_DIR/tools ๋””๋ ‰ํ„ฐ๋ฆฌ์— ์žˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ๋ณธ ์š”๊ฑด

create-service-account ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด gcloud CLI๊ฐ€ ์„ค์น˜๋˜์–ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ๋Š” Service Account Admin ์—ญํ• ์ด ๋ถ€์—ฌ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๋ ค๋ฉด gcloud ํ”„๋กœ์ ํŠธ ๊ตฌ์„ฑ์ด 2๋‹จ๊ณ„: Google Cloud ํ”„๋กœ์ ํŠธ ๋งŒ๋“ค๊ธฐ์—์„œ ๋งŒ๋“  ํ”„๋กœ์ ํŠธ๋กœ ์„ค์ •๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

gcloud config list project

ํ˜„์žฌ ํ”„๋กœ์ ํŠธ ID๋ฅผ ๋ณ€๊ฒฝํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

gcloud config set project GC_PROJECT_ID

์—ฌ๊ธฐ์„œ GC_PROJECT_ID๋Š” 2๋‹จ๊ณ„: Google Cloud ํ”„๋กœ์ ํŠธ ๋งŒ๋“ค๊ธฐ์—์„œ ๋งŒ๋“  ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.

create-service-account ๊ตฌ๋ฌธ

create-service-account ๋„๊ตฌ๋Š” ๋‹ค์Œ ๋ฌธ๋ฒ•์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

create-service-account HYBRID_SERVICE OUTPUT_DIR [GC_PROJECT_ID]

๊ฐ ํ•ญ๋ชฉ์˜ ์˜๋ฏธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • HYBRID_SERVICE: ์„œ๋น„์Šค ๊ณ„์ •์„ ์‚ฌ์šฉํ•˜๋Š” ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์„œ๋น„์Šค๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์œ ํšจํ•œ ๊ฐ’์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
    • apigee-cassandra
    • apigee-distributed-trace
    • apigee-logger
    • apigee-mart
    • apigee-metrics
    • apigee-synchronizer
    • apigee-udca
    • apigee-watcher

    create-service-account ๋„๊ตฌ๋Š” apigee-org-admin ์„œ๋น„์Šค ๊ณ„์ •์„ ๋งŒ๋“ค ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์„œ๋น„์Šค ๊ณ„์ • ๋งŒ๋“ค๊ธฐ์— ์„ค๋ช…๋œ ๋Œ€๋กœ gcloud API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋งŒ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • OUTPUT_DIR: ๋‹ค์šด๋กœ๋“œํ•œ ์„œ๋น„์Šค ๊ณ„์ • ํ‚ค๋ฅผ ์ €์žฅํ•  ์ถœ๋ ฅ ๋””๋ ‰ํ„ฐ๋ฆฌ์ž…๋‹ˆ๋‹ค.
  • GCP_PROJECT_ID: (์„ ํƒ์‚ฌํ•ญ) ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์ง€์› ์กฐ์ง์— ๊ฒฐํ•ฉ๋œ ํ”„๋กœ์ ํŠธ์˜ Google Cloud ํ”„๋กœ์ ํŠธ ID๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. Google Cloud ํ”„๋กœ์ ํŠธ ID๋ฅผ ์ œ๊ณตํ•˜์ง€ ์•Š์œผ๋ฉด ๋„๊ตฌ๋Š” ํ˜„์žฌ gcloud ๊ตฌ์„ฑ์—์„œ ID๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋ ค๊ณ  ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.

์ƒ์„ธ ์„ค๋ช…

create-service-account ๋„๊ตฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๊ตฌ์„ฑ์š”์†Œ์—์„œ ์‚ฌ์šฉ๋˜๋Š” Google Cloud ์„œ๋น„์Šค ๊ณ„์ •์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ƒ์„ฑ๋œ ์„œ๋น„์Šค ๊ณ„์ •์—๋Š” ํŠน์ • ๊ตฌ์„ฑ์š”์†Œ๊ฐ€ ์ž‘๋™ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์—ญํ• ์ด ๋ถ€์—ฌ๋ฉ๋‹ˆ๋‹ค.
  • ์„œ๋น„์Šค ๊ณ„์ • ํ‚ค๋ฅผ ์‹œ์Šคํ…œ์— ๋‹ค์šด๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์„ค์น˜ ์•ˆ๋‚ด์— ์„ค๋ช…๋œ ๋Œ€๋กœ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๊ตฌ์„ฑ ์žฌ์ •์˜ ํŒŒ์ผ์— ์„œ๋น„์Šค ๊ณ„์ • ํ‚ค๋ฅผ ๋ฐฐ์น˜ํ•ฉ๋‹ˆ๋‹ค.

์ด ๋„๊ตฌ๋Š” ๋‹ค์Œ ๊ตฌ์„ฑ์š”์†Œ์˜ ์„œ๋น„์Šค ๊ณ„์ •์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

๊ตฌ์„ฑ์š”์†Œ* ์—ญํ•  ๊ธฐ๋ณธ ์„ค์น˜ ์‹œ ํ•„์š” ์—ฌ๋ถ€ ์„ค๋ช…
apigee-cassandra ์Šคํ† ๋ฆฌ์ง€ ๊ฐ์ฒด ๊ด€๋ฆฌ์ž
roles/storage.objectAdmin
๋ฐฑ์—… ๋ฐ ๋ณต๊ตฌ์— ์„ค๋ช…๋œ ๋Œ€๋กœ Cloud Storage๋กœ Cassandra ๋ฐฑ์—…์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
apigee-distributed-trace Cloud Trace ์—์ด์ „ํŠธ
roles/cloudtrace.agent
ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๋Ÿฐํƒ€์ž„ ์˜์—ญ์ด Google Cloud Trace ๋ฐ Jaeger์™€ ๊ฐ™์€ ์‹œ์Šคํ…œ๊ณผ ํ˜ธํ™˜๋˜๋Š” ํ˜•์‹์œผ๋กœ ๋ถ„์‚ฐ ์š”์ฒญ ์ถ”์ ์— ์ฐธ์—ฌํ•˜๋„๋ก ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
apigee-logger ๋กœ๊ทธ ์ž‘์„ฑ์ž
roles/logging.logWriter
Logging์— ์„ค๋ช…๋œ ๋Œ€๋กœ ๋กœ๊น… ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋น„GKE ํด๋Ÿฌ์Šคํ„ฐ ์„ค์น˜์—๋งŒ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
apigee-mart Apigee Connect ์—์ด์ „ํŠธ
roles/apigeeconnect.Agent
MART ์„œ๋น„์Šค ์ธ์ฆ์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. Apigee Connect ์—์ด์ „ํŠธ ์—ญํ• ์€ Apigee Connect ์‚ฌ์šฉ์— ์„ค๋ช…๋œ ๋Œ€๋กœ Apigee Connect ํ”„๋กœ์„ธ์Šค์™€ ์•ˆ์ „ํ•˜๊ฒŒ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
apigee-metrics ๋ชจ๋‹ˆํ„ฐ๋ง ์ธก์ •ํ•ญ๋ชฉ ์ž‘์„ฑ์ž
roles/monitoring.metricWriter
์ธก์ •ํ•ญ๋ชฉ ์ˆ˜์ง‘ ๊ฐœ์š”์— ์„ค๋ช…๋œ ๋Œ€๋กœ ์ธก์ •ํ•ญ๋ชฉ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
apigee-synchronizer Apigee ๋™๊ธฐํ™” ๋‹ด๋‹น์ž ๊ด€๋ฆฌ์ž
roles/apigee.synchronizerManager
๋™๊ธฐํ™” ๋‹ด๋‹น์ž๊ฐ€ ํ”„๋ก์‹œ ๋ฒˆ๋“ค ๋ฐ ํ™˜๊ฒฝ ๊ตฌ์„ฑ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๋„๋ก ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ trace ๊ธฐ๋Šฅ์˜ ์ž‘์—…์„ ์‚ฌ์šฉ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
apigee-udca Apigee ์• ๋„๋ฆฌํ‹ฑ์Šค ์—์ด์ „ํŠธ
roles/apigee.analyticsAgent
trace, ๋ถ„์„, ๋ฐฐํฌ ์ƒํƒœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌ ์˜์—ญ์— ์ „์†กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
apigee-watcher Apigee ๋Ÿฐํƒ€์ž„ ์—์ด์ „ํŠธ
roles/apigee.runtimeAgent
Apigee Watcher๋Š” ์กฐ์ง์— ๋Œ€ํ•œ ๊ฐ€์ƒ ํ˜ธ์ŠคํŠธ ๊ด€๋ จ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ๋™๊ธฐํ™” ๋‹ด๋‹น์ž๋กœ๋ถ€ํ„ฐ ๊ฐ€์ ธ์˜ค๊ณ  istio ์ธ๊ทธ๋ ˆ์Šค๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.
* ์ด ์ด๋ฆ„์€ ๋‹ค์šด๋กœ๋“œํ•œ ์„œ๋น„์Šค ๊ณ„์ • ํ‚ค์˜ ํŒŒ์ผ ์ด๋ฆ„์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

Google Cloud Console์—์„œ ์„œ๋น„์Šค ๊ณ„์ •์„ ๋งŒ๋“ค ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์„œ๋น„์Šค ๊ณ„์ • ๋งŒ๋“ค๊ธฐ ๋ฐ ๊ด€๋ฆฌ๋„ ์ฐธ์กฐํ•˜์„ธ์š”.

์˜ˆ

๋‹ค์Œ ์˜ˆ์‹œ์—์„œ๋Š” apigee-logger ์„œ๋น„์Šค์˜ ์ƒˆ ์„œ๋น„์Šค ๊ณ„์ •์„ ๋งŒ๋“ค๊ณ  ๋‹ค์šด๋กœ๋“œํ•œ ํ‚ค๋ฅผ ./service-accounts ๋””๋ ‰ํ„ฐ๋ฆฌ์— ๋ฐฐ์น˜ํ•ฉ๋‹ˆ๋‹ค.

./my-hybrid-root/tools/create-service-account apigee-logger ./service-accounts