Mục lục bài viết

Health check của Auto Scaling Instance

Health status của các instance Auto Scaling có thể bình thường hoặc không bình thường. Tất cả các instance trong Auto Scaling group sẽ được khởi động ở trạng thái bình thường.

Nếu Amazon EC2 Auto Scaling không thông báo là có bất thường, thì instance sẽ được xem là bình thường.

Để xác định trạng thái bình thường hoặc không bình thường và thông báo được gửi như thế nào. Có 3 hình thức health check như sau:

Amazon EC2

・Elastic Load Balancing (ELB)

・Custom health check

Health check của EC2

Health check của EC2 mặc định được kích hoạt. Không cần thiết lập đặc biệt.

Xác nhận health status của instance bằng cách sử dụng kết quả status checks của Amazon EC2. Nếu  system status bị ảnh hưởng và đang ở một trong các trạng thái bên dưới: 

・stopping

・stopped

・shutting-down

・terminated

 Amazon EC2 Auto Scaling sẽ xem xét instance là không bình thường và khởi động instance thay thế.

Health check của ELB

Sử dụng Health check của ELB đã sử dụng Auto Scaling, có thể thêm những  instance bình thường vào ELB.

Vì Auto Scaling đã được tích hợp với Elastic Load Balancing, khi instance đạt được health check mà load balancer quản lý, các instance mới sẽ tự động được thêm vào tất cả Load Balancing Pool.

Elastic Load Balancing kiểm tra trạng thái của các instance EC2 đã đăng ký bằng cách sử dụng các yêu cầu ping đơn giản hoặc các yêu cầu kết nối hoặc yêu cầu nâng cao hơn.

Health check đã được định nghĩa các ngưỡng để xác định xem instance có bình thường hay không. Ví dụ: bạn có thể thiết lập một health check policy của Elastic Load Balancing để thực hiện ping cổng 80 mỗi 10 giây và sau khi đạt ngưỡng 10 ping thành công, instance đó sẽ báo cáo là InService.

Nếu yêu cầu ping không thể kết nối và sau 100 giây, instance sẽ báo cáo là OutofService. Kết hợp với Auto Scaling và nếu được chỉ định bởi các Auto Scaling policy, bạn có thể thay thế các instance không hoạt động (OutofService).

Trong trường hợp Scale down, load balancer sẽ loại bỏ instance EC2 khỏi pool và hình thành kết nối trước khi kết thúc.

Custom health check

Trường hợp có custom health check, thông tin từ health check sẽ được gửi đến Amazon EC2 Auto Scaling và Amazon EC2 Auto Scaling sử dụng thông tin đó. Ví dụ: nếu được xác định rằng instance không hoạt động, bạn có thể đặt health status của instance là Unhealthy. Khi Amazon EC2 Auto Scaling thực hiện health check cho instance lần tiếp theo, nó sẽ khởi động instance thay thế vì xác định instance là không bình thường.

Thêm load balancer vào cài đặt health check trong Auto Scaling group

Health check của EC2 mặc định được kích hoạt. Thử thêm ELB vào đây.

  1. Kết nối vào Amazon EC2 Auto Scaling console. https://console.aws.amazon.com/ec2autoscaling/
  1. Kiểm tra nhóm.

Dưới trang [ Auto Scaling group], bạn có thể xem thông tin về nhóm đã chọn theo từng tab.

  1. Trong tab [Chi tiết], chọn [Health check], sau đó chọn [Edit].
  1. Trong [Health check type], chọn [Enable ELB health checks].

※ Nếu sử dụng health check, nhập thời gian đợi (theo giây) mà Amazon EC2 Auto Scaling cần đợi để kiểm tra Health Status của instance. Thường cần một khoảng thời gian để instance được “làm nóng” trước khi health check. Để có đủ thời gian “làm nóng”, cần thiết lập thời gian đợi health check của nhóm sao cho nó tương ứng với thời gian khởi động dự kiến của ứng dụng.

check vào  [update].

  1. Trong tab [Quản lý instance], bạn có thể xem health status của instance trong cột [Health Status]. Kết quả health check đã thêm  mới [EC2&ELB] sẽ được hiển thị.

Tổng kết

Có ba cách health check của các instance Auto Scaling. Trong số đó, EC2 được kích hoạt mặc định.

・Amazon EC2

・Elastic Load Balancing (ELB)

・Custom health check