V1 - 100-hours-a-week/9-team-Devths-WIKI GitHub Wiki

๋ชฉ์ฐจ (ํŽผ์น˜๊ธฐ/์ ‘๊ธฐ) * 1. V1 ๋ชฉํ‘œ ์ •์˜
* 2. ํ˜„์žฌ ์•„ํ‚คํ…์ฒ˜ ์š”์•ฝ(V1 ์ง„ํ–‰์ƒํ™ฉ ๊ธฐ์ค€)
* 3. EC2 ๋‚ด๋ถ€ ์„œ๋น„์Šค ๊ตฌ์„ฑ(Prod / NonProd ๊ณตํ†ต)
* 4. ์šด์˜ ์ ‘๊ทผ ๋ฐ ๊ฐ์‚ฌ ๋กœ๊ทธ(SSM ์„ธ์…˜ ๋กœ๊ทธ + ๋กœ๊ทธ ๊ทธ๋ฃน ๋ถ„๋ฆฌ)
* 5. ๋น„์†์–ด ํƒ์ง€ยท์ฒ˜๋ฆฌ ๋ฐ ๋ณด์•ˆ ๋ชจ๋‹ˆํ„ฐ๋ง(CloudWatch โ†’ SNS/Lambda โ†’ Discord)
* 6. ๋ฐฐํฌ ํŒŒ์ดํ”„๋ผ์ธ ๋ฐ ๋ฐฐํฌ ์ด๋ ฅ ๊ธฐ๋ก(GitHub Actions โ†’ S3 Artifact โ†’ CodeDeploy)
* 7. ์šด์˜(Prod) ์ˆ˜๋™ ํŠธ๋ฆฌ๊ฑฐ ๋ฐฐํฌ ํ๋ฆ„ ์ถ”๊ฐ€
* 8. ์Šคํ† ๋ฆฌ์ง€ ๋ฐ ์•„ํ‹ฐํŒฉํŠธ ๊ด€๋ฆฌ(S3)
* 9. V1 ๊ธฐ์ค€ ๋‹ฌ์„ฑ ํ•ญ๋ชฉ ์ •๋ฆฌ(์ง„ํ–‰์ƒํ™ฉ)
* 10. ๋‹ค์Œ ๋‹จ๊ณ„ ์ œ์•ˆ(V2 ์ „ํ™˜ ๋ฐฉํ–ฅ)

1. V1 ๋ชฉํ‘œ ์ •์˜

V1์—์„œ๋Š” ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ ์†๋„์™€ ์šด์˜ ๋‹จ์ˆœ์„ฑ์„ ์šฐ์„ ํ•˜์—ฌ **โ€œ๋ฐฐํฌ ๊ฐ€๋Šฅํ•œ ์„œ๋น„์Šค ํ˜•ํƒœ + ์šด์˜ ๊ด€์ฐฐ ๊ฐ€๋Šฅ์„ฑ(Observability)์˜ ์ตœ์†Œ ๊ธฐ์ค€โ€**์„ ๋‹ฌ์„ฑํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•จ.
์„œ๋น„์Šค๋Š” ๊ฐœ์ธ ํฌํŠธํด๋ฆฌ์˜ค/์ด๋ ฅ์„œ ๊ธฐ๋ฐ˜ ์ฑ„์šฉ ๋น„์„œ AI์ด๋ฉฐ, ์ปค๋ฎค๋‹ˆํ‹ฐยท์ฑ„ํŒ…ยท์ฑ—๋ด‡ยท์บ˜๋ฆฐ๋” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•จ.
๊ตฌ์„ฑ์š”์†Œ๋Š” Next.js(ํ”„๋ŸฐํŠธ), Spring Boot(๋ฐฑ์—”๋“œ), FastAPI(vLLM ๊ธฐ๋ฐ˜ AI)๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ์šด์˜ํ•จ.


2. ํ˜„์žฌ ์•„ํ‚คํ…์ฒ˜

image

