TIL 62: [๋ฐฐํฌ] Amazon Web Service

 

 

Cloud์™€ On-premise

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

On-premise๋Š” ์ง‘์„ ์ง“๋Š”๋‹ค๊ณ ํ•  ๋•Œ ์ง‘์„ ์ง€์„ ๋•Œ ํ•„์š”ํ•œ ์ž์žฌ ๊ตฌ๋งค๋ถ€ํ„ฐ ๊ฑด๋ฌผ ๋„๋ฉด, ์‹œ๊ณต, ๊ฑด์ถ•, ์ธํ…Œ๋ฆฌ์–ด๊นŒ์ง€ ๋ชจ๋“  ๊ณผ์ •์„ ํ˜ผ์ž์„œ ๋‹ค ํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ์„ผํ„ฐ์—์„œ ์ œ๊ณตํ•˜๋Š” ์„œ๋ฒ„์˜ ์ž์›๊ณผ ๊ณต๊ฐ„ ๋ฐ ๋„คํŠธ์›Œํฌ ํ™˜๊ฒฝ์ด ์—ฌ๊ธฐ์— ํ•ด๋‹น๋ฉ๋‹ˆ๋‹ค.

Cloud๋„ ์ง‘์„ ์ง“๋Š”๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๋ฉด, ์ง‘์„ ๋งŒ๋“œ๋Š” ๊ณผ์ •์—์„œ ์ง‘ ์ง“๋Š” ๊ณผ์ •์˜ ์ผ๋ถ€์—์„œ๋Š” ์ „๋ฌธ๊ฐ€์˜ ๋„์›€์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. 

๊ฒฐ๋ก ์ ์œผ๋กœ On-premise์™€ Cloud์˜ ์ฐจ์ด์ ์€ "์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” IT ์ž์›์„ ๋ˆ„๊ฐ€ ๊ด€๋ฆฌํ•˜๋А๋ƒ"์ž…๋‹ˆ๋‹ค. On-premise์˜ ๊ฒฝ์šฐ ์„œ๋น„์Šค๋ฅผ ๊ณต๊ธ‰ํ•˜๋Š” ์„œ๋น„์Šค ์ œ๊ณต์ž๊ฐ€ IT ์ž์› ๊ด€๋ฆฌ ์ฃผ์ฒด์ด๊ณ , Cloud์˜ ๊ฒฝ์šฐ ์„œ๋น„์Šค๋ฅผ ๊ณต๋ถ€ํ•˜๋Š” ์ œ๊ณต์ž๋Š” IT ์ž์›์„ ์‚ฌ์šฉํ•  ๋ฟ, ๋Œ€๋ถ€๋ถ„์˜ IT์ž์›์€ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์ œ๊ณต์ž๊ฐ€ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

  Cloud On-premise
๋น„์šฉ ์‚ฌ์šฉํ•œ ๋งŒํผ ์ง€๋ถˆ + ์ดˆ๊ธฐ๋น„์šฉ ์—†์Œ ์ดˆ๊ธฐ๋น„์šฉ O + ์œ ์ง€๋ณด์ˆ˜ ๋น„์šฉ
ํ™•์žฅ์„ฑ ์œ ๋ฆฌ / ์œ ์—ฐ / ํŽธ๋ฆฌ ๋ถˆ๋ฆฌ
๊ตฌ์ถ•์— ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„ ์งง๋‹ค ์˜ค๋ž˜ ๊ฑธ๋ฆฐ๋‹ค

 

 

Deploy

๋ฐฐํฌ(Deploy)๋ž€ ๊ฐœ๋ฐœํ•œ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉ์ž๋“ค์ด ์ด์šฉ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ์ผ๋ จ์˜ ๊ณผ์ •์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ 4๋‹จ๊ณ„๋ฅผ ๊ฑฐ์ณ์„œ ๋ฐฐํฌํ•˜๊ฒŒ๋ฉ๋‹ˆ๋‹ค.

Development ๋‹จ๊ณ„๋Š” ๊ฐ์ž์˜ ์ปดํ“จํ„ฐ์—์„œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ํ…Œ์ŠคํŠธ ํ•˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ๋‹จ๊ณ„์ด๊ธฐ ๋•Œ๋ฌธ์— ์‹ค์ œ ๋ฐ์ดํ„ฐ๋ฅผ ์ด์šฉํ•˜์ง€ ์•Š๊ณ  ๋”๋ฏธ๋ฐ์ดํ„ฐ๋ฅผ ์ด์šฉํ•ด์„œ ํ…Œ์ŠคํŠธํ•ฉ๋‹ˆ๋‹ค. 

