๐ ๋ค์ด๊ฐ๋ฉฐ
Kubernetes๋ฅผ ์ฌ์ฉํด ์ ํ๋ฆฌ์ผ์ด์
์ ๋ฐฐํฌํ๊ณ ์ธ๋ถ์ ๊ณต๊ฐํ๊ธฐ ์ํด LoadBalancer ์๋น์ค๋ฅผ ํ์ฉํ์ต๋๋ค. ํ์ง๋ง, ๋ฐฐํฌ ํ LoadBalancer์ HTTPS๋ฅผ ์ ์ฉํ๋ ค๊ณ ๋ณด๋, ์์ฑ๋ LoadBalancer๊ฐ ์ฐ๋ฆฌ๊ฐ ์ผ๋ฐ์ ์ผ๋ก ์๊ณ ์๋ ALB๊ฐ ์๋๋ผ CLB๋ก ์ค์ ๋ ๊ฒ์ ๋ฐ๊ฒฌํ์ต๋๋ค.
์ด๋ฒ ํฌ์คํ
์์๋ AWS์์ ์ ๊ณตํ๋ LoadBalancer ์ข
๋ฅ๋ณ ํน์ง๊ณผ ์ฐจ์ด์ ์ ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค.

ELB (Elastic Load Balancing)

ELB(Elastic Load Balancing)๋ ํ๋ ์ด์์ ๊ฐ์ฉ ์์ญ(AZ) ๋ด์ ์๋ ์ ํ๋ฆฌ์ผ์ด์
ํธ๋ํฝ์ ์๋์ผ๋ก ๋ถ์ฐํ๋ ์๋น์ค์
๋๋ค.
AWS์์๋ ELB๋ฅผ ํตํด ๊ณ ๊ฐ์ฉ์ฑ(High Availability)๊ณผ ํ์ฅ์ฑ(Scalability)์ ์ ๊ณตํ๋ฉฐ, ๋ค์ํ AWS ์๋น์ค์ ์ฐ๊ณํด ํจ์จ์ ์ผ๋ก ํธ๋ํฝ์ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค.
๐ ELB์ ์ข
๋ฅ

