[AWS] Chapter 5: AWS EC2 Storages
Xin chào các bạn, chúng ta đã tìm hiểu về EC2, cách tạo EC2, cách kết nối vào EC2 và cách sử dụng EC2. Trong bài viết này, chúng ta sẽ tìm hiểu về các loại storage mà EC2 cung cấp.
I. Tổng quan về EBS (Elastic Block Store)
1. EBS Volume là gì?
- EBS (Elastic Block Store) Volume là một loại ổ đĩa mạng có thể được gắn vào các instance của bạn khi chúng đang hoạt động.
- Nó cho phép các instance lưu trữ dữ liệu một cách bền vững, ngay cả sau khi các instance đó bị chấm dứt.
- Mỗi EBS Volume chỉ có thể được gắn vào một instance tại một thời điểm (ở cấp độ CCP).
- EBS Volume bị ràng buộc với một vùng khả dụng cụ thể.
- Ví dụ: Hãy tưởng tượng EBS Volume như một chiếc “USB mạng”.
2. Chi tiết về EBS Volume
- EBS Volume là một ổ đĩa mạng, không phải là ổ đĩa vật lý.
- Nó sử dụng mạng để giao tiếp với instance, điều này có thể gây ra một chút độ trễ.
- EBS Volume có thể được tách ra từ một instance EC2 và gắn vào một instance khác một cách nhanh chóng.
- EBS Volume chỉ khả dụng trên 1 AZ cụ thể. Một EBS Volume ở us-east-1a không thể được gắn vào us-east-1b. Để di chuyển một volume giữa các vùng, bạn cần phải tạo snapshot trước.
- EBS Volume có dung lượng được tính bằng GB và IOPS. Bạn sẽ bị tính phí cho tất cả dung lượng được cung cấp, bất kể bạn có sử dụng hết hay không. Bạn có thể tăng dung lượng của ổ đĩa theo thời gian nếu cần.
3. Thuộc tính Delete on Termination của EBS
- Thuộc tính này kiểm soát hành vi của EBS khi một instance EC2 bị chấm dứt.
- Theo mặc định, root EBS volume sẽ bị xóa khi instance bị chấm dứt (thuộc tính này được bật).
- Ngược lại, các EBS volume khác được gắn vào sẽ không bị xóa theo mặc định (thuộc tính này bị tắt).
- Bạn có thể kiểm soát thuộc tính này thông qua AWS console hoặc AWS CLI.
- Trường hợp sử dụng: Bạn có thể bảo toàn root volume khi instance bị chấm dứt nếu cần giữ lại dữ liệu.
II. EBS Snapshots
1. EBS Snapshots
- Tạo một bản sao lưu (snapshot) của EBS volume tại một thời điểm cụ thể.
- Không cần thiết phải tách volume để tạo snapshot, nhưng nên làm như vậy.
- Có thể sao chép snapshots giữa các AZ hoặc Region.
2. Các tính năng của EBS Snapshots
-
EBS Snapshot Archive:
- Di chuyển một Snapshot đến “archive tier” với chi phí rẻ hơn 75%.
- Mất từ 24 đến 72 giờ để khôi phục từ archive.
-
Recycle Bin cho EBS Snapshots:
- Thiết lập quy tắc để giữ lại các snapshots đã xóa để có thể khôi phục chúng sau khi bị xóa nhầm.
- Chỉ định thời gian giữ lại (từ 1 ngày đến 1 năm).
-
Fast Snapshot Restore (FSR):
- Buộc khởi tạo đầy đủ snapshot để không có độ trễ khi sử dụng lần đầu tiên (chi phí cao).
III. Instance Store
- EBS volumes là các ổ đĩa mạng với hiệu suất tốt nhưng “giới hạn”.
- Nếu bạn cần một ổ đĩa phần cứng hiệu suất cao, hãy sử dụng EC2 Instance Store.
- Hiệu suất I/O tốt hơn.
- EC2 Instance Store sẽ mất dữ liệu nếu chúng bị dừng (tạm thời).
- Tốt cho dữ liệu đệm / bộ nhớ cache / dữ liệu tạm thời / nội dung tạm thời.
- Nguy cơ mất dữ liệu nếu phần cứng gặp sự cố.
- Sao lưu và sao chép là trách nhiệm của bạn.
IV. Các loại EBS Volume
1. Các loại EBS Volume
- EBS Volumes có 6 loại:
- gp2 / gp3 (SSD): Ổ đĩa SSD mục đích chung cân bằng giữa giá cả và hiệu suất cho nhiều loại công việc khác nhau.
- io1 / io2 Block Express (SSD): Ổ đĩa SSD hiệu suất cao nhất cho các công việc quan trọng đòi hỏi độ trễ thấp hoặc thông lượng cao.
- st1 (HDD): Ổ đĩa HDD chi phí thấp được thiết kế cho các công việc truy cập thường xuyên, đòi hỏi thông lượng cao.
- sc1 (HDD): Ổ đĩa HDD chi phí thấp nhất được thiết kế cho các công việc truy cập ít thường xuyên hơn.
- EBS Volumes được đặc trưng bởi Kích thước | Thông lượng | IOPS (I/O Ops Per Sec).
- Khi không chắc chắn, luôn tham khảo tài liệu AWS – rất hữu ích!
- Chỉ có gp2/gp3 và io1/io2 Block Express có thể được sử dụng làm ổ đĩa khởi động.
2. Các trường hợp sử dụng của các loại EBS Volume
General Purpose SSD
- Lưu trữ hiệu quả về chi phí, độ trễ thấp.
- Ổ đĩa khởi động hệ thống, máy tính để bàn ảo, môi trường phát triển và thử nghiệm.
- Kích thước từ 1 GiB đến 16 TiB.
- gp3:
- Mức cơ bản 3,000 IOPS và thông lượng 125 MiB/s.
- Có thể tăng IOPS lên đến 16,000 và thông lượng lên đến 1000 MiB/s một cách độc lập.
- gp2:
- Các ổ đĩa gp2 nhỏ có thể tăng IOPS lên 3,000.
- Kích thước của ổ đĩa và IOPS liên kết với nhau, IOPS tối đa là 16,000.
- 3 IOPS mỗi GB, nghĩa là ở 5,334 GB chúng ta đạt IOPS tối đa.
Provisioned IOPS (PIOPS) SSD
- Ứng dụng kinh doanh quan trọng với hiệu suất IOPS duy trì.
- Hoặc các ứng dụng cần hơn 16,000 IOPS.
- Tuyệt vời cho các công việc cơ sở dữ liệu (nhạy cảm với hiệu suất và độ nhất quán của lưu trữ).
- io1 (4 GiB - 16 TiB):
- PIOPS tối đa: 64,000 cho các instance Nitro EC2 & 32,000 cho các instance khác.
- Có thể tăng PIOPS một cách độc lập với kích thước lưu trữ.
- io2 Block Express (4 GiB – 64 TiB):
- Độ trễ dưới mili giây.
- PIOPS tối đa: 256,000 với tỷ lệ IOPS:GiB là 1,000:1.
- Hỗ trợ EBS Multi-attach.
Hard Disk Drives (HDD)
- Không thể là ổ đĩa khởi động.
- Kích thước từ 125 GiB đến 16 TiB.
- Throughput Optimized HDD (st1):
- Dữ liệu lớn, kho dữ liệu, xử lý log.
- Thông lượng tối đa 500 MiB/s – IOPS tối đa 500.
- Cold HDD (sc1):
- Dành cho dữ liệu ít được truy cập.
- Các kịch bản mà chi phí thấp nhất là quan trọng.
- Thông lượng tối đa 250 MiB/s – IOPS tối đa 250.
3. Tính năng Multi-Attach
EBS Multi-Attach – Dòng io1/io2
- Cho phép gắn cùng một EBS volume vào nhiều EC2 instance trong cùng một AZ.
- Mỗi instance có quyền đọc và ghi đầy đủ vào volume hiệu suất cao này.
- Trường hợp sử dụng:
- Đạt được tính khả dụng cao hơn cho các ứng dụng Linux dạng cụm (ví dụ: Teradata).
- Các ứng dụng phải quản lý các hoạt động ghi đồng thời.
- Hỗ trợ tối đa 16 EC2 instance cùng lúc.
- Phải sử dụng hệ thống tệp nhận biết cụm (không phải XFS, EXT4, v.v…).
V. EBS Encryption
1. EBS Encryption là gì?
- Khi bạn tạo một EBS volume được mã hóa, bạn sẽ nhận được các lợi ích sau:
- Dữ liệu lưu trữ: Dữ liệu tại chỗ được mã hóa bên trong volume.
- Dữ liệu truyền tải: Tất cả dữ liệu di chuyển giữa instance và volume đều được mã hóa.
- Snapshots: Tất cả các snapshots đều được mã hóa.
- Volumes từ snapshots: Tất cả các volumes được tạo từ snapshot đều được mã hóa.
- Xử lý mã hóa/giải mã: Mã hóa và giải mã được xử lý một cách minh bạch (bạn không cần làm gì).
- Độ trễ: Mã hóa có tác động tối thiểu đến độ trễ.
- KMS Keys: EBS Encryption sử dụng các khóa từ KMS (AES-256).
- Sao chép snapshots: Sao chép một snapshot không mã hóa cho phép mã hóa.
- Snapshots mã hóa: Snapshots của các volumes mã hóa đều được mã hóa.
2. Mã hóa một EBS Volume không mã hóa
- Bước 1: Tạo một EBS snapshot của volume.
- Bước 2: Mã hóa EBS snapshot (sử dụng sao chép).
- Bước 3: Tạo một EBS volume mới từ snapshot (volume này cũng sẽ được mã hóa).
- Bước 4: Gắn volume mã hóa vào instance ban đầu.
VI. Amazon EFS – Elastic File System
1. Amazon EFS là gì?
- Trường hợp sử dụng: Quản lý nội dung, phục vụ web, chia sẻ dữ liệu, Wordpress.
- Giao thức: Sử dụng giao thức NFSv4.1.
- Bảo mật: Sử dụng nhóm bảo mật để kiểm soát truy cập vào EFS.
- Tương thích: Tương thích với AMI dựa trên Linux (không phải Windows).
- Mã hóa: Mã hóa dữ liệu khi lưu trữ bằng KMS.
- Hệ thống tệp POSIX: Hệ thống tệp POSIX (~Linux) có API tệp tiêu chuẩn.
- Tự động mở rộng: Hệ thống tệp tự động mở rộng, trả tiền theo mức sử dụng, không cần lập kế hoạch dung lượng.
2. Hiệu suất và các lớp lưu trữ của EFS
-
Quy mô EFS:
- Hỗ trợ hàng ngàn khách hàng NFS đồng thời, thông lượng trên 10 GB/s.
- Tự động mở rộng thành hệ thống tệp mạng quy mô Petabyte.
-
Chế độ hiệu suất (được thiết lập khi tạo EFS):
- General Purpose (mặc định): Dành cho các trường hợp sử dụng nhạy cảm với độ trễ (máy chủ web, CMS, v.v…).
- Max I/O: Độ trễ cao hơn, thông lượng cao, song song cao (xử lý dữ liệu lớn, xử lý phương tiện).
-
Chế độ thông lượng:
- Bursting: 1 TB = 50 MiB/s + bùng nổ lên đến 100 MiB/s.
- Provisioned: Thiết lập thông lượng của bạn bất kể kích thước lưu trữ, ví dụ: 1 GiB/s cho 1 TB lưu trữ.
- Elastic: Tự động điều chỉnh thông lượng lên hoặc xuống dựa trên khối lượng công việc của bạn.
- Tối đa 3 GiB/s cho đọc và 1 GiB/s cho ghi.
- Sử dụng cho các khối lượng công việc không thể dự đoán.
3. Các lớp lưu trữ của EFS
-
Các tầng lưu trữ (tính năng quản lý vòng đời – di chuyển tệp sau N ngày):
- Standard: Dành cho các tệp được truy cập thường xuyên.
- Infrequent Access (EFS-IA): Chi phí để truy xuất tệp, giá lưu trữ thấp hơn.
- Archive: Dữ liệu hiếm khi được truy cập (vài lần mỗi năm), rẻ hơn 50%.
-
Chính sách vòng đời: Thực hiện các chính sách vòng đời để di chuyển tệp giữa các tầng lưu trữ.
-
Khả dụng và độ bền:
- Standard: Multi-AZ, tuyệt vời cho môi trường sản xuất.
- One Zone: Một AZ, tuyệt vời cho môi trường phát triển, sao lưu được bật theo mặc định, tương thích với IA (EFS One Zone-IA).
- Tiết kiệm chi phí hơn 90%.
VII. So sánh EBS và EFS
Đặc điểm | EBS (Elastic Block Store) | EFS (Elastic File System) |
---|---|---|
Loại lưu trữ | Ổ đĩa khối (Block Storage) | Hệ thống tệp (File System) |
Trường hợp sử dụng | Lưu trữ dữ liệu cho một instance EC2 cụ thể, cơ sở dữ liệu, ứng dụng yêu cầu IOPS cao | Quản lý nội dung, phục vụ web, chia sẻ dữ liệu, Wordpress |
Giao thức | Giao tiếp qua mạng với instance EC2 | Sử dụng giao thức NFSv4.1 |
Khả năng mở rộng | Tăng dung lượng theo yêu cầu, phải thực hiện thủ công | Tự động mở rộng, trả tiền theo mức sử dụng, không cần lập kế hoạch dung lượng |
Tính khả dụng | Chỉ khả dụng trong một AZ cụ thể | Multi-AZ (Standard) hoặc One Zone |
Mã hóa | Sử dụng KMS (AES-256) để mã hóa dữ liệu khi lưu trữ và truyền tải | Mã hóa dữ liệu khi lưu trữ bằng KMS |
Hiệu suất | Tùy thuộc vào loại volume (gp2, gp3, io1, io2, st1, sc1) | Hỗ trợ hàng ngàn khách hàng NFS đồng thời, thông lượng trên 10 GB/s |
Chế độ hiệu suất | Không áp dụng | General Purpose (mặc định), Max I/O |
Chế độ thông lượng | Không áp dụng | Bursting, Provisioned, Elastic |
Lớp lưu trữ | gp2, gp3, io1, io2, st1, sc1 | Standard, Infrequent Access (EFS-IA), Archive |
Quản lý vòng đời | Không áp dụng | Thực hiện các chính sách vòng đời để di chuyển tệp giữa các tầng lưu trữ |
Khả năng chịu lỗi | Phụ thuộc vào loại volume và cấu hình sao lưu | Multi-AZ (Standard) hoặc One Zone, sao lưu được bật theo mặc định |
Chi phí | Tính phí dựa trên dung lượng được cung cấp, bất kể có sử dụng hết hay không | Trả tiền theo mức sử dụng, chi phí thấp hơn cho các tệp ít được truy cập và lưu trữ lâu dài |
VIII. AMI Overview
- AMI = Amazon Machine Image
- AMI là một tùy chỉnh của một instance EC2
- Bạn thêm phần mềm, cấu hình, hệ điều hành, giám sát của riêng bạn…
- Thời gian khởi động / cấu hình nhanh hơn vì tất cả phần mềm của bạn đã được đóng gói sẵn
- AMI được xây dựng cho một khu vực cụ thể (và có thể được sao chép qua các khu vực khác)
- Bạn có thể khởi chạy các instance EC2 từ:
- Public AMI: do AWS cung cấp
- AMI của riêng bạn: bạn tự tạo và duy trì chúng
- AMI từ AWS Marketplace: một AMI do người khác tạo (và có thể bán)
VIII. Kết luận
Trong bài viết này, chúng ta đã tìm hiểu về các loại storage mà AWS EC2 cung cấp, bao gồm EBS (Elastic Block Store) và EFS (Elastic File System). Mỗi loại storage có những đặc điểm và trường hợp sử dụng riêng biệt, phù hợp với các nhu cầu khác nhau của người dùng.
- EBS là lựa chọn tốt cho các ứng dụng yêu cầu IOPS cao và lưu trữ dữ liệu cho một instance EC2 cụ thể. Nó cung cấp nhiều loại volume khác nhau để tối ưu hóa chi phí và hiệu suất.
- EFS là hệ thống tệp mạng tự động mở rộng, phù hợp cho các trường hợp sử dụng như quản lý nội dung, phục vụ web và chia sẻ dữ liệu. Nó hỗ trợ hàng ngàn khách hàng NFS đồng thời và cung cấp các chế độ hiệu suất và thông lượng linh hoạt.
Việc hiểu rõ các đặc điểm và trường hợp sử dụng của từng loại storage sẽ giúp bạn lựa chọn giải pháp lưu trữ phù hợp nhất cho ứng dụng của mình trên AWS.
Ở bài blogs tiếp theo, chúng ta sẽ thực hành về những storage này.
Bài Viết Liên Quan
[AWS] Chapter 4: AWS EC2 Hands-on (Mức độ cơ bản)
Xin chào tất cả các bạn, lại là mình đây. Hôm nay mình sẽ cùng các bạn thực hành phần EC2 này nhé, chúng ta sẽ thực hành các bước tạo EC2 khá là đơn giản nhưng cũng rất quan trọng trong quá trình sử dụng AWS nhé.
Đọc Thêm[AWS] Chapter 3: AWS EC2 (Phần 2)
Xin chào các bạn, lại là mình đây, hôm nay chúng ta sẽ tiếp tục tìm hiểu về chủ đề AWS EC2 Cơ bản nhé.
Đọc Thêm[AWS] Chapter 2: AWS EC2
Trong chương này, chúng ta sẽ tìm hiểu Amazon Elastic Compute Cloud (EC2), một trong những dịch vụ cốt lõi của AWS.
Đọc Thêm