Các loại Load Balancer trong AWS

Các loại Load Balancer

  • Classic Load Balancer - 2009 - CLB
  • Application Load Balancer - 2016 - ALB
  • Network Load Balancer - 2017 - NLB
  • Getway Load Balancer - 2020 - GLB Chúng ta nên sử dụng các phiên bản mới nhất để được hỗ trợ nhiều tính năng nhất có thể. Classic Load Balancer hiện tại không còn được sử dụng nhiều.

Application Load Balancer trong AWS

Application Load Balancer trong aws

  • Giải pháp này hoạt động ở tầng ứng dụng (layer 7), phù hợp nhất để cân bằng lưu lượng HTTP và HTTPS
  • Load balancing đến nhiều HTTP ứng dụng qua nhiều machine
  • Hỗ trợ redirect HTTP/HTTPs
  • Hỗ trợ route đến nhiều target group
    • VD: sample/users và sample/pots sẽ gọi đến 2 target group khác nhau

ALB route

  • ALB rất phù hợp với ứng dụng micro service
  • Chúng ta sẽ truy cập vào ALB trông qua 1 fixed hostname (xxx.region.elb.amazon.com)

Network Load Balancer trong AWS

Network Load Balancer trong aws Hoạt động ở layer 4 dùng để forward TCP&UDP traffic đến instance của bạn. có thể xử lý hàng triệu request trong 1 giây nhưng vẫn đảm bảo độ trễ thấp (~100ms, so với ALB ~400ms).

  • NLB có 1 static IP mỗi AZ
  • Chú ý: NLB không support free tier nên chú ý khi sử dụng.

Gateway Load Balancer trong AWS

Getway Load Balancer trong aws

  • GLB cho phép bạn triển khai, mở rộng, quản lý các ứng dụng 3th party network (Firewall...)
  • Hoak động ở Layer 3 (Network layer)
  • Sử dụng GENEVE protocol trên port 6081

Sticky Session trong load balancer

Sticky Session trong aws Sticky Session là một tính năng trong một hệ thống cân bằng tải cho website. Khi 1 user gửi request lần đầu tiên đến được Load Banlancer chỉ định 1 server xử lý request đó, đến lần request sau, cũng sẽ vẫn là server đó xử lý request. Tính năng này chủ yếu được sử dụng để đảm bảo một in-proc session nào đó sẽ không bị mất bởi các yêu cầu cho session được route đến các máy chủ khác nhau.

  • Option này chỉ hoạt động với Classic Load Banlancers & Application Load Balancers
  • Để tính năng này hoạt động, Client phải hỗ trợ cookies

Cross-Zone Load Balancing

Cross-Zone Load Balancing Như hình vẽ chúng ta có thể hình dung được Cross-Zone Load Balancing là gì, ở bổi cảnh này chúng ta có 1 AZ là A và B, trong AZ A có 4 server và B có 4 server. AWS ELB cung cấp 2 option bât/tắt Cross-Zone Load Balancing (enable/disable)

  • Khi enable: traffic sẽ được chia đều cho các target khác nhau, mỗi server có 10%
  • Khi disable: một bên là 8.33% còn 1 bên nhận 12.5% traffic
Application Load Balancer
  • Luôn bật (không thể tắt option này đi)
  • Không bị tính phí inter AZ
Network Load Balancer
  • Mặc định sẽ disabled
  • Nếu enable lên AWS sẽ tính phí inter AZ của bạn
Classic Load Balancer
  • Mặc định sẽ disabled
  • Nếu enable, không bị tính phí inter AZ
Bài trước
left Bài trước
left Elastic Load Balancer trong AWS
Bài tiếp theo
Auto Scaling Group trong AWS right
Bài tiếp theo right
Avatar Phan Văn Đức
VIẾT BỞI

Phan Văn Đức