🐊 ELB : Elastic Load Balancing

BelugaΒ·2024λ…„ 4μ›” 23일

AWS μž„μ‹œ

λͺ©λ‘ 보기
17/35
post-thumbnail

ELB : Elastic Load Balancing

  • μ„œλ²„ ν˜Ήμ€ μ„œλ²„μ…‹μœΌλ‘œ νŠΈλž˜ν”½μ„ λ°±μ—”λ“œλ‚˜ λ‹€μš΄μŠ€νŠΈλ¦Ό EC2 μΈμŠ€ν„΄μŠ€ λ˜λŠ” μ„œλ²„λ“€λ‘œ μ „λ‹¬ν•˜λŠ” 역할을 ν•œλ‹€.
  • μΈμŠ€ν„΄μŠ€ μ•žμ— ELBκ°€ 있고 뒀에 μ„œλ²„μ…‹μ΄ μžˆμ„ λ•Œ μœ μ €λŠ” ELBλ₯Ό 톡해 λ°±μ—”λ“œ EC2 μΈμŠ€ν„΄μŠ€ 쀑 ν•˜λ‚˜λ‘œ 연결이 λœλ‹€.
  • 이 λ•Œ λ‹€λ₯Έ μœ μ €κ°€ ELB에 μ—°κ²°λœ 경우 이 λ‘œλ“œλŠ” λ‹€λ₯Έ EC2 μΈμŠ€ν„΄λ‘œ λ³΄λ‚΄μ§€κ²Œ λœλ‹€.
  • μ΄λŸ¬ν•œ 과정을 톡해 EC2 μΈμŠ€ν„΄μŠ€λ‘œ κ°€λŠ” λΆ€ν•˜λ₯Ό λΆ„μ‚°μ‹œν‚¨λ‹€.
  • μœ μ €λŠ” μžμ‹ λ“€μ΄ λ°±μ—”νŠΈ μΈμŠ€ν„΄μŠ€ 쀑 μ–΄λ–€ 것에 μ—°κ²°λ˜μ—ˆλŠ”μ§€ μ•Œ 수 μ—†λ‹€.
  • μœ μ €λ“€μ€ ELB에 μ—°κ²°λ˜λ©΄ ν•œ μ—”λ“œ ν¬μΈνŠΈμ— μ—°κ²° λœλ‹€λŠ” κ²ƒλ§Œ μ•Œκ³  μžˆλ‹€.

Load Balancer을 μ“°λŠ” 이유?

  • λΆ€ν•˜λ₯Ό λ‹€μˆ˜μ˜ λ‹€μš΄μŠ€νŠΈλ¦Ό μΈμŠ€ν„΄μŠ€λ‘œ λΆ„μ‚°μ‹œν‚€κΈ° μœ„ν•΄ μ‚¬μš©ν•œλ‹€.
  • μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ— 단일 μ•‘μ„ΈμŠ€ 지점(DNS)을 λ…ΈμΆœν•˜κ²Œ 되고 λ‹€μš΄μŠ€νŠΈλ¦Ό μΈμŠ€ν„΄μŠ€μ˜ μž₯μ• λ₯Ό μ›ν• νžˆ μ²˜λ¦¬ν•  수 있게 λœλ‹€.
  • λ‘œλ“œ λ°ΈλŸ°μ„œκ°€ μƒνƒœ 확인 λ§€μ»€λ‹ˆμ¦˜μœΌλ‘œ μ–΄λ–€ μΈμŠ€ν„΄μŠ€λ‘œ νŠΈλž˜ν”½μ„ 보낼 수 μ—†λŠ”μ§€ 확인해 μ€€λ‹€.
  • μΈμŠ€ν„΄μŠ€μ˜ μƒνƒœλ₯Ό 확인할 수 있게 λœλ‹€.
  • SSL μ’…λ£Œλ„ ν•  수 μžˆμœΌλ‹ˆ μ›Ή μ‚¬μ΄νŠΈμ— μ•”ν˜Έν™” 된 HTTPS νŠΈλž˜ν”½μ„ κ°€μ§ˆ 수 μžˆλ‹€.
  • μΏ ν‚€λ‘œ 고정도λ₯Ό κ°•ν™”ν•  수 μžˆλ‹€.
  • μ˜μ—­μ— 걸친 κ³ κ°€μš©μ„±μ„ κ°€μ§€κ²Œ λœλ‹€.
  • ν΄λΌμš°λ“œ 내에세 개인 νŠΈλž˜ν”½κ³Ό 곡곡 νŠΈλž˜ν”½μ„ 뢄리할 수 있게 λœλ‹€.