ํ˜„์žฌ๋Š” Prod_VPC / NonProd_VPC๋ฅผ ๋ถ„๋ฆฌํ•˜์—ฌ ํ™˜๊ฒฝ ๊ฐ„ ๊ฒฉ๋ฆฌ๋ฅผ ๋‹ฌ์„ฑํ•จ.
๊ฐ VPC๋Š” Public Subnet 1๊ฐœ + EC2 1๋Œ€๋กœ ๊ตฌ์„ฑ๋˜์–ด ๋‹จ์ผ ๋…ธ๋“œ์—์„œ ์„œ๋น„์Šค ์ปดํฌ๋„ŒํŠธ๋ฅผ ์šด์˜ํ•จ.
์™ธ๋ถ€ ํŠธ๋ž˜ํ”ฝ์€ Route 53 โ†’ (๊ฐ VPC์˜ Internet Gateway) โ†’ EC2(Nginx) ํ๋ฆ„์œผ๋กœ ์œ ์ž…๋จ.
์šด์˜ ๊ด€์ ์—์„œ๋Š” SSM ๊ธฐ๋ฐ˜ ์ ‘๊ทผ ํ†ต์ œ + CloudWatch ์ค‘์‹ฌ ๋ชจ๋‹ˆํ„ฐ๋ง + Discord ์•Œ๋ฆผ + ๋ฐฐํฌ ์ด๋ ฅ ๊ธฐ๋ก์„ ํ†ตํ•ด โ€œ์‚ฌ๋žŒ์ด ์ง์ ‘ ๋“ค์–ด๊ฐ€์„œ ํ™•์ธํ•˜๋Š” ์šด์˜โ€์„ ์ค„์ด๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ๊ตฌ์„ฑํ•จ.


3. EC2 ๋‚ด๋ถ€ ์„œ๋น„์Šค ๊ตฌ์„ฑ(Prod / NonProd ๊ณตํ†ต)

๊ฐ ํ™˜๊ฒฝ์˜ EC2์—๋Š” ์•„๋ž˜ ๊ตฌ์„ฑ์š”์†Œ๊ฐ€ ๋ฐฐ์น˜๋จ.

  • Nginx(80, 443): ์™ธ๋ถ€ ํŠธ๋ž˜ํ”ฝ ๋‹จ์ผ ์ง„์ž…์  ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•จ.
  • Next.js(3000): ์‚ฌ์šฉ์ž ์›น UI๋ฅผ ์ œ๊ณตํ•จ.
  • Spring Boot(8080): API ์„œ๋ฒ„๋กœ์„œ ์ธ์ฆ/๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง/์ปค๋ฎค๋‹ˆํ‹ฐยท์ฑ„ํŒ…ยท์บ˜๋ฆฐ๋”์˜ ์ฝ”์–ด ๊ธฐ๋Šฅ์„ ์ฒ˜๋ฆฌํ•จ.
  • Spring Boot Blue/Green(8080): ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ ์ „ํ™˜์„ ์œ„ํ•ด Blue/Green ๊ตฌ์„ฑ์„ ์ ์šฉํ•จ.
  • FastAPI(8000): AI ๊ธฐ๋Šฅ(vLLM ๊ธฐ๋ฐ˜ ์ถ”๋ก  ํฌํ•จ) ๋ฐ ์ฑ—๋ด‡ ์—ฐ๋™ ๊ธฐ๋Šฅ์„ ์ฒ˜๋ฆฌํ•จ.
  • PostgreSQL(5432): ์„œ๋น„์Šค ๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ๋กœ ์‚ฌ์šฉํ•จ(ํ˜„์žฌ ๋™์ผ ์ธ์Šคํ„ด์Šค ๋‚ด ๊ตฌ์„ฑ์ž„).
  • ChromaDB: AI ๊ธฐ๋Šฅ์˜ ๋ฒกํ„ฐ ์ €์žฅ์†Œ๋กœ ์‚ฌ์šฉํ•˜๋ฉฐ FastAPI์™€ ์—ฐ๋™๋จ.

๋„๋ฉ”์ธ ๋ผ์šฐํŒ…์€ Nginx ๋ฆฌ๋ฒ„์Šค ํ”„๋ก์‹œ๋กœ ๋ถ„๊ธฐํ•˜์—ฌ ์„œ๋น„์Šค URL์„ ๋ถ„๋ฆฌํ•จ.
(์˜ˆ: www.* โ†’ Next.js, api.* โ†’ Spring Boot, ai.* โ†’ FastAPI ํ˜•ํƒœ๋กœ ๊ตฌ์„ฑํ•จ.)


4. ์šด์˜ ์ ‘๊ทผ ๋ฐ ๊ฐ์‚ฌ ๋กœ๊ทธ(SSM ์„ธ์…˜ ๋กœ๊ทธ + ๋กœ๊ทธ ๊ทธ๋ฃน ๋ถ„๋ฆฌ)

