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

์ฝ”๋”ฉํ•˜๋Š” ๋ชจ์ฃผ๋ถ€ ์ž…๋‹ˆ๋‹ค!

์ ์  ์‹œ๋ฆฌ์ฆˆ๊ฐ€ ๋งˆ์ง€๋ง‰์„ ํ–ฅํ•ด ๊ฐ€๊ณ  ์žˆ๋„ค์š”!

 

1. GCP ์—์„œ ๋‚ด๋ถ€ / ์™ธ๋ถ€ ๋ถ€ํ•˜ ๋ถ„์‚ฐ ์„ ํƒํ•˜๊ธฐ

์ง€๋‚œ๋ฒˆ ํฌ์ŠคํŒ…์„ ๋‹ค ๋”ฐ๋ผ ํ•˜์…จ๋‹ค๋ฉด,

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-4?category=815536

 

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

์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์„ ์ƒ์„ฑํ•ด๋ณด์ž (feat. VPC ๋„คํŠธ์›Œํฌ) ์•ˆ๋…•ํ•˜์„ธ์š”? ํ•œ๋ผ ์ฝ”๋”ฉ์ž…๋‹ˆ๋‹ค. ์ตœ๊ทผ์— ์ง‘๋“ค์ด๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์•„ ์ฝ”๋“œ ํฌ์ŠคํŒ…์ด ์กฐ๊ธˆ ๋Šฆ์–ด์กŒ๋„ค์š” ๊ทธ๋Ÿผ ์ด๋ฒˆ์—๋„ ์ด์–ด์„œ ๊ฐ€๋ณผ๊นŒ์š”? 1. GCP๋‚ด์˜ ์ธ์Šคํ„ด์Šค

formicae.tistory.com

๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ (๋ถ€ํ•˜ ๋ถ„์‚ฐ) ์„ค์ •์„ ์œ„ํ•ด ๋„คํŠธ์›Œํฌ ์„œ๋น„์Šค๋กœ ๋“ค์–ด๊ฐ‘์‹œ๋‹ค

๋ถ€ํ•˜ ๋ถ„์‚ฐ(Load balancing) ์ด๋ž€,

๊ฐ„๋‹จํ•˜๊ฒŒ ๋งํ•ด์„œ ์ปดํ“จํ„ฐ๊ฐ€ ๊ฐ๋‹นํ•˜๊ธฐ ํž˜๋“ค ์ •๋„์˜

์š”์ฒญ์ด ๋“ค์–ด์˜ค๋Š” ๊ฒฝ์šฐ (์‚ฌ์šฉ์ž๊ฐ€ CPU load % ์„ค์ • ๊ฐ€๋Šฅ)

๋‹ค๋ฅธ ์ปดํ“จํ„ฐ๋กœ ์š”์ฒญ์„ ๋‚˜๋ˆ„์–ด ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค.

 

์šฐ๋ฆฌ๋Š” http / https๋ฅผ ์ด์šฉํ•ด ํด๋ผ์ด์–ธํŠธ์—์„œ ์„œ๋ฒ„๋กœ ์š”์ฒญ์„ ํ•  ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— 

HTTP(S) ๋ถ€ํ•˜ ๋ถ„์‚ฐ์„ ์„ ํƒํ•ฉ์‹œ๋‹ค!

์•„๋ž˜์™€ ๊ฐ™์ด ์„ ํƒ์ง€๊ฐ€ ๋‚˜์˜ค๋ฉด,

"์ธํ„ฐ๋„ท ํŠธ๋ž˜ํ”ฝ์„ VM์œผ๋กœ ๋ถ„์‚ฐ" ์„ ์„ ํƒํ•ฉ์‹œ๋‹ค

์ด ๋‘๊ฐœ์˜ ์ฐจ์ด๋Š” ์™ธ๋ถ€ ๋ถ€ํ•˜ ๋ถ„์‚ฐ์ด๋ƒ,

๋‚ด๋ถ€ ๋ถ€ํ•˜ ๋ถ„์‚ฐ์ด๋ƒ์˜ ์ฐจ์ด์ž…๋‹ˆ๋‹ค.

์™ธ๋ถ€ ๋ถ€ํ•˜ ๋ถ„์‚ฐ์„ ์„ ํƒํ•ด ์ค์‹œ๋‹ค

๋‚ด๋ถ€ / ์™ธ๋ถ€ ๋ถ€ํ•˜ ๋ถ„์‚ฐ์˜ ์ฐจ์ด์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์™ธ๋ถ€ ๋ถ€ํ•˜ ๋ถ„์‚ฐ ๋‚ด๋ถ€ ๋ถ€ํ•˜ ๋ถ„์‚ฐ
> ์ธํ„ฐ๋„ท์„ ํ†ตํ•ด ๋“ค์–ด์˜ค๋Š” ํŠธ๋ž˜ํ”ฝ์„ ๋ถ„์‚ฐ
> ๋ถ€ํ•˜๋ฅผ ์„œ๋กœ ๋‹ค๋ฅธ Region์— ๋ถ„์‚ฐ ๊ฐ€๋Šฅ
> URL map์„ ํ†ตํ•ด ์„œ๋กœ ๋‹ค๋ฅธ backend service์—
๋ถ€ํ•˜๋ฅผ ๋ถ„์‚ฐ ํ•  ์ˆ˜ ์žˆ์Œ

> Region์œผ๋กœ ๋“ค์–ด์˜จ ๋ถ€ํ•˜๋ฅผ ๋ถ„์‚ฐ
> Region ๋‚ด๋ถ€์—์„œ ๋ถ€ํ•˜๋ฅผ ๋ถ„์‚ฐ
       (๋‚ด๋ถ€์˜ VM ์‚ฌ์ด์—์„œ ๋ถ€ํ•˜ ๋ถ„์‚ฐ)
> ๋ณ„๋„์˜ Subnet์ด ํ•„์š”

 

๋งŒ์•ฝ ๋น„ ๊ด€๋ฆฌํ˜• ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์—์„œ

ํŠน์ • ๋ฆฌ์ „๋งŒ์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜

์—ฌ๋Ÿฌ๊ฐœ์˜ VM๋“ค์˜ ์—ญํ• ์ด ๋ช…ํ™•ํ•˜๊ฒŒ ๊ตฌ๋ถ„ ๋˜๊ณ 

ํŠธ๋ž˜ํ”ฝ ๋ถ„์‚ฐ์— ๋Œ€ํ•œ ๊ทœ์น™์ด ์žˆ๋‹ค๋ฉด

"VM ์‚ฌ์ด์—์„œ๋งŒ ๋ถ„์‚ฐ"์„ ์‚ฌ์šฉํ•ด๋„ ๋˜๊ฒ ์Šต๋‹ˆ๋‹ค.

(๋‚ด๋ถ€ ๋ถ€ํ•˜ ๋ถ„์‚ฐ)

 

ํ•˜์ง€๋งŒ, ์ธํ„ฐ๋„ท์—์„œ ์š”์ฒญ๋˜๋Š” ํŠธ๋ž˜ํ”ฝ๋“ค์ด

๋ฆฌ์ „์„ ๊ณจ๋ผ์„œ ๋ถ„๋ฐฐ๊ฐ€ ๋˜์–ด์•ผ ํ•˜๊ฑฐ๋‚˜,

ํŠธ๋ž˜ํ”ฝ ๊ทœ๋ชจ์— ๋”ฐ๋ผ ์ธ์Šคํ„ด์Šค์˜ ํฌ๊ธฐ๊ฐ€ ์ž๋™์œผ๋กœ ๋ณ€๋™๋˜์–ด

๊ฒฐ์ •๋œ VM๋“ค ์‚ฌ์ด์—์„œ ๋ถ€ํ•˜๊ฐ€ ๋ถ„์‚ฐ๋˜๊ธฐ๋ฅผ ์›ํ•œ๋‹ค๋ฉด

"์ธํ„ฐ๋„ท ํŠธ๋ž˜ํ”ฝ์„ VM์œผ๋กœ ๋ถ„์‚ฐ"์„ ์„ ํƒํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

