๐Ÿงฐ DevOps

SpringBoot, MariaDB ํ”„๋กœ์ ํŠธ AWS ๋ฐฐํฌํ•˜๊ธฐ ์ด์ •๋ฆฌ(1)โ—

์—ฐ_์šฐ๋ฆฌ 2022. 2. 18. 20:15
๋ฐ˜์‘ํ˜•

SpringBoot, MariaDB ํ”„๋กœ์ ํŠธ AWS ๋ฐฐํฌํ•˜๊ธฐ ์ด์ •๋ฆฌ(1)โ— << ํ˜„์žฌ ๊ฒŒ์‹œ๊ธ€

1. ํ”„๋ฆฌํ‹ฐ์–ด ๊ฐ€๊ฒฉํ™•์ธ
2. EC2 (์„œ๋ฒ„)์ƒ์„ฑํ•˜๊ธฐ
3. ์˜ˆ์‚ฐ ์„ค์ •ํ•˜๊ธฐ(AWS Budgets)
4. IP ๊ณ ์ •ํ•˜๊ธฐ (ํƒ„๋ ฅ์  IP, Elastic IP)

 

SpringBoot, MariaDB ํ”„๋กœ์ ํŠธ AWS ๋ฐฐํฌํ•˜๊ธฐ ์ด์ •๋ฆฌ(2)โ—

5. Putty ์„ค์น˜ ๋ฐ ์ ‘์†
6. Open JDK11 ์„ค์น˜ ๋ฐ ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์„ค์ •
7. MariaDB ์„ค์น˜
8. HeidiSQL๋กœ EC2์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์›๊ฒฉ ์ ‘์†ํ•˜๊ธฐ

 

SpringBoot, MariaDB ํ”„๋กœ์ ํŠธ AWS ๋ฐฐํฌํ•˜๊ธฐ ์ด์ •๋ฆฌ(3)โ—

9. SpringBoot ํ”„๋กœ์ ํŠธ Github์— ์—…๋กœ๋“œํ•˜๊ธฐ
10. Git ์„ค์น˜ ๋ฐ Repository Cloneํ•˜๊ธฐ
11. jarํŒŒ์ผ ์‹คํ–‰ํ•˜๊ธฐ
    โญ์ฃผ์˜!
12. ์‹คํ–‰ํ™•์ธํ•ด๋ณด๊ธฐ

 

 

 

 

 

1. ํ”„๋ฆฌํ‹ฐ์–ด ๊ฐ€๊ฒฉํ™•์ธ

 

https://aws.amazon.com/ko/free/

 

๋ฌด๋ฃŒ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์„œ๋น„์Šค - AWS ํ”„๋ฆฌ ํ‹ฐ์–ด

Q: AWS ํ”„๋ฆฌ ํ‹ฐ์–ด๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? AWS ํ”„๋ฆฌ ํ‹ฐ์–ด๋Š” ๊ณ ๊ฐ์—๊ฒŒ ์„œ๋น„์Šค๋ณ„๋กœ ์ง€์ •๋œ ํ•œ๋„ ๋‚ด์—์„œ ๋ฌด๋ฃŒ๋กœ AWS ์„œ๋น„์Šค๋ฅผ ์‚ดํŽด๋ณด๊ณ  ์‚ฌ์šฉํ•ด ๋ณผ ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ํ”„๋ฆฌ ํ‹ฐ์–ด๋Š” 12๊ฐœ์›” ํ”„๋ฆฌ ํ‹ฐ์–ด, ์ƒ

aws.amazon.com

 

์œ„ ํŽ˜์ด์ง€ ์ ‘์† ํ›„ "ec2"๋กœ ๊ฒ€์ƒ‰ํ•˜๋ฉด ๊ธฐ๋ณธ ์ œ๊ณต ๋‚ด์šฉ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

 

์•„๋ž˜ ๋งํฌ์—์„œ๋„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

https://aws.amazon.com/ko/ec2/pricing/on-demand/

 

EC2 ์˜จ๋””๋งจ๋“œ ์ธ์Šคํ„ด์Šค ์š”๊ธˆ – Amazon Web Services

 

aws.amazon.com

 

