์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์„ ์ƒ์„ฑํ•ด๋ณด์ž (feat. VPC ๋„คํŠธ์›Œํฌ)


 

์•ˆ๋…•ํ•˜์„ธ์š”?

ํ•œ๋ผ ์ฝ”๋”ฉ์ž…๋‹ˆ๋‹ค.

์ตœ๊ทผ์— ์ง‘๋“ค์ด๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์•„ ์ฝ”๋“œ ํฌ์ŠคํŒ…์ด ์กฐ๊ธˆ ๋Šฆ์–ด์กŒ๋„ค์š”

๊ทธ๋Ÿผ ์ด๋ฒˆ์—๋„ ์ด์–ด์„œ ๊ฐ€๋ณผ๊นŒ์š”?


1. GCP๋‚ด์˜ ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน ์ข…๋ฅ˜

์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š” ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์„ ๋งŒ๋“ค์–ด ๋ณผ ํ…๋ฐ์š”,

์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์€ ๋ง ๊ทธ๋Œ€๋กœ ์ธ์Šคํ„ด์Šค๊ฐ€ ๊ทธ๋ฃน์„ ์ด๋ฃจ๊ณ  ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

GCP์—์„œ๋Š” ๊ทธ๋ฃน ์ธ์Šคํ„ด์Šค์˜ ์ข…๋ฅ˜๋Š” ํฌ๊ฒŒ 2๊ฐ€์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

 

1. ๊ด€๋ฆฌํ˜• ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน

2. ๋น„ ๊ด€๋ฆฌํ˜• ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน

 

๊ด€๋ฆฌํ˜•๊ณผ ๋น„ ๊ด€๋ฆฌํ˜•์˜ ์ฐจ์ด์ ์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๊ด€๋ฆฌํ˜• ์ธ์Šคํ„ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฐ€์žฅ ํฐ ์ด์œ ๋Š”

Virtual machine์˜ CPU load๋ฅผ ๊ฐ์‹œํ•˜์—ฌ

์ผ์ • ์ˆ˜์ค€ ์ด์ƒ์— ๋„๋‹ฌํ•˜์˜€์„ ๋•Œ,

์ธ์Šคํ„ด์Šค๋ฅผ ์ถ”๊ฐ€์ ์œผ๋กœ ์ƒ์„ฑํ•˜์—ฌ

์™ธ๋ถ€์˜ request๋กœ ์ธํ•œ load๋ฅผ ๋ถ„๋ฐฐํ•ด ์ฃผ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

 

์ฆ‰, ๋น„ ๊ด€๋ฆฌํ˜• ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด

๊ฐ‘์ž‘์Šค๋Ÿฌ์šด ์„œ๋ฒ„ ํญ์ฃผ๋กœ ์ธํ•ด ๋‹ค์šด์ด ๋  ํ™•๋ฅ ์ด ๋†’๊ณ 

๊ด€๋ฆฌํ˜• ์ธ์Šคํ„ด์Šค๋Š” ์„œ๋ฒ„์˜ ๊ทœ๋ชจ๋ฅผ ๋Š˜๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— ์•ˆ์ •์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค.

๊ด€๋ฆฌํ˜• ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน ๋น„ ๊ด€๋ฆฌํ˜• ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน
์ธ์Šคํ„ด์Šค ๊ฐœ์ˆ˜์˜ ์ž๋™ ํ™•์žฅ, ๊ฐ์ถ• ๊ฐ€๋Šฅ ๊ทธ๋ฃน ์ƒ์„ฑ์‹œ ์–ด๋–ค ์ธ์Šคํ„ด์Šค๋ฅผ ์‚ฌ์šฉํ•  ์ง€ ์ง€์ • ํ•ด์•ผํ•จ.

์ด๋Ÿฐ ๊ด€๋ฆฌํ˜• ์ธ์Šคํ„ด์Šค์—๋„ ์•„๋ž˜์™€ ๊ฐ™์ด 2์ข…๋ฅ˜๋กœ ๋‚˜๋ˆ„์–ด์ง‘๋‹ˆ๋‹ค.

(MIG : managed instance group)