ELB(Elastic Load Balancing)λ₯Ό μ“°λŠ” 이유?

  • ELBλŠ” κ΄€λ¦¬ν˜• λ‘œλ“œ λ°ΈλŸ°μ„œμ΄κΈ°λ„ ν•˜λ‹€.
    • AWSκ°€ κ΄€λ¦¬ν•˜λ©° μ–΄λ–€ κ²½μš°μ—λ„ μž‘λ™ν•  것을 보μž₯ν•œλ‹€.
    • AWSκ°€ μ—…κ·Έλ ˆμ΄λ“œ μœ μ§€ 관리 및 κ³ κ°€μš©μ„±μ„ μ±…μž„μ§„λ‹€.
    • λ‘œλ“œ λ°ΈλŸ°μ„œμ˜ μž‘λ™ 방식을 μˆ˜μ •ν•  수 μžˆκ²Œλ” 일뢀 ꡬ성 놉도 μ œκ³΅ν•œλ‹€.
  • ELBλŠ” 무쑰건 μ“°λŠ” 편이 μ’‹λ‹€. 자체 λ‘œλ“œ λ°ΈλŸ°μ„œλ₯Ό λ§ˆλ ¨ν•˜λŠ” 것보닀 μ €λ ΄ν•˜κ³  자체 λ‘œλ“œ λ°ΈλŸ°μ„œλ₯Ό μ‚¬μš©ν•œλ‹€λ©΄ ν™•μž₯μ„± μΈ‘λ©΄μ—μ„œ ꡉμž₯히 번거둭기 λ•Œλ¬Έμ΄λ‹€.
  • λ˜ν•œ ELBλŠ” λ‹€μˆ˜μ˜ AWS μ„œλΉ„μŠ€λ“€κ³Ό ν†΅ν•©λ˜μ–΄ μžˆλ‹€.
    • EC2, EC2 Auto Scaling Groups, Amazon ECS, ACM, CloudWatch, Route 53, WAF λ“±λ“±...

μƒνƒœ 체크 (Health Checks)

  • μž‘λ™μ΄ μ˜¬λ°”λ₯΄κ²Œ 되고 μžˆλŠ”μ§€μ˜ μ—¬λΆ€λ₯Ό ν™•μΈν•˜κΈ° μœ„ν•΄ μ‚¬μš©λœλ‹€.
  • μž‘λ™λ˜κ³  μžˆμ§€ μ•Šλ‹€λ©΄ ν•΄λ‹Ή μΈμŠ€ν„΄μŠ€λ‘œλŠ” νŠΈλž˜ν”½μ„ 보낼 수 μ—†κΈ° λ•Œλ¬Έμ— λ‘œλ“œ λ°ΈλŸ°μ„œμ—κ² μΈμŠ€ν„΄μŠ€μ˜ μƒνƒœκ°€ μ•„μ£Ό μ€‘μš”ν•˜λ‹€.
  • μƒνƒœν™•μΈμ€ ν¬νŠΈμ™€ λΌμš°νŠΈμ—μ„œ 이루어진닀.
  • μƒνƒœκ°€ 200으둜 μ‘λ‹΅ν•˜μ§€ μ•ŠλŠ”λ‹€λ©΄ μΈμŠ€ν„΄μŠ€ μƒνƒœκ°€ μ’‹μ§€μ•Šλ‹€κ³  κΈ°λ‘λœλ‹€.
  • μƒνƒœκ°€ μ’‹μ§€μ•Šλ‹€λ©΄ ELBλŠ” ν•΄λ‹Ή μΈμŠ€ν„΄μŠ€λ‘œ νŠΈλž˜ν”½μ„ 보내지 μ•Šκ²Œ λœλ‹€.

