Hướng dẫn sử dụng tính năng Bucket Versioning và Lifecycle Rules

1. Đăng ký sử dụng gói lưu trữ dữ liệu - S3

  • Nếu quý khách chưa có gói S3 thì tham khảo và đăng ký dịch vụ theo link. 001

2. Sau khi đăng ký gói S3 thành công (Hoặc quý khách đã có gói S3)

  • Truy cập vào VNDATA S3 Portal và đăng nhập tài khoản với các thông tin (Địa chỉ email/ mật khẩu) tương tự trang VNDATA - Clients Portal. 002
  • Sau khi vào được trang S3 Portal -> click chọn Object Storage. 003
  • Click chọn vào gói S3 tương ứng cần cấu hình Bucket Versioning. 004
  • Chọn Buckets -> Details tại bucket cần cấu hình. 005
  • Click nút gạt và nhấn Submit như trong hình để bật tính năng Bucket Versioning. 006

    Bucket Versioning là tính năng giúp lưu giữ lại các phiên bản cũ của file để có thể khôi phục (restore) khi cần thiết, thay vì file bị mất vĩnh viễn khi upload đè hoặc xóa nhầm.

  • Do bucket hiện tại chưa có dữ liệu nên phần Versions đang trống. 007
  • Tiến hành upload một file text (test.txt) với nội dung abcdefgh. 008 009
  • Từ máy local, sửa file test.txt thành nội dung 12345678 và upload lên lại chính bucket đó. 010 011
  • Khi đó file test.txt cũ sẽ bị ẩn đi (trở thành phiên bản cũ). 012
  • Tại đây, ta có thể restore file test.txt ở bản cũ bằng cách chọn Previous. 013
  • Khi restore, hệ thống sẽ tạo ra một bản sao của chính version cũ đó và đặt thành Current (Hiện hành). 014 015
  • Khi xóa file, hệ thống sẽ tạo một Delete Marker trong Versions và ẩn file khỏi giao diện Objects. 016 017 018

Lưu ý: Việc lưu trữ mọi phiên bản của file cũng có nhược điểm. Nếu không được kiểm soát, các phiên bản cũ (non-current versions) sẽ tích tụ theo thời gian, chiếm dụng dung lượng bucket và làm tăng chi phí cho những dữ liệu không còn giá trị sử dụng.

Để khắc phục, Lifecycle Rule là giải pháp giúp tự động hóa việc quản lý vòng đời của file (tự động xóa file để tối ưu chi phí).

3. Cấu hình Lifecycle Rules

  • Để truy cập vào tính năng Lifecycle Rule, tại giao diện Buckets, click chọn Lifecycle configuration vào bucket cần cấu hình. 019
  • Click chọn Add Lifecycle Rule để mở giao diện cấu hình. 020 021

Giải thích các thông số cấu hình:

  • Rule ID: Điền tên gợi nhớ để dễ quản lý (hoặc để trống để hệ thống tự sinh ID).
  • Status: Chọn Enabled để kích hoạt hoặc Disabled để vô hiệu hóa rule.
  • Prefix Filter: Trường quan trọng để định nghĩa phạm vi áp dụng của Rule (File, Thư mục hoặc Toàn bộ bucket).
    • Các ví dụ:
      • Áp dụng cho tất cả dữ liệu trong bucket: Để trống trường này.
      • Áp dụng cho thư mục logs: Điền logs/ (Lưu ý có dấu / ở cuối).
      • Áp dụng cho thư mục con month_backups nằm trong thư mục backups: Điền backups/month_backups/.
      • Áp dụng cho các file/thư mục có tên bắt đầu bằng chữ logs: Điền logs.
      • Áp dụng cho đúng tên file abc123.txt: Điền abc123.txt.
  • Expire (delete) after (days): Nhập số ngày tồn tại của file hiện hành (Current Version). Khi hết hạn, hệ thống sẽ gán Delete Marker cho file đó (file sẽ ẩn đi trong giao diện chính nhưng vẫn còn trong bucket).
  • Expire noncurrent versions after (days): Nhập số ngày lưu trữ các phiên bản cũ (Noncurrent Versions). Thời gian bắt đầu tính từ lúc phiên bản đó trở thành cũ (do bị ghi đè bởi file mới hoặc bị xóa). Sau thời gian này, chúng sẽ bị xóa vĩnh viễn.

Cách tính ngày: Hệ thống tính theo quy tắc làm tròn đến 0h UTC của ngày kế tiếp. Ví dụ: File upload vào bất kỳ giờ nào ngày 10/02 với cấu hình Expire là 3 ngày -> Hết hạn vào cuối ngày 13/02 -> Thực thi xóa vào 0h00 ngày 14/02 (giờ UTC), tức 7h00 sáng ngày 14/02 (giờ Việt Nam).

Các ví dụ thực tế:

  • Ví dụ 01: Xóa file với tên file bắt đầu bằng chuỗi Expire-delete. 023 024
  • Ví dụ 02: Xóa đúng file với tên đầy đủ Expire-delete-after-days.txt. 025 026
  • Ví dụ 03: Xoá toàn bộ dữ liệu trong bucket. 027 028
  • Ví dụ 04: Xóa tất cả các file/thư mục bắt đầu bằng chuỗi folder-test. 029 030
  • Ví dụ 05: Xóa thư mục rỗng. 031 032
  • Ví dụ 06: Xóa mọi dữ liệu trong một thư mục và cả thư mục đó. 033 034 035 036 037
  • Ví dụ 07: Xóa thư mục lồng trong một thư mục khác. 038 039