ํ”„๋ฆฌํ‹ฐ์–ด๋Š” ec2์˜ t2.micro์ธ์Šคํ„ด์Šค 1๊ฐœ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ, 1๋…„๋™์•ˆ

 - 750์‹œ๊ฐ„ ๋ฌด๋ฃŒ(24์‹œ๊ฐ„ 30์ผ +a)๋กœ ์‚ฌ์šฉ๊ฐ€๋Šฅ. ํ”„๋ฆฌํ‹ฐ์–ด์ธ 750์‹œ๊ฐ„์ด ์ข…๋ฃŒ๋˜์—ˆ์„ ๋•Œ, ์‹œ๊ฐ„๋‹น 16์›์”ฉ ๋ถ€๊ณผํ•œ๋‹ค.

 - EBS(์ €์žฅ์žฅ์น˜) 30GB ์‚ฌ์šฉ๊ฐ€๋Šฅ

 - ๋ฐ์ดํ„ฐ ์ „์†ก๋‹น ์š”๊ธˆ : ์š”์ฒญ๋ฐ›๋Š”๊ฑด ๋ฌด๋ฃŒ์ง€๋งŒ, ์‘๋‹ต ๋ณด๋‚ด๋Š”๊ฑด ์›” 1G์ด์ƒ ๋˜๋ฉด 1G๋‹น 150์› ์ •๋„๋ฅผ ๋ถ€๊ณผํ•œ๋‹ค.

 

โš  ์š”๊ธˆ์— ๋Œ€ํ•œ๊ฑด ์‚ฌ์šฉ์ž๊ฐ€ ๊ผญ ์ฐพ์•„๋ณด๊ณ  ๋‹ค์‹œ ํ•œ๋ฒˆ ํ™•์ธํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค!!! ์ €๋„ ์ฐพ์•„๋ณด๊ณ  ํ•˜๋Š”๊ฑฐ๋ผ.. ์ •ํ™•ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์–ด์š”

 

 

 

2. EC2 (์„œ๋ฒ„)์ƒ์„ฑํ•˜๊ธฐ

์ปดํ“จํ„ฐ๋ฅผ ํ•˜๋‚˜ ๋Œ€์—ฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค! 

 

2-1. AWS Management Console ํŽ˜์ด์ง€์—์„œ EC2๋กœ ๊ฒ€์ƒ‰ํ•˜์ž

 

2-2. ์ธ์Šคํ„ด์Šค ๋ฉ”๋‰ด๋กœ ๋“ค์–ด์™€์„œ ์šฐ์ธก ์ƒ๋‹จ์˜ "์ธ์Šคํ„ด์Šค ์‹œ์ž‘" ํด๋ฆญ

 

2-3. AMI ์„ ํƒ : ๋งˆ์Œ์— ๋“œ๋Š” ์šด์˜์ฒด์ œ ์„ ํƒํ•˜๋ฉด๋œ๋‹ค.

๊ตฌ๊ธ€ ํŠธ๋ Œ๋“œ์— ๊ฒ€์ƒ‰ํ•˜๋‹ˆ ubuntu๊ฐ€ ๋” ๋†’๋‹ค.. ubuntu๋ฅผ ์„ ํƒํ•˜๊ฒ ๋‹ค.

 

2-4. ์ธ์Šคํ„ด์Šค ์œ ํ˜• ์„ ํƒ : ๋ฌด๋ฃŒ๋กœ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•œ t2.micro ์„ ํƒ

vCPUs : ๊ฐ€์ƒ CPU์˜ ๊ฐœ์ˆ˜

Memory : Ram์šฉ๋Ÿ‰

type : ๊ฐ ์ปดํ“จํ„ฐ๊ฐ€ ์–ด๋–ค ์„ฑ๋Šฅ์— ์ง‘์ค‘๋˜์—ˆ๋Š”์ง€ ํ‘œํ˜„ํ•ด์ค€๋‹ค.

 - t : general ๋ฒ”์šฉ์ ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

 - m : memory์— ์„ฑ๋Šฅ ์ง‘์ค‘๋จ

 - c : cpu์— ์„ฑ๋Šฅ ์ง‘์ค‘๋จ

 - g : gpu์— ์„ฑ๋Šฅ ์ง‘์ค‘๋จ

 - s : storage์— ์„ฑ๋Šฅ ์ง‘์ค‘๋จ

 

2-5. ์ธ์Šคํ„ด์Šค ์„ธ๋ถ€ ์ •๋ณด ๊ตฌ์„ฑ : ๊ธฐ๋ณธ์„ค์ • ๊ทธ๋Œ€๋กœ ๋†”๋‘์ž

 

 