์šด์˜ ์ ‘๊ทผ์€ SSH ์ง์ ‘ ์ ‘๊ทผ๋ณด๋‹ค SSM(Session Manager) ์ค‘์‹ฌ์œผ๋กœ ์ „ํ™˜ํ•˜์—ฌ ์ ‘๊ทผ ๊ฒฝ๋กœ๋ฅผ ํ†ต์ œํ•˜๊ณ  ๊ธฐ๋ก์ด ๋‚จ๋„๋ก ์„ค๊ณ„ํ•จ.
SSM ์„ธ์…˜ ๋กœ๊ทธ๋Š” CloudWatch Logs์˜ SSM ์ „์šฉ Log Group์— ์ €์žฅ๋˜๋ฉฐ, ์ด๋ฅผ ํ†ตํ•ด โ€œ๋ˆ„๊ฐ€/์–ธ์ œ/์–ด๋–ค ๋ช…๋ น์„ ์ž…๋ ฅํ–ˆ๋Š”์ง€โ€๋ฅผ ์‚ฌํ›„ ์ถ”์  ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•จ.
Dev/Prod ํ™˜๊ฒฝ์€ ๋กœ๊ทธ ๊ทธ๋ฃน์„ ๋ถ„๋ฆฌํ•˜๊ฑฐ๋‚˜, ํ•˜๋‚˜์˜ ๋กœ๊ทธ ๊ทธ๋ฃน์—์„œ Stream Prefix๋กœ ํ™˜๊ฒฝ/์ธ์Šคํ„ด์Šค๋ฅผ ๊ตฌ๋ถ„ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์กฐํšŒ์„ฑ์„ ํ™•๋ณดํ•จ.


5. ์œ„ํ—˜ ๋ช…๋ น์–ด ํƒ์ง€ยท์ฒ˜๋ฆฌ ๋ฐ ๋ณด์•ˆ ๋ชจ๋‹ˆํ„ฐ๋ง(CloudWatch โ†’ SNS/Lambda โ†’ Discord)

SSM ์„ธ์…˜ ๋กœ๊ทธ์™€ ์šด์˜ ๋กœ๊ทธ๋Š” ๋‹จ์ˆœ ์ €์žฅ์—์„œ ๋๋‚ด์ง€ ์•Š๊ณ  ์œ„ํ—˜ ์‹ ํ˜ธ๋ฅผ ์ž๋™ ํƒ์ง€ํ•˜๋„๋ก ๊ตฌ์„ฑํ•จ.

  • CloudWatch Logs์—์„œ ๋น„์†์–ด/์œ„ํ—˜ ๋ช…๋ น ํŒจํ„ด/๊ธˆ์น™์–ด ๋“ฑ์„ Metric Filter๋กœ ์ถ”์ถœํ•จ.
  • ํŠน์ • ์ž„๊ณ„์น˜ ์กฐ๊ฑด์—์„œ CloudWatch Alarm์„ ๋ฐœ์ƒ์‹œํ‚ด.
  • ์•Œ๋žŒ์€ SNS๋กœ ์ „๋‹ฌ๋˜๋ฉฐ, ํ•„์š” ์‹œ Lambda๊ฐ€ ๋ฉ”์‹œ์ง€๋ฅผ ๊ฐ€๊ณตํ•จ.
  • ์ตœ์ข…์ ์œผ๋กœ Discord ์ฑ„๋„๋กœ ์•Œ๋ฆผ์ด ์ „์†ก๋˜์–ด ์šด์˜์ž๊ฐ€ ์ฆ‰์‹œ ์ธ์ง€ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•จ.

์ด ๊ตฌ์กฐ๋Š” โ€œ๋กœ๊ทธ๋ฅผ ๋‚˜์ค‘์— ํ™•์ธโ€์ด ์•„๋‹ˆ๋ผ โ€œ์ด์ƒ ์ง•ํ›„๊ฐ€ ์šด์˜์ž์—๊ฒŒ ๋จผ์ € ๋„๋‹ฌโ€ํ•˜๋Š” ์šด์˜์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•จ.


6. ๋ฐฐํฌ ํŒŒ์ดํ”„๋ผ์ธ ๋ฐ ๋ฐฐํฌ ์ด๋ ฅ ๊ธฐ๋ก(GitHub Actions โ†’ S3 Artifact โ†’ CodeDeploy)

