Thank You For Reaching Out To Us
We have received your message and will get back to you within 24-48 hours. Have a great day!

Chào mừng đến với Blog của Haposoft

Hãy khám phá blog của chúng tôi để tìm hiểu những thông tin mới mẻ, bình luận chuyên gia và các ví dụ thực tế về phát triển dự án mà chúng tôi rất muốn chia sẻ với bạn.

aws-ec2-best-practices-for-production
Apr 17, 2026
20 phút đọc

Best Practices Vận Hành AWS EC2 Trong Production (Hướng dẫn 2026): Bảo mật, Lưu trữ & Tối ưu Chi phí

Sau khi đã nắm vững các loại instance và mô hình giá của EC2, thách thức thực sự mới bắt đầu: vận hành EC2 một cách ổn định và bảo mật trong môi trường production. Phần này tập trung vào cách EC2 được vận hành thực tế trong các hệ thống thực — bao gồm thắt chặt bảo mật, thiết kế mạng, quản lý lưu trữ và chiến lược tối ưu chi phí dài hạn. Mục tiêu không chỉ là "chạy" EC2, mà là vận hành nó một cách an toàn, hiệu quả và có khả năng mở rộng. Bảo Mật EC2 Trong Môi Trường Production Khi EC2 chuyển từ môi trường phát triển sang production, bảo mật không còn là tùy chọn nữa. Ở giai đoạn này, sai sót không còn chỉ là vấn đề cấu hình — chúng trở thành rủi ro thực sự: rò rỉ dữ liệu, gián đoạn dịch vụ, hoặc vi phạm tuân thủ. Trên thực tế, phần lớn vấn đề bảo mật EC2 không đến từ các cuộc tấn công tinh vi, mà từ việc cấu hình quyền truy cập mạng quá rộng, các rule bị bỏ quên, và những giải pháp tạm thời được áp dụng trong giai đoạn phát triển ban đầu. Phần này tập trung vào cách bảo mật EC2 theo phương thức thực tế trong production, bắt đầu từ lớp kiểm soát cơ bản nhất: Security Groups. 5.1. Security Groups Thực Chất Là Gì Security Groups thường được mô tả là "tường lửa ảo", nhưng cách mô tả này chưa đầy đủ. Trong production, Security Group nên được hiểu như một hợp đồng: nó xác định chính xác ai được phép kết nối đến instance, trên port nào, và với mục đích gì. Security Groups hoạt động ở cấp độ instance và có tính stateful — nếu một kết nối inbound được cho phép, traffic phản hồi sẽ tự động được chấp nhận mà không cần tạo rule outbound riêng. Hai điểm quan trọng thường bị bỏ qua: Không có rule deny: Mọi traffic không được cho phép rõ ràng sẽ bị chặn. Thay đổi có hiệu lực ngay lập tức: Không cần khởi động lại instance. Chính vì vậy, Security Groups trở thành ranh giới bảo mật đầu tiên và quan trọng nhất của EC2. Mỗi rule bao gồm: Giao thức (TCP, UDP, ICMP) Dải port Nguồn/Đích (CIDR hoặc tham chiếu đến Security Group khác) 5.2. Các Pattern Security Group Phổ Biến Security Groups được thiết kế đơn giản có chủ đích. Chúng không cố gắng mô phỏng logic firewall phức tạp, mà tập trung vào một nguyên tắc cốt lõi: chỉ cho phép những gì thực sự cần thiết, chặn mọi thứ còn lại theo mặc định. Cách thiết kế này dẫn đến một số hành vi thực tế quan trọng sau. Các quy tắc của Security Group chỉ được dùng để định nghĩa luồng truy cập được phép. Không tồn tại khái niệm “deny rule”. Nếu một request không khớp với bất kỳ rule nào, nó sẽ tự động bị chặn. Điều này giúp Security Group dễ dự đoán hơn và hạn chế các trường hợp ngoại lệ khó kiểm soát. Khi tạo một Security Group, AWS mặc định thêm rule outbound cho phép toàn bộ lưu lượng, nhằm đảm bảo các ứng dụng không bị gián đoạn kết nối ra ngoài. Ngược lại, inbound mặc định sẽ bị đóng hoàn toàn cho đến khi bạn cấu hình cho phép cụ thể. Inbound: Deny all (no rules) Outbound: Allow all (0.0.0.0/0, all protocols, all ports) Do đặc tính mặc định này, Security Groups trong production thường được xây dựng dựa trên vai trò ứng dụng thay vì từng máy riêng lẻ. Ví dụ điển hình là instance phục vụ web: nó cần chấp nhận traffic từ internet trên HTTP và HTTPS, nhưng quyền truy cập quản trị nên được giới hạn trong mạng nội bộ. Web server security group - Allow HTTP (80) từ internet - Allow HTTPS (443) từ internet - Allow SSH (22) chỉ từ dải IP nội bộ Cách cấu hình này chỉ mở những port thực sự cần thiết cho người dùng, đồng thời kiểm soát chặt quyền truy cập vận hành. Với database, nguyên tắc còn nghiêm ngặt hơn: instance database không bao giờ nên chấp nhận traffic trực tiếp từ internet, mà chỉ cho phép kết nối từ các application servers. Database security group - Allow database port (ví dụ: 3306) chỉ từ application Security Group Mô hình này thiết lập ranh giới rõ ràng giữa các layer và giảm đáng kể bề mặt tấn công, ngay cả khi một thành phần public-facing bị xâm phạm. 5.3. Advanced Security Group Best Practices Trong các môi trường động, việc sử dụng địa chỉ IP trực tiếp trong các rule có thể trở nên khó quản lý. Vì lý do này, Security Groups có thể tham chiếu đến các Security Groups khác làm nguồn hoặc đích cho traffic. Sử dụng Security Group References thay vì địa chỉ IP Không nên hardcode các dải IP trừ khi không có lựa chọn nào khác. Trong production, instances thường xuyên được thay thế do scaling, sự cố hoặc deployments. Các rule dựa trên IP sẽ bị hỏng một cách âm thầm trong những kịch bản này. Việc tham chiếu đến Security Group khác tạo ra một mô hình phụ thuộc ổn định: Quyền truy cập đi theo service thay vì instance Auto Scaling hoạt động mà không cần thay đổi rule Các deployments Multi-AZ duy trì tính nhất quán 2. Áp dụng nguyên tắc least privilege một cách nghiêm ngặt Least privilege phải được áp dụng chặt chẽ ở cấp độ mạng. Tránh cho phép traffic từ toàn bộ subnet hoặc VPC CIDR blocks trừ khi kiến trúc thực sự yêu cầu. Mỗi rule inbound nên ánh xạ đến một service, một protocol và một nhu cầu vận hành cụ thể. Các rule quá rộng hoặc dựa trên sự tiện lợi sẽ làm tăng blast radius và khiến việc xử lý sự cố trở nên khó khăn hơn. 3. Sử dụng naming có ý nghĩa Tên Security Group nên mô tả mục đích thay vì môi trường. Những tên như alb-sg, app-tier-sg, hoặc db-private-sg giúp xác định rõ quyền sở hữu và đường truy cập trong quá trình review và xử lý sự cố. Tên chung chung hoặc mơ hồ làm chậm quá trình audit và tăng nguy cơ cấu hình sai. 4. Định kỳ audit các rule không sử dụng Các rule không còn dùng nên được review và loại bỏ thường xuyên. Quyền truy cập tạm thời được thêm trong quá trình debug hoặc migration thường trở thành vĩnh viễn một cách vô tình. Theo thời gian, những rule này mất đi ngữ cảnh và biến thành rủi ro bảo mật tiềm ẩn. Một bộ rule nhỏ gọn dễ hiểu hơn và an toàn hơn để vận hành. 5. Kết hợp với các lớp bảo mật khác Security Groups chỉ kiểm soát truy cập ở cấp độ instance. Chúng nên được kết hợp với Network ACLs, AWS WAF, và AWS Shield để tạo phòng thủ nhiều lớp trong các hệ thống tiếp xúc với internet. 6. Thiết Kế IP Addressing và Mạng Trong EC2 6.1. Private IP Addresses Private IP addresses được sử dụng cho giao tiếp bên trong mạng riêng. Chúng không thể truy cập được từ internet công cộng. Khi một EC2 instance cần truy cập các dịch vụ bên ngoài, traffic phải đi qua NAT gateway hoặc NAT instance. AWS hỗ trợ ba dải địa chỉ IPv4 private: 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 Private IPs nên được sử dụng bất cứ khi nào các instances chỉ cần giao tiếp với các dịch vụ nội bộ. Các trường hợp sử dụng điển hình: Giao tiếp giữa các services: kết nối database, microservices Internal load balancers: ví dụ Application Load Balancers trong private subnets VPC peering: cho phép giao tiếp giữa nhiều VPCs VPN connections: giữa hệ thống on-premises và AWS 6.2. Public IP Addresses Public IP addresses cho phép một EC2 instance giao tiếp cả bên trong VPC và với internet công cộng. Chúng có thể là bất kỳ địa chỉ IPv4 nào, miễn là không thuộc các dải IP private. Đặc điểm chính của Public IP: Dynamic assignment: Địa chỉ IP có thể thay đổi khi instance bị dừng và khởi động lại. Bắt buộc có Internet Gateway: Cần gắn Internet Gateway vào VPC để định tuyến traffic ra/vào internet. Tính phí riêng: Địa chỉ IPv4 public phát sinh khoản phí nhỏ theo giờ, dựa trên chính sách giá của AWS. Duy nhất toàn cầu: Địa chỉ IPv4 public là duy nhất trên toàn bộ internet, không trùng lặp với bất kỳ địa chỉ nào khác. Có một số hạn chế cần lưu ý. Vì những ràng buộc này, Public IP thường không phù hợp với các hệ thống cần một endpoint ổn định hoặc có thể dự đoán được. Cụ thể, Public IP không nên được dùng trong các trường hợp: Thay đổi khi instance bị dừng/khởi động Không thể gán lại cho instance khác Bị giải phóng khi instance bị terminate Không kiểm soát được địa chỉ IP cụ thể được gán 6.3. Elastic IP (EIP) Theo mặc định, một địa chỉ Public IP thay đổi bất cứ khi nào một EC2 instance bị dừng và khởi động. This behavior is acceptable for temporary workloads, but it quickly becomes a problem in production systems that require a stable endpoint. Elastic IPs được thiết kế để giải quyết chính xác hạn chế này. Một Elastic IP là một địa chỉ IPv4 public được đặt trước mà bạn gắn vào một EC2 instance. Nó không thay đổi khi instance bị dừng hoặc khởi động lại, và có thể được chuyển sang instance khác nếu cần. Đặc điểm chính của Elastic IPs: Static public IP: Giữ nguyên qua các thao tác dừng/khởi động. Reassignable: Elastic IP có thể được tách khỏi một instance và gắn sang instance khác, rất hữu ích khi thay thế instance hoặc trong quá trình khôi phục hệ thống. Regional resource: Thuộc về một AWS Region cụ thể, không di chuyển qua regions. Charged when unused: AWS tính phí cho Elastic IPs không gắn vào instance đang chạy. Cách sử dụng Elastic IPs trong production: Sử dụng hạn chế Elastic IPs chỉ nên sử dụng khi hệ thống bên ngoài yêu cầu một địa chỉ IP cố định. Đây là trường hợp thường gặp khi cấu hình IP allowlists hoặc tích hợp với các hệ thống legacy. Cân nhắc các lựa chọn thay thế trước Với đa số hệ thống production, Elastic IPs không nên được xem là cấu hình mặc định lý tưởng: Application Load Balancer và Route 53 cung cấp DNS ổn định và failover CloudFront phù hợp hơn cho truy cập toàn cầu với custom domains NAT Gateway lựa chọn đúng cho traffic internet chỉ outbound Tránh lãng phí Elastic IPs gắn vào instances đã dừng hoặc để không vẫn phát sinh chi phí. Nên giải phóng các Elastic IPs không sử dụng. Giám sát mức sử dụng và chi phí Việc sử dụng Elastic IP rất dễ bị bỏ sót. Billing alerts giúp ngăn chặn các khoản phí âm thầm tích lũy. Tổng quan chi phí Gắn vào instance đang chạy: Không phát sinh thêm phí Gắn vào instance đã dừng: $0.005/giờ Không được gắn: $0.005/giờ Additional Elastic IPs per instance: $0.005/giờ 6.4. Hỗ Trợ IPv6 EC2 hỗ trợ dual-stack networking, cho phép các instances có cả địa chỉ IPv4 và IPv6. Tất cả các địa chỉ IPv6 trong AWS đều là global unicast, nghĩa là chúng có thể được định tuyến công khai theo mặc định. Không có chi phí bổ sung khi sử dụng IPv6, và không gian địa chỉ 128-bit loại bỏ lo ngại về cạn kiệt IPv4. To enable IPv6 on EC2, the following steps are required: Cho phép IPv6 CIDR block ở cấp độ VPC Liên kết IPv6 CIDR block với subnet Thêm IPv6 routes trong route table Cho phép IPv6 traffic trong Security Group rules Cho phép automatic IPv6 assignment trên EC2 instance Sau khi cấu hình, các EC2 instances có thể hoạt động ở chế độ dual-stack và giao tiếp qua cả IPv4 và IPv6 khi cần. 7. Quản Lý Lưu Trữ: EBS, AMIs, và Snapshots 7.1. Elastic Block Store (EBS) Elastic Block Store là dịch vụ block storage của AWS dành cho EC2. Một EBS volume có thể được gắn vào và tách khỏi các EC2 instances, cho phép dữ liệu tồn tại độc lập với vòng đời của instance và được tái sử dụng qua các instances. Khi tạo một EBS volume, IOPS và throughput có thể được cấu hình dựa trên yêu cầu của workload. Các EBS volumes chỉ có thể được mở rộng về kích thước và không thể thu nhỏ. Sau khi tăng kích thước volume thông qua AWS console hoặc CLI, filesystem cũng phải được mở rộng ở cấp độ hệ điều hành. Nếu bỏ qua bước này, dung lượng bổ sung sẽ không hiển thị với OS. Tính năng chính của EBS: Mã hóa AES-256 cho dữ liệu ở trạng thái nghỉ và trong quá trình truyền Hỗ trợ Multi-Attach cho các loại volume io1 và io2 Snapshots tại một thời điểm được lưu trữ trong Amazon S3 Elastic Volumes: cho phép thay đổi kích thước, loại và hiệu suất mà không cần downtime 7.2. Amazon Machine Images (AMI) Một Amazon Machine Image là template được sử dụng để khởi chạy các EC2 instances. Một AMI bao gồm: Hệ điều hành và phần mềm đã được cài đặt sẵn Một hoặc nhiều EBS volumes được gắn kèm Launch permissions kiểm soát ai có thể sử dụng AMI Block device mappings cho cấu hình lưu trữ AMIs có thể được tạo từ các EC2 instances hiện có, cho phép bạn ghi lại một cấu hình đã được kiểm chứng và tái sử dụng để khởi chạy các instances giống hệt nhau. Các loại AMIs: Public được cung cấp bởi AWS hoặc cộng đồng Commercial AMIs từ AWS Marketplace Private AMIs trong tài khoản AWS của bạn Shared AMIs từ các tài khoản AWS khác Trong production, AMIs thường được sử dụng để chuẩn hóa deployments, giảm thời gian thiết lập và hỗ trợ phục hồi nhanh hơn trong quá trình scaling hoặc thay thế instance. 7.3. Snapshots Snapshots là các bản sao lưu tại một thời điểm của EBS volumes được lưu trữ trong Amazon S3. Snapshot đầu tiên chụp toàn bộ volume. Các snapshot tiếp theo là incremental, chỉ lưu trữ các block đã thay đổi kể từ snapshot trước đó. Snapshots có thể được sử dụng để: Khôi phục dữ liệu sau sự cố Tạo các EBS volumes mới Tạo các AMIs mới Sao chép dữ liệu qua các AWS Regions Việc tạo một snapshot không làm gián đoạn EC2 instance đang chạy. Tuy nhiên, đối với các workloads nhạy cảm về tính nhất quán, snapshots nên được thực hiện khi volume ở trạng thái ổn định. Đặc điểm chính của snapshot: Incremental backups để giảm chi phí lưu trữ Hỗ trợ sao chép cross-region Encrypted snapshots cho các EBS volumes được mã hóa Khả năng phục hồi tại một thời điểm Chỉ trả tiền cho dữ liệu được lưu trữ, không phải kích thước volume đầy đủ 7.4. Tối Ưu Hiệu Suất và Chi Phí EBS EBS performance can be tuned by adjusting IOPS and throughput based on workload requirements. Tối ưu hóa IOPS gp3: baseline 3,000 IOPS, có thể mở rộng lên đến 16,000 IOPS io2: hỗ trợ lên đến 256,000 IOPS với khả năng Multi-Attach Provision IOPS cao hơn cho các workloads yêu cầu hiệu suất nhất quán và có thể dự đoán Sử dụng EBS-optimized instances để đảm bảo băng thông đủ giữa EC2 và EBS Tối ưu hóa Throughput gp3: throughput có thể được cấu hình độc lập lên đến 1,000 MiB/s st1: HDD volumes được tối ưu hóa cho các access patterns tuần tự Sử dụng RAID 0 để tăng throughput, với sự cân nhắc cẩn thận về rủi ro failure Pre-warm volumes bằng cách đọc tất cả các block sau khi khôi phục từ snapshot Tối ưu hóa chi phí Di chuyển từ gp2 sang gp3 để giảm chi phí lưu trữ (lên đến 20%) Right-size volumes dựa trên usage thực tế bằng cách giám sát CloudWatch metrics Áp dụng snapshot lifecycle policies để tự động dọn dẹp các bản sao lưu cũ Sử dụng Cold HDD (sc1) volumes cho dữ liệu ít được truy cập 8. Vận Hành EC2 Trong Production: Operational Best Practices 8.1. Tiêu Chí Lựa Chọn AWS Region Việc chọn một AWS Region ảnh hưởng đến độ trễ, tuân thủ, chi phí và khả năng sẵn sàng của dịch vụ. Trước khi triển khai EC2 trong môi trường production, cần đánh giá kỹ từng yếu tố này. Độ trễ Ưu tiên chọn region gần vị trí địa lý của người dùng cuối để giảm thiểu độ trễ truy cập Châu Á Thái Bình Dương (Singapore) – ap-southeast-1: lựa chọn tối ưu cho người dùng tại Đông Nam Á US East (Bắc Virginia) – us-east-1: các dịch vụ toàn cầu như CloudFront và Route 53 Châu Âu (Ireland) – eu-west-1: phù hợp nhất cho đối tượng người dùng tại Châu Âu Công cụ kiểm tra độ trễ: CloudPing, AWS Region latency checker Yêu cầu pháp lý và tuân thủ Một số loại dữ liệu bắt buộc phải được lưu trữ tại region cụ thể theo quy định pháp lý Tuân thủ GDPR: Sử dụng các region thuộc Châu Âu để lưu trữ dữ liệu của công dân EU Quy định về lưu trú dữ liệu: Đáp ứng yêu cầu bắt buộc của khối chính phủ và ngành tài chính – ngân hàng SOC / PCI DSS: Chỉ khả dụng tại các region đã được cấp chứng chỉ bảo mật tương ứng Chi phí Bảng giá EC2 và các dịch vụ AWS có sự chênh lệch tùy theo region us-east-1 (Bắc Virginia): Thường có mức giá thấp nhất, được dùng làm chuẩn tham chiếu cho toàn hệ thống us-west-2 (Oregon): Mức giá cạnh tranh, tối ưu cho khách hàng tại Bờ Tây nước Mỹ ap-southeast-1 (Singapore): Chi phí cao hơn, nhưng mang lại hiệu suất ổn định cho thị trường Châu Á Thái Bình Dương eu-west-1 (Ireland): Mức giá ở tầm trung, phù hợp để triển khai workload tại Châu Âu Khả năng sẵn sàng của dịch vụ Không phải mọi loại instance hay dịch vụ AWS đều được hỗ trợ tại tất cả các region. Các dòng instance mới thường được ra mắt trước tại các region trọng điểm, một số dịch vụ quản lý sẵn (managed services) chỉ hoạt động tại region nhất định, và các dịch vụ AI/ML chuyên sâu có thể chưa được triển khai đồng bộ trên toàn cầu. 8.2. Instance Sizing và Capacity Planning Khi khởi chạy một EC2 instance, việc sử dụng tài nguyên của ứng dụng phải được xác định trước: CPU, bộ nhớ, hoặc disk I/O. Điều này trực tiếp xác định loại instance phù hợp. Cũng cần phân biệt giữa stateless và stateful workloads. Ứng dụng không trạng thái (Stateless) dễ dàng mở rộng quy mô và có thể tận dụng Spot Instances để tối ưu chi phí, trong khi workload có trạng thái (Stateful) thường yêu cầu instance ổn định và lưu trữ bền vững để đảm bảo tính liên tục của dữ liệu. Cách tiếp cận resource planning: Baseline measurement: Đo lường việc sử dụng tài nguyên hiện tại Peak analysis: Xác định các mẫu sử dụng cao điểm Growth projection: Lập kế hoạch cho sự tăng trưởng dự kiến trong 6–12 tháng tới Cost modeling: So sánh các loại instance và mô hình giá khác nhau Monitoring setup: Cấu hình CloudWatch alarms cho việc sử dụng tài nguyên Hướng dẫn tối ưu hóa quy mô tài nguyên: CPU utilization: mục tiêu trung bình 70–80%, với khoảng trống cho các spikes Memory utilization: mục tiêu 80–85% để tránh swapping Network utilization: giám sát các mẫu sử dụng băng thông Storage IOPS: provision khoảng 20% trên peak IOPS đã đo 8.3. Security và Compliance Checklist Trước khi chạy các EC2 workloads trong production, một baseline bảo mật và tuân thủ cơ bản nên được thiết lập. Danh sách kiểm tra dưới đây tập trung vào các biện pháp kiểm soát thực tế, đặc thù cho EC2, thường được yêu cầu trong các môi trường triển khai thực tế. Sử dụng các AMIs mới nhất với security patches cập nhật Áp dụng các quy tắc least-privilege trong Security Groups Cho phép EBS encryption cho tất cả dữ liệu persistent Sử dụng IAM roles thay vì long-term access keys Đặt EC2 instances trong private subnets bất cứ khi nào có thể Tránh truy cập SSH trực tiếp; sử dụng SSM Session Manager Đặt tất cả các workloads public-facing phía sau một load balancer Cho phép automated EBS snapshots với retention policies Tạo AMIs thường xuyên cho redeployment và recovery nhất quán 8.4. Tự Động Hóa Các Hoạt Động EC2 Quản lý instance thủ công trở nên khó khăn khi các hệ thống phát triển. Trong các môi trường production, các hoạt động EC2 thường được tự động hóa để đảm bảo tính nhất quán, khả năng mở rộng và deployments an toàn hơn. Một pattern phổ biến là chạy các instances bên trong một Auto Scaling Group (ASG). ASGs tự động điều chỉnh số lượng instances dựa trên tải hoặc health checks, và thay thế các instances bị lỗi mà không cần can thiệp thủ công. Chúng thường được đặt phía sau một load balancer như AWS Application Load Balancer để phân phối traffic qua nhiều instances và Availability Zones. Cấu hình instance thường được định nghĩa thông qua Launch Templates, chuẩn hóa các tham số như AMI, instance type, IAM role, networking, và bootstrap scripts. Điều này đảm bảo rằng các instances mới được khởi chạy giống hệt với các instances hiện có. Để làm cho infrastructure có thể tái tạo, hầu hết các teams quản lý các môi trường EC2 bằng cách sử dụng các công cụ Infrastructure as Code như AWS CloudFormation hoặc Terraform. Cách tiếp cận này cho phép các thay đổi infrastructure được versioned, reviewed, và deployed nhất quán qua các môi trường. Đối với các cập nhật ứng dụng, các teams thường sử dụng Blue-Green deployments. Với mô hình này, chúng ta sẽ thiết lập một môi trường mới chạy phiên bản cập nhật của ứng dụng, được kiểm thử, và sau đó traffic được chuyển đổi bằng cách sử dụng load balancer. Nếu có vấn đề xảy ra, traffic có thể được chuyển hướng nhanh chóng trở lại môi trường trước đó. 8.5. Monitoring và Observability Các EC2 workloads đáng tin cậy yêu cầu giám sát liên tục để phát hiện các vấn đề hiệu suất, lỗi, hoặc hành vi bất thường. Các metrics như việc sử dụng CPU, network throughput, và instance health được thu thập bởi Amazon CloudWatch. Các metrics này cung cấp khả năng hiển thị vào cách các instances đang hoạt động và liệu có thể cần thêm capacity hay không. Các alerts có thể được cấu hình sử dụng CloudWatch alarms để thông báo cho operators hoặc kích hoạt các hành động tự động khi các ngưỡng bị vượt quá, chẳng hạn như scaling out instances trong thời gian tải cao. Logs thường được tập trung hóa sử dụng Amazon CloudWatch Logs hoặc một nền tảng observability bên ngoài. Logging tập trung làm cho việc troubleshooting dễ dàng hơn và hỗ trợ các yêu cầu auditing hoặc compliance. Cuối cùng, health checks từ load balancer và EC2 status checks giúp phát hiện các instances không khỏe mạnh. Khi kết hợp với Auto Scaling, các instances bị lỗi có thể được tự động loại bỏ và thay thế, cải thiện khả năng phục hồi tổng thể của hệ thống. Kết luận EC2 vận hành tốt trong production khi bạn không phức tạp hóa nó: chỉ expose những gì cần thiết, chọn kích thước dựa trên usage thực tế, và giữ bảo mật cùng lưu trữ dưới sự kiểm soát khi hệ thống phát triển. Phần lớn vấn đề xuất phát từ những giải pháp tạm thời nhỏ được thực hiện từ sớm, không phải từ bản thân EC2. Tại Haposoft, chúng tôi hỗ trợ các doanh nghiệp thiết kế và vận hành các hệ thống AWS đạt chuẩn production, bao gồm: • Thiết kế kiến trúc AWS cho các ứng dụng có khả năng mở rộng • Thắt chặt bảo mật EC2 và cấu hình mạng • Chiến lược tối ưu chi phí và right-sizing • Tự động hóa hạ tầng sử dụng Terraform và hạ tầng dưới dạng mã • Giám sát và best practices vận hành Nếu team của bạn đang vận hành EC2 trong production và muốn có một đánh giá chuyên gia, Haposoft có thể hỗ trợ đánh giá kiến trúc của bạn và xác định các cơ hội để cải thiện bảo mật, độ tin cậy và hiệu quả chi phí.
amazon-EC2-instance-types
Apr 16, 2026
15 phút đọc

