- vừa được xem lúc

[AWS] Chọn đúng EC2 Instance Type & Launch Type: Tối ưu Chi phí & Hiệu suất cho Dự án

0 0 1

Người đăng: John

Theo Viblo Asia

Amazon EC2 quá phổ biến và được sử dụng rộng rãi để triển khai các server và dùng để host các ứng dụng của doanh nghiệp trên môi trường cloud. Nhưng có nhiều instance Amazon EC2 khác nhau với thiết kế và ứng dụng cho các mục đích khác nhau. Bạn có bao giờ đứng trước các quyết định lúc thiết kế hệ thống, làm sao để chọn đúng loại instance EC2 phù hợp với dự án hiện tại và tối ưu chi phí nhất có thể. Hoặc nhiệm vụ tối ưu chi phí cho các service trên cloud hiện tại để tiết kiệm tiền cho khách hàng không? Để có thể đánh giá và lựa chọn đúng instance EC2 chúng ta cần nằm rõ chi tiết, công dụng của mỗi loại instance EC2 nhằm đưa ra quyết định đúng đắn

EC2 không chỉ là EC2, hãy cùng khám phá các loại instance EC2 nha !

1. EC2 Instance Launch Types ( Các loại khởi chạy EC2)

  1. On Demand Instances: khối lượng công việc ngắn hạn, giá cả có thể dự đoán được
  2. Reserved: thời gian sử dụng dài, tối thiếu 1 năm
  3. Spot Instances: khối lượng công việc ngắn hạn, giá rẻ, nhưng có nguy cơ mất instance trong lúc chạy
  4. Dedicated Instances: tách biệt phần cứng của một tài khoản AWS, thích hợp các loại công việc yêu cầu độ bảo mật cao
  5. Dedicated Hosts: bạn thuê lưu cả một máy chủ vật lý và toàn quyền quyết định các instance trên đó Note: một máy chủ vật lý có thể chứa nhiều instance EC2 và AWS cho thuê chúng

1.1 On-Demand Instances (Instance theo yêu cầu)

  • Cách thức hoạt động: Bạn trả tiền ngay cho cho phút đầu tiên server hoạt động, không yêu cầu trả trước hoặc cam kết dài hạn
  • Chi phí: Có chi phí cao nhất so với các tùy chọn khác
  • Trường hợp sử dụng: Khuyên dùng cho các khối lượng công việc ngắn hạn, không bị gián đoạn, khi bạn không thể dự đoán hành vi của ứng dụng. Cũng tốt cho môi trường phát triển và kiểm thử

1.2 Reserved Instances (RI) (Instance được đặt trước)

  • Cách thức hoạt động: Bạn cam kết sử dụng instance trong một khoảng thời gian cụ thể (tối thiểu 1 năm). Thời gian đặt trước có thể là 1 hoặc 3 năm. Bạn trả tiền trả trước cho một khoảng thời gian nhất định. Bạn đặt trước một loại instance cụ thể.
  • Chi phí: Giảm giá tới 75% so với instance On-demand. Dành cho một cam kết dài hạn.
  • Trường hợp sử dụng: Khuyên dùng cho các ứng dụng có mức sử dụng ổn định (ví dụ: cơ sở dữ liệu)
  • Các biến thể:
    • Convertible Reserved Instances (Instance được đặt trước có thể chuyển đổi): Cho phép bạn thay đổi loại instance. Giảm giá tới 54%. Khuyên dùng cho các khối lượng công việc dài hạn với các loại instance linh hoạt
    • Scheduled Reserved Instances (Instance được đặt trước theo lịch trình): Cho phép bạn khởi chạy instance trong một khoảng thời gian xác định trước. Khuyên dùng khi một instance chỉ cần chạy vào những thời điểm nhất định trong ngày, tuần hoặc tháng. Nghĩa ra bạn thuê instance để chạy các backgroud job hay cronjob, xong nhiệm vụ bạn thể giải phóng để tiết kiệm chi phí. Rất tuyệt phải không

