Amazon Web Services (AWS) là nền tảng điện toán đám mây hàng đầu thế giới, cung cấp hơn 200 dịch vụ đầy đủ từ các trung tâm dữ liệu trên toàn cầu. Bài viết này sẽ giúp bạn hiểu ngắn gọn về các dịch vụ AWS cơ bản và cung cấp nguồn học tập để tìm hiểu sâu hơn.

IAM (Identity and Access Management)

Mục đích: Quản lý người dùng, phân quyền và kiểm soát truy cập vào các tài nguyên AWS một cách an toàn.

Khái niệm cơ bản:

  • User: Người dùng hoặc ứng dụng cần truy cập AWS
  • Group: Tập hợp các user để quản lý quyền dễ dàng hơn
  • Role: Được gán cho AWS resources hoặc user tạm thời để truy cập
  • Policy: Tài liệu JSON định nghĩa quyền (allow/deny)

Policy Structure:

  • Effect: Allow hoặc Deny
  • Action: Tập hợp các hành động được phép (ví dụ: s3:GetObject)
  • Resource: Tập hợp các tài nguyên được phép tương tác (ARN)
  • Condition: Điều kiện bổ sung (thời gian, IP, v.v.)

Policy có thể gắn vào User, Group hoặc Role.

Tài liệu học tập:

S3 (Simple Storage Service)

Mục đích: Lưu trữ object có khả năng mở rộng cao và độ tin cậy cao cho bất kỳ loại dữ liệu nào.

Đặc trưng cơ bản:

  • Lưu trữ không giới hạn
  • Độ bền 99.999999999% (11 số 9)
  • Tự động mở rộng
  • Truy cập từ bất kỳ đâu qua API

Tính năng chính:

  • Versioning: Giữ lại nhiều phiên bản của cùng một object
  • Lifecycle Policies: Tự động chuyển đổi storage class hoặc xóa
  • Event Triggers: Kích hoạt Lambda, SNS, SQS khi có sự kiện
  • Presigned URL: Tạo URL tạm thời để upload/download
  • Access Control: Bucket Policy và ACL để kiểm soát truy cập

Storage Classes:

  • Standard: Truy cập thường xuyên, độ bền cao
  • Intelligent-Tiering: Tự động chuyển đổi giữa các tier
  • Standard-IA: Truy cập không thường xuyên, chi phí thấp hơn
  • One Zone-IA: Giống Standard-IA nhưng chỉ lưu trong 1 AZ
  • Glacier Instant Retrieval: Truy xuất trong vài giây
  • Glacier Flexible Retrieval: Truy xuất trong 1-5 phút hoặc 5-12 giờ
  • Glacier Deep Archive: Lưu trữ dài hạn, truy xuất trong 12 giờ
  • S3 on Outposts: Lưu trữ tại chỗ với Outposts

Tích hợp: Lambda, CloudFront, CloudWatch, EventBridge, Transfer Family

Tài liệu học tập:

Elastic Load Balancing & Auto Scaling

Mục đích: Phân phối lưu lượng truy cập đến nhiều target và tự động điều chỉnh số lượng instance.

Tại sao cần Load Balancer:

  • Phân phối tải để tránh quá tải
  • Tăng tính khả dụng và khả năng chịu lỗi
  • Hỗ trợ SSL termination
  • Health checks tự động

Loại Load Balancer:

  • Application Load Balancer (ALB): Lớp 7, routing dựa trên HTTP/HTTPS
  • Network Load Balancer (NLB): Lớp 4, hiệu suất cao, IP cố định
  • Gateway Load Balancer: Lớp 3, tích hợp với firewall/security appliances
  • Classic Load Balancer: Legacy, không khuyến nghị cho ứng dụng mới

Auto Scaling:

  • Auto Scaling Group: Tự động thêm/bớt EC2 instances
  • Scaling Methods:
    • Manual: Điều chỉnh thủ công
    • Scheduled: Theo lịch định sẵn
    • Dynamic: Dựa trên CloudWatch metrics (CPU, memory, custom)
    • Predictive: Sử dụng machine learning để dự đoán