- Classic Load Balancer (CLB)
- Application Load Balancer (ALB)
- Network Load Balancer (NLB)
- Gateway Load Balancer (GWLB)
โ๏ธ ELB์ ์ฃผ์ ํน์ง ๋ฐ ๊ธฐ๋ฅ
1. ๊ฐ์ฉ์ฑ๊ณผ ํ์ฅ์ฑ
- ELB๋ ์ ํ๋ฆฌ์ผ์ด์
์ ๊ฐ์ฉ์ฑ๊ณผ ํ์ฅ์ฑ์ ๋์ฌ์ค๋๋ค.
- EC2, ECS, Lambda ๋ฑ ๋ค์ํ AWS ์๋น์ค์ ์ฐ๋ํ์ฌ ํธ๋ํฝ ๋ถํ๋ฅผ ๋ถ์ฐํฉ๋๋ค.
2. Health Checks
- ์๋ฒ ์ํ๋ฅผ ์ ๊ธฐ์ ์ผ๋ก ํ์ธํ๋ฉฐ, ๋ฌธ์ ๊ฐ ์๋ ์๋ฒ๋ก๋ ํธ๋ํฝ์ ์ ์กํ์ง ์์ต๋๋ค.
3. Connection Draining
- ์๋ฒ๊ฐ Unhealthy ์ํ์ผ ๋๋, ๊ธฐ์กด ์ฐ๊ฒฐ์ ์ง์ ๋ ์๊ฐ ๋์ ์ ์งํ๋ฉฐ ์ฒ๋ฆฌ ์ค์ธ ์์ฒญ์ ์๋ฃํฉ๋๋ค.
- ๊ธฐ๋ณธ์ ์ผ๋ก ALB์ CLB์์ ์ง์๋ฉ๋๋ค.
- ์: Connection Draining ์๊ฐ์ 200์ด๋ก ์ค์ ํ๋ฉด, ์๋ฒ ์ค๋ฅ ๋ฐ์ ํ 200์ด ๋์ ๊ธฐ์กด ์ฐ๊ฒฐ์ ์ ์งํฉ๋๋ค.
4. Slow Start Configuration
- ์๋กญ๊ฒ ์์๋ ์๋ฒ์ ํธ๋ํฝ์ด ์ ์ง์ ์ผ๋ก ์ ๋ฌ๋๋๋ก ์ค์ ํฉ๋๋ค.
- ALB์ NLB์์ ์ง์๋ฉ๋๋ค.
- ์๋ฒ๊ฐ ๊ณผ๋ถํ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ฒ์ฒํ ํธ๋ํฝ์ ๋ถ๋ฐฐํ์ฌ ์์ ์ ์ธ ์ํ๋ฅผ ์ ์งํฉ๋๋ค.
๐ ELB์ 4๊ฐ์ง ์ ํ
1. Classic Load Balancer (CLB)
- HTTP, HTTPS, TCP, SSL ํธ๋ํฝ์ ์ฒ๋ฆฌํฉ๋๋ค.
- Layer 4(์ ์ก ๊ณ์ธต) ๋ฐ Layer 7(์ ํ๋ฆฌ์ผ์ด์
๊ณ์ธต)์์ ๋์ํฉ๋๋ค.
- ๊ธฐ๋ณธ์ ์ธ ๋ก๋ ๋ฐธ๋ฐ์ฑ ๊ธฐ๋ฅ๋ง ์ ๊ณตํ๋ฉฐ, ALB์ NLB์ ๋นํด ๊ธฐ๋ฅ์ด ์ ํ์ ์
๋๋ค.
- ์ค๋๋ ์๋น์ค๋ก, ์ ๊ท ์์ฑ์๋ ๊ถ์ฅํ์ง ์์ต๋๋ค.
2. Application Load Balancer (ALB)
- HTTP/HTTPS ํธ๋ํฝ์ ์ฒ๋ฆฌํฉ๋๋ค.
- Layer 7(์ ํ๋ฆฌ์ผ์ด์
๊ณ์ธต)์์ ๋์ํ๋ฉฐ, ๊ณ ๊ธ ๋ผ์ฐํ
๊ธฐ๋ฅ์ ์ง์ํฉ๋๋ค.
- Path-Based Routing: URL ๊ฒฝ๋ก์ ๋ฐ๋ผ ์์ฒญ์ ๋ผ์ฐํ
.
์: /sports
, /shopping
- Host-Based Routing: ๋๋ฉ์ธ ์ด๋ฆ์ ๋ฐ๋ผ ์์ฒญ์ ๋ผ์ฐํ
.
์: www1.example.com
, www2.example.com
- ์ฟผ๋ฆฌ ๋ฌธ์์ด ๊ธฐ๋ฐ ๋ผ์ฐํ
: ์ฟผ๋ฆฌ ๋ฌธ์์ด ์กฐ๊ฑด์ ๋ฐ๋ผ ์์ฒญ์ ๋ผ์ฐํ
.
์: ?lang=en
, ?lang=kr
- Docker ๊ธฐ๋ฐ ์ปจํ
์ด๋ ์ ํ๋ฆฌ์ผ์ด์
๊ณผ์ ํตํฉ์ ์ฉ์ดํ๊ฒ ํฉ๋๋ค.
- ๊ณ ์ IP ์ฃผ์๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- NLB๋ฅผ ALB ์๋จ์ ๋์ด ๊ณ ์ IP๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ์์ผ๋ก ๋์ฒด ๊ฐ๋ฅํฉ๋๋ค.
- Sticky Session ๊ธฐ๋ฅ ์ง์
- ํด๋ผ์ด์ธํธ๊ฐ ๋์ผํ ์๋ฒ๋ก ์ฐ๊ฒฐ์ ์ ์งํ๋๋ก ์ค์ ํฉ๋๋ค.
3. Network Load Balancer (NLB)
- TCP, UDP, TLS ํธ๋ํฝ์ ์ฒ๋ฆฌํฉ๋๋ค.
- Layer 4(์ ์ก ๊ณ์ธต)์์ ๋์ํ๋ฉฐ, ๋์ ์ฑ๋ฅ๊ณผ ๋ฎ์ ์ง์ฐ ์๊ฐ์ ์ ๊ณตํฉ๋๋ค.
- ๊ณ ์ IP ์ฃผ์(Elastic IP)๋ฅผ ์ฌ์ฉํ ์ ์์ด ํด๋ผ์ด์ธํธ๋ ํญ์ ๋์ผํ IP๋ก ์ฐ๊ฒฐ ๊ฐ๋ฅํฉ๋๋ค.
- Lambda์ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค(HTTPS ๊ธฐ๋ฐ ํธ๋ํฝ๋ง ์ฒ๋ฆฌ ๊ฐ๋ฅ).
- ALB๋ Lambda์ ํตํฉ ๊ฐ๋ฅํฉ๋๋ค.
- Sticky Session ๊ธฐ๋ฅ์ ์ง์๋์ง ์์ต๋๋ค.
4. Gateway Load Balancer (GWLB)
- TCP/UDP ํธ๋ํฝ์ ์ฒ๋ฆฌํฉ๋๋ค.
- Layer 4(์ ์ก ๊ณ์ธต)์์ ๋์ํ๋ฉฐ, ๋ณด์ ๊ด๋ จ ๊ฐ์ ์ดํ๋ผ์ด์ธ์ค๋ฅผ ๋ฐฐํฌํ๊ณ ๊ด๋ฆฌํ ์ ์์ต๋๋ค.
- ๋ฐฉํ๋ฒฝ, ์นจ์
ํ์ง ๋ฐ ๋ฐฉ์ง ์์คํ
(IDS/IPS), ์ฌ์ธต ํจํท ๊ฒ์ฌ ์์คํ
๊ณผ ๊ฐ์ ์๋น์ค๋ฅผ ์ง์ํฉ๋๋ค.
- ํธ๋ํฝ์ด ์ ํ๋ฆฌ์ผ์ด์
์ ๋๋ฌํ๊ธฐ ์ ๊ฒ์ฌ ๋ฐ ๋ถ์์ด ๊ฐ๋ฅํฉ๋๋ค.
๐ ์ฐธ๊ณ ์๋ฃ