


















Preview text:
lOMoAR cPSD| 58707906
Module 9 - Cloud Architecture
Section 1 Video - AWS Well-Architected Framework Design Principles
1. Giới thiệu về AWS Well-Architected Framework • Mục đích:
o Cung cấp các phương pháp tốt nhất (best practices) để thiết kế và vận
hành kiến trúc đám mây. o Đưa ra một cách tiếp cận nhất quán để đánh
giá và cải thiện các khối lượng công việc (workloads). o Dựa trên bài
học thực tế rút ra từ việc đánh giá hàng ngàn kiến trúc của khách hàng. • Lợi ích chính:
o Bảo mật (Security): Bảo vệ dữ liệu và hệ thống. o Hiệu suất
(Performance Efficiency): Tối ưu hóa việc sử dụng tài nguyên. o Độ tin
cậy (Reliability): Đảm bảo khả năng chịu lỗi và khôi phục.
o Tối ưu chi phí (Cost Optimization): Tránh lãng phí chi tiêu.
o Vận hành xuất sắc (Operational Excellence): Cải thiện quy trình và tự động hóa.
2. Năm Trụ Cột trong AWS Well-Architected Framework
Mỗi trụ cột giải quyết một khía cạnh quan trọng trong kiến trúc đám mây:
A. Vận hành Xuất sắc (Operational Excellence) •
Trọng tâm: Vận hành và giám sát hệ thống để tạo ra giá trị kinh doanh. • Best practices:
o Tự động hóa hoạt động (ví dụ: pipeline CI/CD).
o Phản ứng theo sự kiện.
o Cải tiến quy trình liên tục. B. Bảo mật (Security) •
Trọng tâm: Bảo vệ dữ liệu và hệ thống. • Best practices:
o SEC 1: Quản lý thông tin xác thực và xác thực người dùng (MFA, IAM policies).
o Mã hóa dữ liệu khi lưu trữ và truyền tải. o Áp dụng nguyên tắc quyền
truy cập tối thiểu (least privilege).
C. Độ tin cậy (Reliability) •
Trọng tâm: Đảm bảo khối lượng công việc có thể phục hồi khi có sự cố. • Best practices:
o Thiết kế chống lỗi (ví dụ: triển khai trên nhiều Availability Zones).
o Tự động hóa quy trình khôi phục. o Kiểm tra kế hoạch phục hồi thảm họa. lOMoAR cPSD| 58707906
D. Hiệu suất (Performance Efficiency) •
Trọng tâm: Tối ưu hóa việc sử dụng tài nguyên. • Best practices:
o Sử dụng dịch vụ có thể mở rộng (Auto Scaling, Lambda). o Theo dõi và
điều chỉnh hiệu năng. o Chọn loại tài nguyên phù hợp (compute, storage...).
E. Tối ưu hóa chi phí (Cost Optimization) •
Trọng tâm: Tối đa hóa giá trị với chi phí thấp nhất. • Best practices:
o Dùng tài nguyên tiết kiệm chi phí (Spot Instances...). o Giám sát và loại
bỏ tài nguyên không cần thiết. o Tận dụng mô hình định giá AWS (Reserved Instances...).
3. Ví dụ: Trụ cột Bảo mật (Security – Quản lý Danh tính và Truy cập) Câu hỏi:
"Làm thế nào để bạn quản lý thông tin xác thực và xác thực người dùng?" Best practices:
1. Xác định yêu cầu IAM: Thiết lập chính sách kiểm soát truy cập rõ ràng.
2. Bảo vệ tài khoản root: Không sử dụng tài khoản root cho các tác vụ hằng ngày.
3. Bắt buộc sử dụng MFA: Thêm một lớp bảo mật bổ sung.
4. Tự động hóa kiểm soát: Sử dụng các chính sách và vai trò IAM.
5. Thường xuyên xoay vòng thông tin đăng nhập: Giảm rủi ro rò rỉ thông tin.
6. Kiểm tra quyền truy cập: Theo dõi quyền với AWS CloudTrail.
4. Nguyên tắc Thiết kế
1. Không đoán dung lượng cần thiết: Sử dụng tính năng auto-scaling.
2. Kiểm thử hệ thống ở quy mô thực tế: Mô phỏng lỗi và sự cố.
3. Tự động hóa mọi thứ: Giảm lỗi do con người gây ra.
4. Thiết kế rời rạc (loose coupling): Các thành phần hoạt động độc lập.
5. Tập trung vào mô hình serverless: Giảm gánh nặng vận hành.
Section 2 Video - Operational Excellence 1.
Giới thiệu về Trụ cột Vận hành Xuất sắc (Operational Excellence) Trọng tâm (Focus):
o Vận hành và giám sát hệ thống để mang lại giá trị cho doanh nghiệp.
o Cải tiến liên tục quy trình và thủ tục hỗ trợ hệ thống. lOMoAR cPSD| 58707906
Các chủ đề chính (Key Topics): o Quản lý và tự động hóa các thay
đổi. o Phản ứng với các sự kiện. o Xây dựng các tiêu chuẩn để quản
lý hiệu quả hoạt động hằng ngày.
2. Nguyên tắc thiết kế (Design Principles) •
Thực hiện hoạt động như mã (Perform operations as code):
Quản lý hạ tầng và quy trình vận hành bằng code để có thể tái sử dụng, kiểm
soát phiên bản và tự động hóa. •
Chú thích tài liệu (Annotate documentation):
Luôn cập nhật và ghi chú tài liệu kỹ thuật để hỗ trợ vận hành tốt hơn. •
Thực hiện các thay đổi nhỏ, thường xuyên và có thể đảo ngược (Make frequent, small, reversible changes):
Giảm rủi ro khi triển khai thay đổi nhờ vào quy mô nhỏ và có khả năng quay lại trạng thái trước. •
Tinh chỉnh quy trình thường xuyên (Refine operations procedures frequently):
Luôn cập nhật và cải tiến các quy trình để nâng cao hiệu suất. •
Dự đoán trước lỗi (Anticipate failure):
Lường trước và chuẩn bị cho các tình huống lỗi để phản ứng nhanh chóng. •
Học hỏi từ các sự kiện và lỗi (Learn from all operational events and failures):
Ghi nhận và phân tích sự cố để tránh tái diễn.
3. Các câu hỏi đánh giá trong Operational Excellence
Chia làm ba nhóm: Chuẩn bị (Prepare), Vận hành (Operate), và Phát triển (Evolve) Prepare – Chuẩn bị: •
Làm thế nào để xác định ưu tiên của bạn? •
Làm sao để thiết kế workload có thể hiểu được trạng thái? •
Làm sao để giảm lỗi và đẩy nhanh quá trình khắc phục? •
Làm sao để giảm thiểu rủi ro khi triển khai? •
Làm sao để biết bạn đã sẵn sàng hỗ trợ workload? Operate – Vận hành: •
Làm sao để hiểu được "sức khỏe" của workload? •
Làm sao để hiểu rõ hoạt động của hệ thống? •
Làm sao để quản lý các sự kiện liên quan đến workload và hệ thống? Evolve – Phát triển: •
Làm sao để cải tiến hoạt động vận hành liên tục?
4. Ví dụ Thực Tiễn •
Tự động hoá giám sát: Sử dụng Amazon CloudWatch để theo dõi log, chỉ số và cảnh báo cho ứng dụng. lOMoAR cPSD| 58707906 •
CI/CD Pipelines: Tự động hóa triển khai bằng AWS CodePipeline giúp thực
hiện các thay đổi nhỏ và thường xuyên. •
Sự kiện khôi phục lỗi: Thiết lập runbook và playbook để phản ứng nhanh khi hệ thống gặp sự cố. lOMoAR cPSD| 58707906
Section 3 Video - Security
1. Giới thiệu về Trụ cột Bảo mật (Security Pillar) • Trọng tâm (Focus):
o Bảo vệ thông tin, hệ thống và tài sản. o Đảm bảo cung cấp giá
trị kinh doanh thông qua các chiến lược đánh giá rủi ro và giảm thiểu mối đe dọa. •
Các chủ đề chính (Key Topics):
o Nhận diện và quản lý quyền truy cập (ai được làm gì). o Thiết
lập kiểm soát để phát hiện sự kiện bảo mật. o Bảo vệ hệ thống và
dịch vụ. o Bảo vệ tính bí mật và toàn vẹn của dữ liệu.
2. Nguyên tắc thiết kế bảo mật (Security Design Principles) •
Triển khai nền tảng nhận dạng vững chắc (Implement a strong identity foundation):
Sử dụng AWS IAM để kiểm soát truy cập và phân quyền chính xác. •
Kích hoạt khả năng truy vết (Enable traceability):
Sử dụng dịch vụ như AWS CloudTrail để ghi lại toàn bộ hoạt động hệ thống. •
Áp dụng bảo mật ở mọi lớp (Apply security at all layers):
Bảo vệ từ lớp mạng đến ứng dụng và dữ liệu. •
Tự động hóa các phương pháp bảo mật tốt nhất (Automate security best practices):
Giảm thiểu lỗi con người và đảm bảo nhất quán. •
Bảo vệ dữ liệu khi truyền và lưu trữ (Protect data in transit and at rest):
Sử dụng mã hóa (encryption) để đảm bảo an toàn dữ liệu. •
Hạn chế truy cập trực tiếp đến dữ liệu (Keep people away from data):
Dùng công cụ để xử lý dữ liệu mà không cần truy cập thủ công. •
Chuẩn bị cho sự kiện bảo mật (Prepare for security events): Thiết lập kế hoạch
phản hồi và diễn tập ứng phó sự cố. 3. Các câu hỏi đánh giá bảo mật (Security Questions)
Chia thành 5 lĩnh vực chính:
1. Identity and Access Management – Quản lý danh tính và quyền truy cập •
Làm thế nào bạn quản lý thông tin đăng nhập và xác thực? •
Làm sao bạn kiểm soát quyền truy cập của con người? •
Làm sao bạn kiểm soát quyền truy cập qua lập trình (API)?
2. Detective Controls – Kiểm soát phát hiện •
Làm sao bạn phát hiện và điều tra các sự kiện bảo mật? •
Làm sao bạn chống lại các mối đe dọa bảo mật mới nổi? lOMoAR cPSD| 58707906
3. Infrastructure Protection – Bảo vệ hạ tầng •
Làm sao bạn bảo vệ hệ thống mạng? •
Làm sao bạn bảo vệ tài nguyên tính toán (compute)?
4. Data Protection – Bảo vệ dữ liệu •
Làm sao bạn phân loại dữ liệu? •
Làm sao bạn bảo vệ dữ liệu khi lưu trữ (at rest)? •
Làm sao bạn bảo vệ dữ liệu khi truyền tải (in transit)?
5. Incident Response – Phản hồi sự cố
Làm sao bạn phản ứng với một sự cố bảo mật?
4. Ví dụ Thực Tiễn •
IAM và MFA: Thiết lập người dùng IAM với chính sách quyền tối thiểu, kết
hợp xác thực đa yếu tố (MFA). •
CloudTrail & Config: Theo dõi lịch sử thay đổi, hoạt động API để điều tra khi có sự cố. •
KMS (Key Management Service): Mã hóa dữ liệu bằng khóa được kiểm soát tập trung. •
WAF & Shield: Bảo vệ ứng dụng web khỏi các tấn công như SQL injection, DDoS. lOMoAR cPSD| 58707906
Section 4 Video – Reliability
1. Giới thiệu về Trụ cột Độ tin cậy (Reliability Pillar) • Trọng tâm (Focus):
o Ngăn ngừa và khôi phục nhanh chóng sau sự cố để đáp ứng nhu cầu kinh doanh và khách hàng. •
Các chủ đề chính (Key Topics):
o Thiết lập hệ thống (Setting up): Khởi tạo đúng cách giúp xây dựng nền
tảng đáng tin cậy. o Yêu cầu liên dự án (Cross-project requirements):
Đảm bảo các dịch vụ tích hợp hoạt động đồng bộ và ổn định. o Lập kế
hoạch khôi phục (Recovery planning): Dự trù kịch bản lỗi và các bước
phục hồi. o Xử lý thay đổi (Handling change): Đảm bảo hệ thống thích
nghi với các thay đổi một cách an toàn.
2. Các câu hỏi đánh giá Độ tin cậy (Reliability Questions)
Được chia thành 3 nhóm chủ đề chính:
1. Foundations – Nền tảng •
Làm thế nào bạn quản lý giới hạn dịch vụ (service limits)? •
Làm thế nào bạn quản lý cấu trúc mạng (network topology)?
2. Change Management – Quản lý thay đổi •
Hệ thống của bạn thích nghi với thay đổi về nhu cầu ra sao? •
Làm sao bạn giám sát tài nguyên? •
Làm sao bạn triển khai thay đổi một cách an toàn?
3. Failure Management – Quản lý lỗi •
Làm sao bạn sao lưu dữ liệu? •
Hệ thống của bạn đối phó với lỗi thành phần như thế nào? •
Làm sao bạn kiểm thử khả năng chịu lỗi (resilience)? •
Làm sao bạn lập kế hoạch khắc phục thảm họa (disaster recovery)?
3. Ví dụ Thực Tiễn •
Multi-AZ Deployment: Triển khai cơ sở dữ liệu Amazon RDS trên nhiều vùng
sẵn sàng để đảm bảo độ sẵn sàng cao. •
Sao lưu tự động: Dùng AWS Backup để tự động sao lưu dữ liệu hàng ngày và khôi phục khi cần. •
Elastic Load Balancer: Giúp phân phối tải đều cho các instance và tránh bị
downtime nếu một instance gặp lỗi. •
Auto Scaling Groups: Đảm bảo hệ thống luôn có số lượng tài nguyên phù hợp
và thay thế các instance bị lỗi. lOMoAR cPSD| 58707906
Section 5 Video - Performance Efficiency
1. Giới thiệu về Trụ cột Hiệu suất (Performance Efficiency Pillar) • Trọng tâm (Focus):
o Sử dụng tài nguyên CNTT và tính toán (computing) một cách hiệu quả.
o Đáp ứng yêu cầu hệ thống và đảm bảo hiệu suất khi nhu cầu tăng và công nghệ thay đổi. •
Các chủ đề chính (Key Topics):
o Chọn đúng loại tài nguyên và kích cỡ phù hợp: Dựa trên workload để tối
ưu. o Giám sát hiệu suất: Kiểm tra liên tục để đảm bảo mọi thứ hoạt
động như mong đợi. o Ra quyết định có cơ sở: Phân tích dữ liệu để điều
chỉnh phù hợp theo nhu cầu doanh nghiệp.
2. Nguyên tắc thiết kế hiệu suất (Performance Efficiency Design Principles) •
Phổ cập công nghệ tiên tiến (Democratize advanced technologies):
o Sử dụng dịch vụ AWS để truy cập dễ dàng vào AI/ML, IoT, phân tích dữ
liệu lớn mà không cần chuyên môn sâu. •
Mở rộng toàn cầu trong vài phút (Go global in minutes):
o Triển khai hệ thống ở nhiều khu vực (Region) để tối ưu trải nghiệm người dùng toàn cầu. •
Sử dụng kiến trúc serverless (Use serverless architectures):
o Giảm chi phí vận hành và tối ưu tài nguyên bằng các dịch vụ như AWS Lambda. •
Thử nghiệm thường xuyên hơn (Experiment more often):
o Tối ưu liên tục bằng cách thử nghiệm các tùy chọn cấu hình, dịch vụ mới... •
Hiểu “cơ học” hệ thống (Have mechanical sympathy):
o Hiểu rõ cách phần cứng và phần mềm tương tác để lựa chọn tối ưu nhất.
3. Các câu hỏi đánh giá hiệu suất (Performance Efficiency Questions)
Chia thành 4 nhóm câu hỏi chính:
1. Selection – Lựa chọn •
Làm sao bạn chọn kiến trúc tối ưu nhất? •
Làm sao bạn chọn giải pháp tính toán (compute)? •
Làm sao bạn chọn giải pháp lưu trữ (storage)? •
Làm sao bạn chọn giải pháp cơ sở dữ liệu (database)? Làm sao bạn chọn giải pháp mạng (networking)?
2. Review – Đánh giá lại lOMoAR cPSD| 58707906
Làm sao bạn cải tiến workload để tận dụng các bản cập nhật mới?
3. Monitoring – Giám sát
Làm sao bạn giám sát tài nguyên để đảm bảo hiệu suất?
4. Tradeoffs – Đánh đổi
Làm sao bạn sử dụng các lựa chọn đánh đổi để cải thiện hiệu năng?
4. Ví dụ Thực Tiễn •
Auto Scaling: Tự động thêm hoặc giảm số lượng EC2 instances theo nhu cầu. •
AWS Lambda (Serverless): Chạy mã mà không cần quản lý máy chủ, tự động scale. •
Amazon CloudWatch: Giám sát hiệu suất CPU, bộ nhớ, request rate... •
Sử dụng các instance phù hợp: Chọn EC2 loại T3 cho workload tiết kiệm, hoặc
C5 cho workload hiệu suất cao. lOMoAR cPSD| 58707906
Section 6 Video - Cost Optimization
1. Giới thiệu về Trụ cột Tối ưu hóa Chi phí (Cost Optimization Pillar) • Trọng tâm (Focus):
o Sử dụng tài nguyên hiệu quả để tạo ra giá trị tối đa. o Đáp ứng yêu cầu
hệ thống với chi phí thấp nhất có thể mà vẫn đảm bảo hiệu quả. •
Các chủ đề chính (Key Topics):
o Lựa chọn mô hình định giá và tài nguyên phù hợp: On-Demand, Reserved, Spot...
o Theo dõi và kiểm soát chi phí: Giám sát, phân tích, gán nhãn chi phí. o
Tối ưu hóa sử dụng: Loại bỏ tài nguyên dư thừa, scale hợp lý. o Cân
bằng giữa chi phí và hiệu suất.
2. Nguyên tắc thiết kế (Cost Optimization Design Principles)
(Nội dung từ các bài giảng thường sẽ bao gồm các nguyên tắc sau — nếu cần hình ảnh
minh họa, mình có thể bổ sung từ tài liệu gốc.) •
Luôn theo dõi chi phí (Adopt a consumption model): o Chỉ trả tiền cho những
gì bạn thực sự sử dụng. •
Đo lường và phân tích (Measure overall efficiency):
o So sánh chi phí bỏ ra với giá trị kinh doanh mang lại. •
Ngừng tài nguyên không sử dụng (Stop spending on undifferentiated heavy lifting):
o Loại bỏ các hoạt động không mang lại giá trị đặc biệt (VD: tự quản lý server). •
Phân tích chi phí định kỳ (Analyze and attribute expenditure): o Gắn thẻ (tag)
tài nguyên để theo dõi chi phí theo nhóm, bộ phận, dự án. 3. Các câu hỏi đánh
giá chi phí (Cost Optimization Questions) Chia thành 4 nhóm chính:
1. Cost-Effective Resources – Tài nguyên tiết kiệm
Làm sao bạn chọn tài nguyên phù hợp nhất với khối lượng công việc?
Bạn có đang sử dụng Spot Instances hay Reserved Instances không?
2. Matching Supply and Demand – Cân bằng cung – cầu
Làm sao bạn mở rộng hoặc thu nhỏ tài nguyên theo nhu cầu thực tế?
3. Expenditure Awareness – Nhận thức chi tiêu •
Làm sao bạn theo dõi và kiểm soát ngân sách? •
Bạn có dùng tag để phân loại chi phí theo bộ phận/dự án không?
4. Optimizing Over Time – Tối ưu theo thời gian lOMoAR cPSD| 58707906
Làm sao bạn đánh giá và cải thiện chiến lược tối ưu chi phí định kỳ?
4. Ví dụ Thực Tiễn •
Sử dụng EC2 Spot Instances: Tận dụng máy tính thừa của AWS với chi phí rẻ hơn 90%. •
Reserved Instances (RI): Đặt trước máy chủ cho workload ổn định để tiết kiệm chi phí dài hạn. •
AWS Cost Explorer: Phân tích chi tiêu và xu hướng tiêu dùng hàng tháng. •
AWS Budgets & Alerts: Thiết lập ngưỡng cảnh báo khi vượt mức ngân sách. •
Gắn thẻ tài nguyên (Resource Tagging): Quản lý chi phí theo team, môi trường (dev/test/prod)... lOMoAR cPSD| 58707906
Section 7 Video – Reliability and Avaibility
1. Reliability – Độ tin cậy • Định nghĩa:
Khả năng của hệ thống trong việc cung cấp chức năng như mong đợi cho người
dùng trong thời gian xác định. • Hệ thống bao gồm:
o Các thành phần như hardware, firmware và software. o Các thành phần
con có thể là nguyên nhân gây lỗi (ví dụ như hình minh họa về xe hơi,
phanh, làm mát, đánh lửa...). •
Xác suất hoạt động đúng:
Độ tin cậy thể hiện khả năng toàn bộ hệ thống hoạt động như mong đợi trong thời gian đã định.
2. Các chỉ số đo Reliability Chỉ số Giải thích MTBF – Mean Time Between
Thời gian trung bình giữa các lần lỗi = MTTF + Failures MTTR MTTF – Mean Time to Failure
Thời gian trung bình đến lần lỗi đầu tiên MTTR – Mean Time to Repair
Thời gian trung bình để sửa chữa, phục hồi hệ thống
→ MTBF càng cao thì hệ thống càng đáng tin cậy.
3. Availability – Tính sẵn sàng • Định nghĩa:
Tỷ lệ thời gian hệ thống hoạt động bình thường trên tổng thời gian. Tính bằng công thức:
Availability=Thời gian hoạt động bı nhˋ thườngTổng thời gian\
text{Availability} = \frac{\text{Thời gian hoạt động bình thường}}{\text{Tổng
thời gian}}Availability=Tổng thời gianThời gian hoạt động bı nhˋ thường • Đơn vị đo phổ biến:
o Biểu diễn bằng số "9":
99% → gián đoạn tối đa 3 ngày 15 giờ/năm
99.999% (Five 9s) → chỉ ~5 phút gián đoạn mỗi năm
Availability Max Disruption (per year) Ứng dụng thường dùng 99% 3 ngày 15 giờ
Xử lý theo lô, trích xuất dữ liệu 99.9% 8 giờ 45 phút Công cụ nội bộ lOMoAR cPSD| 58707906
Availability Max Disruption (per year) Ứng dụng thường dùng 99.95% 4 giờ 22 phút Thương mại điện tử 99.99% 52 phút Truyền phát video 99.999% 5 phút
Giao dịch ATM, hệ thống viễn thông
4. High Availability – Tính sẵn sàng cao •
Hệ thống có khả năng hoạt động ngay cả khi một số thành phần bị giảm chất lượng. •
Downtime được giảm thiểu tối đa. •
Can thiệp thủ công gần như không cần thiết (tự động hóa khôi phục).
5. Các yếu tố ảnh hưởng đến Availability Yếu tố Mô tả
Hệ thống có cơ chế dự phòng tích hợp sẵn giúp tiếp tục
Fault Tolerance (Chịu lỗi) hoạt động dù một số phần gặp sự cố.
Scalability (Khả năng mở Khả năng hệ thống mở rộng đáp ứng tải tăng mà không
rộng) cần thay đổi kiến trúc.
Recoverability (Khả năng Quy trình và chính sách để phục hồi dịch vụ sau thảm khôi phục) họa.
Module 10 - Auto Scaling and Monitoring lOMoAR cPSD| 58707906
Section 1 Video - Elastic Load Balancing
1. Khái niệm cơ bản về Elastic Load Balancer •
ELB giúp phân phối lưu lượng đến nhiều máy chủ, container hoặc Lambda
function trong một hoặc nhiều Availability Zones (AZ). •
Có khả năng tự động scale theo lượng traffic đến. •
Được sử dụng phổ biến để tăng tính sẵn sàng (availability) và chống quá tải ở
tầng frontend hoặc backend.
2. Các loại Load Balancer trong AWS Giao thức hỗ Loại LB Mô tả chính Tầng hoạt động trợ Layer 7 Application Load Tối ưu cho HTTP/HTTPS, HTTP, HTTPS (Application Balancer (ALB)
routing theo nội dung request Layer) Network Load
Dành cho TCP/UDP, độ trễ TCP, UDP, Layer 4 (Transport Balancer (NLB)
cực thấp, khối lượng lớn TLS Layer) Classic Load Balancer (CLB)
Hỗ trợ HTTP, HTTPS, TCP, HTTP, (cũ) SSL
HTTPS, TCP, Layer 4 & 7 SSL
3. Cách hoạt động của Elastic Load Balancing •
Listener nhận request từ client. •
ELB thực hiện kiểm tra trạng thái (health check). •
Request chỉ được chuyển đến các target “healthy” (hoạt động bình thường). •
Với ALB/NLB: đăng ký target group.
Với CLB: đăng ký trực tiếp các EC2 instances.
4. Các tình huống sử dụng (Use Cases) Use Case Giải thích
Ứng dụng sẵn sàng cao và chịu lỗi tốt
Giảm downtime, tăng độ tin cậy
Phân phối lưu lượng đến nhiều Ứng dụng container hóa container
Tự động mở rộng khi lượng truy cập Elasticity & Scalability tăng VPC (Virtual Private Cloud)
Dễ tích hợp trong hạ tầng AWS Use Case Giải thích
Môi trường hybrid (kết hợp cloud/on- lOMoAR cPSD| 58707906
Phân phối traffic linh hoạt premises)
Kích hoạt Lambda qua HTTP(S)
Serverless architecture support
5. Giám sát Load Balancer (Monitoring)
Các công cụ giám sát tích hợp: • Amazon CloudWatch Metrics
o Theo dõi các chỉ số như request count, latency, healthy host count...
o Thiết lập cảnh báo khi vượt ngưỡng. • Access Logs
o Ghi lại chi tiết các request được gửi đến ELB.
o Hữu ích để debug hoặc phân tích log. • AWS CloudTrail Logs
o Theo dõi các API call liên quan đến Load Balancer (ai làm gì, khi nào...)
Section 2 Video - Amazon CloudWatch
1. Mục tiêu của việc giám sát tài nguyên AWS lOMoAR cPSD| 58707906
Để sử dụng AWS hiệu quả, bạn cần giám sát tài nguyên nhằm trả lời các câu hỏi sau: •
Làm sao bạn biết khi nào cần khởi tạo thêm EC2 instance? •
Liệu hiệu suất hoặc độ sẵn sàng của ứng dụng có đang bị ảnh hưởng bởi việc thiếu tài nguyên? •
Có bao nhiêu phần hạ tầng thực sự đang được sử dụng?
Tất cả đều có thể được giải quyết bằng công cụ Amazon CloudWatch.
2. Amazon CloudWatch là gì?
Amazon CloudWatch là dịch vụ giúp bạn theo dõi, thu thập và phản ứng với các thay
đổi trong hệ thống AWS.
CloudWatch thực hiện các chức năng sau: •
Giám sát (Monitoring) tài nguyên AWS (như EC2, S3, RDS…) và các ứng dụng đang chạy. •
Thu thập dữ liệu (Collect & Track) về các chỉ số chuẩn (standard metrics) và
tùy chỉnh (custom metrics). •
Cảnh báo (Alarms) khi vượt ngưỡng – ví dụ: gửi thông báo qua SNS hoặc kích hoạt Auto Scaling. •
Sự kiện (Events) để định nghĩa các phản ứng tự động khi có thay đổi trong môi trường AWS.
3. CloudWatch Alarms – Hệ thống cảnh báoBạn có thể tạo cảnh báo dựa trên: •
Static threshold: giá trị ngưỡng cố định. •
Anomaly detection: phát hiện các hành vi bất thường. •
Metric math expression: sử dụng biểu thức tính toán từ nhiều metric.
Các thông số cần thiết khi tạo alarm: •
Namespace – dịch vụ AWS cụ thể (ví dụ: AWS/EC2). •
Metric – chỉ số muốn theo dõi (ví dụ: CPUUtilization). •
Statistic – kiểu thống kê: trung bình, lớn nhất, nhỏ nhất... •
Period – chu kỳ lấy mẫu (ví dụ: 5 phút). •
Condition – điều kiện kích hoạt: lớn hơn, nhỏ hơn, bằng... •
Actions – hành động khi alarm kích hoạt: gửi thông báo, tự động scale, v.v.
4. Lợi ích khi sử dụng CloudWatch •
Giúp theo dõi và tối ưu hiệu năng hệ thống một cách chủ động. Phát hiện
sớm các sự cố và tự động phản hồi. •
Cho phép thu thập, lưu trữ và phân tích log theo thời gian thực. •
Dễ dàng tích hợp với các dịch vụ khác như Auto Scaling, Lambda, SNS. lOMoAR cPSD| 58707906
5. Ví dụ thực tế •
Nếu CPU của EC2 vượt quá 80% trong 10 phút → CloudWatch gửi cảnh báo và thực hiện Auto Scaling. •
Nếu hệ thống nhận nhiều request bất thường → CloudWatch kích hoạt anomaly detection. •
Nếu một instance mất kết nối → CloudWatch có thể trigger việc thay thế instance.
Section 3 Video - Amazon EC2 Auto Scaling
1. Tại sao Scaling lại quan trọng? lOMoAR cPSD| 58707906
Trong thực tế, lưu lượng truy cập (traffic) và nhu cầu xử lý (demand) thay đổi theo
thời gian. Nếu bạn cung cấp tài nguyên cố định: •
Khi nhu cầu thấp → tài nguyên dư thừa, gây lãng phí. •
Khi nhu cầu tăng cao → tài nguyên không đủ, gây quá tải và ảnh hưởng trải nghiệm người dùng.
Do đó, hệ thống cần có khả năng tự động mở rộng (scale out) và thu hẹp (scale in) theo nhu cầu sử dụng.
2. Amazon EC2 Auto Scaling là gì?
Amazon EC2 Auto Scaling là dịch vụ giúp: •
Duy trì tính sẵn sàng của ứng dụng. •
Tự động thêm hoặc gỡ bỏ EC2 instances dựa vào điều kiện bạn định nghĩa. •
Phát hiện instance bị lỗi hoặc ứng dụng không hoạt động, thay thế instance mới. •
Cung cấp nhiều kiểu scaling: o Thủ công
o Theo lịch trình o Tự động dựa vào điều kiện thực tế
o Dự đoán (predictive scaling)
3. Thực tế về traffic tại Amazon.com •
Lưu lượng thường dao động theo từng ngày và giờ. •
Không thể biết chính xác khi nào sẽ có đỉnh tải (traffic spike). •
Ví dụ trong tháng 11, có thời điểm sử dụng chỉ 24%, có lúc lên đến 76% so với
năng lực xử lý đã cấp phát.
=> Giải pháp tối ưu là dùng Auto Scaling để điều chỉnh tài nguyên linh hoạt.
4. Auto Scaling Group là gì?
Auto Scaling Group là một nhóm các EC2 instances được quản lý chung với mục đích: •
Tự động điều chỉnh số lượng instance từ Minimum size đến Maximum size.
Giữ mức năng lực xử lý tại Desired capacity khi hệ thống ổn định.
Các instance được khởi tạo, dừng hoặc thay thế tùy theo tình trạng hoạt động (health) và chính sách scaling.
5. Cách hoạt động của Amazon EC2 Auto Scaling •
What: sử dụng AMI (Amazon Machine Image), loại instance, IAM role...
Where: triển khai trong VPC, subnet, kết nối với Load Balancer. •
When: o Duy trì số lượng cố định: kiểm tra trạng thái hoạt động (health
checks). o Thủ công: điều chỉnh bằng tay. o Theo lịch trình: mở rộng/thu hẹp lOMoAR cPSD| 58707906
theo giờ/ngày cố định. o Tự động động (Dynamic): theo điều kiện như CPU > 60%.
o Dự đoán (Predictive): dựa trên dữ liệu lịch sử sử dụng.
6. Ví dụ triển khai Dynamic Scaling •
CloudWatch giám sát chỉ số như CPU utilization. •
Nếu CPU > 60% trong 5 phút → kích hoạt policy mở rộng. •
Auto Scaling Group sẽ khởi tạo thêm instance mới. •
Load Balancer sẽ chia lại lưu lượng đến các instance mới.
7. AWS Auto Scaling (dịch vụ mở rộng chung)
Ngoài EC2, AWS Auto Scaling cũng hỗ trợ scaling cho: • Amazon EC2 Spot Fleet • Amazon ECS Tasks (container) •
Amazon DynamoDB tables và indexes • Amazon Aurora Read Replicas