Tài liệu học tập:

RDS (Relational Database Service)

Mục đích: Quản lý database quan hệ được quản lý hoàn toàn với khả năng tự động backup, patching và scaling.

Tính năng:

  • Multi-AZ deployment cho high availability
  • Automated backups và point-in-time recovery
  • Read replicas để cải thiện hiệu suất đọc
  • Encryption at rest và in transit
  • Monitoring với CloudWatch

Database Engines: MySQL, PostgreSQL, MariaDB, Oracle, SQL Server, Aurora

Mô hình triển khai:

  • Single Instance: Một instance đơn lẻ
  • Multi-AZ: Standby replica trong AZ khác (cho failover)
  • Read Replicas: Nhiều bản sao chỉ đọc để phân phối tải đọc
  • Aurora: Database engine được AWS tối ưu hóa, tự động scaling

Aurora Features:

  • Tự động scaling từ 10GB đến 128TB
  • Up to 15 read replicas
  • Continuous backup to S3
  • Point-in-time recovery
  • Aurora Serverless: Tự động scaling theo nhu cầu

RDS Proxy: Connection pooling và failover cho RDS

Tài liệu học tập:

DynamoDB (NoSQL Database)

Mục đích: Database NoSQL được quản lý hoàn toàn, không có server, với hiệu suất cao và khả năng mở rộng tự động.

Đặc điểm:

  • NoSQL key-value và document database
  • Single-digit millisecond latency
  • Tự động scaling
  • Backup và restore tích hợp
  • Encryption at rest

DynamoDB Indexing:

  • Primary Key: Partition key hoặc Partition + Sort key
  • Global Secondary Index (GSI): Index với partition và sort key khác
  • Local Secondary Index (LSI): Index với cùng partition key nhưng sort key khác

DAX (DynamoDB Accelerator): In-memory caching layer để giảm latency xuống microsecond

DynamoDB Streams: Capture changes theo thời gian thực để trigger Lambda

DynamoDB Export: Export data sang S3 để phân tích

Tài liệu học tập:

Lambda (Serverless Computing)

Mục đích: Chạy code mà không cần quản lý server, chỉ trả tiền cho thời gian thực thi.

Đặc trưng:

  • Không cần quản lý server
  • Tự động scaling
  • Pay per use (tính phí theo request và thời gian chạy)
  • Hỗ trợ nhiều ngôn ngữ (Node.js, Python, Java, Go, .NET, Ruby)
  • Timeout tối đa 15 phút
  • Memory từ 128 MB đến 10 GB

Hệ sinh thái Lambda:

  • API Gateway integration
  • S3, DynamoDB, SNS, SQS triggers
  • EventBridge integration
  • Step Functions cho workflow

Khi nào sử dụng:

  • Xử lý file upload
  • Real-time data processing
  • Scheduled tasks
  • API backends
  • Microservices

Tài liệu học tập:

VPC (Virtual Private Cloud)

Mục đích: Tạo mạng riêng ảo trong AWS để cách ly và bảo mật tài nguyên.

Thành phần cơ bản:

  • VPC: Mạng riêng ảo riêng biệt
  • Subnet: Phạm vi IP trong VPC (Public/Private)
  • Route Table: Quy tắc định tuyến traffic
  • Internet Gateway: Kết nối VPC với Internet
  • NAT Gateway: Cho phép private subnet truy cập Internet một chiều
  • Elastic IP: Địa chỉ IP tĩnh công cộng

Bảo mật:

  • Security Group: Firewall ở mức instance (stateful)
  • Network ACL: Firewall ở mức subnet (stateless)
  • VPC Flow Logs: Ghi log traffic trong VPC

Kết nối:

  • VPN Connection: Kết nối site-to-site VPN
  • VPC Peering: Kết nối giữa các VPC
  • Transit Gateway: Hub trung tâm để kết nối nhiều VPC
  • VPC Endpoints: Kết nối private đến AWS services (không qua Internet)