(์™ธ๋ถ€ ๋ถ€ํ•˜ ๋ถ„์‚ฐ

 

์•„๋ž˜์˜ ๊ตฌ๊ธ€ ๊ณต์‹ ๋ฌธ์„œ์— ์ฒจ๋ถ€๋˜์–ด ์žˆ๋Š” ๊ทธ๋ฆผ์„ ์ฐธ๊ณ ํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : https://cloud.google.com/load-balancing/docs/load-balancing-overview?hl=ko


2. GCP์—์„œ ์™ธ๋ถ€ ๋ถ€ํ•˜ ๋ถ„์‚ฐ ์ƒ์„ฑํ•˜๊ธฐ

์™ธ๋ถ€ ๋ถ€ํ•˜ ๋ถ„์‚ฐ๊ธฐ๋ฅผ ์„ ํƒํ•˜์…จ๋‹ค๋ฉด,

๋ถ€ํ•˜ ๋ถ„์‚ฐ์„ ๊ตฌ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์Œ์˜ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. 


1. ๋ฐฑ์—”๋“œ ์„œ๋น„์Šค ์ƒ์„ฑ ๋ฐ ์—ฐ๊ฒฐ

2. ํ˜ธ์ŠคํŠธ ๋ฐ ๊ฒฝ๋กœ ๊ทœ์น™ ์ƒ์„ฑ

3. ํ”„๋ŸฐํŠธ์—”๋“œ ์—ฐ๊ฒฐ


2.1 ๋ฐฑ์—”๋“œ(Backend) ๊ตฌ์„ฑ

๋ฐฑ์—”๋“œ๋ž€, ์‰ฝ๊ฒŒ ๋งํ•ด์„œ ์„œ๋ฒ„์™€ ๊ด€๋ จ๋˜์–ด์žˆ๋Š” ๊ธฐ์ˆ ์„ ๋งํ•ฉ๋‹ˆ๋‹ค.

๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ๊ฐ€ ์™ธ๋ถ€์˜ ํŠธ๋ž˜ํ”ฝ์„ Virtual machine์— ๋‚˜๋ˆ„์–ด ์ฃผ๋Š”๋ฐ,

VM์—์„œ ๋ฐ›์€ ํŠธ๋ž˜ํ”ฝ์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์„œ๋ฒ„๊ฐ€ ํ•„์š”ํ•˜๊ฒ ์ฃ ?

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€๋„ ํ†ต์‹ ์„ ํ•ด์„œ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๊ณ ,

์ธํ„ฐ๋„ท์—์„œ ์š”์ฒญ๋œ ํŠธ๋ž˜ํ”ฝ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋“ฑ์˜ ์ž‘์—…๋“ค์„ ํ†ตํ‹€์–ด ๋ฐฑ์—”๋“œ๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค.

์ข€ ๋” ๋„“์€ ์˜๋ฏธ์˜ ๋ฐฑ์—”๋“œ๋Š” ํ”„๋ก ํŠธ์—”๋“œ๊ฐ€ ์•„๋‹Œ ๋ชจ๋“  ๊ฒƒ์„ ์˜๋ฏธํ•˜๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค!

 

๋ฐ˜๋Œ€๋กœ ํ”„๋ก ํŠธ ์—”๋“œ๋ž€,

์ธ๊ฐ„์ด ์ธํ„ฐ๋„ท์„ ์ด์šฉํ•˜๊ธฐ ์œ„ํ•ด ๋งˆ์ฃผํ•˜๋Š” ํ™”๋ฉด ๋˜๋Š” UI์—์„œ

์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ๋” ๊ตฌํ˜„ํ•˜๋Š” ๊ธฐ์ˆ ์„ ๋งํ•ฉ๋‹ˆ๋‹ค.

์ฃผ๋กœ HTML์ด๋‚˜ CSS, Javascript์™€ ๊ฐ™์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋“ค์ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

 

๋ฐฑ์—”๋“œ๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ์ƒˆ๋กœ ์ƒ์„ฑ ํ•ฉ์‹œ๋‹ค

๋ฐฑ์—”๋“œ๋ฅผ ์ƒˆ๋กœ ์ƒ์„ฑํ•  ๋•Œ, ์ฃผ์˜ํ•ด์•ผ ํ•˜๋Š” ์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ด์ „ ํฌ์ŠคํŒ…์„ ๋ณด๋ฉด ๋ฐฉํ™”๋ฒฝ์—์„œ ํฌํŠธ 3000๋ฒˆ์„ ์ง€์ •ํ•œ ์ ์ด ์žˆ์„ ๊ฒ๋‹ˆ๋‹ค.

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-2?category=815536

 

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

SSH(Secure Shell) ์„ ํ†ตํ•ด VM(Virtual Machine)์— ๋‚˜๋งŒ์˜ ์ฝ”๋“œ๋ฅผ ๋„ฃ์–ด ๋ณด์ž 1. ์™ธ๋ถ€ IP ์ฃผ์†Œ ๊ณ ์ • ์˜ˆ์•ฝํ•˜๊ธฐ VM ์ธ์Šคํ„ด์Šค ์„ธ๋ถ€์ •๋ณด์— ์žˆ๋Š” ์ง๋ ฌ ํฌํŠธ1(์ฝ˜์†”) ์— ๋“ค์–ด๊ฐ€๋ฉด ํ•ด๋‹น ์ธ์Šคํ„ด์Šค๊ฐ€ ์–ด๋–ค ์‹์œผ๋กœ ๋นŒ๋“œ๋˜

formicae.tistory.com

์ด๋Š” ์ œ๊ฐ€ GitHub์— ์˜ฌ๋ ค๋†“์€ ์„œ๋ฒ„ ์ฝ”๋“œ(www.js)์—์„œ ์•„๋ž˜์™€ ๊ฐ™์ด

ํฌํŠธ๋ฅผ 3000๋ฒˆ์œผ๋กœ ์ง€์ • ํ•ด ๋†“์•˜๊ธฐ ๋•Œ๋ฌธ์ธ๋ฐ์š”,

var port = normalizePort(process.env.PORT || '3000');
app.set('port', port);

๋งŒ์•ฝ ์ด ๋ฒˆํ˜ธ๋ฅผ ๋‹ค๋ฅด๊ฒŒ ์ง€์ • ํ•ด ์ฃผ์—ˆ๋‹ค๋ฉด,

์ง€์ •ํ•œ ๋ฒˆํ˜ธ๋ฅผ "์ƒˆ ๋ฐฑ์—”๋“œ" ์—์„œ "ํฌํŠธ ๋ฒˆํ˜ธ"์— ์ž…๋ ฅํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

๋งŒ์•ฝ ํ•ด๋‹น ํฌํŠธ๋ฅผ ์„ค์ •ํ•˜์ง€ ์•Š์œผ๋ฉด,

๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ์™€ ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์˜ ํ†ต์‹ ์ด ๋˜์ง€ ์•Š์œผ๋‹ˆ ์ฃผ์˜ํ•˜์„ธ์š”!

"์ƒˆ ๋ฐฑ์—”๋“œ" ์—์„œ ๋ชจ๋‘ ์ž…๋ ฅ ํ›„ "์™„๋ฃŒ" ๋ฅผ ๋ˆŒ๋Ÿฌ ์ค์‹œ๋‹ค

์ด์ „ ํฌ์ŠคํŒ…์—์„œ ์ƒํƒœ ํ™•์ธ(health check)์„ ๋งŒ๋“ค์–ด ๋†“์•˜๋‹ค๋ฉด,

์•„๋ž˜์™€ ๊ฐ™์ด ๋ฆฌ์ŠคํŠธ์— ์„ ํƒ ๊ฐ€๋Šฅํ•œ ์ƒํƒœ ํ™•์ธ์ด ๋‚˜ํƒ€ ๋‚  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋งŒ์•ฝ ์ƒํƒœํ™•์ธ์ด ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๋Š”๋‹ค๋ฉด,

์ด๋ฏธ ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน ๋˜ํ•œ ์ •์ƒ ์ƒํƒœ๊ฐ€ ์•„๋‹ ํ™•๋ฅ ์ด ๋†’์œผ๋ฏ€๋กœ

์ด์ „ ํฌ์ŠคํŒ…์„ ์ฐธ์กฐํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

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-4?category=815536

 

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

์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์„ ์ƒ์„ฑํ•ด๋ณด์ž (feat. VPC ๋„คํŠธ์›Œํฌ) ์•ˆ๋…•ํ•˜์„ธ์š”? ํ•œ๋ผ ์ฝ”๋”ฉ์ž…๋‹ˆ๋‹ค. ์ตœ๊ทผ์— ์ง‘๋“ค์ด๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์•„ ์ฝ”๋“œ ํฌ์ŠคํŒ…์ด ์กฐ๊ธˆ ๋Šฆ์–ด์กŒ๋„ค์š” ๊ทธ๋Ÿผ ์ด๋ฒˆ์—๋„ ์ด์–ด์„œ ๊ฐ€๋ณผ๊นŒ์š”? 1. GCP๋‚ด์˜ ์ธ์Šคํ„ด์Šค

formicae.tistory.com

์•„๋ž˜์™€ ๊ฐ™์ด ๋ฐฑ์—”๋“œ๊ฐ€ ๋‹ค ๋งŒ๋“ค์–ด์กŒ์œผ๋ฉด, ํ˜ธ์ŠคํŠธ ๋ฐ ๊ฒฝ๋กœ ๊ทœ์น™์„ ๋งŒ๋“ค์–ด ๋ณผ ์ฐจ๋ก€์ž…๋‹ˆ๋‹ค.

ํฌ์ŠคํŒ…์ด ๋„ˆ๋ฌด ๊ธธ์–ด์ง€๋Š” ๊ด€๊ณ„๋กœ,

์ด ๋‚ด์šฉ์€ ๋‹ค์Œ ํฌ์ŠคํŠธ์—์„œ ๋‹ค๋ฃจ๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!

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

์ฝ”๋”ฉํ•˜๋Š” ๋ชจ์ฃผ๋ถ€ ์ž…๋‹ˆ๋‹ค.

์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š” Cloud platform์—์„œ ๋งŽ์ด ๊ฑฐ๋ก ๋˜๋Š” VPC์— ๋Œ€ํ•ด ์•Œ์•„๋ณผ ๊ฑฐ์—์š”

 

VPC๋Š” ๊ธ€์ž์˜ ์˜๋ฏธ์—์„œ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด,

๊ฐ€์ƒ๊ณต๊ฐ„์—์„œ ์ด๋ฃจ์–ด์ง„ ์‚ฌ์„ค ํด๋ผ์šฐ๋“œ ์ž…๋‹ˆ๋‹ค.

VPN์ด๋ž‘ ์ด๋ฆ„์ด ํ—ท๊ฐˆ๋ฆด ์ˆ˜ ์žˆ๋Š”๋ฐ,

VPN์— ๋Œ€ํ•œ ์„ค๋ช…์€ ํฌ์ŠคํŠธ ํ•˜๋‹จ์— ๋‚จ๊ฒจ๋†“๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

VPC๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ๋ฅผ ์„ค๋ช…ํ•˜๊ธฐ ์œ„ํ•ด์„œ 

A, B, C, D, E, F ๋ผ๋Š” ์ธ์Šคํ„ด์Šค๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•ฉ์‹œ๋‹ค.

ํด๋ผ์šฐ๋“œ ์‹œ์Šคํ…œ์—์„œ ์ด ์ธ์Šคํ„ด์Šค๋“ค์ด ๋ชจ๋‘ ๋™์ž‘์„ ํ•˜๊ณ ,

์ƒํ˜ธ ํ†ต์‹ ์„ ํ•ด์•ผํ•œ๋‹ค๊ณ  ํ•˜๋ฉด

A๋Š” B, C, D, E, F์™€ ์—ฐ๊ฒฐ๋˜์–ด์•ผ ํ•˜๊ณ 

B๋Š” A, C, D, E, F ์™€ ์—ฐ๊ฒฐ๋˜์–ด์•ผ ํ•˜๊ณ , ... ๋“ฑ๋“ฑ

๋งค์šฐ ๋งŽ์€ ์—ฐ๊ฒฐ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์ด๋Š” ์–ธ๋œป๋ด๋„ ๋งค์šฐ ๋น„ํšจ์œจ์ ์ด์ฃ .

 

๋‹จ์ˆœํ•œ VPC ์‚ฌ์šฉ / ๋น„์‚ฌ์šฉ diagram

 

์ด๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด ๋ฐ”๋กœ VPC ์ž…๋‹ˆ๋‹ค.

A, B, C ๋ฅผ Subnet1 ๋กœ ๋ฌถ์–ด ์„œ๋กœ ์—ฐ๊ฒฐํ•˜๊ณ ,

D, E, F ๋ฅผ Subnet2๋กœ ๋ฌถ์€ ๋‹ค์Œ ์„œ๋กœ ์—ฐ๊ฒฐ์„ ํ•˜์—ฌ

ํ†ต์‹ ์„ ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

 

GCP์—๋Š” VPC ๋„คํŠธ์›Œํฌ๋ฅผ ์ปค์Šคํ„ฐ ๋งˆ์ด์ง•ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ์š”,

1. ํŠน์ • ์ง€์—ญ์˜ ๋„คํŠธ์›Œํฌ๋งŒ์„ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์„ ๋•Œ

2. VM์ด ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ์˜์—ญ์„ ์ œํ•œํ•˜๊ณ , ๋‚˜๋ˆ„๊ณ  ์‹ถ์„ ๋•Œ

์‚ฌ์šฉํ•˜๋ฉด ์ข‹์Šต๋‹ˆ๋‹ค.

 

์˜ˆ๋ฅผ ๋“ค์–ด, ํ•˜๋‚˜์˜ VPC ๋„คํŠธ์›Œํฌ๋ฅผ ๋งŒ๋“ค์–ด์„œ

๊ทธ ์•ˆ์— VM๊ณผ PostgreSQL๊ณผ ๊ฐ™์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๋„ฃ์œผ๋ฉด

VM <--> Database ๊ฐ„ ํ†ต์‹ ์€ ๋‚ด๋ถ€ IP ๋กœ ํ†ต์‹ ์„ ํ•˜๊ณ ,

Database๋Š” ์™ธ๋ถ€๋กœ ์œ ์ถœ ๋  ์ผ์ด ์—†๋Š” ๋ณด์•ˆ์„ฑ์ด ์šฐ์ˆ˜ํ•œ ๊ตฌ์กฐ๊ฐ€ ๋˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

VPC ์˜ˆ์‹œ

VPC ๋„คํŠธ์›Œํฌ์˜ ํŠน์„ฑ

> ํ•˜๋‚˜ ์ด์ƒ์˜ ์„œ๋ธŒ๋„ท์œผ๋กœ ๊ตฌ์„ฑ.
> ๋ฆฌ์ „์— ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์ง€ ์•Š์Œ.

์•„๋ž˜ ๊ทธ๋ฆผ์€ ๋‘ ๊ฐœ์˜ ๋ฆฌ์ „์— 3๊ฐœ์˜ ์„œ๋ธŒ๋„ท์ด ์žˆ๋Š” 
VPC๋„คํŠธ์›Œํฌ ๊ตฌ์„ฑ๋„๋ฅผ ๋‚˜ํƒ€๋‚ธ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
Subnet ๋‚ด๋ถ€์—๋„ zone์ด ์กด์žฌํ•˜๋Š”๋ฐ, 
์ด zone์€ ์„œ๋กœ ๋‹ค๋ฅธ subnet๋“ค์— ์ค‘๋ณต์œผ๋กœ ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
(us-east1-a) 

 

์„œ๋ธŒ ๋„ท(Sub net) ์ด๋ž€?

์œ ์šฉํ•œ IP๊ฐ€ ์—ฌ๋Ÿฌ ๊ฐœ ๋ชจ์ธ ๊ฒƒ์„ ์˜๋ฏธ (์ƒ์„ฑ ์‹œ ๊ธฐ๋ณธ IP ์ฃผ์†Œ ๋ฒ”์œ„ ์„ค์ • ํ•„์š”)
๊ฐ ์„œ๋ธŒ๋„ท์€ ๋ฆฌ์ „์— ์—ฐ๊ฒฐ๋จ.
์œ ํšจํ•œ ๋ฒ”์œ„๊ฐ€ ์กด์žฌํ•จ.

 

< ํ˜ผ๋ž€ ๋ฐฉ์ง€์šฉ >
VPN (Virtual Private Network)์ด๋ž€?

ํšŒ์‚ฌ๋“ค์˜ ๋„คํŠธ์›Œํฌ๋Š” ์‚ฌ์„ค๋ง์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค.
(๋ˆ„๊ตฌ๋‚˜ ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋Š” ์ „ํ™”๋ง์ด๋‚˜ ์ธํ„ฐ๋„ท๊ณผ ๊ฐ™์€ ๊ณต์ค‘๋ง๊ณผ ๋ถ„๋ฆฌ)
์กฐ์ง ๋‚ด์—์„œ ์ธ์ฆ๋œ ์‚ฌ๋žŒ๋งŒ์ด ์ด์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ตฌ์„ฑ ํ•ด ๋†“์€ ๊ฒƒ์œผ๋กœ
๋ณด์•ˆ์ด ๋›ฐ์–ด๋‚œ ๊ฒƒ์ด ํŠน์ง•์ž…๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์žฌํƒ๊ทผ๋ฌด๋ฅผ ํ•˜๊ฑฐ๋‚˜ ์›๊ฒฉ์œผ๋กœ
์ด ๋„คํŠธ์›Œํฌ์— ์ ‘์†ํ•  ํ•„์š”๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ,
์‹ค์ œ๋กœ ์‚ฌ์„ค ๋ง๊ณผ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์ง€ ์•Š๋”๋ผ๋„
VPN์„ ์ด์šฉํ•˜์—ฌ ์ ‘์†์„ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ, VPN์€ ๋ณด์•ˆ์„ ์œ ์ง€ํ•˜๋ฉด์„œ๋„
ํŠน์ • ์ธ์›์ด ์‚ฌ์„ค๋ง์— ์—ฐ๊ฒฐ๋  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š”
๊ฐ€์ƒ์˜ ๋„คํŠธ์›Œํฌ๋ฅผ ์ผ์ปซ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์—ฌ๊ธฐ๊นŒ์ง€ VPC์— ๊ด€ํ•œ ๋‚ด์šฉ๋“ค์ด์—ˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ๋ฒˆ์—๋Š” ๋‹ค๋ฅธ ๋‚ด์šฉ์œผ๋กœ ์ฐพ์•„์˜ค๊ฒ ์Šต๋‹ˆ๋‹ค.

์˜ค๋Š˜๋„ ์žฌ๋ฏธ์žˆ๋Š” ์ฝ”๋”ฉ ํ•˜์„ธ์š” :)

 

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