V1์—์„œ๋Š” ๋ฐฐํฌ ์ž๋™ํ™”๋ฅผ ์ตœ์†Œ ๋น„์šฉ/์ตœ์†Œ ๋ณต์žก๋„๋กœ ๊ตฌ์„ฑํ•˜๋˜, ๋ฐฐํฌ ์ด๋ ฅ์˜ ์ถ”์  ๊ฐ€๋Šฅ์„ฑ์„ ํ•จ๊ป˜ ํ™•๋ณดํ•จ.
ํ˜„์žฌ ๋ฐฐํฌ ํ๋ฆ„์€ ์•„๋ž˜์™€ ๊ฐ™์Œ.

  1. ๊ฐœ๋ฐœ์ž๊ฐ€ GitHub์— ํ‘ธ์‹œํ•จ
  2. GitHub Actions์—์„œ ๋นŒ๋“œ/ํŒจํ‚ค์ง•์„ ์ˆ˜ํ–‰ํ•จ
  3. ์‚ฐ์ถœ๋ฌผ์„ S3(Artifact_Prod/Dev)์— ์—…๋กœ๋“œํ•จ
  4. CodeDeploy๊ฐ€ ํ•ด๋‹น ์•„ํ‹ฐํŒฉํŠธ๋ฅผ EC2๋กœ ๋ฐฐํฌํ•จ

์ด ๊ณผ์ •์€ ์•„ํ‹ฐํŒฉํŠธ(๋ฒ„์ „) ๋‹จ์œ„๋กœ ์ €์žฅยท๊ด€๋ฆฌ๋˜๋ฉฐ, S3 ์•„ํ‹ฐํŒฉํŠธ + CodeDeploy ๊ธฐ๋ก์„ ํ†ตํ•ด โ€œ์–ธ์ œ ์–ด๋–ค ๋ฒ„์ „์ด ๋ฐฐํฌ๋˜์—ˆ๋Š”์ง€โ€๋ฅผ ์ถ”์  ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•จ.


7. ์šด์˜(Prod) ์ˆ˜๋™ ํŠธ๋ฆฌ๊ฑฐ ๋ฐฐํฌ ํ๋ฆ„ ์ถ”๊ฐ€

์šด์˜ ํ™˜๊ฒฝ(Prod)์€ ์„œ๋น„์Šค ์•ˆ์ •์„ฑ์ด ์ตœ์šฐ์„ ์ด๋ฏ€๋กœ, ๋‹จ์ˆœํžˆ ํ‘ธ์‹œ ์ด๋ฒคํŠธ๋กœ ์ž๋™ ๋ฐฐํฌ๋˜์ง€ ์•Š๋„๋ก ์ˆ˜๋™ ํŠธ๋ฆฌ๊ฑฐ ๊ธฐ๋ฐ˜ ๋ฐฐํฌ ํ๋ฆ„์„ ์ถ”๊ฐ€ํ•จ.
์ฆ‰, NonProd๋Š” ๊ฐœ๋ฐœ ํŽธ์˜์„ฑ์„ ์œ„ํ•ด ์ž๋™ ๋ฐฐํฌ ์ค‘์‹ฌ์œผ๋กœ ์šด์˜ํ•˜๋˜, Prod๋Š” โ€œ์šด์˜์ž ์Šน์ธ ํ›„ ๋ฐฐํฌโ€๊ฐ€ ๋˜๋„๋ก ๋ถ„๊ธฐํ•จ.

  • ์šด์˜ ๋ฐฐํฌ๋Š” GitHub Actions์—์„œ workflow_dispatch(์ˆ˜๋™ ์‹คํ–‰) ๋˜๋Š” ์Šน์ธ ๋‹จ๊ณ„๊ฐ€ ํฌํ•จ๋œ ์ˆ˜๋™ ํŠธ๋ฆฌ๊ฑฐ๋กœ ์ˆ˜ํ–‰ํ•จ.
  • ์ˆ˜๋™ ํŠธ๋ฆฌ๊ฑฐ ๋ฐฉ์‹์€ ๋ฐฐํฌ ํƒ€์ด๋ฐ์„ ์šด์˜์ž๊ฐ€ ํ†ต์ œํ•  ์ˆ˜ ์žˆ์–ด, ํ”ผํฌ ํƒ€์ž„ ํšŒํ”ผ ๋ฐ ์ ๊ฒ€ ์ฐฝ ์šด์˜์ด ๊ฐ€๋Šฅํ•ด์ง.
  • ์žฅ์•  ๋ฐœ์ƒ ์‹œ โ€œ์ž๋™ ๋ฐฐํฌ๋กœ ์ธํ•œ ์—ฐ์‡„ ์˜ํ–ฅโ€์„ ์ค„์ด๊ณ , ๋ฐฐํฌ ์ „ ์ตœ์ข… ์ฒดํฌ(ํ—ฌ์Šค/๋กœ๊ทธ/์ง€ํ‘œ ํ™•์ธ)๋ฅผ ๊ฐ•์ œํ•˜๋Š” ํšจ๊ณผ๊ฐ€ ์žˆ์Œ.
  • ์ˆ˜๋™ ํŠธ๋ฆฌ๊ฑฐ๋กœ ์‹คํ–‰๋œ ๋ฐฐํฌ ์—ญ์‹œ S3 ์•„ํ‹ฐํŒฉํŠธ ๋ฐ CodeDeploy ์ด๋ ฅ์— ๊ธฐ๋ก๋˜์–ด, ์ž๋™ ๋ฐฐํฌ์™€ ๋™์ผํ•œ ์ˆ˜์ค€์˜ ์ถ”์ ์„ฑ์„ ์œ ์ง€ํ•จ.