Intergration ๋‹จ๊ณ„์—์„œ๋Š” ๊ฐ์ž์˜ ์ปดํ“จํ„ฐ์—์„œ ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ฅผ ํ•ฉ์น˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์ž‘์„ฑํ•œ ์ฝ”๋“œ๊ฐ€ ๋‹ค๋ฅธ ์ฝ”๋“œ๋ฅผ ์นจ๋ฒ”ํ•ด์„œ ์˜ค๋ฅ˜๋ฅผ ์ผ์œผํ‚ค์ง€ ์•Š๋Š”์ง€, ์ฝ”๋“œ๊ฐ„์— conflict๊ฐ€ ์žˆ์ง€๋Š” ์•Š๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๊ณผ์ •์„ ๊ฑฐ์นฉ๋‹ˆ๋‹ค.

Staging ๋‹จ๊ณ„์—์„œ๋Š” ์‹ค์ œ ์ถœ์‹œ๋‹จ๊ณ„์ธ Production ๋‹จ๊ณ„์™€ ๊ฐ€์žฅ ์œ ์‚ฌํ•œ ํ™˜๊ฒฝ์—์„œ ํ…Œ์ŠคํŠธ๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์‹ค์ œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณต์‚ฌํ•ด์„œ ๋ฌธ์ œ๊ฐ€ ์žˆ์ง€ ์•Š์€์ง€ ๋“ฑ ๋‹ค์–‘ํ•œ ํ™˜๊ฒฝ์—์„œ ํ…Œ์ŠคํŠธ๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์„œ๋น„์Šค์™€ ๊ด€๋ จ๋œ ๋ถ€์„œ ํ˜น์€ ์ธ์›์˜ ํ™•์ธ ๊ณผ์ •์„ ๊ฑฐ์นฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด ์ž‘์„ฑ๋œ ์ฝ”๋“œ๊ฐ€ ๋งˆ์ผ€ํŒ…ํŒ€ ํ˜น์€ ๋””์ž์ธํŒ€ ์˜ˆ์ƒํ–ˆ๋˜ ๊ฒฐ๊ณผ์ธ์ง€์— ํ™•์ธ์„ ๊ฑฐ์น˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค.

Production ๋‹จ๊ณ„์—์„œ๋Š” ๊ฐœ๋ฐœ๋œ ์„œ๋น„์Šค๋ฅผ ์ถœ์‹œํ•˜๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋Š” Production ํ™˜๊ฒฝ์—์„œ ์ฝ”๋“œ๋ฅผ ๊ตฌ๋™ํ•˜๊ณ  ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์‹ค์ œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์„œ๋น„์Šค๊ฐ€ ์šด์˜๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธฐ๋ฉด ์•ˆ๋˜๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.

 

๊ฐœ๋ฐœํ•œ ์„œ๋น„์Šค๋ฅผ ์–ด๋–ป๊ฒŒ ๋ฐฐํฌํ•˜๋Š” ๊ฑธ๊นŒ์š”? ์‚ฌ์šฉ์ž๋“ค์—๊ฒŒ Client๋ฅผ ์–ด๋–ป๊ฒŒ ์ œ๊ณตํ• ์ง€, ๊ทธ๋ฆฌ๊ณ  Client๋ฅผ ๋ฐ›์€ ์‚ฌ์šฉ์ž๋“ค์ด ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•˜๊ธฐ ์œ„ํ•œ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•  Server๋ฅผ ์–ด๋–ป๊ฒŒ ์ œ๊ณตํ•  ๊ฒƒ์ธ์ง€, Server์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ์ œ๊ณตํ•  Database๋Š” ์–ด๋–ป๊ฒŒ ์ œ๊ณตํ•  ๊ฒƒ์ธ์ง€ ์ƒ๊ฐํ•ด ๋ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋จผ์ € Client๋ฅผ ๋ฐฐํฌํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋นŒ๋“œ๋ฅผ ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๋นŒ๋“œ๋ž€ ๋ถˆํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์—†์• ๊ณ , ์—ฌ๋Ÿฌ ๊ฐˆ๋ž˜๋กœ ํผ์ ธ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋“ค์„ ํ†ตํ•ฉ/์••์ถ•ํ•˜์—ฌ ๋ฐฐํฌํ•˜๊ธฐ์— ์ตœ์ ํ™”๋œ ์ƒํƒœ๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ๋•๋ถ„์— ์›น ์‚ฌ์ดํŠธ์˜ ๋กœ๋”ฉ ์†๋„๊ฐ€ ๋นจ๋ผ์ง‘๋‹ˆ๋‹ค. ๋˜ ๋‹ค๋ฅธ ์ •์˜๋กœ๋Š” ์†Œ์Šค์ฝ”๋“œ๋ฅผ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ๋ฒˆ๋“ค๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์ปดํŒŒ์ผ ๊ณผ์ •์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. 