์ฝ”๋”ฉํ•˜๋Š” ๋ชจ์ฃผ๋ถ€ ์ž…๋‹ˆ๋‹ค!

 

์ด๋ฒˆ์—๋Š” ๊ตฌ๋…์ž๋‹˜์˜ ์š”์ฒญ์ด ์žˆ์–ด์„œ

ํ‹ฐ์Šคํ† ๋ฆฌ์—์„œ ๊ธ€์ž(ํฐํŠธ) ํฌ๊ธฐ๋ฅผ ์กฐ์ ˆํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณผ ๊ฑฐ์—์š”!

 

๊ธฐ๋ณธ์ ์œผ๋กœ, ํ‹ฐ์Šคํ† ๋ฆฌ์—์„œ ์ œ๊ณต๋˜๋Š” ๊ธ€์”จ์˜ ํฌ๊ธฐ๋Š”

์•„๋ž˜์™€ ๊ฐ™์ด ์ด 6๊ฐ€์ง€๊ฐ€ ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค.

 

๋˜ํ•œ, ์ œ๋ชฉ์˜ ๊ธ€์ž ์†์„ฑ์—๋Š” ๋‹ค์Œ ๊ธ€์ž์™€์˜

์ƒํ•˜ ์ž๊ฐ„ ๊ธธ์ด๋„ ํฌํ•จ๋˜์–ด ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค.

 

 

 


> ์‹ค์ œ ํฌ๊ธฐ <

์ œ๋ชฉ1 [ABC]

์ œ๋ชฉ2 [ABC]

์ œ๋ชฉ3 [ABC]

๋ณธ๋ฌธ1

๋ณธ๋ฌธ2

๋ณธ๋ฌธ3


ํ‹ฐ์Šคํ† ๋ฆฌ ์ƒ๋‹จ์—์„œ

๊ธฐ๋ณธ๋ชจ๋“œ --> HTML๋กœ ๋ณ€๊ฒฝํ–ˆ์„ ๋•Œ,

์œ„์˜ ํ…์ŠคํŠธ ๋“ค์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

 

๊ฐ ํ…์ŠคํŠธ๋“ค์˜ HTML ์ฝ”๋“œ

 

์ผ๋‹จ, "์ œ๋ชฉ" ์ด๋ผ๊ณ  ๋˜์–ด์žˆ๋Š” ํ•ญ๋ชฉ๋“ค์€ <h> tag,

"๋ณธ๋ฌธ" ์ด๋ผ๊ณ  ๋˜์–ด์žˆ๋Š” ํ•ญ๋ชฉ๋“ค์€ <p> tag๋กœ

์ด๋ฃจ์–ด ์ง„ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค!

(<h> tag๋Š” head<p> tag๋Š” paragraph์˜ ์•ฝ์–ด๋กœ์จ,

๊ฐ๊ฐ ์ œ๋ชฉ๊ณผ ๋ณธ๋ฌธ์„ ์˜๋ฏธํ•œ๋‹ค๊ณ  ๋ณด์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.)


1. ์ œ๋ชฉ ๊ธ€์ž(ํฐํŠธ) ํฌ๊ธฐ ๋ณ€๊ฒฝ

1.1 <h> tag ๋‚ด๋ถ€์˜ data-ke-size๋ฅผ ๋ณ€๊ฒฝ ํ•ด๋ณด์ž

h2-size26 [ABC]

h2-size24 [ABC]

h2-size20 [ABC]

h2-size16 [ABC]

h2-size12 [ABC]

h2-size4 [ABC]

 

<h> tag ๋‚ด๋ถ€์˜ data-ke-size๋ฅผ ๋ณ€๊ฒฝํ•œ ์ฝ”๋“œ

 

โ–ถ ํฐํŠธ ํฌ๊ธฐ์˜ ์œ ์˜๋ฏธํ•œ ๋ณ€ํ™”๋Š” ์—†์Šต๋‹ˆ๋‹ค

 

h2 tag๋‚ด๋ถ€์˜ data-ke-size ๋Š”

HTML์˜ ๊ธฐ๋ณธ attribute๊ฐ€ ์•„๋‹Œ,

ํ‹ฐ์Šคํ† ๋ฆฌ์—์„œ ์ž„์˜๋กœ ๋งŒ๋“  ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค.

์ด ๋•Œ๋ฌธ์— ์ž„์˜๋กœ size๋ฅผ ๋ณ€๊ฒฝํ•ด๋„ ๋ณ€ํ™”๊ฐ€ ์—†๋Š” ๊ฒƒ ๊ฐ™์•„์š”.


1.2 ๋‹ค์–‘ํ•œ <h> tag๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด์ž

h1-size26 [ABC]

h2-size26 [ABC]

h5-size26 [ABC]
h6-size26 [ABC]

 

์—ฌ๋Ÿฌ ์ข…๋ฅ˜์˜ <h> tag๋ฅผ ์‚ฌ์šฉํ•œ ์ฝ”๋“œ

 

 

โ–ถ ํฌ๊ธฐ์˜ ๋ณ€ํ™”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค!


HTML์—์„œ <h> tag๋Š”

h1 ๋ถ€ํ„ฐ h6๊นŒ์ง€ ์žˆ์œผ๋ฏ€๋กœ

์›ํ•˜์‹œ๋Š” ํฌ๊ธฐ๋ฅผ ์„ ํƒํ•ด์„œ ์‚ฌ์šฉํ•˜์‹œ๋ฉด ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.


2. ๋ณธ๋ฌธ ๊ธ€์ž(ํฐํŠธ) ํฌ๊ธฐ ๋ณ€๊ฒฝ

2.1 <p> tag ๋‚ด๋ถ€์˜ data-ke-size๋ฅผ ๋ณ€๊ฒฝ ํ•ด๋ณด์ž

size6-100% = ๋ณธ๋ฌธ2

size8-100% =๋ณธ๋ฌธ2

size10-100% = ๋ณธ๋ฌธ2

size12-100% = ๋ณธ๋ฌธ2

size14-100% = ๋ณธ๋ฌธ3

size16-100% = ๋ณธ๋ฌธ2

size18-100% = ๋ณธ๋ฌธ1

size20-100% = ๋ณธ๋ฌธ2

size22-100% = ๋ณธ๋ฌธ2

size24-100% = ๋ณธ๋ฌธ2

 

<p> tag ๋‚ด๋ถ€์˜ data-ke-size ๋ฅผ ๋ณ€๊ฒฝํ•œ ์ฝ”๋“œ

 

size 12/14/18 ์„ ์ œ์™ธํ•˜๊ณ ๋Š”,

๋ชจ๋‘ size์™€ ๊ด€๊ณ„์—†์ด ๋ณธ๋ฌธ2์™€ ๊ฐ™์€ ํฌ๊ธฐ๋กœ

rendering๋˜๋Š” ๊ฒƒ์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ size๋ฅผ ๋ณ€๊ฒฝํ•ด์„œ๋Š” ์›ํ•˜๋Š” ํฌ๊ธฐ๋ฅผ ์–ป์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.


2.2 <p> tag ๋‚ด๋ถ€์˜ style์—์„œ font-size๋ฅผ ๋ณ€๊ฒฝ ํ•ด๋ณด์ž

size18-60%

size18-80%

size18-100% = ๋ณธ๋ฌธ1

size18-150%

size18-200%

size18-250%

size18-300%

size18-400%

 

size12-60%

size12-80%

size12-100% = ๋ณธ๋ฌธ2

size12-150%

size12-200%

size12-250%

size12-300%

size12-400%

size14-40%

size14-60%

size14-80%

size14-100% = ๋ณธ๋ฌธ3

size14-150%

size14-200%

size14-250%

size14-300%

size14-400%

 

<p> tag ๋‚ด๋ถ€์˜ style์—์„œ font-size๋ฅผ ๋ณ€๊ฒฝํ•œ ์ฝ”๋“œ

 

์ด๋Ÿฐ ์‹์œผ๋กœ, ํฌ๊ธฐ๋ฅผ ์›ํ•˜๋Š”๋Œ€๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค!

ํ•˜์ง€๋งŒ, ํ‹ฐ์Šคํ† ๋ฆฌ์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ๋งŒ๋“ค์–ด์ง€๋Š” ๋ณธ๋ฌธ์—์„œ๋Š”

<p> tag ๋‚ด๋ถ€์˜ style์—๋Š” font-size ํ•ญ๋ชฉ์ด ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

 

๋”ฐ๋ผ์„œ, <p> tag ์•ˆ์— ์•„๋ž˜์˜ ์ฝ”๋“œ๋ฅผ ์‚ฝ์ž… ํ•ด ๋ณด์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

style="font-size:200%"

 

์œ ์ตํ•œ ์‹œ๊ฐ„์ด ๋˜์—ˆ๋‚˜์š”?

 

ํ•œ ์ค„์— ์„œ๋กœ ๋‹ค๋ฅธ ํฌ๊ธฐ์˜ ๊ธ€์ž๋ฅผ ์„ž๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ ํฌ์ŠคํŒ…์—์„œ์•Œ์•„๋ณด์•„์š”!

 

๊ทธ๋Ÿผ ์ฆ๊ฑฐ์šด ํฌ์ŠคํŒ… ๋˜์„ธ์š” :)

 

 

 

 

 

 

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

์ฝ”๋”ฉํ•˜๋Š” ๋ชจ์ฃผ๋ถ€์ž…๋‹ˆ๋‹ค!

 

ํ‹ฐ์Šคํ† ๋ฆฌ PC๋ฒ„์ „์—์„œ ๊ธ€์„ ์ž‘์„ฑํ•˜๋‹ค ๋ณด๋ฉด,

ํ‘œ(ํ…Œ์ด๋ธ”) ์™€ ์ฝ”๋“œ ๋ธ”๋Ÿญ์„ ์‚ฝ์ž… ํ•˜๋ฉด ํ•ญ์ƒ ์™ผ์ชฝ์œผ๋กœ ์ •๋ ฌ์ด ๋˜์–ด์žˆ์Šต๋‹ˆ๋‹ค.

 

๋ณผ ๋•Œ ๋งˆ๋‹ค ๋งค์šฐ ๊ฑฐ์Šฌ๋ฆฌ๋Š”๋ฐ, 

๊ฐ€์šด๋ฐ ์ •๋ ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ๋ ค๋“œ๋ฆฌ๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค!

(์ฝ”๋”ฉ์„ ๋ชจ๋ฅด๋Š” ์‚ฌ๋žŒ๋„ ๋”ฐ๋ผํ• ์ˆ˜ ์žˆ์–ด์š” ^-^)

 

ํ‹ฐ์Šคํ† ๋ฆฌ ๊ธ€์“ฐ๊ธฐ๋Š” default๋กœ "๊ธฐ๋ณธ๋ชจ๋“œ" ๋กœ ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ค๋ฅธ์ชฝ ์ƒ๋‹จ์˜ ํ•ด๋‹น ๊ธ€์ž๋ฅผ ํด๋ฆญํ•˜๋ฉด

"HTML" ์ด๋ผ๊ณ  ๋˜์–ด์žˆ๋Š” ๊ฒƒ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์„ ํด๋ฆญํ•ฉ์‹œ๋‹ค.

ํ‹ฐ์Šคํ† ๋ฆฌ ์ƒ๋‹จ ์ค„์— ์œ„์น˜

์ด๊ฒƒ์„ ๋ˆ„๋ฅด๋ฉด ๋งค์šฐ ๋ณต์žกํ•œ ์ฝ”๋“œ๋“ค์ด ๋‚˜์™€ ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์‹ค ์šฐ๋ฆฌ๊ฐ€ ๋ณด๋Š” ๋ชจ๋“  ์ธํ„ฐ๋„ท์˜ ํ™”๋ฉด์€

์ด HTML (Hyper Text Markup Language)๋ผ๋Š” ๊ทœ์น™์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๋”ฐ๋กœ ํ‹ฐ์Šคํ† ๋ฆฌ์—์„œ ํ…Œ์ด๋ธ”์˜ ์ •๋ ฌ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜์ง€ ์•Š๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์—,