AWS λ‘œλ“œ λ°ΈλŸ°μ„œμ˜ μ’…λ₯˜

  • AWSμ—λŠ” λ„€ μ’…λ₯˜μ˜ κ΄€λ¦¬ν˜• λ‘œλ“œ λ°ΈλŸ°μ„œκ°€ μžˆλ‹€.
  • Classic Load Balancer(v1 - old generation) / 2009 / CLB
    • HTTP, HTTPS, TCP, SSL (Secure TCP)을 μ§€μ›ν•œλ‹€.
    • AWSλŠ” 이제 이 λ‘œλ“œ λ°ΈλŸ°μ„œλ₯Ό μ‚¬μš©μ„ ꢌμž₯ν•˜μ§€ μ•ŠλŠ”λ‹€.
    • AWSμ—μ„œ 더 이상 μ§€μ›ν•˜μ§€ μ•ŠλŠ”λ‹€.
  • Application Load Balancer(v2 - new generation) / 2016 / ALB
    • HTTP, HTTPS, Web Socket을 μ§€μ›ν•œλ‹€.
  • Network Load Balancer (v2 - new generation) / 2017 / NLB
    • TCP, TLS (Secure TCP), UDPλ₯Ό μ§€μ›ν•œλ‹€.
  • Gateway Load Balancer / 2020 / GWLB
    • λ„€νŠΈμ›Œν¬μΈ΅(3계측)μ—μ„œ μž‘λ™ - IP Protocol
  • 더 λ§Žμ€ κΈ°λŠ₯을 κ°€μ§€κ³  μžˆλŠ” μ‹ ν˜• λ‘œλ“œ λ°ΈλŸ°μ„œλ₯Ό μ‚¬μš©ν•˜λŠ” 것이 ꢌμž₯λœλ‹€.
  • 일뢀 λ‘œλ“œ λ°ΈλŸ°μ„œλ“€μ€ 내뢀에 섀정될 수 μžˆμ–΄ λ„€νŠΈμ›Œν¬μ— 개인적 접근이 κ°€λŠ₯ν•˜κ³  μ›Ήμ‚¬μ΄νŠΈμ™€ 곡곡 μ• ν”Œλ¦¬μΌ€μ΄μ…˜ λͺ¨λ‘μ— μ‚¬μš© κ°€λŠ₯ν•œ μ™ΈλΆ€ 곡곡 λ‘œλ“œ λ°ΈλŸ°μ„œλ„ μžˆλ‹€.

λ‘œλ“œ λ°ΈλŸ°μ„œμ˜ λ³΄μ•ˆ κ·Έλ£Ή

  • μœ μ €λŠ” HTTPλ‚˜ HTTPSλ₯Ό μ΄μš©ν•˜μ—¬ μ–΄λ””μ„œλ“  λ‘œλ“œ λ°ΈλŸ°μ„œμ— 접근이 κ°€λŠ₯ν•˜λ‹€.
  • λ”°λΌμ„œ λ³΄μ•ˆκ·Έλ£Ήμ€ 포트 λ²”μœ„λŠ” 80, 443이고 μ†ŒμŠ€λŠ” 0.0.0.0/0으둜 μ–΄λ””λ“  κ°€λŠ₯ν•˜κ²Œ λœλ‹€.
  • μ—¬κΈ°μ„œ λ‘œλ“œ λ°ΈλŸ°μ„œλŠ” κ³§μž₯ λ“€μ–΄μ˜€λŠ” νŠΈλž˜ν”½λ§Œμ„ ν—ˆμš©ν•΄μ•Ό ν•˜κΈ° λ•Œλ¬Έμ— EC2 μΈμŠ€ν„΄μŠ€μ˜ λ³΄μ•ˆ κ·Έλ£Ή κ·œμΉ™μ€ 쑰금 달라야 ν•œλ‹€. 포트 80μ—μ„œ HTTP νŠΈλž˜ν”½μ„ ν—ˆμš©ν•˜λ©° μ†ŒμŠ€λŠ” IP λ²”μœ„κ°€ μ•„λ‹ˆλΌ λ³΄μ•ˆ 그룹이 λœλ‹€. μ—¬κΈ°μ„œ EC2의 λ³΄μ•ˆ 그룹을 λ‘œλ“œ λ°ΈλŸ°μ„œμ˜ λ³΄μ•ˆ 그룹으둜 μ—°κ²°ν•œλ‹€. μ΄λ ‡κ²Œ ν•¨μœΌλ‘œμ¨ EC2 μΈμŠ€ν„΄μŠ€λŠ” λ‘œλ“œ λ°ΈλŸ°μŠ€μ—μ„œ 온 νŠΈλž˜ν”½λ§Œμ„ ν—ˆμš©ν•˜κ²Œ λ˜λŠ” κ°•ν™”λœ λ³΄μ•ˆ λ§€μ»€λ‹ˆμ¦˜μ„ κ°€μ§€κ²Œ λœλ‹€.
profile
개발자

0개의 λŒ“κΈ€