Các Loại Instance và Mô Hình Giá Amazon EC2 cho Nhiều Workload Khác Nhau

Amazon EC2 thường được mô tả như một máy ảo trên đám mây, nhưng cách mô tả này quá đơn giản so với cách nó thực sự được vận hành trong các hệ thống thực tế. EC2 cung cấp nhiều loại instance và mô hình giá khác nhau, và các quyết định ở tầng này ảnh hưởng trực tiếp đến hiệu suất, độ tin cậy và chi phí. Trước khi triển khai các workload production trên AWS, điều quan trọng là phải hiểu cách các thành phần này kết hợp với nhau. 1. Amazon EC2 trong Bối Cảnh Điện Toán Đám Mây 1.1 EC2 là gì? Amazon EC2 (Elastic Compute Cloud) là dịch vụ điện toán cốt lõi của Amazon Web Services, cung cấp các máy chủ ảo có khả năng cấu hình linh hoạt trên đám mây. EC2 cho phép người dùng cấp phát tài nguyên compute theo nhu cầu, với quyền kiểm soát trực tiếp đối với CPU, bộ nhớ, lưu trữ và network. Thay vì chỉ cung cấp một máy ảo "tiêu chuẩn" duy nhất, EC2 cung cấp compute dưới dạng một hệ thống linh hoạt có thể thích ứng với các yêu cầu workload khác nhau. Đây là lý do EC2 đóng vai trò nền tảng cho nhiều dịch vụ AWS cấp cao và các kiến trúc đám mây tùy chỉnh. Các workload điển hình thường chạy trên EC2 bao gồm: Ứng dụng web và các dịch vụ backend Máy chủ cơ sở dữ liệu như MySQL, PostgreSQL và MongoDB Máy chủ proxy và các thành phần cân bằng tải Môi trường phát triển, kiểm thử và staging Xử lý batch và các workload tính toán khoa học Máy chủ game và ứng dụng xử lý media Giá trị của EC2 không nằm ở việc nó có thể chạy được những gì, mà ở cách nó có thể được định hình chính xác để phù hợp với đặc điểm workload. 1.2 Các Thành Phần Cốt Lõi của EC2 Về bản chất, một môi trường EC2 bao gồm ba khối xây dựng có liên kết lỏng lẻo: AMIs, EBS volumes và Security Groups. Sự tách biệt này là có chủ đích. Nó cho phép khả năng tính toán, lưu trữ và chính sách mạng phát triển độc lập thay vì bị khóa cứng vào một cấu hình máy chủ duy nhất. AMIs xác định cách các instances được tạo và tái tạo, EBS cung cấp lưu trữ bền vững tồn tại sau khi thay thế instance, và Security Groups thực thi các ranh giới mạng mà không yêu cầu khởi động lại instance. Kết hợp lại, các thành phần này làm cho môi trường EC2 có thể tạo mới và thay thế dễ dàng, lặp lại và dễ dàng tự động hóa—những phẩm chất thiết yếu cho việc mở rộng quy mô và vận hành hệ thống một cách đáng tin cậy trên đám mây. 1.3 EC2 Trong Hạ Tầng AWS EC2 hoạt động trong các AWS Regions, mỗi region chứa nhiều Availability Zones. Một Availability Zone là một đơn vị hạ tầng biệt lập với nguồn điện, mạng và phần cứng vật lý riêng. Các EC2 instances và EBS volumes được gắn kèm luôn được đặt trong một Availability Zone duy nhất. Thiết kế này hướng đến việc xây dựng hệ thống dựa trên dự phòng và tự động hóa thay vì dựa vào độ tin cậy của từng máy chủ riêng lẻ. Do đó, các hệ thống EC2 được xây dựng để chịu đựng sự cố và phục hồi thông qua việc mở rộng và thay thế tự động, thay vì can thiệp thủ công. Trong mô hình này: Các EC2 instance và EBS volumes được đặt trong một Availability Zone duy nhất Tính sẵn sàng cao đạt được bằng cách phân phối các instance trên nhiều zones AMIs có thể được sao chép qua các regions để hỗ trợ khôi phục thảm họa Auto Scaling Groups được sử dụng để duy trì capacity mong muốn một cách tự động 2. Hiểu Về Các Loại EC2 Instance (Cách Đọc và Lựa Chọn) 2.1 Cách Đặt Tên Instance EC2 Trong Amazon EC2, một loại instance đại diện cho một tổ hợp cố định của CPU, bộ nhớ, băng thông mạng và hiệu suất đĩa. Những đặc điểm này được mã hóa trực tiếp trong tên instance thay vì mô tả riêng lẻ. Định dạng tên tuân theo một cấu trúc nhất quán: c7gn.2xlarge ││││ └─ Kích thước instance (nano, micro, small, medium, large, xlarge, 2xlarge, ...) │││└────── Tùy chọn tính năng (n = network optimized, d = NVMe SSD) ││└──────── Tùy chọn processor (g = Graviton, a = AMD) │└───────── Generation └────────── Instance family (c = compute, m = general, r = memory, ...) Mỗi phần của tên truyền đạt một lựa chọn kỹ thuật cụ thể thay vì một thứ hạng hiệu suất. Ví dụ: c7gn.2xlarge: compute-optimized instance, generation 7, Graviton-based, network-optimized, size 2xlarge m6i.large: general-purpose instance, generation 6, Intel-based, size large r5d.xlarge: memory-optimized instance, generation 5, with local NVMe storage 2.2 Các Khía Cạnh Cốt Lõi Của Một Instance EC2 Vậy tại sao EC2 có nhiều loại instance như vậy? Các workload khác nhau gây áp lực lên các tài nguyên hệ thống khác nhau, điều này làm cho một cấu hình instance duy nhất trở nên kém hiệu quả trên tất cả các trường hợp sử dụng. Bởi vì các nhu cầu tài nguyên này mở rộng độc lập và có cấu trúc chi phí khác nhau, EC2 cung cấp nhiều instance families thay vì buộc tất cả workload vào một loại máy tổng quát duy nhất. Mỗi loại instance EC2 được xác định bởi một số ít các khía cạnh kỹ thuật ảnh hưởng trực tiếp đến hành vi workload. Các instance family được thiết kế để tối ưu cho những tổ hợp tài nguyên khác nhau của những khía cạnh này thay vì cung cấp các máy "mạnh hơn" một cách dần dần. Đặc điểm compute, bao gồm kiến trúc CPU và hồ sơ hiệu suất Dung lượng bộ nhớ và tỷ lệ bộ nhớ trên vCPU Mô hình lưu trữ, sử dụng storage gắn qua mạng hoặc local instance storage Băng thông mạng và đặc điểm hiệu suất 3. Các Danh Mục EC2 Instance và Ánh Xạ Workload Một khi bạn hiểu cách đặt tên các loại instance, câu hỏi tiếp theo là làm thế nào để chọn danh mục phù hợp cho một workload cụ thể. 3.1 General Purpose Instances: Workload Cân Bằng General purpose instances được thiết kế cho các workload không có nút thắt hiệu suất rõ ràng. Trong những trường hợp này, việc sử dụng CPU, bộ nhớ và mạng có xu hướng tăng cùng nhau thay vì bị chi phối bởi một tài nguyên duy nhất. M-Series (M5, M6i, M6a, M7i) Tỷ lệ cân bằng giữa compute, bộ nhớ và mạng Thường được sử dụng cho web servers, microservices, backend services và các database nhỏ T-Series (T3, T4g) Hiệu suất CPU burstable dựa trên mô hình credit Phù hợp cho môi trường phát triển, websites lưu lượng thấp và các batch workloads không liên tục Hiệu quả chi phí cho các workload không cần CPU chạy liên tục ở mức cao 3.2 Compute Optimized Instances: Workload Giới Hạn Bởi CPU Khi hiệu suất ứng dụng bị giới hạn chủ yếu bởi khả năng xử lý của CPU thay vì bộ nhớ hoặc I/O, compute optimized instances trở thành lựa chọn phù hợp hơn. Compute optimized instances nhắm đến các workload nơi hiệu suất CPU cao và nhất quán là yếu tố giới hạn, chẳng hạn như xử lý batch, phân phối quảng cáo, mã hóa video, gaming, mô hình hóa khoa học, phân tích phân tán và machine learning inference dựa trên CPU. C-Series (C5, C6i, C7i) Processors hiệu suất cao được tối ưu hóa cho các tác vụ chuyên sâu về compute Các trường hợp sử dụng điển hình bao gồm: Web servers thông lượng cao như Nginx hoặc Apache dưới tải nặng Các workload tính toán khoa học như mô phỏng Monte Carlo và mô hình hóa toán học Xử lý batch quy mô lớn và các ETL jobs Máy chủ game multiplayer thời gian thực Các workload transcoding và streaming media Đặc điểm hiệu suất: Lên đến 192 vCPUs trên các instance sizes lớn (ví dụ: c7i.48xlarge) Băng thông bộ nhớ cao so với số lượng vCPU Enhanced networking với băng thông lên đến 200 Gbps Tùy chọn local NVMe SSD storage trên các biến thể được chọn 3.3 Memory-Optimized Instances: Workload Giới Hạn Bởi Bộ Nhớ Memory-optimized instances được thiết kế cho các workload nơi hiệu suất bị giới hạn bởi dung lượng bộ nhớ hoặc tốc độ truy cập bộ nhớ thay vì throughput CPU. Các instances này thường được sử dụng cho các open-source databases, in-memory caches và các hệ thống phân tích thời gian thực yêu cầu các tập dữ liệu làm việc lớn phải nằm trong bộ nhớ. R-Series (R5, R6i, R7i) Tỷ lệ bộ nhớ trên vCPU cao, lên đến 1:32 Các trường hợp sử dụng điển hình bao gồm: In-memory data stores như Redis và Memcached Các nền tảng phân tích thời gian thực như Apache Spark và Elasticsearch Các databases hiệu suất cao bao gồm SAP HANA và Apache Cassandra X-Series (X1e, X2i) Dung lượng bộ nhớ cực lớn với tỷ lệ bộ nhớ trên vCPU lên đến 1:128 Các trường hợp sử dụng điển hình bao gồm: Các workload enterprise như SAP Business Suite và Microsoft SQL Server Các hệ thống xử lý dữ liệu quy mô lớn như Apache Hadoop và Apache Kafka Các workload phân tích in-memory yêu cầu footprint RAM rất lớn 3.4 Accelerated Computing Instances: Workload GPU và Hardware-Accelerated Khi các workload yêu cầu xử lý song song vượt quá những gì CPUs có thể cung cấp hiệu quả, GPU-accelerated instances trở nên phù hợp. Accelerated computing instances được sử dụng cho các workload dựa vào GPUs cho training, inference, rendering đồ họa hoặc các hình thức hardware acceleration khác, bao gồm các ứng dụng generative AI như trả lời câu hỏi, tạo hình ảnh, xử lý video và nhận dạng giọng nói. Instance Family Mục Đích Chính Tối Ưu Cho Các Trường Hợp Sử Dụng Điển Hình P-Series (P3, P4, P5) Machine learning training Tính toán song song quy mô lớn Training các neural networks lớn (LLMs, CNNs) Nghiên cứu AI/ML với PyTorch và TensorFlow Tính toán khoa học (động lực học phân tử, mô hình hóa khí hậu) G-Series (G4, G5) Graphics & ML inference Rendering thời gian thực và các workloads độ trễ thấp Các nền tảng game streaming Transcoding và rendering video thời gian thực Virtual workstations cho CAD và 3D modeling 3.5 Storage Optimized Instances: Workload Giới Hạn Bởi I/O Trong một số hệ thống, hiệu suất không phụ thuộc vào CPU hoặc bộ nhớ chút nào. Nút thắt hiệu suất thường nằm ở độ trễ disk hoặc thông lượng I/O. Storage optimized instances được xây dựng đặc biệt cho các workload nơi việc truy cập disk nhanh và nhất quán là rất quan trọng. Các instances này dựa vào local storage thay vì network-attached volumes. Chúng thường được sử dụng trong các hệ thống thực hiện khối lượng lớn reads và writes hoặc xử lý dữ liệu trực tiếp từ disk. I-Series (I3, I4i) Instance storage được xây dựng trên NVMe SSDs với hiệu suất I/O ngẫu nhiên rất cao Các trường hợp sử dụng điển hình: Distributed databases như Apache Cassandra và MongoDB sharded clusters Search và indexing engines như Elasticsearch với các workloads ghi nặng Cache layers yêu cầu persistence D-Series (D3) Dense HDD storage được tối ưu hóa cho các access patterns tuần tự Các trường hợp sử dụng điển hình: Distributed storage systems như HDFS data nodes Xử lý dữ liệu quy mô lớn với MapReduce hoặc Apache Spark 3.6 HPC Optimized Instances: High-Performance Computing Chuyên Biệt HPC optimized instances phục vụ một lớp workload hẹp nhưng đòi hỏi cao. Các workload này yêu cầu tính toán ghép nối chặt chẽ trên nhiều cores và giao tiếp độ trễ cực thấp. Chúng không phải là general-purpose và hiếm khi được sử dụng bên ngoài các lĩnh vực chuyên biệt. Danh mục này thường thấy nhất trong nghiên cứu khoa học, mô phỏng kỹ thuật và mô hình hóa tài chính. Hiệu suất phụ thuộc nhiều vào mạng và băng thông bộ nhớ cũng như sức mạnh CPU thô. Hpc-Series (Hpc6a, Hpc7a) Tối ưu hóa cho các workload high-performance computing Các trường hợp sử dụng điển hình: Mô phỏng khoa học như dự báo thời tiết và computational fluid dynamics Mô hình hóa tài chính bao gồm phân tích rủi ro và algorithmic trading Mô phỏng kỹ thuật như finite element analysis và crash modeling Đặc điểm chính: Enhanced networking với Elastic Fabric Adapter (EFA) Băng thông bộ nhớ cao với độ trễ thấp Hỗ trợ tối ưu cho các ứng dụng dựa trên MPI 4. Các Mô Hình Giá EC2 và Chiến Lược Tối Ưu Hóa Chi Phí Amazon EC2 cung cấp nhiều mô hình giá để phù hợp với các đặc điểm workload và khả năng chấp nhận rủi ro khác nhau. Các mô hình này khác nhau chủ yếu về tính linh hoạt, hiệu quả chi phí và khả năng chịu đựng sự gián đoạn. Việc lựa chọn tùy chọn giá phù hợp là một phần của quyết định compute, không phải là một bước đến sau khi triển khai. Giá EC2 có thể được nhóm thành bốn tùy chọn chính. 4.1 On-Demand Instances On-Demand instances tuân theo mô hình pay-as-you-go nơi người dùng chỉ bị tính phí cho thời gian compute họ thực sự sử dụng. Không có cam kết dài hạn, điều này làm cho tùy chọn này trở nên đơn giản và dễ dự đoán. Sự đánh đổi là chi phí, vì giá On-Demand là tùy chọn đắt nhất trên mỗi đơn vị compute. Đặc điểm chính: Không cần thanh toán trước hoặc cam kết tối thiểu Tính phí theo giây cho Linux và theo giờ cho Windows Tính linh hoạt cao nhất với chi phí cao nhất Instances có thể bị chấm dứt bất cứ lúc nào Các trường hợp sử dụng điển hình: Môi trường phát triển và kiểm thử với việc spin-up và shutdown thường xuyên Các workloads tồn tại trong thời gian ngắn như batch jobs hoặc xử lý dữ liệu ad-hoc Các workloads không thể dự đoán với traffic spikes hoặc các mô hình theo mùa Các ứng dụng mới nơi các mô hình sử dụng chưa được hiểu rõ 4.2 Spot Instances Spot Instances cung cấp quyền truy cập vào EC2 capacity chưa được sử dụng với mức giá thấp hơn đáng kể so với On-Demand instances. Giá phụ thuộc vào cung – cầu, điều này có nghĩa là availability không được đảm bảo. Do đó, Spot Instances phù hợp nhất cho các workloads có thể chịu đựng được sự gián đoạn. Cách Spot Instances hoạt động: Người dùng chỉ định mức giá tối đa họ sẵn sàng trả Instances được khởi chạy khi Spot price ở mức bằng hoặc thấp hơn mức giá đó AWS cung cấp thông báo gián đoạn hai phút trước khi thu hồi capacity Instances có thể bị stopped, terminated hoặc hibernated dựa trên cấu hình Chiến lược sử dụng Spot: Phân phối workloads trên nhiều instance types và Availability Zones Thiết kế ứng dụng để chịu đựng sự gián đoạn Lưu tiến trình thường xuyên sử dụng checkpoints Kết hợp Spot với On-Demand instances cho các thành phần quan trọng Best practices Phù hợp cho các retryable workloads như CI/CD pipelines và data crawlers Sử dụng Spot Fleet để yêu cầu capacity đa dạng một cách tự động Triển khai graceful shutdown handling trong ứng dụng Theo dõi xu hướng Spot price và điều chỉnh chiến lược bidding Kết hợp với Auto Scaling Groups để cải thiện resilience 4.3 Savings Plans và Reserved Instances Savings Plans và Reserved Instances giảm chi phí bằng cách đánh đổi tính linh hoạt lấy cam kết dài hạn. Cả hai mô hình đều được thiết kế cho các workloads có mức sử dụng ổn định và có thể dự đoán. Sự khác biệt chính nằm ở mức độ linh hoạt mà người dùng giữ lại sau khi thực hiện cam kết. Savings Plans (AWS khuyến nghị): Chiết khấu dựa trên chi tiêu theo giờ đã cam kết trong 1 hoặc 3 năm Thanh toán có thể là full upfront, partial upfront hoặc no upfront Các loại Savings Plans: Compute Savings Plans: Áp dụng trên các loại instance, operating systems và regions EC2 Instance Savings Plans: Áp dụng cho các instance families cụ thể trong các regions được chọn Reserved Instances Chiết khấu dựa trên việc cam kết một instance type cụ thể trong một khoảng thời gian cố định Cam kết từ 1 tháng đến 3 năm Các loại Reserved Instances: Standard RIs: Chiết khấu lên đến 75%, với tính linh hoạt hạn chế Convertible RIs: Chiết khấu lên đến 54%, với tùy chọn thay đổi loại instance 4.4 So Sánh Các Mô Hình Giá Mô Hình Thanh Toán Tính Linh Hoạt Chiết Khấu Phù Hợp On-Demand Rất cao Không có Workloads không thể dự đoán hoặc ngắn hạn Spot Trung bình Lên đến 90% Workloads chịu lỗi được Savings Plans Cao Lên đến 72% Sử dụng compute ổn định Reserved Instances Thấp Lên đến 75% Workloads dài hạn, có thể dự đoán Kết luận C2 không khó vì các tính năng của nó. Nó trở nên khó khăn khi các teams coi việc lựa chọn instance và giá cả như những yếu tố cân nhắc sau cùng thay vì các quyết định thiết kế. Một khi bạn bắt đầu từ chính workload—cách nó hoạt động, nơi nó bị giới hạn và nó ổn định như thế nào theo thời gian—hầu hết các lựa chọn EC2 ngừng cảm thấy trừu tượng và bắt đầu có ý nghĩa. Nếu bạn đang chạy workloads trên AWS và muốn kiểm tra lại các lựa chọn EC2 của mình với ai đó nhìn vào việc sử dụng trước các công cụ, Haposoft làm việc với các teams về các cloud setups thực tế dựa trên cách các hệ thống thực sự được sử dụng. Nếu bạn cần một cuộc thảo luận kỹ thuật thực tế thay vì một sales pitch, đó thường là nơi cuộc hội thoại bắt đầu.
cta-background

Đăng ký nhận bản tin hàng tháng của Haposoft

Nhận thông tin chuyên sâu về chuyển đổi số và cập nhật sự kiện trực tiếp vào hộp thư đến của bạn.

Hãy cùng thảo luận về dự án tiếp theo của bạn. Chúng tôi có thể giúp gì cho bạn?

+84 
© Haposoft 2025. All rights reserved