Migrate dữ liệu S3

Cập nhật lần cuối: 2024/12/10 09:35:00

CMC Simple Storage Service được phát triển theo hướng tương thích với tiêu chuẩn AWS S3, vì vậy có thể dễ dàng chuyển dữ liệu từ bất kỳ nhà cung cấp Object Storage nào sang CMC S3 một cách nguyên vẹn.

Bài viết sau sẽ hướng dẫn đồng bộ dữ liệu từ AWS S3 về CMC S3 với công cụ Rclone, là công cụ giúp đồng bộ hoá dữ liệu và directory đến nhiều dịch vụ lưu trữ cloud khác nhau

Xem thêm tại: https://rclone.org/

ĐIỀU KIỆN

  • Đăng nhập tài khoản vào CMC Cloud Portal
  • Đã thu thập đủ thông tin xác thực từ nhà cung cấp S3 nơi chứa Source Bucket, bao gồm Access Key Secret Key.
  • Đã thu thập đủ thông tin xác thực từ CMC S3, bao gồm Endpoint, Access Key Secret Key.

Thực hiện

1. Cài đặt Rclone 

 

curl https://rclone.org/install.sh | sudo bash

Tham khảo thêm tại trang chủ của Rclone: https://rclone.org/downloads/

 

2. Cấu hình rclone 

 

  • Tạo file cấu hình rclone trên máy. Thực hiện mở file rclone.conf để điền thông tin

vi /root/.config/rclone/rclone.conf

 

[aws-s3]

type = s3

provider = AWS

env_auth = false

access_key_id = <AccessKeyId>

secret_access_key = <SecretKey>

region = your_region

 

[cmc-s3]

type = s3

provider = Ceph

access_key_id = <Access key>

secret_access_key = <Secret key >

endpoint = https://s3.hn-1.cloud.cmctelecom.vn

 

  • Check thông tin cấu hình rclone:

rclone config

 

  • Liệt kê các file trong AWS bucket và CMC S3 

rclone ls cmc-s3:bucketname

rclone ls aws-s3:bucketname


3. Chuyển dữ liệu từ AWS S3 tới CMC S3

 

  • Chạy lệnh sau để sync toàn bộ bucket từ AWS về CMC S3 (đồng bộ dữ liệu, xoá file trên đích không có trên nguồn):

rclone sync -v --progress --ignore-existing aws-bucket: cmc-s3:

 

  • Copy toàn bộ bucket từ AWS về CMC S3 với câu lệnh sau( copy dữ liệu, không xóa file cũ):

rclone copy -v --progress --ignore-existing aws-s3: cmc-s3: --log-file=/root/filemanager-so.log

 

  • Nếu muốn copy từng bucket riêng có thể chạy lệnh sau:

rclone copy -v --progress --ignore-existing aws-s3:source-bucket cmc-s3:destination-bucket --log-file=/root/filemanager-so.log

 

Ví dụ: rclone copy -v --progress --ignore-existing aws-s3:prod cmc-s3:test --log-file=/root/filemanager-so.log

  • Kết quả: dữ liệu đã được copy về:

 

 

 

 

 


4. Kiểm tra và kiểm định dữ liệu

 

  • Chạy lệnh sau để so sánh dữ liệu giữa 2 site:

rclone check -v --missing-on-dst --missing-on-src --diffe aws-bucket: cmc-s3: --log-file=check-report.log

 

rclone check -v --missing-on-dst --missing-on-src --diffeaws-s3:source-bucket cmc-s3:destination-bucket --log-file=check-report.log

 

       --missing-on-dst: Liệt kê file có trên nguồn nhưng không có ở đích.
       --missing-on-src: Liệt kê file có ở đích nhưng không có trên nguồn.
       --differ: Liệt kê file có khác biệt về nội dung.

       --log-file=check-report.log: Lưu kết quả kiểm tra ra file log

 

  • Chạy lệnh sau để thống kê về file và dung lượng:

rclone size cmc-s3:bucketname -v --log-file=size-report.log -v

 

  • Kiểm tra dung lượng một thư mục con trong bucket:

rclone size cmc-s3:bucketname/data-folder -v --log-file=size-report.log -v

    back to top

    logo

    © 2023, CMC Cloud. All rights reserved.

    Business Registration Certificate

    Giấy ĐKKD: 0102900049. Nơi cấp: Sở Kế hoạch & Đầu tư Thành phố Hà Nội

    Chịu trách nhiệm nội dung: Đặng Tùng Sơn