Stateful MIG Stateless MIG
์‚ญ์ œ or ์žฌ์ƒ์„ฑ์‹œ VM์˜ ๊ณ ์œ  ๋ฐ์ดํ„ฐ๊ฐ€ ์‚ฌ๋ผ์ง ํ™•์žฅ๋œ ๋ชจ๋“  VM์ด ๋™์ผํ•˜๊ฒŒ ์ทจ๊ธ‰ ๋จ

์–ด๋– ํ•œ ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์„ ์‚ฌ์šฉํ•˜๋Š”์ง€๋Š”,

๋ณธ์ธ์ด ๋งŒ๋“ค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ธฐ๋Šฅ๊ณผ ๊ทœ๋ชจ๋ฅผ ๋”ฐ์ ธ์„œ ๊ฒฐ์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

์ด๋ฒˆ์—๋Š” ๊ทœ๋ชจ๊ฐ€ ๊ทธ๋ฆฌ ํฌ์ง€ ์•Š๊ณ , ์™ธ๋ถ€์˜ ์š”์ฒญ์ด ์—†์ง€๋งŒ

(๋น„ ๊ด€๋ฆฌํ˜• ์ธ์Šคํ„ด์Šค๋ฅผ ์‚ฌ์šฉํ•ด๋„ ๋ฌธ์ œ๊ฐ€ ์—†์ง€๋งŒ)

์–ธ์  ๊ฐ€๋Š” ํ•„์š”ํ• ..! ๊ด€๋ฆฌํ˜• ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์„ ๋งŒ๋“ค์–ด ๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.


2. ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน ์ƒ์„ฑํ•˜๊ธฐ

์ด์ „ ํฌ์ŠคํŒ…์—์„œ ๋งŒ๋“  ์ธ์Šคํ„ด์Šค ํ…œํ”Œ๋ฆฟ์„ ์„ ํƒํ•ด ์ฃผ์‹œ๊ณ ,

์ž๋™ ๋ณต๊ตฌ - ์ƒํƒœํ™•์ธ์—์„œ ์ƒˆ๋กœ ์ƒ์„ฑํ•˜๊ธฐ๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”.

formicae.tistory.com/entry/GCPGoogle-cloud-platform%EB%A1%9C-%EB%82%98%EC%9D%98-%EC%84%9C%EB%B2%84Server-%EB%A7%8C%EB%93%A4%EA%B8%B0-3?category=815536

 

GCP(Google cloud platform)๋กœ ๋‚˜์˜ ์„œ๋ฒ„(Server) ๋งŒ๋“ค๊ธฐ - 3

์•ˆ๋…•ํ•˜์„ธ์š”? ์ฝ”๋”ฉํ•˜๋Š” ๋ชจ์ฃผ๋ถ€ ์ž…๋‹ˆ๋‹ค! ์˜ค๋Š˜๋„ ์ง€๋‚œ ํฌ์ŠคํŒ…์— ์ด์–ด ๋‹ฌ๋ ค๋ด…์‹œ๋‹ค ใ…Žใ…Ž 1. GCP์—์„œ ์Šค๋ƒ…์ƒท ์ƒ์„ฑํ•˜๊ธฐ ์ด๋•Œ๊นŒ์ง€ GCP๋กœ ๊ฐ€์ƒ๋จธ์‹ ์„ ๋นŒ๋ฆฌ๊ณ , ์„œ๋ฒ„๋ฅผ ์˜ฌ๋ ค ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ ๊นŒ์ง€ ํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค.

formicae.tistory.com

GitHub ์ฃผ์†Œ :

github.com/formicae/gcp_example

 

formicae/gcp_example

Contribute to formicae/gcp_example development by creating an account on GitHub.

github.com

ํ˜„์žฌ ์„œ๋ฒ„์˜ PORT๊ฐ€ 3000๋ฒˆ์ด๊ณ  HTTP ํ†ต์‹ ์„ ํ•  ๊ฒƒ์ด๋ฏ€๋กœ,

์ €์˜ GitHub ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์‹œ๋Š” ๋ถ„๋“ค์€ ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ์ž…๋ ฅ ํ•ด ์ฃผ์„ธ์š”.

 

์ƒํƒœ ์ฒดํฌ๋ฅผ ์—ฐ๊ฒฐํ•˜์—ฌ ๊ด€๋ฆฌํ˜• ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน ์ƒ์„ฑ

 