1.3 Spot Instances (Instance đấu giá)

  • Cách thức hoạt động: Bạn có thể đấu giá EC2 chưa sử dụng. Bạn xác định giá tối đa mà bạn sẵn sàng trả, và bạn sẽ nhận được instance nếu giá spot hiện tại thấp hơn giá tối đa của bạn. Giá spot hàng giờ thay đổi dựa trên cung và cầu và khu vực.
  • Chi phí: Có thể giảm giá tới 90% so với instance on-demand. Rất rẻ
  • Trường hợp sử dụng: Khuyên dùng cho các công việc có khả năng phục hồi khi lỗi. Điều này là do nếu giá spot hiện tại vượt quá giá tối đa mà bạn đã chọn, AWS có thể dừng hoặc chấm dứt instance của bạn trong vòng 2 phút thông báo. Rất tốt cho các khối lượng công việc ngắn hạn và không quan trọng, độ ưu tiên thấp.
  • Lưu ý quan trọng: Không khuyên dùng cho các công việc quan trọng hoặc cơ sở dữ liệu. Bạn có thể chặn một spot instance trong một khoảng thời gian cụ thể (1 đến 6 giờ) mà không bị gián đoạn bằng cách sử dụng Spot Block. Spot Fleet là một tập hợp các spot instance và tùy chọn on-demand instance cố gắng đáp ứng một năng lực mục tiêu với các ràng buộc về giá. Các yêu cầu Spot (Spot requests) có thể là một lần (one-time) hoặc liên tục (persistent). Việc hủy một yêu cầu spot không làm chấm dứt các instance đang chạy; trước tiên bạn phải hủy yêu cầu, sau đó mới chấm dứt các instance, vẫn cho bạn để thời gian để xử lý chấm dứt đúng nghĩa.
  • Kết hợp: Có thể kết hợp với reserved instances để đảm bảo hiệu suất cơ bản và on-demand instances cho những thời điểm cao điểm

1.4 Dedicated Instances (Instance riêng biệt)

  • Cách thức hoạt động: Các instance của bạn chạy trên phần cứng dành riêng cho một tài khoản AWS duy nhất. Các instance từ các tài khoản khác được cách ly ở cấp độ phần cứng. Tuy nhiên, các instance của bạn có thể chia sẻ phần cứng với các instance khác từ cùng một tài khoản
  • Chi phí: Tính phí theo từng instance
  • Trường hợp sử dụng: Hữu ích cho các khối lượng công việc có yêu cầu bảo mật hoặc tuân thủ cụ thể. Không có quyền kiểm soát vị trí instance

1.5 Dedicated Hosts (Host chuyên dụng)

  • Cách thức hoạt động: Bạn thuê toàn bộ một máy chủ vật lý dành riêng cho mục đích sử dụng của bạn. Bạn có toàn quyền kiểm soát việc đặt các instance EC2 của mình trên host và có khả năng hiển thị vào các socket/lõi vật lý cơ bản của phần cứng
  • Chi phí/Yêu cầu: Yêu cầu thời gian đặt trước 3 năm, giá có thể cao hơn Dedicated Instances, nhưng nếu bạn có khối lượng công việc đủ lớn và cần quyền kiểm soát cao thì lại có lợi hơn
  • Trường hợp sử dụng: Hữu ích cho phần mềm có mô hình cấp phép phức tạp dựa trên lõi hoặc socket vật lý, hoặc cho các công ty có nhu cầu tuân thủ quy định chặt chẽ

