Chuyển đến nội dung chính

Azure Blob Storage: Cách tải lên, bảo mật và quản lý dữ liệu của bạn

Hướng dẫn thực hành về Azure Blob Storage, bao quát từ thiết lập và tải tệp đến bảo mật truy cập và cắt giảm chi phí lưu trữ!
· 15 phút đọc

Khám phá cùng AI

Lưu trữ đám mây có thể giống như một “hộp đen” cho đến khi bạn thực sự bắt tay vào sử dụng—và Azure Blob Storage là một điểm khởi đầu tuyệt vời. Dù bạn làm việc với hình ảnh, tệp văn bản, video hay bản sao lưu, Blob Storage cung cấp cho bạn một cách lưu trữ dữ liệu phi cấu trúc trên đám mây có khả năng mở rộng và an toàn.

Trong hướng dẫn này, tôi sẽ đưa bạn qua những điều cốt lõi của Azure Blob Storage—định nghĩa, tầm quan trọng và cách bắt đầu. Chúng ta sẽ thực hành tải lên, tải xuống dữ liệu, thiết lập quyền và quản lý chính sách vòng đời để giữ cho không gian lưu trữ gọn nhẹ và hiệu quả. Dù bạn mới khám phá Azure hay đang bổ sung blob storage vào bộ công cụ đám mây của mình, bài viết này sẽ giúp bạn bắt đầu nhanh chóng.

Azure Blob Storage là gì?

“Blob” là viết tắt của Binary Large Object—một thuật ngữ dùng để chỉ vùng lưu trữ cho dữ liệu phi cấu trúc như văn bản, hình ảnh và video. Azure Blob Storage là giải pháp của Microsoft Azure để lưu trữ các blob này trên đám mây. 

Dịch vụ này cung cấp lưu trữ linh hoạt—bạn chỉ trả phí theo mức sử dụng. Tùy theo tốc độ truy cập bạn cần, bạn có thể chọn các lớp lưu trữ khác nhau (hot, cool và archive). Vì dựa trên đám mây, nó có khả năng mở rộng, an toàn và dễ quản lý. Là một dịch vụ Azure, nó có thể tích hợp với các dịch vụ Azure khác như Azure Backup, Azure Synapse, Azure CDN, Azure ML và hơn thế nữa.

Nếu bạn còn mới với hệ sinh thái Azure nói chung, khóa học của chúng tôi về Hiểu về Kiến trúc và Dịch vụ Microsoft Azure cung cấp một lộ trình giới thiệu có cấu trúc.

Thiết lập Azure Blob Storage

Giờ hãy cùng thực hành với Azure Blob Storage! Trong hướng dẫn này, tôi giả định bạn đã có tài khoản Azure - tài khoản dùng thử với tín dụng miễn phí hoặc tài khoản trả phí thông thường.

Tạo tài khoản lưu trữ

Đầu tiên, chúng ta tạo một tài khoản Storage trên cổng Azure:

  • Trên trang chủ Azure, chọn Storage accounts. 

Ảnh chụp màn hình cổng Azure

  • Trang Storage account hiển thị bảng các tài khoản lưu trữ thuộc tài khoản Azure của bạn. Bạn có thể có nhiều tài khoản lưu trữ dưới một tài khoản Azure. Chọn nút Create storage account. 

Azure Storage accounts

  • Trên trang Create a storage account, điền chi tiết cho tài khoản lưu trữ mới:
    • Chọn gói đăng ký (subscription). 
    • Trong mục Resource group, tạo nhóm tài nguyên mới nếu cần. Tôi khuyên bạn nên tổ chức nhóm tài nguyên dựa trên mục đích sử dụng hoặc dự án. 
    • Đặt tên cho tài khoản lưu trữ. Chúng tôi đặt tên là datacampstorage1. 
    • Chọn khu vực địa lý của bạn. 
    • Trong Performance, chọn standard. Mức này đủ cho các ứng dụng thông thường và mục đích thử nghiệm. Premium dành cho các ứng dụng cần độ trễ thấp. 
    • Trong Redundancy, chọn Locally-redundant storage (LRS). Tùy chọn này tạo bản sao lưu dữ liệu của bạn trong cùng vị trí địa lý. Với ứng dụng quan trọng cần sao lưu ở các vùng địa lý khác nhau, chọn Geo-redundant storage (GRS). 

Tạo tài khoản lưu trữ Azure

  • Chọn Next để chuyển sang cài đặt Advanced. 
  • Trong tab Advanced, dưới Security, đánh dấu vào Allow enabling anonymous access on individual containers. Tùy chọn này cho phép bạn cấp quyền để người dùng (ví dụ: người dùng internet) truy cập dữ liệu mà không cần bạn cấp quyền rõ ràng. Lưu ý bạn vẫn cần bật truy cập ẩn danh ở cấp từng container. 