๊ฒฐ๊ณผ์ ์œผ๋กœ V1 ๋‹จ๊ณ„์—์„œ๋„ Prod๋Š” โ€œ์˜๋„๋œ ๋ฐฐํฌ๋งŒ ๋ฐ˜์˜๋˜๋Š” ์šด์˜ ์ฒด๊ณ„โ€๋กœ ์ •๋ฆฌํ•จ.


8. ์Šคํ† ๋ฆฌ์ง€ ๋ฐ ์•„ํ‹ฐํŒฉํŠธ ๊ด€๋ฆฌ(S3)

S3๋Š” ๋‘ ๋ชฉ์ ์˜ ๋ฒ„ํ‚ท ์ฒด๊ณ„๋กœ ์‚ฌ์šฉํ•จ.

  • S3(Prod/Dev): ์„œ๋น„์Šค ๊ธฐ๋Šฅ ๊ด€์ ์—์„œ ์—…๋กœ๋“œ ํŒŒ์ผ/์ •์  ๋ฆฌ์†Œ์Šค ์ €์žฅ์†Œ ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•จ.
  • Artifact_Prod/Dev: ๋ฐฐํฌ ๊ด€์ ์—์„œ CodeDeploy๊ฐ€ ์ฐธ์กฐํ•˜๋Š” ์•„ํ‹ฐํŒฉํŠธ ์ €์žฅ์†Œ๋กœ ์‚ฌ์šฉํ•จ.

์„œ๋น„์Šค ๋ฐ์ดํ„ฐ์™€ ๋ฐฐํฌ ์‚ฐ์ถœ๋ฌผ์„ ๋ถ„๋ฆฌํ•˜์—ฌ ์šด์˜ ๋ฆฌ์Šคํฌ๋ฅผ ์ค„์ด๋Š” ๊ตฌ์กฐ์ž„.


9. V1 ๊ธฐ์ค€ ๋‹ฌ์„ฑ ํ•ญ๋ชฉ ์ •๋ฆฌ(์ง„ํ–‰์ƒํ™ฉ)

9.1 ์™„๋ฃŒ๋จ

  • Prod/NonProd VPC ๋ถ„๋ฆฌ ์™„๋ฃŒํ•จ.
  • ๊ฐ ํ™˜๊ฒฝ์— EC2 ๊ธฐ๋ฐ˜ ์„œ๋น„์Šค ์Šคํƒ(Next.js/Spring Boot Blue/Green/FastAPI/PostgreSQL/ChromaDB/Nginx) ๋ฐฐ์น˜ ์™„๋ฃŒํ•จ.
  • Route 53 ๊ธฐ๋ฐ˜ ๋„๋ฉ”์ธ ์ง„์ž… ๋ฐ Nginx ๋ฆฌ๋ฒ„์Šค ํ”„๋ก์‹œ ๋ถ„๊ธฐ ๊ตฌ์„ฑ ์™„๋ฃŒํ•จ.
  • GitHub Actions โ†’ S3 Artifact โ†’ CodeDeploy ๋ฐฐํฌ ํ๋ฆ„ ๊ตฌ์„ฑ ์™„๋ฃŒํ•จ.
  • Prod ๋ฐฐํฌ๋Š” ์ˆ˜๋™ ํŠธ๋ฆฌ๊ฑฐ ๊ธฐ๋ฐ˜์œผ๋กœ ํ†ต์ œ ๊ฐ€๋Šฅํ•˜๋„๋ก ๊ตฌ์„ฑ ์™„๋ฃŒํ•จ.
  • SSM ๊ธฐ๋ฐ˜ ์šด์˜ ์ ‘๊ทผ ํ†ต์ œ ๋ฐ ์„ธ์…˜ ๋กœ๊ทธ ๊ธฐ๋ก ๊ตฌ์กฐ ๊ตฌ์„ฑ ์™„๋ฃŒํ•จ.
  • CloudWatch ๊ธฐ๋ฐ˜ ๋ชจ๋‹ˆํ„ฐ๋ง/๊ฒฝ๋ณด ๋ฐ Discord ์•Œ๋ฆผ ์—ฐ๋™ ๊ตฌ์„ฑ ์™„๋ฃŒํ•จ.
  • SSM ๋กœ๊ทธ ๊ทธ๋ฃน ๊ธฐ๋ฐ˜ ๋น„์†์–ด/์œ„ํ—˜ ํŒจํ„ด ํƒ์ง€(ํ•„ํ„ฐ โ†’ ์•Œ๋žŒ โ†’ ์•Œ๋ฆผ) ๊ตฌ์„ฑ ์™„๋ฃŒํ•จ.