2. EC2 Instance Types

  1. Instance R: Tối ưu hoá cho các ứng dụng cần nhiều RAM. Hay sử dụng cho nhu cầu bộ nhớ đệm trong bộ nhớ cao (in-memory cache).
  2. Instance C: Tối ưu hoá cho các ứng dụng cần năng lực tính của CPU tốt. Hay sử dụng cho các tác vụ tính toán chuyên sâu và một số cơ sở dữ liệu.
  3. Instance M: Các instance đa dụng cân bằng. Phù hợp cho các ứng dụng như ứng dụng web chung.
  4. Instance I: Tối ưu hóa cho các ứng dụng cần I/O cục bộ tốt. Hay sử dụng cho các cơ sở dữ liệu yêu cầu truy cập nhanh vào bộ nhớ lưu trữ cục bộ được đính kèm (local attached storage)
  5. Instance G: Tối ưu hóa cho các ứng dụng cần năng lực GPU. Hay sử dụng để xử lý/xuất video và Học máy (ML)
  6. Instance T2/T3: Các instance có hiệu suất có thể bùng nổ (Burstable performance instances). Chúng cung cấp hiệu suất tổng thể rất tốt nhưng có thể bùng nổ để đạt hiệu suất CPU cao trong thời gian tải tăng đột biến không mong đợi bằng cách sử dụng "tín dụng bùng nổ" (burst credits). Tín dụng được tích lũy theo thời gian khi mức sử dụng CPU thấp và được sử dụng khi bùng nổ. Nếu hết tín dụng, hiệu suất có thể bị giảm. T2/T3 Unlimited instances cho phép bùng nổ không giới hạn với chi phí bổ sung, tránh mất hiệu suất. Số dư tín dụng có thể được theo dõi trong CloudWatch. Khuyên dùng cho các khối lượng công việc có các đợt tăng đột biến không thường xuyên mà không yêu cầu CPU cao liên tục

Việc chọn đúng sự kết hợp giữa kiểu khởi chạy và họ (type) instance cho phép bạn căn chỉnh tài nguyên AWS của mình một cách hoàn hảo với nhu cầu của ứng dụng, dẫn đến cả hiệu quả và tiết kiệm chi phí.
Ví dụ:

  • Một ứng dụng cơ sở dữ liệu ổn định có thể hưởng lợi nhiều nhất từ instance thuộc họ R hoặc C kết hợp với loại khởi chạy Reserved Instance để tiết kiệm chi phí.
  • Một công việc xử lý hàng loạt (batch processing) có khả năng chịu lỗi có thể sử dụng instance họ C được khởi chạy dưới dạng Spot Instance để giảm chi phí đáng kể.

🤝 Kết nối với mình:

💖 Ủng hộ mình/ Mời cafe mình:

Bình luận

Bài viết tương tự

- vừa được xem lúc

PDF Export, cẩn thận với những input có thể truyền vào

Giới thiệu. Dạo gần đây mình tình cờ gặp rất nhiều lỗi XSS, tuy nhiên trang đó lại có sử dụng dữ liệu người dùng input vào để export ra PDF.

0 0 75

- vừa được xem lúc

Giới thiệu về AWS Batch

Khi sử dụng hệ thống cloud service, điều chúng ta thường phải quan tâm đến không chỉ là hiệu suất hoạt động (performance) mà còn phải chú ý đến cả chi phí bỏ ra để duy trì hoạt động của hệ thống. Chắn hẳn là hệ thống lớn hay nhỏ nào cũng đã từng phải dùng đến những instance chuyên để chạy batch thực

0 0 148

- vừa được xem lúc

Tìm hiểu về AWS KMS

1. AWS KMS là gì. Ở KMS bạn có thể lựa chọn tạo symetric key (khóa đối xứng) hoặc asymetric key (khóa bất đối xứng) để làm CMK (Customer Master Key). Sau khi tạo key thì có thể thiết đặt key policy để control quyền access và sử dụng key.

0 0 70

- vừa được xem lúc

AWS VPC cho người mới bắt đầu

Tuần này, tôi trình bày lại những gì tôi đã học được về Virtual Private Cloud (VPC) của Amazon. Nếu bạn muốn xem những gì tôi đã học được về AWS, hãy xem Tổng quan về DynamoDB và Tổng quan về S3. VPC là gì. Những điều cần lưu ý:.

0 0 91

- vừa được xem lúc

AWS Essentials (Phần 6): Guildline SNS Basic trên AWS

Tiếp tục với chuỗi bài viết về Basic AWS Setting, chúng ta tiếp tục tìm hiểu tiếp tới SNS (Simple Notification Service). Đây là một service của AWS cho phép người dùng setting thực hiện gửi email, text message hay push notification tự động tới mobile device dựa trên event người dùng setting phía AWS

0 0 153

- vừa được xem lúc

Sử dụng Amazon CloudFront Content Delivery Network với Private S3 Bucket — Signing URLs

Trong nhiều trường hợp, thì việc sử dụng CDN là bắt buộc. Mình đã trải nghiệm với một số CDN nhưng cuối cùng mình lựa chọn sử dụng AWS CloudFront.

0 0 125