Tài liệu học tập:

API Gateway & Cognito

API Gateway: Dịch vụ quản lý API để tạo, publish, maintain, monitor và secure REST và WebSocket APIs.

Tính năng:

  • Stages: Môi trường deployment (dev, staging, prod)
  • Usage Plans: Giới hạn rate và quota
  • API Keys: Xác thực đơn giản
  • Custom Domain: Sử dụng domain riêng
  • Canary Deployment: Triển khai dần dần để test
  • Deployment History: Theo dõi các version đã deploy

Cognito: Dịch vụ quản lý user identity và authentication.

Tính năng:

  • User pools: Thư mục người dùng
  • Identity pools: Cung cấp AWS credentials
  • Social identity providers (Google, Facebook, Amazon)
  • Multi-factor authentication (MFA)

Tài liệu học tập:

CloudFront (CDN)

Mục đích: Phân phối nội dung toàn cầu với độ trễ thấp và tốc độ truyền cao.

Khái niệm:

  • Distribution: Cấu hình CloudFront để phân phối content
  • Edge Location: Vị trí cache gần người dùng
  • Origin: Nguồn dữ liệu (S3, EC2, ALB, custom)
  • Cache: Lưu trữ tạm thời để giảm latency
  • Security: SSL/TLS, signed URLs, geo-restrictions
  • Lambda@Edge: Chạy code tại edge locations

Tài liệu học tập:

Route 53 (DNS Service)

Mục đích: Dịch vụ DNS có khả năng mở rộng cao và độ tin cậy cao.

Khái niệm:

  • Hosted Zone: Container cho DNS records của domain
  • DNS Records: A, AAAA, CNAME, MX, TXT, v.v.
  • Routing Policies:
    • Simple: Trả về một giá trị
    • Weighted: Phân phối traffic theo trọng số
    • Latency-based: Route đến region có latency thấp nhất
    • Failover: Active-passive failover
    • Geolocation: Route dựa trên vị trí địa lý
    • Geoproximity: Route dựa trên khoảng cách địa lý
    • Multivalue: Trả về nhiều giá trị healthy

Tài liệu học tập:

CloudWatch & CloudTrail (Monitoring & Auditing)

CloudWatch: Dịch vụ monitoring và observability cho AWS resources và applications.

Tính năng:

  • Metrics: Thu thập và theo dõi metrics
  • Alarms: Cảnh báo khi metrics vượt ngưỡng
  • Logs: Thu thập và phân tích log
  • Logs Insights: Query log data
  • Dashboards: Tạo dashboard tùy chỉnh
  • X-Ray: Trace requests qua các services

CloudTrail: Ghi log tất cả API calls để audit và compliance.

Tài liệu học tập:

SNS, SQS, SES (Messaging Services)

SQS (Simple Queue Service): Message queue service để decouple và scale microservices.

Tính năng:

  • Standard Queue: Unlimited throughput, best-effort ordering
  • FIFO Queue: Exactly-once processing, ordered
  • Long Polling: Giảm số lượng empty responses
  • Dead Letter Queue: Lưu trữ messages không xử lý được
  • Receive Count: Số lần message được receive

SNS (Simple Notification Service): Pub/sub messaging service để gửi notifications.

Tính năng:

  • Topics và Subscriptions
  • Multiple protocols (Email, SMS, HTTP, Lambda, SQS)
  • Fan-out pattern

SES (Simple Email Service): Email sending service với khả năng deliverability cao.

Tài liệu học tập:

EventBridge (Event-Driven Architecture)

Mục đích: Quản lý và định tuyến sự kiện từ nhiều nguồn khác nhau.

Thành phần:

  • Event Bus: Router cho events
  • Rules: Định nghĩa event pattern và target
  • Pipes: Point-to-point integration giữa event sources và targets
  • Scheduler: Lên lịch one-time hoặc recurring tasks

