Bài viết này sẽ giới thiệu về các cơ chế lưu trữ trên AWS. Làm thế nào để lưu trữ dữ liệu trên EC2 Instance? Các loại lưu trữ trên EC2 Instance là gì? Các loại lưu trữ trên EC2 Instance có những ưu nhược điểm gì? hay các ổ đĩa trên EC2 hoạt động như thế nào? Tất cả chúng sẽ được trình bày trong bài viết dưới đây. Bài viết sẽ bao gồm EBS (Elastic Block Store) Volume, Snapshots, Amazon Machine Image (AMI) cũng như EC2 Instance Store.
Giới thiệu về EBS Volume
EBS (Elastic Block Store) là một mạng lưới các ổ đĩa lưu trữ mà người dùng có thể gắn vòa cá instance khi chúng hoạt động. Nó cho phép các Instance có thể tiếp cận được tới các dữ liệu đã tồn tại từ trước, ngay cả khi sau khi chúng bị Terminated.
Đối với những chứng chỉ mức độ cơ bản như AWS Certified Cloud Practitioner, những ổ đĩa này chỉ có thể được gán với một Instance tại một thời điểm. Bên cạnh đó, các EBS Volume cũng sẽ bị giới hạn cho từng Availability Zone.
Một ESB Volume có thể được hiểu như một mạng lưới các USB, có thể rút ra cắm vào ở bất kì máy tính nào, tuy vậy chúng chỉ có thể cắm vào duy nhất một máy tính tại một thời điểm.
Đối với Free Tier của AWS, 30GB dung lượng lưu trữ sẽ được cấp, con số này bao gồm cả 2 loại ổ đĩa General Purpose (SSD) và Magnetic (thường là HDD) mỗi tháng.
Các EBS Volume có các cấu hình được cung cấp sẵn (size tính bằng GBs, và IOPS - Input/Output Per Second), hóa đơn sẽ được tính theo các giá trị này. Và cũng tương tự như nhiều sản phẩm khác của AWS, chúng ta có thể dễ dàng tăng các giá trị này nếu nhu cầu thay đổi.
Một số thuộc tính của EBS
Mặc định, root EBS Volume gắn với Instance sẽ bị xóa khi Instance bị Terminate.
Cũng trong cấu hình mặc định, tất cả các EBS Volume khác root được gắn với Instance sẽ không bị xóa khi Instance bị Terminate.
Tuy nhiên việc có xóa EBS Volume hay không và xóa bỏ các volume nào có thể được cấu hình thông qua AWS CLI / AWS Console. Từ đó chúng ta có thể dễ dàng loại bỏ các Volumn được gắn vào nếu không cần thiết, hoặc giữ lại root volumn cho các lần sử dụng kế tiếp.
ESB Snapshot
Mục đích: Tạo một bản backup (gọi là snapshot) của EBS Volumn tại một thời điểm xác định.
Việc detach volumn để thực thi snapshot là không cần thiết, tuy nhiên nên được thực thi.
Có thể copy, di chuyển các bản snapshot giữa các AZ hay các Region khác nhau.
Các tính năng nổi bật của EBS Snapshot:
- EBS Snapshot Archive: Chuyển Snapshot vào "archive tier" sẽ giúp tiết kiệm 75% chi phí. Tuy nhiên sau khi Archive, file snapshot sẽ mất từ 24 tới 72 giờ để giải nén.
- Recycle Bin for EBS Snapshots: Các file snapshot sau khi bị xóa (vô tình, do lỗi vô tình) có thể được khôi phục nếu một số rule được thiết lập (tương tự như Recycle Bin trong máy tính). Các chỉ định này thường có thời hạn lưu giữ từ 1 ngày đến 1 năm. Tất nhiên cần lưu ý rằng chi phí có thể thay đổi.
- Fast Snapshot Restore (FSR): Tính năng này cho phép (hoặc là buộc) người dùng phải chi tiền ra để có thể khôi phục và khởi tạo snapshot ngay lập tức mà không cần phải chờ đợi.
Amazon Machine Image (AMI)
AMI là phiên bản customize của EC2 Instance, tại đây người dùng có thể thêm các phần mềm, cấu hình , OS hay các ứng dụng Monitoring của riêng họ. Điều này đem đến thời gian boot rất ngắn do tất các các package đều đã có sẵn từ trước.
AMI được build cho từng Region tuy nhiên vẫn có thể copy qua lại giữa các Region.
Có 3 cách để khởi chạy EC2 Instance từ AMI:
- Sử dụng Public AMI do AWS cung cấp. Cách này chính là cách dùng thông thường nhất.
- Sử dụng AMI cá nhân do chính người dùng tự cấu hình cũng như maintain.
- Mua từ AMI Marketplace của AWS. Những AMI này do những người dùng khác đã cấu hình sẵn, phục vụ một hoặc nhiều yêu cầu nhất định và được họ bán trên Marketplace.
Để tạo một AMI từ EC2 Instance hiện hữu cũng tương đối đơn giản, có thể thực hiện theo các bước sau:
- Start một EC2 Instance có sẵn và custom nó (Cài đặt các phần mềm, chỉnh sửa cấu hình...).
- Stop Instance (Nhằm mục đích đảm bảo tính toàn vẹn của dữ liệu, tránh các trường hợp lỗi không xác định).
- Build một AMI, bước này cũng sẽ tạo ra một ESB Snapshot.
- Khởi chạy Instance từ AMI đã tạo.
EC2 Instance Store
Ổ đĩa EBS là ổ đĩa mạng có hiệu suất tốt nhưng dung lượng tương đối "hạn chế".
Nếu bạn cần ổ đĩa phần cứng hiệu năng cao, hãy sử dụng EC2 Instance Store.
Các đặc điểm của EC2 Instance Store:
- Tốc độ đọc ghi cao.
- EC2 Instance Store là ổ đĩa mang tính tạm thời, điều này có nghĩa là dữ liệu của nó mang theo sẽ biến mất nến Instance bị dừng.
- EC2 Instance Store là lựa chọn rất tốt khi cần lưu trữ các loại dữ liệu mang tính tạm thời như buffer / cache / scratch data / hoặc các temporary khác tương tự.
- Rủi do của EC2 Instance Store là nếu Instance bị dừng, dữ liệu sẽ bị mất. Vì vậy nên người dùng sẽ phải hoàn toàn chịu trách nhiệm về việc sao lưu và sao chép dữ liệu