9.2 ๋ฆฌ์Šคํฌ๋กœ ๋‚จ์•„์žˆ์Œ

  • ๋‹จ์ผ EC2 ๋‚ด DB ๋™๊ฑฐ ๊ตฌ์กฐ๋กœ ์žฅ์•  ๋„๋ฉ”์ธ์ด ํผ.
  • ๋‹จ์ผ ๋…ธ๋“œ ๊ตฌ์กฐ์ด๋ฏ€๋กœ ์˜คํ† ์Šค์ผ€์ผ/์ž๊ฐ€๋ณต๊ตฌ๊ฐ€ ์ œํ•œ์ ์ž„.
  • Public Subnet ๊ธฐ๋ฐ˜์ด๋ฏ€๋กœ ์™ธ๋ถ€ ๋…ธ์ถœ๋ฉด ์ตœ์†Œํ™” ์ •์ฑ…์ด ์ง€์†์ ์œผ๋กœ ํ•„์š”ํ•จ.
  • AI ์›Œํฌ๋กœ๋“œ(vLLM)์˜ ๋ฆฌ์†Œ์Šค ๋ณ€๋™์ด ์ปค์„œ ์„ฑ๋Šฅ/๋น„์šฉ ํŠœ๋‹๊ณผ ๊ฒฉ๋ฆฌ๊ฐ€ ํ•„์š”ํ•จ.

10. ๋‹ค์Œ ๋‹จ๊ณ„ ์ œ์•ˆ(V2 ์ „ํ™˜ ๋ฐฉํ–ฅ)

V1์€ โ€œ๋ฐฐํฌ ๊ฐ€๋Šฅํ•œ ์„œ๋น„์Šค + ์ตœ์†Œ ์šด์˜ ์ž๋™ํ™”โ€๋ฅผ ํ™•๋ณดํ•˜๋Š” ๋‹จ๊ณ„์˜€์Œ.
V2์—์„œ๋Š” โ€œ์„œ๋น„์Šค ์ค‘์‹ฌ ์šด์˜โ€์„ ์œ„ํ•ด ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ๋ฅผ ๋” ์ผ๋ฐ˜ํ™”ํ•˜๊ณ , ์žฅ์•  ๋Œ€์‘์„ ์ž๋™ํ™”ํ•˜๋ฉฐ, ํ™•์žฅ์„ฑ์„ ํ™•๋ณดํ•˜๋Š” ๋ฐฉํ–ฅ์ด ํ•„์š”ํ•จ.
ํŠธ๋ž˜ํ”ฝ ์ฆ๊ฐ€์™€ ๊ธฐ๋Šฅ ํ™•์žฅ(์ฑ„ํŒ…/AI/์บ˜๋ฆฐ๋” ๋™์‹œ ์‚ฌ์šฉ)์ด ๋ณธ๊ฒฉํ™”๋˜๋ฉด, ๋ฉ€ํ‹ฐ ๋…ธ๋“œ ๊ธฐ๋ฐ˜ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜(kubeadm ํฌํ•จ) ์ „ํ™˜์ด ์ž์—ฐ์Šค๋Ÿฌ์šด ๋‹ค์Œ ๋‹จ๊ณ„๊ฐ€ ๋จ.

โš ๏ธ **GitHub.com Fallback** โš ๏ธ