HTML์„ ์ง์ ‘ ๋ณ€๊ฒฝํ•  ํ•„์š”๊ฐ€ ์žˆ๋Š” ๊ฒƒ์ด์ง€์š”.

 

์•„๋ž˜์— ์™ผ์ชฝ ์ •๋ ฌ๋˜์–ด ์žˆ๋Š” Table 1 ,

๊ฐ€์šด๋ฐ ์ •๋ ฌ๋˜์–ด ์žˆ๋Š” Table 2 ๋ฅผ

์˜ˆ์‹œ๋กœ ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

 

Table 1 Left alignment
<-- <--

 

Table 2 Center alignment
-> <- -> <-

 

Ctrl + F ๋ฅผ ๋ˆŒ๋Ÿฌ

"table" ์„ ์ž…๋ ฅํ•ด์„œ ๊ฒ€์ƒ‰ ํ•ด ๋ด…์‹œ๋‹ค.

์•„๋ž˜์™€ ๊ฐ™์ด ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๊ฐ€ ๋…ธ๋ž€์ƒ‰์œผ๋กœ ํ‘œ์‹œ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ฒ€์ƒ‰์–ด๋กœ table์„ ์ž…๋ ฅํ•˜์—ฌ table1๊ณผ table2๊ฐ€ ๊ฒ€์ƒ‰ ๋œ ๋ชจ์Šต.

๊ทธ๋Ÿฐ๋’ค, ์•„๋ž˜์˜ ์ฝ”๋“œ๋ฅผ ๋ณต์‚ฌํ•ด

<table ....> ์ฝ”๋“œ ์œ„์— ์‚ฝ์ž… ํ•ด์ฃผ์‹œ๊ณ ,

(์•„๋ž˜ ์ฝ”๋“œ ๋ธ”๋Ÿญ๋„ ์ค‘์•™ ์ •๋ ฌ ๋œ ๊ฒƒ์ž…๋‹ˆ๋‹ค)

<div align="center">

๋‹ค์Œ์˜ ์ฝ”๋“œ๋ฅผ </table> ์ฝ”๋“œ ์•„๋ž˜์— ์‚ฝ์ž… ํ•ด์ฃผ์„ธ์š”

</div>

์ž˜ ์ž…๋ ฅ ํ–ˆ๋‹ค๋ฉด, ์•„๋ž˜ ํ™”๋ฉด๊ณผ ๊ฐ™์ด ๋˜์—ˆ๋Š”์ง€ ํ™•์ธ์„ ํ•œ ๋’ค,

๋‹ค์‹œ "๊ธฐ๋ณธ๋ชจ๋“œ" ๋กœ ๋Œ์•„์˜ต๋‹ˆ๋‹ค.

<div align="center"> ๊ตฌ๋ฌธ์„ <table>์œ„์— ์‚ฝ์ž…, </div> ๊ตฌ๋ฌธ์„ </table> ์•„๋ž˜์— ์‚ฝ์ž… ํ•œ ๋ชจ์Šต

์ž˜ ์ž…๋ ฅ ํ–ˆ๋‹ค๋ฉด, ์ €์˜ ํฌ์ŠคํŠธ์™€ ๊ฐ™์ด ํ‘œ(ํ…Œ์ด๋ธ”)์™€ ์ฝ”๋“œ ๋ธ”๋Ÿญ์ด

์ค‘์•™์— ์œ„์น˜ ํ•ด ์žˆ์„ ๊ฒ๋‹ˆ๋‹ค!

 

์—ฌ๊ธฐ๊นŒ์ง€ HTML๋ฅผ ์ˆ˜์ •ํ•˜์—ฌ ํฌ์ŠคํŒ… ๋‚ด์šฉ์„

๊ฐ€์šด๋ฐ ์ •๋ ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด์•˜์Šต๋‹ˆ๋‹ค.

์˜ค๋Š˜๋„ ์žฌ๋ฏธ์žˆ๋Š” ์ฝ”๋”ฉ ํ•˜์„ธ์š”!


์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์„ ์ƒ์„ฑํ•ด๋ณด์ž (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)์— ์‹คํŒจ ํ–ˆ์„ ํ™•๋ฅ ์ด ๋งค์šฐ ๋†’์Šต๋‹ˆ๋‹ค

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

 

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

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

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

์ฝ”๋”ฉํ•˜๋Š” ๋ชจ์ฃผ๋ถ€ ์ž…๋‹ˆ๋‹ค!

์˜ค๋Š˜๋„ ์ง€๋‚œ ํฌ์ŠคํŒ…์— ์ด์–ด ๋‹ฌ๋ ค๋ด…์‹œ๋‹ค ใ…Žใ…Ž

 

1. GCP์—์„œ ์Šค๋ƒ…์ƒท ์ƒ์„ฑํ•˜๊ธฐ

์ด๋•Œ๊นŒ์ง€ GCP๋กœ ๊ฐ€์ƒ๋จธ์‹ ์„ ๋นŒ๋ฆฌ๊ณ ,

์„œ๋ฒ„๋ฅผ ์˜ฌ๋ ค ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ ๊นŒ์ง€ ํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค.

(์•„๋ž˜ ํฌ์ŠคํŒ… ์ฐธ์กฐ)

https://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-2?category=811869

 

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

SSH(Secure Shell) ์„ ํ†ตํ•ด VM(Virtual Machine)์— ๋‚˜๋งŒ์˜ ์ฝ”๋“œ๋ฅผ ๋„ฃ์–ด ๋ณด์ž VM ์ธ์Šคํ„ด์Šค ์„ธ๋ถ€์ •๋ณด์— ์žˆ๋Š” ์ง๋ ฌ ํฌํŠธ1(์ฝ˜์†”) ์— ๋“ค์–ด๊ฐ€๋ฉด ํ•ด๋‹น ์ธ์Šคํ„ด์Šค๊ฐ€ ์–ด๋–ค ์‹์œผ๋กœ ๋นŒ๋“œ๋˜์—ˆ๋Š”์ง€ ์ƒ์„ธํ•œ ๋‚ด์šฉ์ด ๋‚˜ํƒ€๋‚œ๋‹ค

formicae.tistory.com

 

ํ•˜์ง€๋งŒ ํ…Œ์ŠคํŠธ๋ฅผ ํ–ˆ๋˜ ์„œ๋ฒ„์˜ ๊ทœ๋ชจ  ๊ฐ€ ์ปค์ง€๊ฒŒ ๋˜๋ฉด,

์ด ๋ฐฉ๋ฒ•์„ ๊ณ ์ˆ˜ ํ•  ๋•Œ, ์„œ๋ฒ„๋กœ ์š”์ฒญ ์ด ๋งŽ์•„์งˆ ๊ฒฝ์šฐ

์„œ๋ฒ„๊ฐ€ ๋ฒ„ํ‹ฐ์ง€ ๋ชปํ•˜๊ณ  ์‘๋‹ต ๋ถˆ๊ฐ€ ์ƒํƒœ๊ฐ€ ๋˜์–ด ๋ฒ„๋ฆฝ๋‹ˆ๋‹ค.

์‰ฌ์šด ๋ง๋กœ, ๋‹ค์šด๋˜์–ด ๋ฒ„๋ฆฌ๋Š” ๊ฒƒ์ด์ง€์š”.

 

์ด๋ฅผ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์„œ๋ฒ„๋กœ์˜ ์š”์ฒญ์— ๋”ฐ๋ผ

VM(๊ฐ€์ƒ๋จธ์‹ )์„ ์—ฌ๋Ÿฌ๊ฐœ ๋Š˜๋ ค์ฃผ๊ณ  ↑,

์š”์ฒญ์ด ์—†์„ ๋•Œ์—๋Š” ์ค„์—ฌ์ฃผ๋Š” ↓

๊ด€๋ฆฌํ˜• ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน์„ ์‚ฌ์šฉํ•˜๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค.

 

์ด๋ฅผ ์œ„ํ•ด์„œ ๊ฐ€์žฅ ๋จผ์ € ํ•ด์•ผํ•  ์ผ์€,

์ด์ „ ์ธ์Šคํ„ด์Šค๋ฅผ ํ† ๋Œ€๋กœ ์Šค๋ƒ…์ƒท์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

 


> ์Šค๋ƒ…์ƒท ์ด๋ž€? <

ํŠน์ • ์‹œ๊ฐ„์— ์ €์žฅ ์žฅ์น˜์˜ ์ƒํƒœ๋ฅผ ์ˆœ๊ฐ„์ ์œผ๋กœ ์บก์ณํ•˜์—ฌ

๋ณด์กดํ•˜๊ณ , ๋ฐฑ์—… ์šฉ๋„๋กœ ์‚ฌ์šฉ ํ•˜๋Š” ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค.

์‰ฝ๊ฒŒ ๋งํ•ด, ํœด๋Œ€ํฐ์— ์žˆ๋Š” ์ •๋ณด๋“ค์„ ๊ธฐ์–ตํ•˜๊ธฐ ์œ„ํ•ด์„œ

์บก์ณํ•˜์—ฌ ๊ฐค๋Ÿฌ๋ฆฌ์— ๋„ฃ์–ด๋†“๋Š” ๊ฒƒ ์ฒ˜๋Ÿผ,

์ˆœ๊ฐ„์˜ VM ์ƒํƒœ๋ฅผ ๋‚จ๊ฒจ ๋†“๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

 

์บก์ณํ•˜๋Š” ์†์„ฑ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋งค์ผ ๋˜๋Š” ํŠน์ • ์ฃผ๊ธฐ๋งˆ๋‹ค

์Šค๋ƒ…์ƒท ์ƒ์„ฑ์„ ํ•˜๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅํ•˜์ฃ .

์ถœ์ฒ˜ : https://www.cloudpack.co.kr/portal/ktcloudportal.epc.productintro.snapshot.html


๋จผ์ €, Compute Engine์—์„œ ์Šค๋ƒ…์ƒท์œผ๋กœ ๋“ค์–ด๊ฐ€๋ด…์‹œ๋‹ค.

์ฒซ ํ™”๋ฉด์€ ์•„๋ฌด๊ฒƒ๋„ ์—†์„ํ…Œ๋‹ˆ, ์ƒ์„ฑํ•˜๊ธฐ๋ฅผ ํด๋ฆญํ•ด ๋ด…์‹œ๋‹ค.

์†Œ์Šค ๋””์Šคํฌ์—๋Š” ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด ๋†“์€ VM์„ ์„ ํƒํž™๋‹ˆ๋‹ค.

๋ฆฌ์ „์„ ๊ฒฐ์ •ํ•  ๋•Œ์—๋Š” ์‹ ์ค‘ํ•˜๊ฒŒ ์„ ํƒ์„ ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ์Šค๋ƒ…์ƒท ์ €์žฅ์„ ์œ„ํ•ด ๋นŒ๋ฆฌ๋Š” ์œ„์น˜๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๊ฒƒ์ด์ง€์š”.

๋ฆฌ์ „์„ ๊ฒฐ์ •ํ•˜๋Š” ๊ธฐ์ค€์€ ์•„๋ž˜์˜ ํฌ์ŠคํŒ…์„ ์ฐธ์กฐํ•ฉ์‹œ๋‹ค!

formicae.tistory.com/entry/%EC%84%9C%EB%B2%84%EC%9D%98-%EC%9A%94%EC%B2%AD%EA%B3%BC-%EC%9D%91%EB%8B%B5%EC%9D%98-%EA%B4%80%EC%A0%90%EC%97%90%EC%84%9C-%EB%B3%B4%EB%8A%94-%EB%A6%AC%EC%A0%84Region-%EB%A9%80%ED%8B%B0-%EB%A6%AC%EC%A0%84

 

์„œ๋ฒ„์˜ ์š”์ฒญ๊ณผ ์‘๋‹ต์˜ ๊ด€์ ์—์„œ ๋ณด๋Š” ๋ฆฌ์ „(Region), ๋ฉ€ํ‹ฐ ๋ฆฌ์ „

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

formicae.tistory.com

์Šค๋ƒ…์ƒท์„ ์ƒ์„ฑํ–ˆ๋‹ค๋ฉด, ์•„๋ž˜์™€ ๊ฐ™์ด ๋…น์ƒ‰ ์ฒดํฌํ‘œ์‹œ๊ฐ€ ๋œฐ ๊ฒƒ์ด๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด ์ด์ œ ์ด๋ฏธ์ง€๋ฅผ ๋งŒ๋“ค ์ฐจ๋ก€์ž…๋‹ˆ๋‹ค.


2. GCP์—์„œ ์ด๋ฏธ์ง€ ์ƒ์„ฑํ•˜๊ธฐ


> ์ด๋ฏธ์ง€๋ž€ ๋ฌด์—‡์ธ๊ฐ€? <

์ด๋ฏธ์ง€๋Š” ๋””์Šคํฌ๋‚˜ ์Šค๋ƒ…์ƒท์„ ํ…œํ”Œ๋ฆฟํ™” ํ•œ ๊ฒƒ์œผ๋กœ

