Project/์‹นํ‹”์›€

[์‹นํ‹”์›€] 11/18 ๊ฐœ๋ฐœ์ผ์ง€ ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ ์„ค์ •

ํ•œ33 2024. 12. 1. 14:09

๐Ÿ’ก ๋ชฉํ‘œ

AWS ์—์„œ ์ œ๊ณตํ•˜๋Š” ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ ์œ ํ˜• ์ค‘์— Application Load Balancer ๋Š” ๋“ค์–ด์˜ค๋Š” ํŠธ๋ž˜ํ”ฝ์„ ์—ฌ๋Ÿฌ ์„œ๋ฒ„๋กœ ๋ถ„์‚ฐ์‹œ์ผœ ์„œ๋น„์Šค์˜ ๊ฐ€์šฉ์„ฑ๊ณผ ํ™•์žฅ์„ฑ์„ ๋ณด์žฅํ•œ๋‹ค. ๋˜ํ•œ, HTTP/HTTPS ๊ธฐ๋ฐ˜ ์š”์ฒญ์˜ ๋ผ์šฐํŒ… ๋ฐ ์œ ์—ฐํ•œ ํŠธ๋ž˜ํ”ฝ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋‚˜๋Š” 2๊ฐœ์˜ ์„œ๋น„์Šค ์„œ๋ฒ„๋ฅผ ์—ด์—ˆ๊ณ , ์ด๋ฅผ ALB ๋ฅผ ํ†ตํ•ด ํŠธ๋ž˜ํ”ฝ์„ ๋ถ„์‚ฐ์‹œํ‚ค๊ณ ์ž ํ–ˆ๋‹ค.


๐ŸŒฑ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ ์ƒ์„ฑ

 

ํ•„์ž๋Š” Application Load Balancer ๋ฅผ ์ƒ์ƒํ•˜๊ณ ์ž ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ALB ๋ฅผ ์„ ํƒํ–ˆ๋‹ค.

 

๋„คํŠธ์›Œํฌ ๋งค์นญ์€ ๋ณธ์ธ์˜ ์ธ์Šคํ„ด์Šค๊ฐ€ ์—ด๋ ค์žˆ๋Š” ๊ฐ€์šฉ ์˜์—ญ์— ํ•ด๋‹นํ•˜๋Š” ๊ฒƒ์„ ์„ ํƒํ•ด์•ผํ•œ๋‹ค.

์š”๊ตฌ์‚ฌํ•ญ๋Œ€๋กœ 2 ๊ฐœ ์ด์ƒ ์„ ํƒํ–ˆ๋‹ค.

 

 

๋‚ด ๋ฉ”์ธ ์„œ๋ฒ„ ์ธ์Šคํ„ด์Šค ๋‘ ๊ฐœ๊ฐ€ 8080 ํฌํŠธ๋กœ ํŠธ๋ž˜ํ”ฝ์„ ๋ฐ›๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํ”„๋กœํ† ์ฝœ ํฌํŠธ๋ฅผ HTTP 8080 ์œผ๋กœ ๋งž์ถฐ์ค€๋‹ค.

 

 

Spring Boot ์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— actuator ๋ฅผ ์ด์šฉํ•ด์„œ ์ƒํƒœ๊ฒ€์‚ฌ๋ฅผ ์ง„ํ–‰ํ•˜๊ณ ์ž ํ–ˆ๋‹ค.

 

์ƒํƒœ๊ฒ€์‚ฌ ๊ฒฝ๋กœ๋ฅผ /actuator/health ๋กœ ๋งž์ถฐ์ฃผ์—ˆ๋‹ค.

 

ํ”„๋กœ์ ํŠธ์— actuator ์ถ”๊ฐ€ํ•˜๊ธฐ

๋”๋ณด๊ธฐ

build.gradle

// Actuator
implementation 'org.springframework.boot:spring-boot-starter-actuator'

 

Actuator ์˜์กด์„ฑ์„ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค.

 

yml ํŒŒ์ผ ์ถ”๊ฐ€

spring security ์ˆ˜์ •

 

๋‘ ์„œ๋ฒ„์— ์ƒํƒœํ™•์ธ์ด Healthy ๋กœ ๋œจ๋ฉด์„œ ALB ์„ค์ •์ด ์ •์ƒ์ ์œผ๋กœ ์ด๋ฃจ์–ด์กŒ๋‹ค.

 

ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด์„œ ๋กœ๊ทธ์ธ์ด ์™„๋ฃŒ๋˜์—ˆ์„ ๋•Œ ํšŒ์› ์ •๋ณด๋ฅผ log ๋กœ ์ฐํžˆ๊ฒŒ ํ•˜์˜€๋Š”๋ฐ, 

๋‘ ์ธ์Šคํ„ด์Šค์— ssh ๋กœ ์ ‘๊ทผํ•ด ํ™•์ธํ•ด๋ณด๋ฉด ๋žœ๋ค์œผ๋กœ ๋‘ ์ธ์Šคํ„ด์Šค ์ค‘ ํ•œ ๊ณณ์— log ๊ฐ€ ์ฐํžˆ๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

์œ„์™€ ๊ฐ™์ด DNS ์ด๋ฆ„ ์ •๋ณด๋„ ํ™•์ธ ๊ฐ€๋Šฅํ–ˆ๋‹ค.