Hướng Dẫn Sử Dụng MinIO Client (mc) để Quản Lý Lưu Trữ Đối Tượng


I. Giới thiệu

MinIO Client (mc) là một công cụ dòng lệnh mạnh mẽ cho phép bạn tương tác với MinIO Server và các dịch vụ lưu trữ tương thích S3 khác. Với mc, bạn có thể thực hiện các thao tác như tải lên, tải xuống, quản lý bucket và đối tượng một cách dễ dàng.

II. Cài đặt MinIO Client

1. Tải xuống mc

Linux:


wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc

Windows:

Tải xuống mc.exe từ: https://dl.min.io/client/mc/release/windows-amd64/mc.exe

macOS:

brew install minio/stable/mc

2. Kiểm tra phiên bản

./mc --version<br>

III. Thiết lập Kết nối với MinIO Server

1. Thêm Alias cho MinIO Server

./mc alias set myminio http://localhost:9000 YOUR-ACCESSKEYID YOUR-SECRETACCESSKEY
  • myminio là tên bạn đặt cho server.
  • http://localhost:9000 là endpoint của MinIO Server.

2. Kiểm tra kết nối

./mc ls myminio

IV. Quản lý Bucket

1. Tạo Bucket

./mc mb myminio/my-bucket

2. Liệt kê Buckets

./mc ls myminio

3. Xóa Bucket

./mc rb myminio/my-bucket

V. Quản lý Đối tượng

1. Tải lên Đối tượng

./mc cp /path/to/file myminio/my-bucket

2. Tải xuống Đối tượng

./mc cp myminio/my-bucket/file /path/to/destination

3. Xóa Đối tượng

./mc rm myminio/my-bucket/file

4. Đồng bộ hóa Thư mục

./mc mirror /local/path myminio/my-bucket

VI. Quản lý Người Dùng và Chính sách

1. Tạo Người Dùng Mới

./mc admin user add myminio newuser newuserpassword

2. Tạo Chính sách Tùy chỉnh

Tạo tệp readonly.json:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": ["s3:GetBucketLocation", "s3:ListBucket", "s3:GetObject"],
            "Effect": "Allow",
            "Resource": ["arn:aws:s3:::my-bucket", "arn:aws:s3:::my-bucket/*"]
        }
    ]
}

Thêm chính sách:

./mc admin policy add myminio readonly readonly.json

3. Gán Chính sách cho Người Dùng

./mc admin policy set myminio readonly user=newuser

VII. Các Lệnh Hữu ích Khác

1. Xem Thông tin Server

./mc admin info myminio

2. Kiểm tra Trạng thái Server

./mc admin heal myminio

3. Xem Nhật ký Hoạt động

./mc admin logs myminio

VIII. Ví dụ Thực tế

Sao lưu Thư mục Cục bộ lên MinIO

Giả sử bạn có một thư mục /home/user/data cần sao lưu lên bucket backup trên MinIO.

./mc mb myminio/backup
./mc mirror /home/user/data myminio/backup

Thiết lập Cảnh báo Khi Có Thay Đổi

Bạn có thể thiết lập thông báo khi có thay đổi trong bucket:

./mc event add myminio/backup arn:minio:sqs::1:webhook --event put

IX. Kết luận

MinIO Client (mc) là công cụ mạnh mẽ và linh hoạt giúp quản lý MinIO Server và các dịch vụ lưu trữ tương thích S3. Với giao diện dòng lệnh thân thiện, bạn có thể dễ dàng tích hợp vào các script và quy trình tự động hóa.