VM์— ๋ฐ”๋กœ ์˜ฌ๋ ค ์„œ๋ฒ„ ์‚ฌ์šฉ์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก 

์ž„์‹œ ๋””์Šคํฌ์™€ ๊ฐ™์€ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

 

๊ฐ€์กฑ๊ณผ ํ•จ๊ป˜์žˆ๋Š” ์‹œ๊ฐ„์„ ๊ธฐ์–ตํ•˜๊ณ  ์‹ถ์–ด์„œ

์‚ฌ์ง„์„ ์ฐ์–ด๋†“์€ ๊ฒƒ์ด ์Šค๋ƒ…์ƒท์ด๊ณ ,

๊ทธ ์Šค๋ƒ…์ƒท์„ ๊ฐ€์กฑ๋“ค์ด ๋ณด๊ณ 

๋™์ผํ•œ ๊ธฐ์–ต์„ ๋– ์˜ฌ๋ฆฌ๋Š” ๊ฒƒ์ด ๋ฐ”๋กœ ์ด๋ฏธ์ง€์ธ ๊ฒƒ์ด์ฃ .


์•„๋ž˜์™€ ๊ฐ™์ด ์ด๋ฏธ์ง€๋ฅผ ๋งŒ๋“ค๋ฉด ๋˜๋Š”๋ฐ, 

๊ณ„์—ด์„ ์ถ”๊ฐ€ํ•˜๊ฒŒ ๋˜๋ฉด ์ธ์Šคํ„ด์Šค ๊ทธ๋ฃน ์„ค์ •๋•Œ ํŽธ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ, ํ‚ค&๊ฐ’ Pair ์„ค์ •์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ž…๋ ฅํ•˜๋˜

ํ•„์ˆ˜๊ฐ€ ์•„๋‹ˆ๋ฏ€๋กœ ๊ทธ๋ƒฅ ๋„˜์–ด๊ฐ€๋„ ์ƒ๊ด€์—†์Šต๋‹ˆ๋‹ค.

์ด๋ฏธ์ง€๋Š” ์กด์žฌํ•˜๋Š” ๊ฒƒ ๋งŒ์œผ๋กœ๋„ ๋น„์šฉ์ด ๋‚˜๊ฐ€๋‹ˆ, ์ตœ์†Œํ•œ์œผ๋กœ๋งŒ ๋งŒ๋“ค์–ด ๋†“์ž.

์•„๋ž˜์™€ ๊ฐ™์ด ์—ฌ๊ธฐ๊นŒ์ง€ ๋‹ค ๋งŒ๋“ค์—ˆ๋‹ค๋ฉด,

์ธ์Šคํ„ด์Šค ํ…œํ”Œ๋ฆฟ์„ ๋งŒ๋“ค์–ด ๋ณผ ์ฐจ๋ก€์ž…๋‹ˆ๋‹ค.


3. GCP์—์„œ ์ธ์Šคํ„ด์Šค ํ…œํ”Œ๋ฆฟ ๋งŒ๋“ค๊ธฐ

์ธ์Šคํ„ด์Šค ํ…œํ”Œ๋ฆฟ์„ ๋งŒ๋“œ๋Š” ๊ณผ์ •์€

์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“œ๋Š” ๊ณผ์ •๊ณผ ๋น„์Šทํ•ฉ๋‹ˆ๋‹ค!

๋‹ค๋ฅธ ์ ์ด ์žˆ๋‹ค๋ฉด, ๋ถ€ํŒ… ๋””์Šคํฌ ๋Œ€์‹ 

์œ„์—์„œ ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด ๋‘” ์ด๋ฏธ์ง€๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

 

๋จธ์‹  ๊ตฌ์„ฑ์€ ํ•„์š”ํ•œ ์„ฑ๋Šฅ์„ ๊ณ ๋ คํ•˜์—ฌ ์„ ํƒ ํ•ด ์ค์‹œ๋‹ค.

์„ฑ๋Šฅ์ด ๋†’์„์ˆ˜๋ก ๋” ๋น„์Œ‰๋‹ˆ๋‹ค..ใ…Žใ…Ž

 

๋ถ€ํŒ… ๋””์Šคํฌ์—์„œ "๋ณ€๊ฒฝ"์„ ํด๋ฆญํ•˜๊ณ ,

"๋งž์ถค ์ด๋ฏธ์ง€"๋ฅผ ๋ˆŒ๋Ÿฌ ๋งŒ๋“ค์–ด ๋†“์€ ์ด๋ฏธ์ง€๋ฅผ ์„ ํƒํ•ฉ์‹œ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“ค ๋•Œ์™€ ๋™์ผํ•˜๊ฒŒ

์•ก์„ธ์Šค ๋ฒ”์œ„์™€ ๋ฐฉํ™”๋ฒฝ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

 

 

๊ทธ๋ฆฌ๊ณ  ๊ฐ€์žฅ ์ค‘์š”ํ•œ.. ์‹œ์ž‘ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฝ์ž… ํ•ด ์ค„๊ฑฐ์—์š”

 

์‹œ์ž‘ ์Šคํฌ๋ฆฝํŠธ๋ž€, ์ธ์Šคํ„ด์Šค ํ…œํ”Œ๋ฆฟ์ด

VM์˜ ๋ฉ”๋ชจ๋ฆฌ์— ๋กœ๋“œ๋˜์—ˆ์„ ๋•Œ ์ฒ˜์Œ์œผ๋กœ ์‹คํ–‰ํ•  ์ฝ”๋“œ๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์ „ ํฌ์ŠคํŒ…์—์„œ SSH๋กœ ๋“ค์–ด๊ฐ€ CentOS์šฉ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•œ ๊ฒƒ์ด ๊ธฐ์–ต ๋‚˜์‹œ๋‚˜์š”?

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-2?category=815536

 

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

SSH(Secure Shell) ์„ ํ†ตํ•ด VM(Virtual Machine)์— ๋‚˜๋งŒ์˜ ์ฝ”๋“œ๋ฅผ ๋„ฃ์–ด ๋ณด์ž 1. ์™ธ๋ถ€ IP ์ฃผ์†Œ ๊ณ ์ • ์˜ˆ์•ฝํ•˜๊ธฐ VM ์ธ์Šคํ„ด์Šค ์„ธ๋ถ€์ •๋ณด์— ์žˆ๋Š” ์ง๋ ฌ ํฌํŠธ1(์ฝ˜์†”) ์— ๋“ค์–ด๊ฐ€๋ฉด ํ•ด๋‹น ์ธ์Šคํ„ด์Šค๊ฐ€ ์–ด๋–ค ์‹์œผ๋กœ ๋นŒ๋“œ๋˜

formicae.tistory.com

ํŒŒ๋ž€์ƒ‰์œผ๋กœ "๊ด€๋ฆฌ, ๋ณด์•ˆ, ๋””์Šคํฌ, ๋„คํŠธ์›Œํ‚น, ๋‹จ๋… ์ž„๋Œ€" ๋ผ๊ณ  ์“ฐ์—ฌ์žˆ๋Š”

์ ‘์–ด๋‘๊ธฐ ํ‘œ์‹œ๋ฅผ ํด๋ฆญํ•˜๊ฒŒ ๋˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ๋‚˜์˜ต๋‹ˆ๋‹ค.

์‹œ์ž‘ ์Šคํฌ๋ฆฝํŠธ์— ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•ด ์ค์‹œ๋‹ค.

screen ์„ ์ƒ์„ฑํ•˜์—ฌ my_server๋ผ๋Š” ์ด๋ฆ„์„ ๋ถ€์—ฌํ•˜๊ณ ,

gcp_example์ด๋ผ๋Š” ํด๋”๋กœ ์ด๋™ํ•ด, ์„œ๋ฒ„๋ฅผ ๊ธฐ๋™์‹œํ‚ค๋Š” ์ฝ”๋“œ ์ž…๋‹ˆ๋‹ค.

#!/bin/bash
cd gcp_example
screen -dmS my_server bash -c 'npm start'

 

์‹œ์ž‘ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๊ผญ ์ž…๋ ฅํ•˜์„ธ์š”!!

์—ฌ๊ธฐ๊นŒ์ง€ ๋งŒ๋“ค์—ˆ๋‹ค๋ฉด, ์•„๋ž˜์™€ ๊ฐ™์€ ํ™”๋ฉด์ด ๋‚˜ํƒ€๋‚  ๊ฑฐ์—์š”

๊ทธ๋Ÿผ ๋‹ค์Œ ํฌ์ŠคํŒ…์—์„œ ๊ทธ๋ฃน ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“ค์–ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค!

์˜ค๋Š˜๋„ ์žฌ๋ฏธ์žˆ๋Š” ์ฝ”๋”ฉ ํ•˜์„ธ์š” :)


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

์ฝ”๋”ฉํ•˜๋Š” ๋ชจ์ฃผ๋ถ€ ์ž…๋‹ˆ๋‹ค!

์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š”, ์„œ๋ฒ„์˜ ์š”์ฒญ๊ณผ ์‘๋‹ต์ด ์–ด๋–ค ์‹์œผ๋กœ ์ด๋ฃจ์–ด์ง€๋Š”์ง€ ์ดํ•ดํ•˜๊ณ ,

๊ฐ€์ƒ๋จธ์‹ ์„ ๋นŒ๋ฆฌ๊ฑฐ๋‚˜, ์Šค๋ƒ…์ƒท, ๋””์Šคํฌ๋ฅผ ์ƒ์„ฑํ•  ๋•Œ

๊ฒฐ์ •ํ•˜๋Š” ๋ฆฌ์ „๊ณผ ๋ฉ€ํ‹ฐ๋ฆฌ์ „์„ ์•Œ์•„ ๋ณผ ๊ฑฐ์—์š”. 

 

1. ์ธํ„ฐ๋„ท ๊ฒ€์ƒ‰์„ ํ•  ๋•Œ ์ผ์–ด๋‚˜๋Š” ํ˜„์ƒ๋“ค

์‰ฌ์šด ์˜ˆ๋กœ, ์šฐ๋ฆฌ๊ฐ€ ๊ตฌ๊ธ€์ฐฝ์— ๊ฒ€์ƒ‰์„ ํ•  ๋•Œ

์ผ์–ด๋‚˜๋Š” ํ˜„์ƒ๋“ค์— ๋Œ€ํ•ด ์ˆœ์„œ๋Œ€๋กœ ์ƒ๊ฐํ•ด ๋ด…์‹œ๋‹ค.


1. ์šฐ๋ฆฌ๊ฐ€ ๊ตฌ๊ธ€์— "formicae" ๋ผ๊ณ  ๊ฒ€์ƒ‰์„ ํ•ฉ๋‹ˆ๋‹ค.

 

2.  www.google.com์ด๋ผ๋Š” ๋„๋ฉ”์ธ๊ณผ 

์—ฐ๊ฒฐ๋œ ์„œ๋ฒ„์—  "formicae"๋ผ๋Š” ๋ฌธ์ž๋กœ

๊ฒ€์ƒ‰์„ ํ•ด ๋‹ฌ๋ผ๋Š” ์š”์ฒญ์ด ๋ณด๋‚ด์ง‘๋‹ˆ๋‹ค.

(www๋Š” ๋„๋ฉ”์ธ๊ณผ ์—ฐ๊ฒฐ๋œ ์„œ๋ฒ„์˜ ์œ„์น˜๋ฅผ ์•Œ๊ณ ์žˆ์Šต๋‹ˆ๋‹ค.)

 

3. ๊ตฌ๊ธ€์˜ ์„œ๋ฒ„์— ํ•ด๋‹น ์š”์ฒญ์ด ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค.

 

4. ๊ตฌ๊ธ€์˜ ์„œ๋ฒ„์—์„œ "formicae" ๊ฒ€์ƒ‰์„ ํ•ฉ๋‹ˆ๋‹ค.

 

5. ๊ตฌ๊ธ€์˜ ์„œ๋ฒ„์—์„œ ๊ฒ€์ƒ‰ ๋กœ์ง์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

 

6. ๊ตฌ๊ธ€์˜ ์„œ๋ฒ„์—์„œ ๋กœ์ง์ด ์ข…๋ฃŒ๋˜์—ˆ์„ ๋•Œ

์ˆ˜ํ–‰๋˜๋Š” ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

 

7. ๊ฒฐ๊ณผ๋ฅผ ๋‹ค์‹œ ์‚ฌ์šฉ์ž๊ฐ€ ๋ณด๋Š” html์— ๊ทธ๋ ค์ฃผ๊ธฐ ์œ„ํ•ด ์ค€๋น„ํ•ฉ๋‹ˆ๋‹ค.

 

