Home
>
Network
>
2024
>
๐[Network] Load Balancer(๋ก๋ ๋ฐธ๋ฐ์)๋ ๋ฌด์์ผ๊น์?
Network
๐[Network] Load Balancer(๋ก๋ ๋ฐธ๋ฐ์)๋ ๋ฌด์์ผ๊น์?
๐ Intro.
- โ๏ธ Load Balancer(๋ก๋ ๋ฐธ๋ฐ์)๋ ๋คํธ์ํฌ ํธ๋ํฝ์ ์ฌ๋ฌ ์๋ฒ๋ก ๋ถ์ฐ์์ผ ์์คํ
์ ์ฑ๋ฅ, ์์ ์ฑ, ๊ฐ์ฉ์ฑ์ ๋์ด๋ ๊ธฐ์ ๋๋ ์ฅ์น์
๋๋ค.
1๏ธโฃ Load Balancer(๋ก๋ ๋ฐธ๋ฐ์)์ ํต์ฌ ์ญํ .
-
1๏ธโฃ ํธ๋ํฝ ๋ถ์ฐ:
- โ๏ธ ์ฌ๋ฌ ์๋ฒ(๋
ธ๋)์ ์ฌ์ฉ์ ์์ฒญ(ํธ๋ํฝ)์ ๊ณ ๋ฅด๊ฒ ๋ถ์ฐ.
- โ๏ธ ํน์ ์๋ฒ์ ๊ณผ๋ถํ๊ฐ ๊ฑธ๋ฆฌ์ง ์๋๋ก ๊ด๋ฆฌ.
-
2๏ธโฃ ๊ณ ๊ฐ์ฉ์ฑ(High Availability):
- โ๏ธ ์ผ๋ถ ์๋ฒ๊ฐ ๋ค์ด๋๋๋ผ๋ ๋ค๋ฅธ ์๋ฒ๊ฐ ํธ๋ํฝ์ ์ฒ๋ฆฌํ์ฌ ์๋น์ค ์ค๋จ ๋ฐฉ์ง.
-
3๏ธโฃ ํ์ฅ์ฑ(Scalability):
- โ๏ธ ์๋ฒ๋ฅผ ์ถ๊ฐํ๊ฑฐ๋ ์ ๊ฑฐํ์ฌ ํธ๋ํฝ ์ฒ๋ฆฌ ๋ฅ๋ ฅ์ ์ฝ๊ฒ ํ์ฅ.
-
4๏ธโฃ ์ฅ์ ๊ฐ์ง ๋ฐ ๋ณต๊ตฌ:
- โ๏ธ ์ฃผ๊ธฐ์ ์ผ๋ก ์๋ฒ ์ํ๋ฅผ ํ์ธ(Health Check).
- โ๏ธ ๋ฌธ์ ๊ฐ ์๋ ์๋ฒ๋ก์ ํธ๋ํฝ ์ ๋ฌ์ ์ค๋จ.
2๏ธโฃ Load Balancer(๋ก๋ ๋ฐธ๋ฐ์)์ ์๋ ์๋ฆฌ.
-
1๏ธโฃ ํด๋ผ์ด์ธํธ ์์ฒญ:
- โ๏ธ ์ฌ์ฉ์๊ฐ ์น์ฌ์ดํธ๋ ์ ํ๋ฆฌ์ผ์ด์
์ ์์ฒญ์ ๋ณด๋.
-
2๏ธโฃ ๋ก๋ ๋ฐธ๋ฐ์(Load Balancer)๋ก ์ ๋ฌ:
- โ๏ธ ์์ฒญ์ ๋จผ์ ๋ก๋ ๋ฐธ๋ฐ์(Load Balancer)๋ก ์ ๋ฌ๋จ.
-
3๏ธโฃ ์๋ฒ ์ ํ:
- โ๏ธ ๋ก๋ ๋ฐธ๋ฐ์(Load Balancer)๋ ์ฌ๋ฌ ์๊ณ ๋ฆฌ์ฆ ์ค ํ๋๋ฅผ ์ฌ์ฉํ์ฌ ์ต์ ์ ์๋ฒ๋ฅผ ์ ํ.
-
4๏ธโฃ ์์ฒญ ์ ๋ฌ:
- โ๏ธ ์ ํ๋ ์๋ฒ๋ก ์์ฒญ์ ์ ๋ฌ.
-
5๏ธโฃ ์๋ต ๋ฐํ:
- โ๏ธ ์๋ฒ๋ ์์ฒญ์ ์ฒ๋ฆฌํ ํ, ์๋ต์ ๋ก๋ ๋ฐธ๋ฐ์(Load Balancer)๋ฅผ ํตํด ํด๋ผ์ด์ธํธ๋ก ๋ฐํ.
3๏ธโฃ ๋ก๋ ๋ฐธ๋ฐ์ฑ ์๊ณ ๋ฆฌ์ฆ(Load Balancing Algorithm)
-
1๏ธโฃ ๋ผ์ด๋ ๋ก๋น(Round Robin)
- โ๏ธ ์์ฒญ์ ๊ฐ ์๋ฒ์ ์์ฐจ์ ์ผ๋ก ๋ถ์ฐ.
-
2๏ธโฃ ๊ฐ์ค ๋ผ์ด๋ ๋ก๋น(Weighted Round Robin)
- โ๏ธ ์๋ฒ์ ๊ฐ์ค์น๋ฅผ ๋ถ์ฌํด ๋ ๊ฐ๋ ฅํ ์๋ฒ์ ๋ ๋ง์ ์์ฒญ ์ ๋ฌ.
-
3๏ธโฃ ์ต์ ์ฐ๊ฒฐ(Least Connections)
- โ๏ธ ํ์ฌ ๊ฐ์ฅ ์ ์ ์ฐ๊ฒฐ์ ๊ฐ์ง ์๋ฒ๋ก ์์ฒญ ์ ๋ฌ.
-
4๏ธโฃ IP ํด์(IP Hash)
- โ๏ธ ํด๋ผ์ด์ธํธ์ IP ์ฃผ์๋ฅผ ํด์๋ก ๋ณํํ์ฌ ํน์ ์๋ฒ๋ก ํญ์ ์ฐ๊ฒฐ.
-
5๏ธโฃ ์๋ต ์๊ฐ ๊ธฐ๋ฐ(Least Response Time)
- โ๏ธ ๊ฐ์ฅ ๋น ๋ฅด๊ฒ ์๋ตํ ์ ์๋ ์๋ฒ์ ์์ฒญ ์ ๋ฌ.
4๏ธโฃ ๋ก๋ ๋ฐธ๋ฐ์(Load Balancer)์ ์ ํ.
-
1๏ธโฃ ํ๋์จ์ด ๋ก๋ ๋ฐธ๋ฐ์(Hardware Load Balancer)
- โ๏ธ ์ ์ฉ ์ฅ๋น๋ก ํธ๋ํฝ์ ๋ถ์ฐ
- โ๏ธ ์: F5, Citrix NetScaler
-
2๏ธโฃ ์ํํธ์จ์ด ๋ก๋ ๋ฐธ๋ฐ์(Software Load Balancer)
- โ๏ธ ์ํํธ์จ์ด๋ก ๊ตฌํ๋ ๋ก๋ ๋ฐธ๋ฐ์(Load Balancer)
- โ๏ธ ์: Nginx, HAProxy
-
3๏ธโฃ ํด๋ผ์ฐ๋ ๋ก๋ ๋ฐธ๋ฐ์(Cloud Load Balancer)
- โ๏ธ ํด๋ผ์ฐ๋ ์๋น์ค ์ ๊ณต์๊ฐ ๊ด๋ฆฌํ๋ ๋ก๋ ๋ฐธ๋ฐ์(Load Balancer)
- โ๏ธ ์: AWS ELB(Elastic Load Balancer), GCP Load Balancer, Azure Load Balancer
5๏ธโฃ ๋ก๋ ๋ฐธ๋ฐ์(Load Balancer)์ ๊ณ์ธต.
-
1๏ธโฃ L4(Layer 4) ๋ก๋ ๋ฐธ๋ฐ์
- โ๏ธ OSI 4๊ณ์ธต(Transport Layer)์์ ์๋.
- โ๏ธ TCP/UDP ํ๋กํ ์ฝ ๊ธฐ๋ฐ์ ํธ๋ํฝ ๋ถ์ฐ.
- โ๏ธ ์๋๊ฐ ๋น ๋ฅด๊ณ ํจ์จ์ .
-
2๏ธโฃ L7(Layer 7) ๋ก๋ ๋ฐธ๋ฐ์
- โ๏ธ OSI 7๊ณ์ธต(Application Layer)์์ ์๋.
- โ๏ธ HTTP/HTTPS ํธ๋ํฝ์ ๊ธฐ๋ฐ์ผ๋ก ๋ถ์ฐ.
- โ๏ธ URL, ์ฟ ํค, HTTP ํค๋ ๋ฑ์ผ๋ก ์ธ๋ถ์ ์ธ ํธ๋ํฝ ์ ์ด ๊ฐ๋ฅ.
6๏ธโฃ ๋ก๋ ๋ฐธ๋ฐ์(Load Balancer)์ ์ฅ์ .
-
1๏ธโฃ ๊ณ ๊ฐ์ฉ์ฑ ๋ฐ ์์ ์ฑ
- โ๏ธ ์๋ฒ ์ฅ์ ์ ์๋์ผ๋ก ํธ๋ํฝ์ ๋ค๋ฅธ ์๋ฒ๋ก ์ ๋ฌ.
-
2๏ธโฃ ํ์ฅ์ฑ
- โ๏ธ ์์๊ฐ ์ฆ๊ฐํ ๋ ์๋ฒ๋ฅผ ์์ฝ๊ฒ ์ถ๊ฐ ๊ฐ๋ฅ.
-
3๏ธโฃ ๋ณด์ ๊ฐํ
- โ๏ธ DDoS ๊ณต๊ฒฉ ๋ฐฉ์ด, SSL ์ํธํ ์ง์.
-
4๏ธโฃ ์ฑ๋ฅ ์ต์ ํ
- โ๏ธ ํธ๋ํฝ์ ํจ์จ์ ์ผ๋ก ๋ถ์ฐํ์ฌ ์๋ฒ ๊ณผ๋ถํ ๋ฐฉ์ง.
7๏ธโฃ ๋ก๋ ๋ฐธ๋ฐ์(Load Balancer)์ ์ฌ์ฉ ์ฌ๋ก.
-
1๏ธโฃ ์น ์ ํ๋ฆฌ์ผ์ด์
- โ๏ธ ์ฌ๋ฌ ์น ์๋ฒ๋ก ํธ๋ํฝ์ ๋ถ์ฐํ์ฌ ๋น ๋ฅธ ์๋ต ์ ๊ณต.
-
2๏ธโฃ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ถํ ๋ถ์ฐ
- โ๏ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฝ๊ธฐ/์ฐ๊ธฐ ์์ฒญ์ ์ฌ๋ฌ DB ์๋ฒ๋ก ๋ถ์ฐ.
-
3๏ธโฃ ํด๋ผ์ฐ๋ ํ๊ฒฝ
- โ๏ธ AWS, Azure, GCP ๋ฑ์์ ํด๋ผ์ฐ๋ ๋ก๋ ๋ฐธ๋ฐ์(Cloud Load Balancer) ์ฌ์ฉ.
-
4๏ธโฃ API Gateway
- โ๏ธ API ์์ฒญ์ ์ฌ๋ฌ ์๋ฒ๋ก ๋ถ์ฐ ์ฒ๋ฆฌ.
8๏ธโฃ ๋ก๋ ๋ฐธ๋ฐ์(Load Balancer) ์ ํ ๊ธฐ์ค.
-
1๏ธโฃ ํธ๋ํฝ ์ ํ
- โ๏ธ HTTP/HTTPS ํธ๋ํฝ์ด๋ฉด Layer 7 ์ฌ์ฉ.
- โ๏ธ TCP/UDP ํธ๋ํฝ์ด๋ฉด Layer 4 ์ฌ์ฉ.
-
2๏ธโฃ ํ์ฅ์ฑ ์๊ตฌ์ฌํญ
- โ๏ธ ์์ง ํ์ฅ ๋๋ ์ํ ํ์ฅ
-
3๏ธโฃ ๋ณด์ ์๊ตฌ์ฌํญ
- โ๏ธ SSL/TLS ์ง์ ์ฌ๋ถ
-
4๏ธโฃ ์์ฐ๊ณผ ๋น์ฉ
- โ๏ธ ํ๋์จ์ด vs ์ํํธ์จ์ด vs ํด๋ผ์ฐ๋
๐ ๊ฒฐ๋ก .
- โ๏ธ ๋ก๋ ๋ฐธ๋ฐ์(Load Balancer)๋ ํธ๋ํฝ ๋ถ์ฐ, ๊ณ ๊ฐ์ฉ์ฑ, ํ์ฅ์ฑ, ๋ณด์์ ์ํ ํต์ฌ ์์.
- โ๏ธ ํด๋ผ์ฐ๋ ๊ธฐ๋ฐ์์ ์ด์ ์ค์ด๋ผ๋ฉด AWS ELB, Azure Load Balancer์ ๊ฐ์ ์๋น์ค๋ฅผ ๊ณ ๋ ค.
- โ๏ธ ์ ํ๋ฆฌ์ผ์ด์
์ ์๊ตฌ์ฌํญ์ ๋ฐ๋ผ L4 ๋๋ L7 ๋ก๋ ๋ฐธ๋ฐ์(Load Balancer)๋ฅผ ์ ํ.
- ๐ ํต์ฌ: โ์๋ฒ์ ๋ถ๋ด์ ๋๋๊ณ , ์ฅ์ ๋ฅผ ์ต์ํํ๋ฉฐ, ์๋น์ค ๊ฐ์ฉ์ฑ์ ๋์ธ๋ค.โ