์ค‘์š”ํ•œ ๊ฒƒ์€, ์š”์ฒญ ๊ฒฝ๋กœ์— ๋ฐ˜๋“œ์‹œ ๋‹ค์Œ์˜ ๋ฌธ๊ตฌ๋ฅผ ์ž…๋ ฅ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

/health_check

์ด์œ ๋Š”, ์•„๋ž˜์™€ ๊ฐ™์ด ์ œ๊ฐ€ GitHub์— ๋งŒ๋“ค์–ด ๋†“์€ ์ฝ”๋“œ์˜

GET method ์ค‘ ์ƒํƒœ ์ฒดํฌ์šฉ์œผ๋กœ ๋งŒ๋“  uri๊ฐ€ /health_check ์ด๊ธฐ ๋•Œ๋ฌธ์ด์—์š”

์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์„ ๋งŒ๋“ค์—ˆ๋‹ค๋ฉด,

์ƒํƒœ๊ฐ€ ์ •์ƒ์ธ์ง€ ํ™•์ธํ•ด ์ฃผ์„ธ์š”.

๋งŒ์•ฝ ์ •์ƒ์ด ์•„๋‹ˆ๋ผ๋ฉด, ๊ทธ๋ฃน์— ํฌํ•จ๋œ ์ธ์Šคํ„ด์Šค์— ๋ฌธ์ œ๊ฐ€ ์žˆ์„ ํ™•๋ฅ ์ด ๋†’๋‹ต๋‹ˆ๋‹ค!

 

์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์˜ ์ƒ์„ฑ์€ ๊ฐ„๋‹จํ•˜์ง€๋งŒ, 

๋ชฉ์ ์— ๋งž๊ฒŒ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ต๋‹ˆ๋‹ค.

 

์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์„ ์ƒ์„ฑํ•˜๊ณ  ๋‚œ ๋’ค์—๋„

์ธ์Šคํ„ด์Šค๋ฅผ ์ˆ˜์ •ํ•ด๋„ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค.

 

๋‹ค๋งŒ, ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ์˜ ์—ฐ๊ฒฐ์ด ๋˜์–ด์žˆ๋‹ค๋ฉด

ํ•ด๋‹น ์ธ์Šคํ„ด์Šค์˜ ๋ถ€ํŒ…์ด ๋๋‚˜๋Š” ์‹œ๊ฐ„๊ณผ

๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ์—์„œ health check ํ•˜๋Š” ์‹œ๊ฐ„ ๋™์•ˆ

์„œ๋ฒ„๋กœ์˜ ์—ฐ๊ฒฐ์ด ์ง€์—ฐ๋˜๋ฏ€๋กœ

์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์˜ ์ƒํƒœ๊ฐ€ ๋…น์ƒ‰ ์ฒดํฌ๊ฐ€ ์•„๋‹ˆ์‹  ๋ถ„๋“ค์€

์—ฌ์œ ๋กญ๊ฒŒ 3~5๋ถ„ ์ •๋„ ๊ธฐ๋‹ค๋ ค๋ณด์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

 

๋งŒ์•ฝ ๊ทธ๋ž˜๋„ ์ธ์Šคํ„ด์Šค๊ฐ€ ์ •์ƒ ์ƒํƒœ๊ฐ€ ์•„๋‹ˆ๋ผ๋ฉด,

์ƒํƒœ ์ฒดํฌ(health check)์— ์‹คํŒจ ํ–ˆ์„ ํ™•๋ฅ ์ด ๋งค์šฐ ๋†’์Šต๋‹ˆ๋‹ค

์ด์ „ ํฌ์ŠคํŒ…์—์„œ ๋งŒ๋“  ์ธ์Šคํ„ด์Šค ํ…œํ”Œ๋ฆฟ์„ ๋‹ค์‹œ ํ•œ๋ฒˆ ํ™•์ธ ํ•ด ๋ณด์„ธ์š”!!

 

๊ทธ๋Ÿผ, ๋‹ค์Œ ํฌ์ŠคํŒ…์—์„œ ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์„

๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ์— ์—ฐ๊ฒฐ ํ•ด๋ด…์‹œ๋‹ค!

+ Recent posts