8. ์•„๋ž˜์™€ ๊ฐ™์€ url๋กœ ๋ฆฌ๋‹ค์ด๋ ‰์…˜ ๋˜๋ฉด์„œ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.
www.google.com/search?bih=914&biw=1569&hl=ko&sxsrf=ALeKk030NxYM5qTpzTeZYEGOtc9ueJ0JtQ%3A1602953536910&source=hp&ei=QCGLX_TdNIn7wAP0hZOgDw&q=formicae&oq=formicae&gs_lcp=CgZwc3ktYWIQAzICCAAyAggAMgIIADICCAAyAggAMgIIADIECAAQCjICCAAyAggAMgUIABDLAToFCAAQsQM6BwgAEBQQhwI6CAgAELEDEIMBOgQIIxAnOgcIIxDqAhAnOgQIABBDOgcIABCxAxBDUM4GWKEXYJMYaANwAHgAgAGCAYgBhgmSAQQwLjEwmAEAoAEBqgEHZ3dzLXdperABCg&sclient=psy-ab&ved=0ahUKEwj0_Z-hi7zsAhWJPXAKHfTCBPQQ4dUDCAc&uact=5


์ด๊ฒŒ ๋‹ค ๋ฌด์Šจ ๋ง์ธ๊ฐ€ ์‹ถ๊ฒ ์ง€๋งŒ, ์šฐ๋ฆฌ๊ฐ€ ์ธํ„ฐ๋„ท์„ ์‚ฌ์šฉํ•˜๋Š”

๋ชจ๋“  ํ–‰์œ„๋“ค์€ ์š”์ฒญ๊ณผ ์‘๋‹ต์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ ,

๊ทธ ์š”์ฒญ์— ์‘๋‹ตํ•˜๋Š” ์„œ๋ฒ„๋“ค์ด ํ•ญ์ƒ ์กด์žฌํ•ด์„œ,

 

๊ฒฐ๊ณผ๋ฌผ์„ www(world wide web)๋ฅผ ํ†ตํ•ด ์ „๋‹ฌํ•˜์—ฌ

html์ด๋ผ๋Š” ํฌ๋งท์„ ํ†ตํ•ด ์šฐ๋ฆฌ๊ฐ€ ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ

๋งŒ๋“ค์–ด ์ค€๋‹ค๋Š”๊ฒƒ์„ ํ•ญ์ƒ ๋ช…์‹ฌํ•ฉ์‹œ๋‹ค!


2. ๋ฆฌ์ „๊ณผ ๋ฉ€ํ‹ฐ ๋ฆฌ์ „

์œ„์˜ ์˜ˆ์‹œ์™€ ๊ฐ™์ด ๊ตณ์ด ๊ฒ€์ƒ‰์ด ์•„๋‹ˆ๋”๋ผ๋„,

์ธ์Šคํ„ด์Šค ๋ผ๋ฆฌ์˜ ํ†ต์‹ ์ด๋‚˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€์˜ ํ†ต์‹ ๋„

์‘๋‹ต๊ณผ ์š”์ฒญ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๋”ฐ๋ผ์„œ, VM์ด๋‚˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋“ฑ์˜ 

์œ„์น˜๋ฅผ ๊ฒฐ์ •ํ•  ๋•Œ์—๋Š” ์‹ ์ค‘ํ•˜๊ฒŒ ์„ ํƒ์„ ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

 

๊ตฌ๊ธ€์—์„œ ๋นŒ๋ฆด ์ˆ˜ ์žˆ๋Š”

์•„์‹œ์•„, ๋ถ๋ฏธ์˜ ์„œ๋ฒ„๋Š” ๋Œ€์ถฉ ์•„๋ž˜์™€ ๊ฐ™์ด ๋ถ„ํฌํ•ฉ๋‹ˆ๋‹ค.

(๋‚จ๋ฏธ, ์œ ๋Ÿฝ ์„œ๋ฒ„๋„ ์žˆ์ง€๋งŒ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค)

๊ทธ๋ ‡๋‹ค๋ฉด ๋ฆฌ์ „๊ณผ ๋ฉ€ํ‹ฐ๋ฆฌ์ „์ด๋ผ๋Š” ๊ฒƒ์€ ๋ฌด์—‡์ผ๊นŒ์š”?

 

๋ฉ€ํ‹ฐ ๋ฆฌ์ „์€, ๋Œ€๋ฅ™์„ ์„ ํƒํ•˜๋ฉด ์ง€์—ญ์„ ๋ถ„์‚ฐํ•˜์—ฌ ์ €์žฅ์„ ํ•ด์ค๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ๋“ค์–ด, ์•„์‹œ์•„๋ฅผ ์„ ํƒํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด

์—ฌ๋Ÿฌ๊ฐœ์˜ ๋ฆฌ์ „์— ๋ถ„์‚ฐ๋˜๋„๋ก ์ €์žฅ์„ ํ•ด ์ค๋‹ˆ๋‹ค.

< ๋ฉ€ํ‹ฐ ๋ฆฌ์ „ - Asia >

โŠ™ asia-east1-a

โŠ™ asia-northeast1-a

โŠ™ asia-northeast2-a

 

๋ฐ˜๋Œ€๋กœ, ์ผ๋ฐ˜ ๋ฆฌ์ „์€ ์ง€์—ญ ํ•˜๋‚˜์— ๋ถ„์‚ฐํ•˜์—ฌ ์ €์žฅํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, asia-east1๋ฅผ ์„ ํƒํ–ˆ๋‹ค๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ์ €์žฅ ๋ฉ๋‹ˆ๋‹ค.

<๋ฆฌ์ „ - Asia-east1 >

โŠ™ asia-east1-a

โŠ™ asia-east1-b

โŠ™ asia-east1-c

๋ฉ€ํ‹ฐ ๋ฆฌ์ „๊ณผ ๋ฆฌ์ „ ์ค‘ ์–ด๋Š ๊ฒƒ์„ ์„ ํƒํ•˜๋Š๋ƒ์— ๋”ฐ๋ผ,

์ง€์—ญ์— ๋”ฐ๋ผ ๋‹ค๋ฅด์ง€๋งŒ ์‘๋‹ต ์†๋„์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‘๋‹ต ์†๋„์— ์˜ํ–ฅ์„ ์ฃผ๋Š” ๊ฒƒ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์š”์ธ๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค.


โ—† ์„œ๋ฒ„์— ์š”์ฒญ์„ ํ•˜๋Š” ํด๋ผ์ด์–ธํŠธ์˜ ์œ„์น˜ (A)

 

โ—† ์‘๋‹ต์„ ํ•˜๋Š” ์„œ๋ฒ„์˜ ์œ„์น˜ (B)

 

โ—† ์„œ๋ฒ„์™€ ํ†ต์‹ ํ•˜๋Š” ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค์˜ ์œ„์น˜ (C)


A ์œ„์น˜๋Š” ์•„์‹œ์•„, ๋ถ๋ฏธ, ์œ ๋Ÿฝ ๋‹ค์–‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

B ์œ„์น˜๋Š” ์ด์ „ ํฌ์ŠคํŒ…์—์„œ ๋งŒ๋“ค์—ˆ๋˜ ์ธ์Šคํ„ด์Šค์˜

์œ„์น˜๋กœ์จ, ํ•œ๋ฒˆ ์ƒ์„ฑํ•˜๋ฉด ๊ณ ์ •์ด ๋˜์–ด์žˆ์–ด์š”.

C ์œ„์น˜ ๋˜ํ•œ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ๊ฒฐ์ •ํ•˜๋ฏ€๋กœ

๊ณ ์ •์ด ๋˜์–ด์žˆ๋Š” ๊ฒƒ์ด์ฃ .

 

ํŠน์ • ์‚ฌ๋žŒ์ด "formicae"๋ผ๊ณ  ๊ฒ€์ƒ‰ํ•˜์—ฌ

๊ฒ€์ƒ‰ ์—”์ง„๊ณผ ๊ฐ™์€ ๋กœ์ง์ด ์‹คํ–‰ ๋  ๋•Œ,

์„œ๋ฒ„์—์„œ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค๋ฅผ ์ฐธ๊ณ ํ•ด์•ผ ํ•œ๋‹ค๋ฉด

A -> B -> C ๋ฐฉํ–ฅ์œผ๋กœ ์š”์ฒญ์ด ์ด๋ฃจ์–ด์ง€๊ณ ,

C -> B -> A ๋ฐฉํ–ฅ์œผ๋กœ ์‘๋‹ต์ด ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค.

 

๋”ฐ๋ผ์„œ A, B, C๊ฐ„์˜ ๊ฑฐ๋ฆฌ๋Š” ๊ฐ€๊นŒ์šด ๊ฒƒ์ด ์ข‹์œผ๋ฏ€๋กœ

๋ฆฌ์ „์„ ์„ ํƒํ•  ๋•Œ ๋ณธ์ธ์ด ๋งŒ๋“ค ์„œ๋น„์Šค๊ฐ€

์ฃผ๋กœ ์–ด๋””์—์„œ ์‚ฌ์šฉ์ด ๋  ๊ฒƒ์ธ์ง€๋ฅผ ์ž˜ ํŒŒ์•…ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค!

 

TIP.

๋น„์šฉ์ ์ธ ์ธก๋ฉด์„ ๊ณ ๋ คํ•˜๋ฉด

์—ฌ๋Ÿฌ ๋ฆฌ์ „์— ์ €์žฅํ•˜๋Š” ๋ฆฌ์†Œ์Šค๊ฐ€ ๋“œ๋Š” ๋งŒํผ

๋ฉ€ํ‹ฐ๋ฆฌ์ „์ด ๋ฆฌ์ „๋ณด๋‹ค ๋” ๋น„์Œ€ ์ˆ˜ ๋ฐ–์— ์—†์Šต๋‹ˆ๋‹ค.

 

์—ฌ๊ธฐ๊นŒ์ง€ ๋ฆฌ์ „๊ณผ ๋ฉ€ํ‹ฐ๋ฆฌ์ „์— ๋Œ€ํ•œ ๋‚ด์šฉ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ ํฌ์ŠคํŒ…์—์„œ ๋˜ ๋งŒ๋‚˜์š” :)

'Coding > Network' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[๋„คํŠธ์›Œํฌ] VPC(Virtual private cloud)์— ๋Œ€ํ•˜์—ฌ  (3) 2020.10.31

SSH(Secure Shell) ์„ ํ†ตํ•ด VM(Virtual Machine)์— ๋‚˜๋งŒ์˜ ์ฝ”๋“œ๋ฅผ ๋„ฃ์–ด ๋ณด์ž


1. ์™ธ๋ถ€ IP ์ฃผ์†Œ ๊ณ ์ • ์˜ˆ์•ฝํ•˜๊ธฐ

Virtual Machine ์ธ์Šคํ„ด์Šค๊ฐ€ ์ƒ์„ฑ๋œ ๋ชจ์Šต๊ณผ ์„ธ๋ถ€์ •๋ณด

VM ์ธ์Šคํ„ด์Šค ์„ธ๋ถ€์ •๋ณด์— ์žˆ๋Š” ์ง๋ ฌ ํฌํŠธ1(์ฝ˜์†”) ์— ๋“ค์–ด๊ฐ€๋ฉด

ํ•ด๋‹น ์ธ์Šคํ„ด์Šค๊ฐ€ ์–ด๋–ค ์‹์œผ๋กœ ๋นŒ๋“œ๋˜์—ˆ๋Š”์ง€ ์ƒ์„ธํ•œ ๋‚ด์šฉ์ด ๋‚˜์˜ต๋‹ˆ๋‹ค.

 

๋งŒ์•ฝ ์ธ์Šคํ„ด์Šค๊ฐ€ ์ œ๋Œ€๋กœ ์ƒ์„ฑ๋˜์—ˆ์ง€๋งŒ, ์›ํ•˜๋Š”๋Œ€๋กœ ๋™์ž‘ํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด

์ฝ˜์†”์— ๋“ค์–ด๊ฐ€์„œ ํžŒํŠธ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”!

 

VPC ๋„คํŠธ์›Œํฌ ์•ˆ์˜ "์™ธ๋ถ€ IP ์ฃผ์†Œ" ์— ๋‚˜์™€์žˆ๋Š” ์„ธ๋ถ€ ์‚ฌํ•ญ

์™ธ๋ถ€ ์ฃผ์†Œ ์„ค์ •์„ ์œ„ํ•ด ๋„คํŠธ์›Œํ‚น - VPC ๋„คํŠธ์›Œํฌ - ์™ธ๋ถ€ IP์ฃผ์†Œ๋กœ ๋“ค์–ด๊ฐ€ ๋ด…์‹œ๋‹ค.

์œ„์—์„œ instance-1์˜ ๋‚ด๋ถ€ IP์™€ ๋”๋ถˆ์–ด ์™ธ๋ถ€ ์ฃผ์†Œ๊ฐ€ ๋‚˜ํƒ€๋‚˜ ์žˆ๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์–ด์š”.

ํ•˜์ง€๋งŒ ์ตœ์ดˆ VM์„ ์ƒ์„ฑํ•˜๊ฒŒ ๋˜๋ฉด, ํ•ด๋‹น ์™ธ๋ถ€ ์ฃผ์†Œ๋Š” ์ž„์‹œ๋กœ ์„ค์ • ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ฆ‰, ํ…Œ์ŠคํŠธ๋ฅผ ํ•˜๋Š” ๋™์•ˆ ์ด ์ž„์‹œ ์ฃผ์†Œ๊ฐ€ ์‚ฌ๋ผ์งˆ ์ˆ˜๋„ ์žˆ๋Š” ๊ฒ๋‹ˆ๋‹ค.

 