Tài liệu học tập:

Elastic Beanstalk

Mục đích: Platform as a Service (PaaS) để deploy và scale web applications dễ dàng.

Ưu điểm:

  • Dễ deploy, không cần quản lý infrastructure
  • Tự động scaling và load balancing
  • Hỗ trợ nhiều platforms (Java, .NET, PHP, Node.js, Python, Ruby, Go, Docker)

Nhược điểm:

  • Ít kiểm soát hơn so với tự quản lý EC2
  • Có thể tốn kém hơn nếu không tối ưu

Tài liệu học tập:

ECS & ECR (Container Services)

ECR (Elastic Container Registry): Managed Docker container registry để lưu trữ images.

ECS (Elastic Container Service): Container orchestration service để chạy Docker containers.

Tính năng:

  • Task Definition: Template cho container
  • Service: Maintain số lượng tasks chạy
  • Cluster: Nhóm EC2 instances hoặc Fargate
  • Fargate: Serverless container platform (không cần quản lý servers)

Cloud Map: Service discovery để tự động discover services.

Cloud9: Cloud-based IDE để phát triển trên AWS.

Tài liệu học tập:

CloudFormation (Infrastructure as Code)

Mục đích: Tạo và quản lý AWS resources bằng code (YAML hoặc JSON templates).

Lợi ích:

  • Infrastructure as Code
  • Version control cho infrastructure
  • Tái sử dụng templates
  • Rollback khi có lỗi
  • Stack management

Tài liệu học tập:

Backup & Disaster Recovery

Các chiến lược:

  1. Backup & Restore: Backup thường xuyên, restore khi cần (RTO/RPO cao)
  2. Pilot Light: Minimal version của app chạy liên tục, scale khi disaster
  3. Warm Standby: Full system chạy ở reduced capacity, scale khi disaster
  4. Multi-Site Active-Active: Full capacity ở nhiều sites, load balancing

Tài liệu học tập:

Security Services

KMS (Key Management Service): Managed service để tạo và quản lý encryption keys.

Macie: Dịch vụ bảo mật dữ liệu sử dụng machine learning để phát hiện dữ liệu nhạy cảm.

Threat Detection:

  • GuardDuty: Threat detection service sử dụng ML
  • Detective: Phân tích nguyên nhân security issues
  • Config: Đánh giá cấu hình resources
  • Security Hub: Tổng hợp security findings từ nhiều services

Application Protection:

  • WAF: Web Application Firewall để bảo vệ ứng dụng web
  • Shield: DDoS protection service (Standard và Advanced)

Management:

  • Trusted Advisor: Best practice recommendations
  • Organizations: Quản lý nhiều AWS accounts

Tài liệu học tập:

Tài nguyên học tập tổng hợp

Tài liệu chính thức

Khóa học miễn phí

Hands-on Labs

Certification Paths

  • AWS Certified Cloud Practitioner
  • AWS Certified Solutions Architect - Associate
  • AWS Certified Developer - Associate
  • AWS Certified SysOps Administrator - Associate
  • AWS Certified Solutions Architect - Professional
  • AWS Certified DevOps Engineer - Professional

Cộng đồng

Kết luận

AWS cung cấp một hệ sinh thái dịch vụ đầy đủ để xây dựng và vận hành ứng dụng trên cloud. Việc hiểu các dịch vụ cơ bản và cách chúng hoạt động cùng nhau là nền tảng quan trọng để thành công với AWS. Hãy bắt đầu với AWS Free Tier để thực hành và khám phá các dịch vụ này.

Lời khuyên:

  • Bắt đầu với các dịch vụ cơ bản: IAM, EC2, S3, VPC
  • Thực hành thường xuyên với AWS Free Tier
  • Làm theo các hands-on tutorials
  • Tham gia cộng đồng AWS để học hỏi
  • Chuẩn bị cho certification để validate kiến thức

Chúc bạn thành công trên hành trình học AWS!