์ง€๊ตฌ ๋ฐ˜๋Œ€ํŽธ์— ์žˆ๋Š” ์‚ฌ์šฉ์ž๋“ค์—๊ฒŒ ๋น ๋ฅด๊ฒŒ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด CDN ์„œ๋น„์Šค๋ฅผ ์‚ฌ์š”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. CloudFront๋ฅผ ํ†ตํ•ด์„œ ๊ฐ์ง€์˜ ๋ฐ์ดํ„ฐ์„ผํ„ฐ์— ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์‚ฐ์‹œ์ผœ์„œ ์ €์žฅํ•ด ๋’€๋‹ค๊ฐ€ ๊ฐ€๊นŒ์šด ์ง€์—ญ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๋Š” ๋ฐฉ์‹์œผ๋กœ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋” ๋น ๋ฅด๊ฒŒ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

AWS EC2 ์„œ๋น„์Šค๋ฅผ ํ†ตํ•ด ์†์‰ฝ๊ฒŒ ์„œ๋ฒ„๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ  ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ RDS ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ EC2๋ฅผ ํ†ตํ•ด ๋ฐฐํฌ๋œ Server Application์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅ, ์ œ๊ณตํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

 

 

EC2 (Elastic Compute Cloud)

์ธ์Šคํ„ด์Šค

EC2๋ž€ AWS์—์„œ ์ œ๊ณตํ•˜๋Š” ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์€ ์ธํ„ฐ๋„ท(ํด๋ผ์šฐ๋“œ)๋ฅผ ํ†ตํ•ด ์„œ๋ฒ„, ์Šคํ† ๋ฆฌ์ง€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋“ฑ์˜ ์ปดํ“จํŒ… ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. EC2์˜ ์žฅ์ ์€ ๊ตฌ์„ฑํ•˜๋Š”๋ฐ ํ•„์š”ํ•œ ์‹œ๊ฐ„์ด ์งง๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ AMI(Amazon Machine Image)๋ฅผ ํ†ตํ•ด์„œ ํ•„์š”ํ•œ ์šฉ๋„์— ๋”ฐ๋ผ ๋‹ค์–‘ํ•œ ์šด์˜์ฒด์ œ(ํ…œํ”Œ๋ฆฟ) ์„ ํƒ์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ CPU, RAM, ์šฉ๋Ÿ‰๋„ ์‰ฝ๊ฒŒ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฏธ ์„ธํŒ…๋˜์—‰ ์žˆ๋Š” AMI ์ด์™ธ์—๋„ ํ•„์š”์— ๋”ฐ๋ผ ์ง์ ‘ AMI๋ฅผ ๊ตฌ์„ฑํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ๋ณด๋ฉด EC2๋ฅผ ํ†ตํ•ด ์ปดํ“จํ„ฐ ํ•œ ๋Œ€๋ฅผ ๋นŒ๋ฆด ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ AWS์—์„œ ์ปดํ“จํ„ฐ๋ฅผ ๋นŒ๋ฆฌ๋Š” ๊ฒƒ์„ ์ธ์Šคํ„ด์Šค(1๋Œ€์˜ ์ปดํ“จํ„ฐ)๋ฅผ ์ƒ์„ฑํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

 

SSH ํ”„๋กœํ† ์ฝœ