๋งŒ์•ฝ ๋™์ผํ•œ IP๋ฅผ ์œ ์ง€์‹œํ‚ค๊ณ  ์‹ถ๋‹ค๋ฉด ๊ณ ์ •์œผ๋กœ ๋ฐ”๊พธ๋Š” ๊ฒƒ๋„ ์ข‹์€ ๋ฐฉ๋ฒ•์ด์—์š”.

ํ•˜์ง€๋งŒ https ์ธ์ฆ์„ ํ•˜์ง€ ์•Š์€ http๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค๋ฉด, ์™ธ๋ถ€ ํ•ดํ‚น์— ์ทจ์•ฝํ•˜๋‹ค๋Š” ๊ฒƒ์„ ๊ธฐ์–ตํ•ฉ์‹œ๋‹ค.

์ด๋ฒˆ ์‹œ๋ฆฌ์ฆˆ์—์„œ๋Š” ์ด๊ฒƒ์„ ๊ณ ์ •์œผ๋กœ ๋ณ€๊ฒฝํ•ด์„œ ์‚ฌ์šฉํ•ด ๋ณผ ๊ฑฐ์—์š”.


2. SSH ์—์„œ CentOs ํŒจํ‚ค์ง€ ์„ค์น˜

๋‹ค์‹œ, VM ์ธ์Šคํ„ด์Šค๋กœ ๋Œ์•„๊ฐ€์„œ ์—ฐ๊ฒฐ - SSH๋ฅผ ํด๋ฆญ ํ•ด๋ด…์‹œ๋‹ค.

Secure shell์— ์ง„์ž… ํ•œ ๋ชจ์Šต.

์ƒ์„ฑ ์งํ›„์—๋Š” ์•„๋ฌด๋Ÿฐ ํŒŒ์ผ๋„ ์กด์žฌํ•˜์ง€ ์•Š์•„์š”.

๋จผ์ €, ์•„๋ž˜์˜ ๋ช…๋ น์–ด๋ฅผ ํ„ฐ๋ฏธ๋„์— ์ฐจ๋ก€์ฐจ๋ก€๋กœ ์ž…๋ ฅํ•ด๋ด…์‹œ๋‹ค.

sudo -s
yum install -y
yum install npm
yum install git
yum install screen

์ด๋กœ ์ธํ•ด ํ„ฐ๋ฏธ๋„์—์„œ ๊ถŒํ•œ (์ตœ์ƒ์œ„ ๊ถŒํ•œ)์„ ํš๋“ํ•˜๊ณ ,

yum์ด๋ผ๋Š” centos์—์„œ ์‚ฌ์šฉํ•˜๋Š” ํŒจํ‚ค์ง€ ์„ค์น˜ ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด์š”.

๋˜ํ•œ, yum์„ ํ†ตํ•ด npm๊ณผ screen ๊ณผ git ์ด๋ผ๋Š” ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

 


> npm ์ด๋ž€? <

(Node Package Manager)

Javascript ์ฝ”๋“œ๋“ค์„ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด Node JS๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๋ฐ,

์ด Node JS์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํŒจํ‚ค์ง€๋“ค์„ ๊ด€์žฅํ•˜๋Š” ๋„๊ตฌ์ž…๋‹ˆ๋‹ค.

npm install xx ๋ฅผ ํ†ตํ•ด Node JS์—์„œ ์‚ฌ์šฉํ•  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋“ค์„

์™ธ๋ถ€์—์„œ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ์–ด์š”!


> screen ์ด๋ž€ ? <

๋‹จ์ˆœํžˆ ๋งํ•˜์ž๋ฉด, ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ฐฝ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ํŒจํ‚ค์ง€.

ํ„ฐ๋ฏธ๋„์—์„œ ์ถ”๊ฐ€์ ์ธ ์ฐฝ์„ ๋งŒ๋“ค์–ด, ํ„ฐ๋ฏธ๋„์„ ์ข…๋ฃŒํ•˜๋”๋ผ๋„

์ฝ”๋“œ๊ฐ€ ๊ณ„์†ํ•ด์„œ ์‹คํ–‰๋  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.


> Git ์ด๋ž€? <

GitHub์— ์˜ฌ๋ ค๋†“์€ ๋ณธ์ธ์˜ ์ฝ”๋“œ๋‚˜ ์˜คํ”ˆ์†Œ์Šค๋“ค์„

๋ถˆ๋Ÿฌ์˜ค๊ฑฐ๋‚˜ ์—…๋ฐ์ดํŠธ ํ•  ์ˆ˜ ์žˆ๋Š” ํŒจํ‚ค์ง€.



3. GitHub์˜ ์ฝ”๋“œ๋ฅผ ๊ฐ€์ ธ์™€ ์„ค์น˜ํ•˜๊ธฐ

GitHub ๋“ฑ์— ๋ณธ์ธ์˜ ์ฝ”๋“œ๊ฐ€ ์žˆ๋Š” ์‚ฌ๋žŒ๋“ค์€ clone์œผ๋กœ ๋ถˆ๋Ÿฌ์˜ต์‹œ๋‹ค.

๋งŒ์•ฝ GitHub์˜ ์‚ฌ์šฉ์ด ์ฒ˜์Œ์ด๋ผ๋ฉด, ์ผ๋‹จ ํšŒ์›๊ฐ€์ž…๋ถ€ํ„ฐ ํ•ด์•ผํ•ด์š”.

์ฝ”๋“œ๊ฐ€ ์—†๋Š” ์‚ฌ๋žŒ๋“ค์€, ํ„ฐ๋ฏธ๋„์— ์•„๋ž˜์˜ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•ด๋ด…์‹œ๋‹ค.

git clone https://github.com/formicae/gcp_example.git
ls
cd gcp_example

์ •์ƒ์ ์œผ๋กœ ์™„๋ฃŒ๋˜๋ฉด ์œ„์™€ ๊ฐ™์€ ๊ทธ๋ฆผ์ด ํ‘œ์‹œ๋  ๊ฒƒ์ด๋‹ค.

์—ฌ๊ธฐ๊นŒ์ง€ ์™„๋ฃŒ๋˜์—ˆ๋‹ค๋ฉด, ์•„๋ž˜์˜ ๋ช…๋ น์–ด๋ฅผ ํ„ฐ๋ฏธ๋„์— ์ž…๋ ฅํ•ด๋ด…์‹œ๋‹ค

screen
screen -ls

screen์„ ํ†ตํ•ด์„œ ๋˜ ํ•˜๋‚˜์˜ ์ฐฝ์„ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ ๋’ค, ์ด ํ™œ์„ฑํ™”๋œ screen์„ ํ™•์ธํ•˜๋Š” ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด

์•„๋ž˜์™€ ๊ฐ™์€ ๊ฒฐ๊ณผ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์„ ๊ฑฐ์—์š”.

๋งˆ์ง€๋ง‰์œผ๋กœ, ์•„๋ž˜์˜ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•ด ์ฝ”๋“œ๋ฅผ ์„œ๋ฒ„์—์„œ ๊ตฌ๋™์‹œ์ผœ ๋ด…์‹œ๋‹ค!

npm start

์œ„ ๊ทธ๋ฆผ์˜ ๋ฌธ๊ตฌ๊ฐ€ ๋‚˜์˜ค๋ฉด, ์ œ๋Œ€๋กœ ์‹คํ–‰์ด ๋˜๊ณ  ์žˆ๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค.

์ด์ œ SSH ํ„ฐ๋ฏธ๋„์„ ๋•์‹œ๋‹ค.

๋งŒ์•ฝ, Screen์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด SSH ํ„ฐ๋ฏธ๋„์„ ๋„๋Š” ์ˆœ๊ฐ„

์„œ๋ฒ„์— ์˜ฌ๋ฆฐ ์ฝ”๋“œ๋Š” ๊ทธ๋Œ€๋กœ ๋Š๊ฒจ๋ฒ„๋ฆฝ๋‹ˆ๋‹ค.

์ด ๋•Œ๋ฌธ์— Screen์„ ์‚ฌ์šฉํ•˜์—ฌ ์ฝ”๋“œ๋ฅผ ๋™์ž‘์‹œํ‚ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.


4. ๋ฐฉํ™”๋ฒฝ ์„ค์ •ํ•˜๊ธฐ

๋งˆ์ง€๋ง‰์œผ๋กœ ์„œ๋ฒ„์˜ ๋™์ž‘์„ ํ™•์ธํ•˜๊ธฐ ์ „์—, ๋ฐฉํ™”๋ฒฝ์„ ์†๋ด ์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ๋ฐฉํ™”๋ฒฝ์—์„œ, http์— ํ•ด๋‹นํ•˜๋Š” ๋ฐฉํ™”๋ฒฝ์„ ์ˆ˜์ •ํ•ฉ์‹œ๋‹ค.

PORT 3000์„ ์ถ”๊ฐ€ํ•˜๋Š” ์ด์œ ๋Š”, Node JS ์ฝ”๋“œ์—์„œ

์ ‘์† ํ•  ์ˆ˜ ์žˆ๋Š” PORT๋ฅผ 3000์œผ๋กœ ์ œํ•œํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

PORT๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ชฉ์ ์€ ๋‹ค์–‘ํ•œ๋ฐ, ์ถ”ํ›„์— ๋‹ค๋ค„ ๋ณผ๊ฒŒ์š”.

์ด์ œ ๋งˆ์ง€๋ง‰์œผ๋กœ, ์•„๊นŒ์ „์— ๊ณ ์ •์‹œํ‚จ ์™ธ๋ถ€ IP์—์„œ

PORT ๋ฒˆํ˜ธ 3000๋ฒˆ์„ ์ถ”๊ฐ€ํ•˜์—ฌ ์›น์—์„œ ์š”์ฒญ์„ ๋ณด๋‚ด๋ด…์‹œ๋‹ค.

์„œ๋ฒ„์—์„œ Screen์„ ํ†ตํ•ด Node JS ์ฝ”๋“œ๊ฐ€ ๋™์ž‘ํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ,

GET method ๋ฅผ ํ†ตํ•ด ์•„๋ž˜์™€ ๊ฐ™์€ ๋ฌธ๊ตฌ๊ฐ€ ๋‚˜ํƒ€๋‚  ๊ฑฐ์—์š”.

์—ฌ๊ธฐ๊นŒ์ง€ ๊ธฐ๋ณธ์ ์ธ VM ์„œ๋ฒ„ ์ƒ์„ฑ์ด ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค!

 

์ฐธ๊ณ ) ๊ธ€์“ด์ด์˜ ์„œ๋ฒ„๋น„์šฉ์„ ์œ„ํ•ด ์œ„์˜ ์™ธ๋ถ€IP๋Š” ๋ง‰์•„๋†“์€ ์ƒํƒœ์ด๋ฏ€๋กœ

ํ•ด๋‹น IP์—์„œ ์‘๋‹ต์ด ์™œ ์—†๋Š”์ง€์— ๋Œ€ํ•œ ๊ณ ๋ฏผ์€ ํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ต๋‹ˆ๋‹ค! ใ…Žใ…Ž


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

์ฝ”๋”ฉํ•˜๋Š” ๋ชจ์ฃผ๋ถ€ ์ž…๋‹ˆ๋‹ค!

 


1. ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์˜ ์„ ํƒ

์ด ์‹œ๋ฆฌ์ฆˆ๋ฅผ ์‹œ์ž‘ํ•˜๊ฒŒ ๋œ ๋ชฉ์ ์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

1. ๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์„ ์‚ฌ์šฉ, ํ”Œ๋žซํผ์˜ ์žฅ์  ์ตํžˆ๊ธฐ

2. ์ž๊ธฐ ์ปดํ“จํ„ฐ๊ฐ€ ์•„๋‹Œ, ์„œ๋ฒ„๋ฅผ ๋นŒ๋ ค ์„œ๋น„์Šค ๋งŒ๋“ค๊ธฐ

3. ์„œ๋ฒ„์— ์ž์‹ ์ด ๋งŒ๋“  ์ฝ”๋“œ ์˜ฌ๋ฆฌ๊ธฐ & ์ˆ˜์ •ํ•˜๊ธฐ

4. Load balancer๋ฅผ ์ด์šฉํ•˜์—ฌ ์š”์ฒญ ๋ถ„์‚ฐ์‹œํ‚ค๊ธฐ

 

๊ฐ„๋‹จํ•œ ์›น ํฌ๋กค๋ง๊ณผ ๊ฐ™์ด ์ง€์†์ ์ด์ง€ ์•Š๊ณ , ๋ฆฌ์†Œ์Šค๋ฅผ ๋งŽ์ด ํ•„์š”๋กœ ํ•˜์ง€ ์•Š๋Š” ์ฝ”๋“œ๋“ค์€