2-6. ์Šคํ† ๋ฆฌ์ง€ ์ถ”๊ฐ€ : ํ”„๋ฆฌํ‹ฐ์–ด๋Š” 30GB๊นŒ์ง€ ๋ฌด๋ฃŒ์ œ๊ณตํ•œ๋‹ค.

 

2-7. ํƒœ๊ทธ ์ถ”๊ฐ€ : ์ถ”๊ฐ€ ์•ˆํ•ด๋„๋œ๋‹ค. ๋‹ค์Œ ํด๋ฆญ

 

2-8. ๋ณด์•ˆ ๊ทธ๋ฃน ๊ตฌ์„ฑ 

๊ทœ์น™ ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•˜์—ฌ 3๊ฐ€์ง€ ์ถ”๊ฐ€

 - HTTP, ํฌํŠธ 80 : ์›น์„œ๋ฒ„๋‹ˆ๊นŒ HTTP๋กœ ํ†ต์‹ ํ•ด์•ผํ•œ๋‹ค.

 - ์‚ฌ์šฉ์ž์ง€์ • TCP๊ทœ์น™, ํฌํŠธ 8080 : SpringBoot๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ localhost:8080์œผ๋กœ ์‹คํ–‰๋œ๋‹ค. ๋”ฐ๋ผ์„œ 8080์ถ”๊ฐ€

 - MYSQL/Aurora, ํฌํŠธ 3306 : MariaDB๋„ Mysql๋กœ ์„ ํƒํ•œ๋‹ค. MariaDB์™€ MySQL๋‘˜๋‹ค ๊ธฐ๋ณธ ํฌํŠธ๋Š” 3306์ด๋‹ค.

 

์–ด๋Š ๊ณณ์—์„œ๋‚˜ ์ ‘์† ๊ฐ€๋Šฅํ•˜๊ฒŒ ์†Œ์Šค์—๋Š” ๋ชจ๋‘ ์œ„์น˜๋ฌด๊ด€์œผ๋กœ ์„ค์ •ํ•ด์ค€๋‹ค. 

 

2-9. ๊ฒ€ํ†  : ์ƒ์„ฑํ•  EC2 ์„ค์ •์„ ๋‹ค์‹œ ํ•œ๋ฒˆ ํ™•์ธํ•œ๋‹ค. ์‹œ์ž‘ํ•˜๊ธฐ ํด๋ฆญ

 

2-10. ์ƒ์„ฑ๋˜๋Š” EC2์— ์ ‘๊ทผํ•˜๋ ค๋ฉด "ํ‚ค"๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

ํ‚ค ์ด๋ฆ„์„ ์ž‘์„ฑํ•˜๊ณ  ๋‹ค์šด๋ฐ›์œผ๋ฉด pemํŒŒ์ผ์ด ๋‹ค์šด๋ฐ›์•„์ง„๋‹ค.

์ธ์Šคํ„ด์Šค ์‹œ์ž‘ ๋ฒ„ํŠผ๋„ ํ™œ์„ฑํ™”๋˜๋‹ˆ ํด๋ฆญํ•ด์ฃผ์ž.

 

2-11. ๊ฒฐ์ œ ์•Œ๋ฆผ์„ ๊ผญ ์ƒ์„ฑํ•˜์žโ—โ—โ—โ—โ—โ—โ—

๋‚˜๋„ ๋ชจ๋ฅด๊ฒŒ ๊ฒฐ์ œ๊ธˆ์•ก์ด ์ฐจ๊ณก์ฐจ๊ณก ์Œ“์ด๊ณ ์žˆ๋‹ค๋ฉด.. ์ •๋ง ๋”์ฐํ•˜๋‹ค

๊ฒฐ์ œ ์•Œ๋ฆผ ์ƒ์„ฑํ•˜๊ณ  ์ธ์Šคํ„ด์Šค ๋ณด๊ธฐ ํด๋ฆญ

 

2-12. ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ ์™„๋ฃŒ

name์— ์•„์ด์ฝ˜์„ ํด๋ฆญํ•˜๋ฉด ์ด๋ฆ„์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

๋ฐ˜์‘ํ˜•

 

3. ์˜ˆ์‚ฐ ์„ค์ •ํ•˜๊ธฐ(AWS Budgets)

 

3-1. budgets์„ ๊ฒ€์ƒ‰ํ•ด์„œ ๋“ค์–ด์˜ค์ž

 

3-2. ์˜ˆ์‚ฐ ์ž‘์„ฑ ํด๋ฆญ

 