์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•  ๋•Œ .pem์„ ๋‹ค์šด๋ฐ›์•„ SSH ํ”„๋กœํ† ์ฝœ์„ ํ†ตํ•ด ์›๊ฒฉ์ ‘์†์„ ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ SSH ํ”„๋กœํ† ์ฝœ์ด๋ž€ ์„œ๋กœ ๋‹ค๋ฅธ PC๊ฐ€ ์ธํ„ฐ๋„ท๊ณผ ๊ฐ™์€ Public Network๋ฅผ ํ†ตํ•ด ํ†ต์‹ ์„ ํ•˜ ๋–„ ๋ณด์•ˆ์ƒ ์•ˆ์ „ํ•˜๊ฒŒ ํ†ต์‹ ํ•˜๊ธฐ ์œ„ํ•œ ํ†ต์‹  ๊ทœ์•ฝ์ž…๋‹ˆ๋‹ค. ์ฃผ๊ณ  ๋ฐ›๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์•”ํ˜ธํ™”ํ•ด์„œ ํ•ด๋‹น ํ‚ค ํŽ˜์–ด๋ฅผ ๊ฐ€์ง€์ง€ ์•Š์€ ์‚ฌ๋žŒ์€ ํ†ต์‹ ๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์•Œ์•„๋ณผ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋ณด์•ˆ์ƒ ์•ˆ์ „ํ•œ ํ†ต์‹  ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ์ ‘์†์„ ํ•˜๋ฉด ์›๊ฒฉ์œผ๋กœ ์ธ์Šคํ„ด์Šค๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งŒ์•ฝ ๋‹ค์šด๋กœ๋“œํ–ˆ๋˜ ํ‚ค ํŽ˜์–ด ํŒŒ์ผ(.pem)์˜ ๊ถŒํ•œ์ด ๋ˆ„๊ตฌ๋‚˜ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๊ฑธ๋กœ ๋˜์–ด์žˆ์œผ๋ฉด ์ธ์Šคํ„ด์Šค๋Š” ์—ฐ๊ฒฐ์„ ๊ฑฐ๋ถ€ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ด ๋•Œ chmod 400 [๋‹ค์šด๋กœ๋“œํ•œ ํ‚ค ํŽ˜์–ดํŒŒ์ผ์˜ ๊ฒฝ๋กœ] ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ๊ถŒํ•œ์„ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค. 4(์†Œ์œ ์ž) 0(๊ทธ๋ฃน) 0 (์ „์ฒด)

 

๊ถŒํ•œ์„ ๋ณ€๊ฒฝํ•ด์ค€ ํ›„ SSH๋ฅผ ํ†ตํ•ด ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ ๋ช…๋ น์–ด๋ฅผ ์ž‘์„ฑํ•ด์ค๋‹ˆ๋‹ค.

ssh -i "test" ubuntu @ec2-15-164-251-231.ap-northeast-2.compute.amaxonaws.com

์ด ๋œป์€ ssh ํ”„๋กœํ† ์ฝœ์„ ํ†ตํ•ด test๋ผ๋Š” ์ด๋ฆ„์˜ Key๋ฅผ ๊ฐ€์ง€๊ณ  ubuntu๋ผ๋Š” ์‚ฌ์šฉ์ž ์ด๋ฆ„์œผ๋กœ ec2-15-164-251-231.ap-northeast-2.compute.amaxonaws.com ์ฃผ์†Œ์˜ ๊ฐ€์ƒ PC์— ์ ‘์†ํ•˜๊ฒ ๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค.

 

 

๋ณด์•ˆ๊ทธ๋ฃน

๋ณด์•ˆ๊ทธ๋ฃน์ด๋ž€ ์ธ์Šคํ„ด์Šค๋กœ ๋“ค์–ด๊ฐ€๊ณ  ์ธ์Šคํ„ด์Šค์—์„œ ๋‚˜๊ฐ€๋Š” ํŠธ๋ž˜ํ”ฝ์— ๋Œ€ํ•œ ๊ฐ€์ƒ ๋ฐฉํ™”๋ฒฝ์ž…๋‹ˆ๋‹ค. ์ธ์Šคํ„ด์Šค๋กœ ๋“ค์–ด๊ฐ€๋Š” ํŠธ๋ž˜ํ”ฝ์€ ์ธ๋ฐ”์šด๋“œ, ์ธ์Šคํ„ด์Šค์—์„œ ๋‚˜๊ฐ€๋Š” ํŠธ๋ž˜ํ”ฝ์„ ์•„์›ƒ๋ฐ”์šด๋“œ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ธ๋ฐ”์šด๋“œ ๊ทœ์น™์— ํ—ˆ์šฉ๋˜์ง€ ์•Š์€ ๊ทœ์น™์€ ์ธ์Šคํ„ด์Šค๋กœ ์ ‘๊ทผํ•˜์ง€ ๋ชปํ•˜๋„๋ก ํ•„ํ„ฐ๋ง๋ฉ๋‹ˆ๋‹ค.

 

 

PM2 (Process Manage)

