18A. ELB ๋ก๋ ๋ฐธ๋ฐ์ ์์ฑํ๊ธฐ
18A. ELB ๋ก๋ ๋ฐธ๋ฐ์ ์์ฑํ๊ธฐ ๊ด๋ จ
์ด์ ELB ๋ก๋ ๋ฐธ๋ฐ์๋ฅผ ์์ฑํด๋ณด๊ฒ ์ต๋๋ค. AWS ์ฝ์๋ก ์ ์ํ ๋ค ๋ฉ์ธ ํ๋ฉด์์ Compute & Networking์ EC2๋ฅผ ํด๋ฆญํฉ๋๋ค. ELB๋ ํญ์ EC2์ ํจ๊ป ์ฌ์ฉํด์ผ ํ๋ฏ๋ก EC2์ ๊ฐ์ ํ์ด์ง์ ์์ต๋๋ค.
์ค๋ฅธ์ชฝ ์์์ ELB์ EC2๊ฐ ์์ฑ๋๋ ๋ฆฌ์ ์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
๋จผ์ ELB ๋ก๋ ๋ฐธ๋ฐ์์ ์ฐ๊ฒฐํ EC2 ์ธ์คํด์ค๋ฅผ ์์ฑํด์ผ ํฉ๋๋ค.
ELB ๋ก๋ ๋ฐธ๋ฐ์๋ฅผ ์์ฑํฉ๋๋ค.
- Load Balancer name: ๋ก๋ ๋ฐธ๋ฐ์ ์ด๋ฆ์ ๋๋ค. exampleelb๋ฅผ ์ ๋ ฅํฉ๋๋ค.
- Create LB Inside: ๋ก๋ ๋ฐธ๋ฐ์๊ฐ ์์ฑ๋ VPC์ ๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
- Create an internal load balancer: ์ธํฐ๋ท์ ์ฐ๊ฒฐ๋์ง ์์ ๋ด๋ถ ๋ก๋ ๋ฐธ๋ฐ์๋ก ์์ฑํ๋ ์ต์ ์ ๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฒดํฌ๋ฅผ ํด์ ํฉ๋๋ค.
- Enable advanced VPC configuration: VPC์ ์ํ ์๋ธ๋ท์ ์ ํํ๋ ์ต์ ์ ๋๋ค. ์ด ๋ถ๋ถ์ ์ฒดํฌํ๋ฉด ๋ค์์ ์๋ธ๋ท์ ์ ํํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฒดํฌ๋ฅผ ํด์ ํฉ๋๋ค.
- Listener Configuration: ๋ก๋ ๋ฐธ๋ฐ์๊ฐ ์ฒ๋ฆฌํ ํ๋กํ ์ฝ๊ณผ ํฌํธ ๋ฒํธ์ ๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
- HTTP, HTTPS(Secure HTTP): ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉํ๋ HTTP ํ๋กํ ์ฝ์ ๋๋ค.
- TCP, SSL(Secure TCP): ์์ผ ํต์ ๋ฑ TCP ํ๋กํ ์ฝ์ ์ฌ์ฉํ ๋ ์ ํํฉ๋๋ค.
ํฌ์ค ์ฒดํฌ(Health Check) ๊ธฐ๋ฅ์ ์ค์ ํฉ๋๋ค.
- Ping Protocol: ํฌ์ค ์ฒดํฌ๋ฅผ ํ ๋ ์ฌ์ฉํ ํ๋กํ ์ฝ์ ๋๋ค. HTTP, HTTPS, TCP, SSL์ ์ ํํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
- Ping Port: ํฌ์ค ์ฒดํฌ๋ฅผ ํ ๋ ์ฌ์ฉํ ํฌํธ ๋ฒํธ์ ๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
- Ping Path: ํฌ์ค ์ฒดํฌ๋ฅผ ํ ๋ ์ ์ํ ๊ฒฝ๋ก์ ๋๋ค. HTTP, HTTPS์์๋ง ์ค์ ํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
- Response Timeout: ํฌ์ค ์ฒดํฌ ์๋ต ์๊ฐ์ ๋๋ค. ์ด ์๊ฐ์ด ์ง๋๋ ์๋ต์ด ์์ผ๋ฉด EC2 ์ธ์คํด์ค ๊ฐ๋ ํ์ธ์ ์คํจํ ๊ฒ์ผ๋ก ํ๋จํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
- Health Check Interval: ํฌ์ค ์ฒดํฌ ์ฃผ๊ธฐ์ ๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
- Unhealthy Threshold: ์ฐ์์ผ๋ก ์ค์ ํ ๊ฐ๋งํผ ๊ฐ๋ ํ์ธ์ ์คํจํ์ ๋ ๊ฐ๋์ด ์ค๋จ๋ ๊ฒ์ผ๋ก ํ๋จํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
- Healthy Threshold: ๊ฐ๋์ด ์ค๋จ๋์ด ํธ๋ํฝ ๋ถ์ฐ์์ ์ ์ธ๋์์ ๋ ์ฐ์์ผ๋ก ์ค์ ๋ ๊ฐ๋งํผ ๊ฐ๋ ํ์ธ์ ์ฑ๊ณตํ๋ฉด ๋ค์ ํฌํจ๋ฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
ELB ๋ก๋ ๋ฐธ๋ฐ์์ Security Group์ ์์ฑํฉ๋๋ค.
- Assign a security group: ๋ก๋ ๋ฐธ๋ฐ์์ Security Group์ ๋๋ค. Create a new security group์ ์ ํํฉ๋๋ค.
- Security group name: ์๋ก ์์ฑ๋ Security Group ์ด๋ฆ์ ๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
- Description: ์๋ก ์์ฑ๋ Security Group์ ์ค๋ช ์ ๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
- ์์์ Load Balancer Protocol์ HTTP์ 80๋ฒ ํฌํธ๋ก ์ค์ ํ์ผ๋ฏ๋ก ๋์ผํ๊ฒ Type์ HTTP๋ก ์ค์ ํฉ๋๋ค.
์์์ ์์ฑํ EC2 ์ธ์คํด์ค 2๊ฐ๋ฅผ ์ ํํ์ฌ ELB ๋ก๋ ๋ฐธ๋ฐ์์ ์ฐ๊ฒฐํฉ๋๋ค.
- Enable Cross-Zone Load Balancing: ์ฌ๋ฌ ๊ฐ์ฉ ์์ญ์ ์์ฑ๋ EC2 ์ธ์คํด์ค์ ๋ถํ๋ฅผ ๋ถ์ฐํ๋ ์ต์ ์ ๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
- Enable Connection Draining: Connection Draining ์ฌ์ฉ ์ต์ ์ ๋๋ค. 1์ด๋ถํฐ 3600์ด(1์๊ฐ)๊น์ง ์ค์ ํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
์ง๊ธ๊น์ง ์ค์ ํ ๋ด์ฉ์ ์ด์์ด ์๋์ง ํ์ธํฉ๋๋ค.
ELB ๋ก๋ ๋ฐธ๋ฐ์(exampleelb
) ์์ฑ์ด ์๋ฃ๋์์ต๋๋ค.
ELB ๋ก๋ ๋ฐธ๋ฐ์ ๋ชฉ๋ก([NETWORK & SECURITY]
โ [Load Balancers]
)์ ELB ๋ก๋ ๋ฐธ๋ฐ์(exampleelb
)๊ฐ ์์ฑ๋์์ต๋๋ค. ์๋ ELB ์ธ๋ถ ๋ด์ฉ์ ์ด ELB ๋ก๋ ๋ฐธ๋ฐ์์ DNS Name์ด ํ์๋ฉ๋๋ค.
Route 53์ ELB
AWS์์ ์ ๊ณตํ๋ ELB ๋ก๋ ๋ฐธ๋ฐ์์ DNS Name๋์ ์์ ์ด ๊ตฌ์ ํ ๋๋ฉ์ธ์ ์ฌ์ฉํ๋ ค๋ฉด Route 53์์ A ๋ ์ฝ๋๋ฅผ ์์ฑํ ๋ Alias๋ฅผ Yes๋ก ์ ํํ๊ณ , Alias Target์์ ELB ๋ก๋ ๋ฐธ๋ฐ์๋ฅผ ์ ํํ๋ฉด ๋ฉ๋๋ค. Route 53 A ๋ ์ฝ๋ ์์ฑ ๋ฐฉ๋ฒ์ '17.2 Route 53 A ๋ ์ฝ๋ ์์ฑํ๊ธฐ'๋ฅผ ์ฐธ์กฐํ๊ธฐ ๋ฐ๋๋๋ค.