3-3. ์˜ˆ์‚ฐ ์œ ํ˜• ์„ ํƒ : ๋น„์šฉ ์˜ˆ์‚ฐ ์„ ํƒ

 

3-4. ๋นจ๊ฐ„ ๋ถ€๋ถ„ ์ฑ„์›Œ๋„ฃ๊ณ  ๋‹ค์Œ

 

3-5. ์•Œ๋ฆผ ์ž„๊ณ„๊ฐ’ ์ถ”๊ฐ€, ๋‚ด์šฉ ์ถ”๊ฐ€ํ•œ๋‹ค. ์ด๋ฉ”์ผ์€ , ๋กœ ๊ตฌ๋ถ„ํ•ด์„œ ์—ฌ๋Ÿฌ๊ฐœ ์ž‘์„ฑ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

3-6. ๋‚ด์šฉ ํ™•์ธ ํ›„ ๋‹ค์Œ ํด๋ฆญ, 

      ๊ฒ€ํ†  ํŽ˜์ด์ง€์—์„œ๋„ ๋‚ด์šฉ ํ™•์ธ ํ›„ ์˜ˆ์‚ฐ ์ž‘์„ฑ ํด๋ฆญ

 

 

4. IP ๊ณ ์ •ํ•˜๊ธฐ (ํƒ„๋ ฅ์  IP, Elastic IP)

 

๋‹ค์‹œ EC2๋กœ ๋Œ์•„์˜ค์ž.

์ธ์Šคํ„ด์Šค๋ฅผ ์ค‘์ง€ํ–ˆ๋‹ค๊ฐ€ ๋‹ค์‹œ ์‹คํ–‰ํ•˜๋ฉด IP๊ฐ€ ๋ณ€๊ฒฝ๋œ๋‹ค. ์ด๊ฒƒ์„ ๊ณ ์ •ํ•  ์ˆ˜ ์žˆ๊ฒŒํ•œ๋‹ค.

 

4-1. ํƒ„๋ ฅ์  IP์ฃผ์†Œ ํ• ๋‹น ํด๋ฆญ

 

4-2. ๊ธฐ๋ณธ์„ค์ •์œผ๋กœ ๋†”๋‘๊ณ  ํ• ๋‹น ํด๋ฆญ

 

4-3. ๊ณ ์ • IP๊ฐ€ ์ƒ์„ฑ๋˜์—ˆ๋‹ค.

์˜ค๋ฅธ์ชฝ์œผ๋กœ ์Šคํฌ๋กค์„ ์ด๋™ํ•ด๋ณด๋ฉด ์—ฐ๊ฒฐ๋œ ์ธ์Šคํ„ด์Šค ID๊ฐ€ ๋น„์–ด์žˆ์„ ๊ฒƒ์ด๋‹ค. ์—ฌ๊ธฐ์— ์ƒ์„ฑํ•œ ์ธ์Šคํ„ด์Šค๋ฅผ ์—ฐ๊ฒฐํ•ด์ฃผ๋ฉด๋œ๋‹ค.

๋…น์ƒ‰๋ฐ”์— "์ด ํƒ„๋ ฅ์  IP์ฃผ์†Œ ์—ฐ๊ฒฐ" ํด๋ฆญ

 

4-4. ์ธ์Šคํ„ด์Šค ๋ถ€๋ถ„์„ ํด๋ฆญํ•˜์—ฌ ์ƒ์„ฑ๋œ ์ธ์Šคํ„ด์Šค๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋‹ค. 

์„ ํƒ ํ›„ ์—ฐ๊ฒฐ ํด๋ฆญ

 

4-5. ์—ฐ๊ฒฐ์™„๋ฃŒ

 

 

 

 

๋ฐ˜์‘ํ˜•
  • ๋„ค์ด๋ฒ„ ๋ธ”๋Ÿฌ๊ทธ ๊ณต์œ ํ•˜๊ธฐ
  • ํŽ˜์ด์Šค๋ถ ๊ณต์œ ํ•˜๊ธฐ
  • ํŠธ์œ„ํ„ฐ ๊ณต์œ ํ•˜๊ธฐ
  • ๊ตฌ๊ธ€ ํ”Œ๋Ÿฌ์Šค ๊ณต์œ ํ•˜๊ธฐ
  • ์นด์นด์˜คํ†ก ๊ณต์œ ํ•˜๊ธฐ