PM2๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ์ „๋ฌธ์ ์œผ๋กœ ๊ด€๋ฆฌํ•ด์ฃผ๋Š” ํ”„๋กœ๊ทธ๋žจ์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ํ”„๋กœ์„ธ์Šค๋Š” ์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋  ๋•Œ ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰์— ํ•„์š”ํ•œ ๋‚ด์šฉ์ด ๋ฉ”๋ชจ๋ฆฌ์— ์ ์žฌ๋œ ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ๊ทธ๋žจ์ž…๋‹ˆ๋‹ค. ssh๋ฅผ ํ†ตํ•ด EC2์— ์ ‘์†ํ•˜๊ณ  ํ„ฐ๋ฏธ๋„์„ ์ข…๋ฃŒํ•˜๋ฉด ๋กœ์ปฌ์— ๋„์›Œ์ ธ์žˆ๋˜ ssh ํ”„๋กœ์„ธ์Šค๊ฐ€ ๊ฐ•์ œ ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค. ssh ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ข…๋ฃŒ๋˜๋ฉด EC2 ์ƒ์˜ ํ”„๋กœ์„ธ์Šค ๊ทธ๋ฆฌ๊ณ  EC2 ์ƒ์˜ node ํ”„๋กœ์„ธ์Šค๋„ ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค. ssh ์ ‘์† ์—ฌ๋ถ€์™€ ์ƒ๊ด€์—†์ด node ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋Š˜ ์‹คํ–‰๋˜๋„๋ก ํ•ด์ฃผ๋Š” ๊ฒƒ์ด PM2์ž…๋‹ˆ๋‹ค. pm2๋ฅผ ์„ค์น˜ํ•œ ํ›„ ์•„๋ž˜์™€ ๊ฐ™์€ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ํ„ฐ๋ฏธ๋„์„ ์ข…๋ฃŒํ•˜๋”๋ผ๊ณ  node.js ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ํ”„๋กœ์„ธ์Šค๋กœ ์‹คํ–‰๋˜๊ฑฐ๋‚˜ ์ค‘์ง€๋˜๋„๋ก ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

  • pm2 stop: ํ”„๋กœ์„ธ์Šค ์ค‘์ง€
  • pm2 restart: ํ”„๋กœ์„ธ์Šค ์žฌ์‹œ์ž‘
  • pm2 ls: ํ”„๋กœ์„ธ์Šค ๋ชฉ๋ก ๋ณด๊ธฐ
  • pm2 log: ํ”„๋กœ์„ธ์Šค ๋กœ๊ทธ ๋ณด๊ธฐ

PM2์— ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” 'authbind --deep' ๋ช…๋ น์–ด๋ฅผ ์•ž์— ์ถ”๊ฐ€ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

 

RDS (Relational Database Service)

RDS๋Š” AWS์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ๋ฌผ๋ก  EC2 ์ธ์Šคํ„ด์Šค์— ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—”์ง„์„ ์„ค์น˜ํ•ด์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด ๊ฒฝ์šฐ ์‚ฌ์šฉ์ž๊ฐ€ ์ผ์ผ์ด ์‹œ๊ฐ„์„ ํˆฌ์žํ•ด์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—”์ง„ ์„ค์น˜ ๋ฐ ๋ฒ„์ „๊ด€๋ฆฌ, ๋ฐ์ดํ„ฐ ๋ฐฑ์—… ๋“ฑ์„ ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ด์— ๋”ํ•ด ๊ฐ€์šฉ์„ฑ๊ณผ ๋‚ด๊ตฌ์„ฑ์ด ํ™•๋ณด๋˜์ง€ ์•Š๊ธฐ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์œ ์‹ค๋˜๊ฑฐ๋‚˜ ์ •์ƒ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•  ํ™•๋ฅ ์ด ์ปค์ง‘๋‹ˆ๋‹ค.

RDS๋ฅผ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์œ ์ง€๋ณด์ˆ˜์™€ ๊ด€๋ จ๋œ ์ผ๋“ค์€ RDS์—์„œ ์ „์ ์œผ๋กœ ์ž๋™ ๊ด€๋ฆฌํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ์‚ฌ์šฉ์ž๋Š” ์ดˆ๊ธฐ ์„ค์ •๋งŒ ํ•ด๋†“์œผ๋ฉด ํฐ ํŽธ์˜์„ฑ์„ ๋А๋‚„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

 

 

S3 (Simple Storage Service)