๊ฐ€๊ธ‰์  ๋ณธ์ธ ์ปดํ“จํ„ฐ๋กœ ์‹คํ–‰์‹œํ‚ค๋Š” ๊ฒƒ์ด ํšจ์œจ์ ์ž…๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ํ•ญ์‹œ ํŠน์ • ์ž‘์—…์„ ๊ธฐ๋‹ค๋ฆฌ๊ฑฐ๋‚˜ ๋ชฉ์ ๋ฌผ์„ Watchingํ•ด์•ผ ํ•˜๋Š” ๊ธฐ๋Šฅ๋“ค์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ• ๊นŒ์š”?

์ด๋•Œ ์•„๋ž˜์˜ ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์„ ์ด์šฉํ•˜๋Š” ๊ฒƒ์ด ํŽธ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

 

> Google - GCP (Google Cloud Platform)

> Amazon - AWS (Amazon Web Service)

> Microsoft - AZURE

 

ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ ์‚ฌ์šฉ์˜ ์žฅ์ ๊ณผ ๋‹จ์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์•„์š”.

์žฅ์  ๋‹จ์ 
์ƒ์„ฑ, ๊ด€๋ฆฌ๊ฐ€ ์‰ฝ๋‹ค ์„œ๋ฒ„ ๋น„์šฉ์ด ๋ฐœ์ƒํ•œ๋‹ค
์›ํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ์˜ ํฌ๊ธฐ, ์„ฑ๋Šฅ ๋“ฑ์„ ์„ ํƒํ•˜์—ฌ ๋Œ€์—ฌํ•  ์ˆ˜ ์žˆ๋‹ค ์„ฑ๋Šฅ์ด ์ข‹์•„์งˆ์ˆ˜๋ก ์œ ์ง€๋น„์šฉ์ด ๋น„์‹ธ์ง„๋‹ค
๋ฌธ์„œํ™”๊ฐ€ ์ž˜ ๋˜์–ด์žˆ์–ด ๋”ฐ๋ผํ•˜๊ธฐ ์šฉ์ดํ•˜๋‹ค ์ผ๋ฐ˜ ๋ฆฌ๋ˆ…์Šค๋กœ ๋งŒ๋“ค ๋•Œ ๋ณด๋‹ค ์ž์œ ๋„๊ฐ€ ๋‚ฎ๋‹ค
์„œ๋ฒ„์˜ ์•ˆ์ •์„ฑ์— ๋Œ€ํ•œ ์ฑ…์ž„์„ ์ง€์ง€ ์•Š์•„๋„ ๋œ๋‹ค ๊ฐ€๋” ๊ตฌ๊ธ€/์•„๋งˆ์กด/๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ ์„œ๋ฒ„์— ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธฐ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๊ฐ„ํ˜น ์กด์žฌํ•œ๋‹ค
๊ฐ™์€ ํšŒ์‚ฌ์—์„œ ์ œ๊ณตํ•˜๋Š” Database, ๋ชจ๋“ˆ๋“ค์˜ ์—ฐ๊ฒฐ์ด ์šฉ์ดํ•˜๋‹ค -

์ด์ค‘์—์„œ๋„ ๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ๋ฅผ ์„ ํƒํ•œ ์ด์œ ๋Š”,

์‚ฌ์šฉํ•  Database์ธ Firebase / PostgreSQL ๊ณผ์˜ ์—ฐ๋™์„ฑ์ด ๋›ฐ์–ด๋‚ฌ๊ณ 

ํ”Œ๋žซํผ์„ ์‚ฌ์šฉ ํ•  ๋‹น์‹œ ์™ธ์ฃผ๋ฅผ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๋˜, ์„œ๋ฒ„ ์•ˆ์ •์„ฑ์— ๋Œ€ํ•œ ์ฑ…์ž„์„ ๊ตฌ๊ธ€์— ๋– ๋„˜๊ธธ ์ˆ˜ ์žˆ์–ด์„œ

๊ท€์ฑ…์‚ฌ์œ ๋กœ๋ถ€ํ„ฐ ์ž์œ ๋กญ๋‹ค๋Š” ๊ฒƒ๋„ ๋งค๋ ฅ์ ์ธ ํฌ์ธํŠธ๊ฐ€ ์žˆ์—ˆ์ฃ .

 

๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์—์„œ ์„œ๋ฒ„๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์€ ํฌ๊ฒŒ 2๊ฐ€์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

โ–ถ Virtual Machine์„ ์ƒ์„ฑํ•˜์—ฌ ์„œ๋ฒ„ ๋งŒ๋“ค๊ธฐ

โ–ถApp Engine์„ ์ด์šฉํ•˜์—ฌ ์„œ๋ฒ„ ๋งŒ๋“ค๊ธฐ

 

์ด ๋‘˜์ค‘ ์–ด๋–ค ๊ฒƒ์„ ์„ ํƒํ•˜์—ฌ ๋งŒ๋“ค๊นŒ์š”?

๋ผ๊ณ  ๊ณ ๋ฏผํ•œ๋‹ค๋ฉด ์•„๋ž˜์˜ ํŠน์ง•์„ ์ฐธ๊ณ ํ•ฉ์‹œ๋‹ค.

  Virtual Machine App Engine
์ž๋™ Deploy๊ธฐ๋Šฅ X
๋ณธ์ธ์ด ํ„ฐ๋ฏธ๋„ ์ฐฝ์—์„œ Git clone๋“ฑ์œผ๋กœ ์ฝ”๋“œ๋ฅผ ๋‹ค์šด๋กœ๋“œ ํ•œ ๋‹ค์Œ install๊นŒ์ง€ ๋‹ค ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค
O
GitHub๋“ฑ์„ ์—ฐ๊ฒฐ์‹œํ‚จ ํ›„, ์ž๋™ Deploy๋ฅผ ์‹œํ‚ค๋ฉด ์•Œ์•„์„œ ์—…๋ฐ์ดํŠธ ํ•ด ์ค€๋‹ค
๊ฐœ๋ฐฉ์„ฑ ๋งค์šฐ ๋†’์Œ.
๋‹ค๋ฅธ Database๋‚˜ ๊ฐ™์€ VPC์— ์†ํ•˜๋Š” ๋‹ค๋ฅธ VM๊ณผ๋„๋‚ด๋ถ€ IP๋ฅผ ํ†ตํ•ด ํ†ต์‹ ์ด ๊ฐ€๋Šฅํ•˜๋‹ค
๋‚ฎ์Œ
๋‚ด๋ถ€์ ์œผ๋กœ ๋‹ซํ˜€์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋‚ด๋ถ€์ ์ธ ์—ฐ๊ฒฐ์ด ๋ถˆ๊ฐ€๋Šฅ
์ˆ˜์ •, ๋ฐฐํฌ ์†๋„ ๋น ๋ฆ„
์‚ฌ์šฉ์ž๊ฐ€ ์Šค์Šค๋กœ ํ„ฐ๋ฏธ๋„์—์„œ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๊ณ , ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ์ด๋ฏ€๋กœ ๋งค์šฐ ๋น ๋ฅด๋‹ค
๋Š๋ฆผ
App engine ์ž์ฒด๊ฐ€ Deployํ•˜๋Š” ๋ฐฉ์‹์ด ์ •ํ•ด์ ธ ์žˆ๋Š”๋ฐ, ์†๋„๊ฐ€ ๊ฝค๋‚˜ ๋Š๋ฆฌ๋‹ค

 

Virtual Machine (์™ผ์ชฝ)๊ณผ App engine (์˜ค๋ฅธ์ชฝ)์˜ ์˜ˆ

์ €๋Š” ์ˆ˜์ •๊ณผ ๋ฐฐํฌ๋ฅผ ๋งŽ์ด ํ•ด์•ผ ํ–ˆ๊ณ ,

PostgreSQL์„ ๋‚ด๋ถ€ํ†ต์‹ ๋งŒ ํ—ˆ์šฉํ•˜์—ฌ

์™ธ๋ถ€์—์„œ ์•„์˜ˆ ์ ‘๊ทผ์„ ๋ชปํ•˜๋„๋ก ํ•˜๋Š” ๊ตฌ์กฐ๋ฅผ ์„ค๊ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‚ด๋ถ€ํ†ต์‹ ๋งŒ ํ•˜๋Š” ์ด์œ ๋Š”,

๋ณด์•ˆ์ƒ์œผ๋กœ ๊ฐ€์žฅ ๊ฐ•๊ฑดํ•˜๊ณ  ๊ตฌ์กฐ๊ฐ€ ๊น”๋”ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด์—์š”.


2. Compute engine์—์„œ Virtual Machine ์ƒ์„ฑํ•˜๊ธฐ

 

๋จผ์ €, ๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ ์ฝ˜์†”์„ ์—ด๊ฒŒ ๋˜๋ฉด,

์•„๋ž˜์™€ ๊ฐ™์ด ํ”„๋กœ์ ํŠธ ์ •๋ณด๊ฐ€ ๋‚˜์˜ต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์—์„œ ์™ผ์ชฝ์˜ ํ–„๋ฒ„๊ฑฐ ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ Compute engine์œผ๋กœ ๊ฐ‘์‹œ๋‹ค.

๋ถ€ํŒ… ๋””์Šคํฌ ์„ค์ •๊ณผ API, ๋ฐฉํ™”๋ฒฝ ์„ค์ •

๋งŒ์•ฝ API ์•ก์„ธ์Šค๋ฅผ ๊ธฐ๋ณธ ์•ก์„ธ์Šค๋งŒ ํ—ˆ์šฉํ•ด ๋‘”๋‹ค๋ฉด,

๋‚˜์ค‘์— PostgreSQL์ด๋‚˜ Firebase๋ฅผ ์‚ฌ์šฉํ•จ์— ์žˆ์–ด์„œ ์˜ˆ๊ธฐ์น˜ ๋ชปํ•œ ์—๋Ÿฌ๋“ค์„ ๋งŒ๋‚  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ตฌ๊ธ€์˜ Database๋ฅผ ์—ฐ๋™ํ•˜๋”๋ผ๋„ ๊ธฐ๋ณธ์ ์œผ๋กœ๋Š” ํ†ต์‹ ์œผ๋กœ ์•ก์„ธ์Šค ํ•˜๋Š” ๊ฒƒ์ด๋ฏ€๋กœ

API ์ž์ฒด๊ฐ€ ๋ง‰ํ˜€์žˆ๋‹ค๋ฉด ์—ฐ๊ฒฐํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค!!

 

์ด์™€ ๋น„์Šทํ•œ ๋งฅ๋ฝ์œผ๋กœ, Virtual machine์„ ์ตœ์ข…์ ์œผ๋กœ ์™ธ๋ถ€ IP์™€ ์—ฐ๊ฒฐํ•˜๊ฒŒ ๋  ๊ฒƒ์ธ๋ฐ,

http, https ํŠธ๋ž˜ํ”ฝ์„ ์—ด์–ด๋†“์ง€ ์•Š๋Š”๋‹ค๋ฉด

ํ„ฐ๋ฏธ๋„ ์ด์™ธ์—์„œ๋Š” ์ ‘๊ทผํ•˜์ง€ ๋ชปํ•˜๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ

๋ฐ˜๋“œ์‹œ ๋ฐฉํ™”๋ฒฝ ๋ฉ”๋‰ด์—์„œ ํŠธ๋ž˜ํ”ฝ ํ—ˆ์šฉ์„ ์ฒดํฌํ•ด ๋‘ก์‹œ๋‹ค.

 

๋„คํŠธ์›Œํ‚น ์„ค์ • ๋ฉ”๋‰ด

๋งŒ์•ฝ ๋ณธ์ธ์ด VPC๋ฅผ ์ž„์˜๋กœ ์ƒ์„ฑํ•˜์˜€๊ณ , ๊ทธ๊ฒƒ์„ ๋‚ด๋ถ€์ ์œผ๋กœ ์—ฐ๊ฒฐํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด,

๋„คํŠธ์›Œํ‚น ๋ฉ”๋‰ด์—์„œ ํ•ด๋‹น VPC๋ฅผ ์„ ํƒํ•˜์—ฌ ์—ฐ๊ฒฐ์„ ํ•ด ์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ด๋ฒˆ ์‹œ๋ฆฌ์ฆˆ์—์„œ๋Š” ๋”ฐ๋กœ VPC๋ฅผ ๋งŒ๋“ค ๊ณ„ํš์ด ์—†์œผ๋ฏ€๋กœ ๊ทธ๋ƒฅ default๋กœ ๋†”๋‘๋ฉด ๋ฉ๋‹ˆ๋‹ค.

 

์—ฌ๊ธฐ๊นŒ์ง€ ์™„๋ฃŒํ–ˆ๋‹ค๋ฉด, Virtual machine์˜ ๊ธฐ๋ณธ์ ์ธ ์ƒ์„ฑ์ด ๋๋‚ฌ์Šต๋‹ˆ๋‹ค!

๋‹ค์Œ ํฌ์ŠคํŒ…์—์„œ ๋ต๊ฒŒ์š” :)

+ Recent posts