Azure Storage Account - cài đặt nâng cao

  • Sau phần cấu hình nâng cao (như trên), bạn có thể:
    • Chọn nút Review + create để chuyển sang tab Review + create, hiển thị tóm tắt cấu hình của tài khoản lưu trữ mới. Ở cuối trang, chọn Create để tạo tài khoản.
    • Hoặc chọn nút Next để chuyển sang tab Networking để tùy chỉnh thêm. Tiếp tục chọn Next sẽ dẫn bạn đến các trang cấu hình cho bảo vệ dữ liệu, mã hóa và gắn thẻ. Trong hướng dẫn nhập môn này, chúng ta sẽ giữ mặc định cho các phần này. 

Trang tiếp theo xác nhận tài khoản lưu trữ đã được triển khai. Chọn nút Go to resource để xem chi tiết tài khoản mới và thực hiện các thao tác tiếp theo. 

Tài khoản Azure Storage mới

Bạn đã tạo xong một tài khoản lưu trữ mới!

Cấu hình container blob

Azure Blob Storage tổ chức dữ liệu theo container. Mỗi container có thể lưu nhiều blob, tương tự như thư mục trong hệ thống tệp. Các blob trong một container có thể là nhiều loại tệp khác nhau, như PDF, video, v.v. Hãy dùng container để tổ chức dữ liệu theo khu vực, dự án, v.v. 

Để tạo một container: 

  • Trên trang Storage account, chọn Data storage từ menu trái. Một menu con sẽ mở ra với Containers, File shares, Queues và Tables. Chọn Containers. 

Trang tài khoản Azure Storage 

  • Trang Containers hiển thị bảng các container thuộc tài khoản lưu trữ này. Để tạo container mới, chọn nút + Container ở đầu bảng.

Trang Azure Storage Containers

  • Trong thanh bên New container:
    • Nhập tên container mới. Chúng tôi tạo container có tên datacampstoragecontainer1.
    • Chọn Anonymous access level. Có ba mức truy cập:
      • Private - chỉ chủ tài khoản mới có thể truy cập dữ liệu.
      • Blob - Các blob (trong container) có thể được đọc ẩn danh qua internet. Quyền truy cập ẩn danh này không áp dụng cho dữ liệu khác (như queues và tables) trong cùng container. Hơn nữa, client ẩn danh không thể liệt kê các mục dữ liệu (như blob) trong container. Họ chỉ có thể đọc một blob khi biết URL của nó. Trong hướng dẫn này, chúng ta chọn Blob.
      • Container - Cho phép đọc và liệt kê ẩn danh tất cả dữ liệu trong container.
    • Chọn Create (ở cuối thanh bên). 

Trang Containers giờ hiển thị container mới:

Trang Azure Storage Containers

Tải lên và quản lý blob trong Azure Blob Storage

Có ba cách chính để tải blob lên container lưu trữ: cổng Azure, Command Line Interface (CLI) và ứng dụng Storage Explorer. Phần này, tôi sẽ giải thích cách dùng từng phương pháp để tải tệp lên Blob Storage. 

Sử dụng cổng Azure

Để tải tệp bằng cổng Azure: 

  • Trên trang Containers (như trên), chọn Overview ở menu bên trái. 
  • Chọn nút Upload trên thanh trên cùng.

Trang Azure Storage Container

  • Trong thanh bên Upload blob, kéo thả tệp hoặc dùng tùy chọn Browse for files. Chọn container bạn vừa tạo (ở các bước trước). 

Trang Azure Upload blob

  • Chọn nút Upload. 
  • Sau một lúc (tùy kích thước tệp), bạn sẽ thấy thông báo bật lên xác nhận tải lên thành công. 

Ngoài các bước trên, bạn cũng có thể chọn một container cụ thể từ trang Containers rồi chọn nút Upload ở trên cùng. 

Sử dụng Azure CLI

Để tải tệp lên Blob Storage bằng CLI: 

  • Đăng nhập vào Azure Cloud Shell. Chọn shell ưa thích (Bash hoặc PowerShell) ở chế độ ephemeral. Trong hướng dẫn này, tôi dùng Bash shell. 
  • Đăng nhập vào tài khoản Azure từ shell và chạy lệnh sau:
az login
  • Thực hiện đăng nhập theo hướng dẫn trên trang:
    • Nhấp liên kết để mở trang web device login. 
    • Nhập mã xác thực được cung cấp. 
    • Chọn tài khoản Azure của bạn.
    • Xác nhận đăng nhập. 
    • Đóng cửa sổ và quay lại cửa sổ Cloud Shell. 
  • Một danh sách đánh số các subscription Azure sẽ được hiển thị. Nhập số tương ứng với subscription bạn muốn truy cập. 
  • Tạo tệp văn bản foobar.txt để thử nghiệm:
nano foobar.txt 
  • Thêm một dòng vào tệp văn bản, lưu bằng Ctrl + S, và thoát Nano bằng Ctrl + X.
  • Kiểm tra tệp đã lưu với nội dung bạn vừa thêm:
less foobar.txt
  • Nhấn Q để thoát khỏi less. 

Giờ chúng ta cần tải tệp này lên Blob Storage:

  • Dùng lệnh sau để tải blob:
az storage blob upload --account-name datacampstorage1 --container-name datacampstoragecontainer1  --name foobar.txt --file foobar.txt

Trong lệnh trên, tên tài khoản lưu trữ là datacampstorage1 và tên container là datacampstoragecontainer1. Nếu bạn dùng tên khác, hãy thay thế cho phù hợp. 

Sau khi tải tệp thành công, bạn sẽ thấy thông báo tương tự như sau:

Finished[########################]  100.0000%

Nếu bạn dùng dòng lệnh, hãy giữ sẵn cheat sheet Azure CLI của chúng tôi để tra cứu nhanh các lệnh thiết yếu.

Sử dụng Storage Explorer

Bạn cũng có thể dùng ứng dụng Storage Explorer của Azure để tải blob lên Blob Storage. Để tải tệp lên Azure Blob Storage:

  • Mở ứng dụng Storage Explorer và kết nối với tài khoản Azure Storage của bạn. Nếu chưa quen ứng dụng này, hãy làm theo hướng dẫn Storage Explorer. 
  • Từ thanh bên hoặc cửa sổ Explorer, vào container bạn muốn tải tệp lên.
  • Trên thanh công cụ phía trên, chọn nút Upload. Từ menu thả xuống, chọn Upload Files. 
  • Trong cửa sổ bật lên Upload Files:
    • Nhấp vào trường Selected files. 
    • Chọn các tệp (bạn muốn tải lên) từ máy tính cục bộ. 

Tải tệp trên Azure Storage Explorer

  • Chọn giá trị phù hợp cho các trường khác. Bạn cũng có thể để mặc định. 
  • Chọn nút Upload.

Xem blob trong Storage Explorer

  • Khi tải lên hoàn tất, thẻ Explorer sẽ tự động cập nhật để hiển thị tệp vừa tải. 

Quản lý blob

Sau khi tải tệp lên blob storage, tôi sẽ chỉ bạn cách liệt kê blob trong container và cách tải blob xuống. 

Liệt kê blob

Chúng ta sẽ dùng cổng Azure và CLI để xem danh sách blob trong một container.  

Cổng Azure 

Trên cổng Azure, tại trang Containers:

  • Chọn tên container có blob bạn muốn liệt kê. 

Trang Azure Storage Containers

  • Trang Container sẽ có danh sách tất cả blob trong container đó.

Trang Azure Storage Containers với danh sách blob

Azure CLI

Trên Azure CLI, dùng lệnh sau:

az storage blob list --account-name datacampstorage1 --container-name datacampstoragecontainer1 --output table

Như trước, hãy thay đúng tên tài khoản lưu trữ và container của bạn. Kết quả tương tự ví dụ dưới đây:

Tải lên blob qua Azure CLI

Tải xuống blob

Như trước, bạn có thể tải blob xuống từ cổng Azure hoặc CLI. 

Cổng Azure

Để tải blob qua cổng Azure:

  • Vào trang Container, nơi hiển thị bảng liệt kê tất cả blob. 
  • Chọn biểu tượng ba chấm ở cột ngoài cùng bên phải của hàng chứa blob bạn muốn tải xuống. Trên màn hình nhỏ, bạn có thể cần cuộn sang phải. 

Menu ngữ cảnh Azure Blob

  • Trong menu bật lên, chọn Download. 
  • Blob sẽ được tải xuống thiết bị cục bộ của bạn. 
Azure CLI

Để tải blob dùng Azure CLI, sử dụng lệnh dưới đây:

az storage blob download --account-name datacampstorage1 --container-name datacampstoragecontainer1 --name foobar.txt --file /tmp/foobar.txt

Hãy dùng đúng giá trị tham số trong lệnh trên. 

Blob sẽ được tải xuống hệ thống tệp từ xa của Azure. Ví dụ, để xem nội dung thư mục /tmp dùng ở trên, hãy dùng lệnh ls trong Azure CLI:

ls /tmp

Lưu ý Azure CLI không có quyền truy cập hay biết gì về máy cục bộ của bạn. 

Để tìm hiểu sâu hơn về quản lý pipeline CI/CD trong hệ sinh thái Azure, hãy tham khảo hướng dẫn Azure DevOps của chúng tôi.

Tổ chức blob với tiền tố và “thư mục ảo”

Azure Blob Storage được tổ chức như một hệ thống tệp phẳng. Không có cấu trúc thư mục hay folder. Tất cả blob được lưu dưới dạng tệp riêng lẻ trong container. 

Trong thực tế, nhiều ứng dụng cần lưu dữ liệu theo cấu trúc thư mục. Ví dụ, hệ thống giám sát CCTV có thể cần lưu video mỗi ngày trong các thư mục riêng. Để đạt được điều này, bạn có thể mô phỏng hệ thống thư mục bằng các tiền tố phân tách bằng dấu gạch chéo trong tên tệp. 

Nếu bạn có thư mục cha month1 với hai thư mục con day1 và day2, mỗi thư mục có một tệp ảnh tên image1.jpg, bạn sẽ liệt kê đường dẫn như sau:

  • month1/day1/image1.jpg
  • month1/day2/image1.jpg

Azure Blob Storage cho phép bạn dùng các đường dẫn này (bao gồm tên thư mục cha và dấu gạch chéo) làm tên tệp của blob. day1 và day2 không phải là tên thư mục mà là một phần của tên tệp blob tương ứng. Ứng dụng của bạn có thể hưởng lợi khi tổ chức tệp theo cấu trúc thư mục với “thư mục giả” này. 

Cho nhu cầu lưu trữ dữ liệu có cấu trúc song song với blob, bạn cũng có thể khám phá hướng dẫn Azure SQL Database.

Truy cập và bảo mật Azure Blob Storage

Bảo mật là tối quan trọng trong các hệ thống lưu trữ doanh nghiệp. Có nhiều cách để truy cập Azure Blob Storage một cách an toàn, như token SAS, access key và tài khoản doanh nghiệp. 

Kiểm soát truy cập với token SAS

Trong môi trường sản xuất, bạn sẽ giới hạn quyền truy cập vào tệp và dữ liệu lưu trong Blob Storage. Thông thường, bạn không muốn dữ liệu được công khai. Shared Access Signatures (SAS) cung cấp một phương thức an toàn để quản lý quyền truy cập dữ liệu Blob Storage. 

SAS hoạt động thông qua token, được gắn vào URL của tài nguyên bạn muốn chia sẻ. Token bao gồm thông tin về loại quyền (đọc, ghi, xóa, v.v.), thời hạn hiệu lực của token và các giao thức (HTTP và/hoặc HTTPS) được phép truy cập tài nguyên. 

Ví dụ, nếu URL của blob là: 

https://my_account.blob.core.windows.net/my_container/my_file

Sau khi gắn token, nó sẽ trông như sau:

https://my_account.blob.core.windows.net/my_container/my_file?sp=r&st=TIME&OTHER_PARAMETERS

Các bước dưới đây cho thấy cách dùng cổng Azure để tạo token SAS cho một container cụ thể. 

  • Đi tới trang Storage account.
  • Trong menu trái, dưới Data storage, chọn Containers. Trang này có bảng danh sách các container thuộc tài khoản lưu trữ này. 
  • Tìm hàng có container bạn muốn tạo token. 
  • Chọn biểu tượng ba chấm ở cột ngoài cùng bên phải của hàng đó. 

Menu ngữ cảnh Azure Storage Container

  • Chọn Generate SAS từ menu bật lên. 

Cửa sổ Azure Generate SAS

Trong cửa sổ Generate SAS:

  • Chọn phương thức ký: 
    • Account key hoặc user delegation key. 
    • Trong hướng dẫn này, dùng account key để ký SAS. 
    • User delegation key dựa trên Azure Active Directory và liên kết với ID người dùng qua Microsoft Entra. 
  • Chọn loại quyền bạn muốn cấp bằng token này:
    • Đọc, ghi, xóa, v.v. 
    • Trong hướng dẫn này, chỉ cấp quyền đọc. 
  • Nhập thời gian bắt đầu và hết hạn hiệu lực của token.
  • Chọn các giao thức IP mà client có thể dùng để truy cập dữ liệu của bạn. 
  • Generate SAS token and URL. 

Giờ bạn có thể truy cập một blob riêng tư bằng token và URL vừa tạo. Khi bạn cố truy cập blob riêng tư mà không có token phù hợp, bạn sẽ nhận lỗi XML: “The specified resource does not exist.”

Dùng Microsoft Entra ID để xác thực

Microsoft Entra ID quản lý danh tính và vai trò người dùng tập trung, cho phép kiểm soát truy cập chi tiết tới tài nguyên Azure. Bên cạnh token SAS và key, nó cung cấp một tùy chọn (an toàn hơn) khác để quản lý truy cập tới các thực thể Azure Blob Storage. Bạn có thể cấp quyền cụ thể cho từng người dùng hoặc nhóm bằng cách gán vai trò phù hợp. Đây gọi là Role-Based Access Control (RBAC). 

RBAC hỗ trợ kiểm soát truy cập chi tiết với các vai trò như Owner, Contributor và Reader. Bạn có thể xác định các quyền này ở nhiều cấp độ, như toàn bộ Storage account hoặc từng container riêng lẻ. 

Ví dụ, với một tài khoản lưu trữ cụ thể, bạn có thể gán cho một người dùng vai trò Storage Blob Data Reader. Người dùng đó chỉ có thể đọc blob trong tài khoản đó mà không thể thực hiện việc khác (như ghi hay liệt kê tất cả blob). 

Bạn có thể tích hợp Azure Blob Storage với hệ thống xác thực doanh nghiệp, dùng Entra ID để xác thực người dùng. Người dùng và ứng dụng doanh nghiệp trên Azure đã có (hoặc có thể có) Entra ID, giúp quản lý xác thực tập trung dễ dàng hơn bằng thông tin xác thực sẵn có của doanh nghiệp. 

Lưu ý rằng Microsoft Entra ID là tên mới của Azure Active Directory (AD).

Ở phần tiếp theo, tôi sẽ chỉ bạn cách gán vai trò cho người dùng và quản lý quyền truy cập tới các thực thể Blob Storage. 

Cấu hình Role-Based Access Control (RBAC)

Tôi sẽ chỉ bạn cách cấu hình truy cập bằng cách gán vai trò cho một Storage Container. Quy trình cho Storage Account là tương tự. 

  • Từ thanh bên trên trang Storage container, chọn Access Control (IAM). 
  • Trên trang Access Control, chọn nút Add trên thanh trên cùng.
  • Chọn Add role assignment từ menu thả xuống.

Trang Access Control của Azure Storage Container

  • Trên trang Add role assignment, trong tab Role, gõ “blob” vào thanh tìm kiếm. Bạn sẽ thấy các vai trò được cấu hình sẵn phù hợp cho tài nguyên Blob Storage. 

Trang thêm phân công vai trò của Azure Storage

Bạn có thể chọn từ ba loại vai trò cho Blob Storage:

  • Storage Blob Data Reader: Vai trò này chỉ có quyền đọc container và dữ liệu blob. 
  • Storage Blob Data Contributor: Vai trò này có thể đọc, ghi và xóa tài nguyên. 
  • Storage Blob Data Owner: Chủ sở hữu có toàn quyền với tài nguyên lưu trữ. 

Lưu ý các vai trò được thừa kế. Ví dụ, nếu bạn gán cho một người dùng vai trò “Owner” cho một Storage Account, người đó cũng trở thành chủ sở hữu của các Container trong tài khoản đó. 

  • Tiếp tục ví dụ, chọn Storage Blob Data Contributor và chọn Next. 
  • Trên trang Add role assignment, trong tab Members , nhấp liên kết Select members để chọn các thành viên bạn muốn gán vai trò đã chọn ở bước trước. 

Trang thêm phân công vai trò Azure Storage

  • Trong khung bên Select members, gõ tên người dùng hoặc ứng dụng. Chọn thành viên phù hợp từ kết quả tìm kiếm. Nhấn nút Select ở cuối khung bên. 
  • Chọn Review + assign để hoàn tất việc gán vai trò. 

Tính năng nâng cao của Azure Blob Storage

Chúng ta đã xem các kiến thức cơ bản của Azure Blob Storage, nhưng khi muốn tiến xa hơn, dưới đây là một số chiến lược cần cân nhắc. 

Quản lý vòng đời blob

Dữ liệu thường xuyên được truy cập nên lưu ở các lớp lưu trữ truy cập nhanh như Hot. Dữ liệu ít truy cập có thể lưu ở lớp chậm hơn nhưng tiết kiệm hơn, như Archive. 

Thách thức là xác định động các blob nào không còn được truy cập thường xuyên để chuyển sang lớp lưu trữ rẻ hơn. Để tự động hóa việc này, Azure có tính năng Lifecycle management. Tính năng này cho phép tự động chuyển blob sang lưu trữ rẻ hơn khi chúng không còn được chỉnh sửa tích cực.

Lifecycle management được triển khai ở cấp Storage Account. Các bước dưới đây cho thấy cách kích hoạt và dùng nó để thêm quy tắc chuyển blob từ Hot sang Cool sau 30 ngày không hoạt động: 

  • Trên trang Storage Account, từ thanh bên trái, chọn Data management > Lifecycle management
  • Trang Lifecycle management hiển thị danh sách các quy tắc đang hoạt động. 

Quản lý vòng đời Azure blob storage

  • Chọn nút Add a rule trên thanh trên cùng. 
  • Trên trang Add a rule, chọn:
    • Tên quy tắc
    • Phạm vi áp dụng
    • Loại và phân loại blob được áp dụng
  • Chọn Next.
  • Quy tắc nêu rằng nếu blob được tạo hoặc sửa đổi lần cuối cách đây N ngày (bạn cần nhập giá trị N), Azure sẽ thực hiện hành động (bạn chọn) với blob đó:
    • Chọn điều kiện ở khối đầu tiên, dưới mục If. Trong trường More than (days ago), nhập số ngày: 30.
    • Ở khối tiếp theo, dưới mục Then, chọn hành động - Move to cool storage.

Cập nhật quy tắc quản lý vòng đời Azure blob storage

  • Thêm quy tắc.

Phiên bản và xóa mềm

Trong bất kỳ hệ thống lưu trữ nào, việc khắc phục lỗi người dùng và thao tác ngoài ý muốn là điều thiết yếu. Versioning và soft delete là hai cách Azure Blob Storage hỗ trợ bạn hoàn tác sai sót. 

Versioning 

Khả năng khôi phục phiên bản trước của tệp rất hữu ích nếu bạn vô tình lưu thay đổi sai. Blob versioning cho phép tự động giữ lại phiên bản cũ khi bạn chỉnh sửa một blob. Để bật versioning:

  • Trên trang Storage account, chọn Data management > Data protection từ thanh bên. 
  • Trên trang Data protection, dưới mục Tracking, đánh dấu Enable versioning for blobs
  • Chọn một trong các tùy chọn:
    • Giữ lại tất cả phiên bản trước.
    • Xóa các phiên bản cũ sau một số ngày nhất định. 

Cửa sổ bảo vệ dữ liệu Azure blob storage

  • Lưu thay đổi. 

Versioning đã được bật trên tài khoản lưu trữ của bạn!

Xóa mềm (Soft-delete) 

Chúng ta ai cũng từng lỡ xóa nhầm dữ liệu. Khả năng khôi phục dữ liệu bị mất trong trường hợp này là rất hữu ích. 

Tính năng soft delete cho blob sẽ giữ lại dữ liệu đã xóa trong một số ngày nhất định. Trong thời gian lưu giữ này, bạn có thể khôi phục thực thể đã xóa mềm. Sau thời hạn, dữ liệu sẽ bị xóa vĩnh viễn. Điều này bảo vệ dữ liệu khỏi việc xóa và ghi đè ngoài ý muốn.

Để kích hoạt và sử dụng xóa mềm: 

  • Trên trang Storage account, chọn Data management > Data protection từ thanh bên. 
  • Trên trang Data protection, chọn các ô sau:
    • Bật xóa mềm cho blobs
    • Bật xóa mềm cho containers
  • Nhập số ngày lưu giữ dữ liệu đã xóa.
  • Lưu thay đổi. 

Bạn đã kích hoạt xóa mềm trên tài khoản lưu trữ!

Mã hóa dữ liệu và truy cập an toàn

Theo mặc định, Azure dùng mã hóa đối xứng AES-256 khi lưu trữ để giữ an toàn cho dữ liệu. Kẻ tấn công có quyền truy cập vật lý vào ổ cứng lưu dữ liệu cũng không thể giải mã nếu không có khóa. Nhiều tổ chức cần tính năng này để đáp ứng an ninh và tuân thủ quy định về quyền riêng tư. 

Theo mặc định, người dùng không cần xử lý khối lượng công việc bổ sung để duy trì khóa mã hóa. Azure xử lý phía sau. Tuy nhiên, bạn có thể chọn dùng key vault và cung cấp khóa của riêng bạn để tăng cường bảo mật:

  • Trên cổng Azure, gõ “key vault” vào thanh tìm kiếm phía trên.
  • Chọn Key vaults.

Azure Key vaults 

  • Trang Key vaults hiển thị danh sách các key vault bạn đã tạo. 
  • Chọn nút Create trên thanh trên cùng. 
  • Trên trang Create a key vault:
    • Chọn resource group mà bạn muốn các khóa trong vault này được sử dụng.
    • Nhập tên vault và khu vực lưu trữ.
  • Chọn Review + Create.Trang tạo key vault
  • Kiểm tra chi tiết và chọn Create.

Việc tạo key vault mới sẽ mất một lúc và sau đó chuyển bạn đến trang của nó. 

Trang Azure Key vault

Sau khi tạo key vault, bạn có thể thêm khóa và bí mật của mình:

  • Từ thanh bên, vào Objects > Keys.
  • Chọn nút Generate/Import trên thanh trên cùng. 
  • Chọn tạo mới hoặc nhập một khóa. Bạn có thể tạo khóa cục bộ và tải lên Azure hoặc tạo khóa trực tiếp trên nền tảng Azure. 
  • Nhập tên khóa mới.
  • Chọn chi tiết phù hợp của khóa (loại, kích thước, thuật toán, v.v.). 
  • Tùy chọn: đặt ngày kích hoạt và hết hạn của khóa. 

Tạo khóa mới trong Azure key vault

  • Chọn Create. 

Bạn đã thêm một khóa vào key vault của mình. 

Sao chép địa lý (Geo-replication) cho khắc phục thảm họa

Dữ liệu của bạn càng cần an toàn (trước rủi ro kỹ thuật hoặc thiên tai), bạn càng cần nhiều dự phòng (redundancy) trong hệ thống lưu trữ. Dự phòng là việc sao chép cùng một dữ liệu trên nhiều thiết bị và/hoặc vị trí và sẽ phát sinh chi phí. Bạn có thể chọn các mức dự phòng khác nhau: 

  • Locally redundant storage (LRS): Dữ liệu được sao chép trong cùng một trung tâm dữ liệu. Đây là tùy chọn rẻ nhất. 
  • Zone-redundant storage (ZRS): Tạo ba bản sao trở lên trên các trung tâm dữ liệu khác nhau trong cùng khu vực địa lý của bạn. 
  • Geo-redundant storage (GRS): Các trung tâm dữ liệu ở nhiều vùng địa lý lưu bản sao của tài khoản lưu trữ của bạn. Đây là tùy chọn an toàn nhất. 

Quản lý và tối ưu chi phí trong Azure Blob Storage

Lưu trữ đám mây, dù có nhiều lợi ích, vẫn có thể tốn kém nếu không quản lý chi phí đúng cách. Phần này, tôi sẽ tổng quan cách tối ưu và quản lý chi phí cho Azure Blob Storage. 

Hiểu giá thành Azure Blob Storage

Azure Storage có nhiều lớp giá tùy theo các tùy chọn và dịch vụ bổ sung được cung cấp:

  • Tần suất truy cập: Dữ liệu được truy cập thường xuyên cần lưu trên thiết bị có tốc độ đọc/ghi nhanh hơn. Ngược lại, dữ liệu ít truy cập có thể lưu trên thiết bị chậm hơn và rẻ hơn. 
    • Hot: Thường được xây dựng trên SSD hiện đại, nhanh nhưng đắt. Mang lại trải nghiệm tốt nhất. 
    • Cool: Phù hợp cho dữ liệu truy cập không thường xuyên như bản sao lưu. Đôi khi cũng dùng cho tệp lớn như video, vốn tốn kém nếu lưu trên hot storage. 
    • Archive: Dữ liệu chỉ cần truy cập rất hiếm khi được lưu trữ lưu trữ (archive). Theo cách truyền thống, archive được lưu trên băng từ, chi phí lưu thấp nhưng việc truy xuất đắt (do truy cập tuần tự). 
  • Dự phòng: Dữ liệu cần an toàn hơn trước rủi ro kỹ thuật hoặc thiên tai thì càng cần nhiều dự phòng. Dự phòng là việc sao chép cùng dữ liệu trên nhiều thiết bị và/hoặc vị trí và sẽ phát sinh chi phí.
    • Locally redundant storage (LRS): Dữ liệu được sao chép trong cùng một trung tâm dữ liệu. Rẻ nhất. 
    • Zone-redundant storage (ZRS): Tạo ba bản sao trở lên trên các trung tâm dữ liệu khác nhau trong cùng khu vực. 
    • Geo-redundant storage (GRS): Các trung tâm dữ liệu trên nhiều vùng địa lý lưu bản sao tài khoản lưu trữ. An toàn nhất. 
  • Truyền dữ liệu: 
    • Thông thường, truyền dữ liệu trong cùng khu vực giữa các dịch vụ Azure là miễn phí. 
    • Data ingress (truyền dữ liệu vào Azure Storage) cũng thường miễn phí. 
    • Data egress (truyền dữ liệu ra khỏi Azure), như người dùng internet truy cập dữ liệu của bạn, sẽ phát sinh chi phí. Chi phí egress thường phụ thuộc vào lưu lượng. 

Mẹo tối ưu chi phí

Dựa trên nội dung ở trên, tôi khuyến nghị một số thực tiễn tốt để ngăn chi phí lưu trữ đám mây leo thang mất kiểm soát. 

  • Tận dụng các loại lưu trữ khác nhau đã đề cập. Chuyển dữ liệu ít truy cập sang lớp rẻ hơn như Cool hoặc Archive. 
  • Một dịch vụ bộ nhớ đệm như CDN cũng có thể giúp cải thiện độ trễ. Điều này cho phép bạn lưu trữ các tệp lớn như video trên lưu trữ Cool. 
  • Bật và đặt chính sách vòng đời phù hợp để chuyển các blob không dùng sang lớp lưu trữ chi phí thấp hơn. 

Khắc phục sự cố Azure Blob Storage

Mặc dù Azure Storage là sản phẩm được dùng rộng rãi, đôi khi vẫn xảy ra lỗi. 

Các vấn đề thường gặp khi tải blob

Sự cố mạng và lỗi quyền truy cập là những vấn đề phổ biến nhất. Kết nối chậm và proxy cấu hình sai thường dẫn tới lỗi mạng, tốt nhất nên xử lý bằng cách kiểm tra kết nối và cấu hình của bạn. 

Việc cố tải lên tệp lớn cũng thường gây lỗi. Mất kết nối tạm thời có thể làm việc tải lên bị treo. Để giải quyết, hãy xem chính sách retry của Azure và cấu hình khi cần. Một giải pháp thực tế khác là chia nhỏ các tệp lớn thành các phần nhỏ. Tải lên từng phần bằng thao tác Put Block. 

Lỗi quyền truy cập xảy ra khi access key hoặc token của bạn, hay Entra ID, không được cấp phép thực hiện thao tác mong muốn (ví dụ: đọc hoặc ghi dữ liệu) với container hoặc tài khoản lưu trữ. Có thể key của bạn đã được làm mới hoặc token đã hết hạn. Người quản lý container có thể hỗ trợ bạn cấp quyền phù hợp. 

Giám sát mức sử dụng blob storage

Azure bao gồm nhiều công cụ để giám sát hiệu năng Azure Storage. Chúng ta sẽ đề cập đến hai lựa chọn phổ biến nhất: 

  • Metrics trong Azure Storage 
  • Azure Monitor

Azure Storage Metrics

Azure Storage đi kèm công cụ giám sát tích hợp. Để truy cập công cụ này: 

  • Từ trang Storage account, chọn Monitoring > Metrics
  • Trang Metrics hiển thị một biểu đồ, ban đầu trống. Bạn cần chọn thông tin để hiển thị trên biểu đồ này. 

Trang Azure Storage Metrics

  • Trong thanh menu thả xuống (dưới Scope) ở trên cùng biểu đồ, chọn thực thể lưu trữ bạn muốn theo dõi:
    • Dưới mục Metric Namespace, chọn Account hoặc Blob.
    • Dưới mục Metric, chọn metric phù hợp như Blob count, Ingress, capacity, Transactions, v.v.
    • Ở góc trên bên phải, tùy chỉnh khung thời gian bạn muốn theo dõi.
    • Biểu đồ hiển thị hiệu năng của thực thể lưu trữ với metric đã chọn trong khoảng thời gian đã chọn.

Xem một metric cụ thể trong Azure Storage

Azure Monitor 

Azure Monitor là công cụ cấp cao để bạn theo dõi nhiều tài nguyên Azure. Để truy cập Azure Monitor:

  • Trên cổng Azure, gõ monitor vào thanh tìm kiếm phía trên. 
  • Chọn Monitor từ kết quả tìm kiếm.

Ảnh chụp màn hình Azure Monitor

  • Trên trang chủ Monitor, từ thanh bên, chọn Insights > Storage accounts. 

Trang Storage account insights của Azure

  • Trên trang Monitor | Storage accounts, chọn tài khoản lưu trữ bạn muốn xem thông tin chi tiết. 
  • Trang Insights hiển thị nhiều metric hữu ích như số giao dịch theo loại lưu trữ, độ trễ, tính sẵn sàng, v.v. 

Xem thông tin chi tiết Storage account trên Azure

  • Ở đầu trang, bạn có thể tùy chỉnh khoảng thời gian hiển thị các metric. 
  • Dùng nút Customize trên thanh trên cùng để chỉnh bố cục các bảng trên trang. 

Kết luận

Lưu trữ đám mây là một phần không thể thiếu của phần mềm hiện đại. Bài viết đã thảo luận cách bắt đầu với Azure Blob Storage và cách dùng nó để tải lên, tải xuống blob. Chúng ta cũng đề cập nhiều khía cạnh thực tiễn của Blob Storage như quản lý quyền truy cập và giám sát mức sử dụng để kiểm soát chi phí. 

Azure của Microsoft và AWS của Amazon cung cấp nhiều dịch vụ tương đồng. Để quyết định đâu phù hợp hơn với nhu cầu của bạn, hãy xem so sánh AWS vs. Azure của chúng tôi. Cuối cùng, nếu bạn sắp có buổi phỏng vấn liên quan đến dịch vụ Azure, chúng tôi có bộ câu hỏi phỏng vấn phù hợp dành cho bạn!

Arun Nanda

Tác giả

Arun Nanda

Arun là cựu nhà sáng lập startup, yêu thích xây dựng những điều mới mẻ. Hiện tại, anh đang khám phá các nền tảng kỹ thuật và toán học của Trí tuệ Nhân tạo. Anh thích chia sẻ những gì mình học được, vì thế anh viết về chúng.

Bên cạnh DataCamp, bạn có thể đọc các bài viết của anh trên Medium, Airbyte và Vultr.

Chủ đề

Liên quan