S3๋Š” AWS์—์„œ ์ œ๊ณตํ•˜๋Š” ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€๋ž€ ์ธํ„ฐ๋„ท ๊ณต๊ฐ„์— ์ €์žฅํ•˜๋Š” ์ €์žฅ์†Œ์ž…๋‹ˆ๋‹ค. ๊ตฌ๊ธ€์˜ Google Drive, ๋„ค์ด๋ฒ„์˜ MYBOX๊ฐ€ ์—ฌ๊ธฐ์— ํ•ด๋‹น๋ฉ๋‹ˆ๋‹ค. S3๋Š” ๋›ฐ์–ด๋‚œ ์ ‘๊ทผ์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ, ๋ฐ์ดํ„ฐ๋ฅผ ๋ฌดํ•œํžˆ ์ €์žฅ๊ฐ€๋Šฅํ•œ ํ™•์žฅ์„ฑ์„ ์ง€๋‹ˆ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๋‚ด๊ตฌ์„ฑ์ด ๋†’์•„ ํŒŒ์ผ์„ ์œ ์‹คํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋งค์šฐ ์ ์Šต๋‹ˆ๋‹ค. ๊ฐ€์šฉ์„ฑ๋„ ๋†’์Šต๋‹ˆ๋‹ค. ์ฆ‰, ์Šคํ† ๋ฆฌ์ง€์— ์ €์žฅ๋œ ํŒŒ์ผ๋“ค์„ ์ •์ƒ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์‹œ๊ฐ„์ด ๊น๋‹ˆ๋‹ค. S3์—๋Š” ๋‹ค์–‘ํ•œ ์Šคํ† ๋ฆฌ์ง€ ํด๋ž˜์Šค๋ฅผ ์ œ๊ณตํ•จ์— ๋”ฐ๋ผ ํšจ์œจ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋Œ€ํ‘œ์ ์ธ ํด๋ž˜์Šค๋กœ๋Š” Standard ํด๋ž˜์Šค์™€ Glacier ํด๋ž˜์Šค๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. Standard ํด๋ž˜์Šค๋Š” ๋ฒ”์šฉ์ ์ธ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ์ข‹์Šต๋‹ˆ๋‹ค. ์ ‘๊ทผ ์†๋„๊ฐ€ ๋น ๋ฅด์ง€๋งŒ  ์˜ค๋ž˜ ๋ณด๊ด€ํ•˜๋Š” ๋ชฉ์ ์œผ๋กœ๋Š” ํšจ์œจ์ ์ธ ์„ ํƒ์ง€๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. Glacier ํด๋ž˜์Šค๋Š” ์žฅ๊ธฐ์ ์ธ ๋ณด๊ด€ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

 

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

 

 

Region

EC2, RDS, S3 ์„œ๋น„์Šค๋Š” ๊ณตํ†ต์ ์œผ๋กœ ๋†’์€ ๊ฐ€์šฉ์„ฑ๊ณผ ๋‚ด๊ตฌ์„ฑ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ๋ณด์žฅํ•  ์ˆ˜ ์žˆ๋Š” ์ด์œ ๋Š” AWS๋Š” ๋‹ค์–‘ํ•œ ์ง€์—ญ์— Region(๋ฆฌ์ „)์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๋ฆฌ์ „์ด๋ž€ AWS์—์„œ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด์„œ ์šด์˜ํ•˜๋Š” ๋ฌผ๋ฆฌ์ ์ธ ์„œ๋ฒ„์˜ ์œ„์น˜๋ฅผ ๋œปํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ๋ฆฌ์ „ ์•ˆ์— ์กด์žฌํ•˜๋Š” ๋ฐ์ดํ„ฐ ์„ผํ„ฐ๋Š” ๊ฐ€์šฉ์˜์—ญ์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ํ•œ ๊ณณ์˜ ๊ฐ€์šฉ ์˜์—ญ์ด ์žฌ๋‚œ์ด๋‚˜ ์‚ฌ๊ณ ๋กœ ์ธํ•ด ๊ฐ€๋™์ด ๋ถˆ๊ฐ€๋Šฅํ•ด์ง€๋”๋ผ๋„ ๋‹ค๋ฅธ ๊ฐ€์šฉ ์˜์—ญ์— ๋ฐฑ์—…์„ ํ•ด๋†“์€ ๋ฐ์ดํ„ฐ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋ฌธ์ œ์—†์ด ์„œ๋ฒ„๊ฐ€ ๊ฐ€๋™๋˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฐ ๊ฐ€๋™ ๋ฐฉ์‹ ๋•๋ถ„์— ๋†’์€ ๊ฐ€์šฉ์„ฑ๊ณผ ๋‚ด๊ตฌ์„ฑ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.