Tin tức và phân tích của tất cả các thiết bị di động

9 Các lệnh AWS S3 với các ví dụ để quản lý bộ chứa và dữ liệu

Kiểm soát và quản lý dữ liệu có thể là một nhiệm vụ tẻ nhạt. Các lệnh AWS S3 này sẽ giúp bạn quản lý bộ chứa AWS S3 và dữ liệu một cách nhanh chóng và hiệu quả.

AWS S3 là dịch vụ lưu trữ đối tượng do AWS cung cấp. Đây là dịch vụ lưu trữ được sử dụng nhiều nhất từ ​​AWS, hầu như có thể lưu trữ một lượng dữ liệu vô hạn. Nó có tính khả dụng cao, bền bỉ và dễ dàng tích hợp với một số dịch vụ AWS khác.

AWS S3 có thể được sử dụng bởi những người có bất kỳ yêu cầu nào, chẳng hạn như lưu trữ ứng dụng di động/web, lưu trữ dữ liệu lớn, lưu trữ dữ liệu máy học, lưu trữ trang web tĩnh, v.v.

Nếu bạn sử dụng S3 trong dự án của mình, bạn sẽ biết rằng với dung lượng lưu trữ khổng lồ, việc quản lý hàng trăm bộ chứa và hàng terabyte dữ liệu trong các bộ chứa đó có thể đòi hỏi nhiều công sức. Chúng tôi có một danh sách các lệnh AWS S3 với các ví dụ mà bạn có thể sử dụng để quản lý dữ liệu và nhóm AWS S3 một cách hiệu quả.

Cấu hình AWS CLI

Sau khi tải xuống và cài đặt thành công AWS CLI, bạn cần thiết lập thông tin đăng nhập AWS để có thể truy cập tài khoản và dịch vụ AWS của mình. Hãy thảo luận nhanh về cách thiết lập AWS CLI.

Bước đầu tiên là tạo người dùng có quyền truy cập theo chương trình vào Tài khoản AWS của bạn. Đảm bảo chọn hộp này khi tạo người dùng cho AWS CLI.

Cấp quyền và tạo người dùng. Trên màn hình cuối cùng sau khi tạo thành công người dùng này, hãy sao chép id mật khẩu và bí mật mật khẩu cho người dùng này. Chúng tôi sẽ sử dụng các thông tin đăng nhập này để đăng nhập qua AWS CLI.

Bây giờ, hãy chuyển đến thiết bị đầu cuối bạn chọn và chạy lệnh sau.

aws configure 

Khi được nhắc, hãy nhập ID mật khẩu và bí mật mật khẩu. Chọn bất kỳ khu vực AWS và định dạng đầu ra lệnh nào. Cá nhân tôi thích sử dụng định dạng JSON hơn. Đó không phải là vấn đề lớn, bạn luôn có thể thay đổi các giá trị này sau.

Giờ đây, bạn có thể chạy bất kỳ lệnh AWS CLI nào trong bảng điều khiển. Bây giờ, hãy xem qua các lệnh AWS S3.

cp

Lệnh cp chỉ đơn giản là sao chép dữ liệu đến và từ bộ chứa S3. Nó có thể được sử dụng để sao chép các tệp từ cục bộ sang S3, từ S3 sang cục bộ và giữa hai nhóm S3. Có nhiều tham số khác mà bạn có thể chỉ định bằng các lệnh.

Ví dụ: tham số -dryrun để kiểm tra lệnh, tham số -storage-class để chỉ định lớp lưu trữ dữ liệu S3, các tham số khác để đặt mã hóa, v.v. Lệnh cp cung cấp cho bạn toàn quyền kiểm soát cấu hình bảo mật dữ liệu S3 của mình.

Sử dụng

aws s3 cp <SOURCE> <DESTINATION> [--options]

ví dụ

Sao chép dữ liệu từ cục bộ sang S3

aws s3 cp file_name.txt s3://bucket_name/file_name_2.txt

Sao chép dữ liệu từ S3 sang cục bộ

aws s3 cp s3://bucket_name/file_name_2.txt file_name.txt

Sao chép dữ liệu giữa các nhóm S3

aws s3 cp s3://bucket_name/file_name.txt s3://bucket_name_2/file_name_2.txt

Sao chép dữ liệu từ cục bộ sang S3 – IA

aws s3 cp file_name.txt s3://bucket_name/file_name_2.txt --storage-class STANDARD_IA 

Sao chép tất cả dữ liệu từ thư mục cục bộ sang S3

aws s3 cp ./local_folder s3://bucket_name --recursive

ls

Lệnh ls được sử dụng để liệt kê các nhóm hoặc nội dung của nhóm. Vì vậy, nếu bạn chỉ muốn xem thông tin về các nhóm của mình hoặc dữ liệu trong các nhóm đó, bạn có thể sử dụng lệnh ls.

Sử dụng:

aws s3 ls NONE or <BUCKET_NAME> [--options]

ví dụ

Xem tất cả các nhóm trong tài khoản của bạn

aws s3 ls

Output:
2022-02-02 18:20:14 BUCKET_NAME_1
2022-03-20 13:12:43 BUCKET_NAME_2
2022-03-29 10:52:33 BUCKET_NAME_3

Lệnh này liệt kê tất cả các nhóm trong tài khoản của bạn cùng với ngày nhóm được tạo.

Liệt kê tất cả các đối tượng cấp cao nhất trong nhóm

aws s3 ls BUCKET_NAME_1 or s3://BUCKET_NAME_1 

Output:
                           PRE samplePrefix/
2021-12-09 12:23:20       8754 file_1.png
2021-12-09 12:23:21       1290 file_2.json
2021-12-09 12:23:21       3088 file_3.html

Lệnh này liệt kê tất cả các đối tượng cấp cao nhất trong bộ chứa S3. Lưu ý rằng các đối tượng có tiền tố samplePrefix/ không được hiển thị ở đây, chỉ các đối tượng cấp cao nhất.

Liệt kê tất cả các đối tượng trong thùng

aws s3 ls BUCKET_NAME_1 or s3://BUCKET_NAME_1 --recursive

Output:
2021-12-09 12:23:20       8754 file_1.png
2021-12-09 12:23:21       1290 file_2.json
2021-12-09 12:23:21       3088 file_3.html
2021-12-09 12:23:20      16328 samplePrefix/file_1.txt
2021-12-09 12:23:20      29325 samplePrefix/sampleSubPrefix/file_1.css

Lệnh này liệt kê tất cả các đối tượng trong bộ chứa S3. Lưu ý rằng các đối tượng có samplePrefix/ và tất cả các phụ tố cũng được hiển thị.

mb

lệnh mb nó chỉ đơn giản được sử dụng để tạo các thùng S3 mới. Đây là một lệnh khá đơn giản, nhưng để tạo các nhóm mới, tên của nhóm mới phải là duy nhất trên tất cả các nhóm S3.

Sử dụng

aws s3 mb <BUCKET_NAME>

Thí dụ

Tạo một nhóm mới trong khu vực được chỉ định

aws s3 mb myUniqueBucketName --region eu-west-1

mv

Lệnh mv chỉ đơn giản là di chuyển dữ liệu vào và ra khỏi bộ chứa S3. Giống như lệnh cp, lệnh mv được sử dụng để di chuyển dữ liệu từ cục bộ sang S3, S3 sang cục bộ hoặc giữa hai nhóm S3.

Sự khác biệt duy nhất giữa lệnh mv và cp là khi sử dụng lệnh mv, tệp sẽ bị xóa khỏi nguồn. AWS di chuyển tệp này đến đích của nó. Có nhiều tùy chọn có thể được chỉ định bằng lệnh.

Sử dụng

aws s3 mv <SOURCE> <DESTINATION> [--options]

ví dụ

Di chuyển dữ liệu từ cục bộ sang S3

aws s3 mv file_name.txt s3://bucket_name/file_name_2.txt

Di chuyển dữ liệu từ S3 sang cục bộ

aws s3 mv s3://bucket_name/file_name_2.txt file_name.txt

Di chuyển dữ liệu giữa các nhóm S3

aws s3 mv s3://bucket_name/file_name.txt s3://bucket_name_2/file_name_2.txt

Chuyển dữ liệu từ cục bộ sang S3 – IA

aws s3 mv file_name.txt s3://bucket_name/file_name_2.txt --storage-class STANDARD_IA 

Di chuyển tất cả dữ liệu tiền tố trong S3 sang một thư mục cục bộ.

aws s3 mv s3://bucket_name/somePrefix ./localFolder --recursive

kê toa

Lệnh presign tạo một URL được chỉ định cho khóa trong bộ chứa S3. Bạn có thể sử dụng lệnh này để tạo URL mà người khác có thể sử dụng để truy cập tệp trong khóa bộ chứa S3 cụ thể.

Sử dụng

aws s3 presign – hết hạn sau

Thí dụ

Tạo một URL được ký trước hợp lệ trong một giờ cho đối tượng trong nhóm.

aws s3 presign s3://bucket_name/samplePrefix/file_name.png --expires-in 3600

Output:
https://s3.ap-south-1.amazonaws.com/bucket_name/samplePrefix/file_name.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIA4MCZT73PAX7ZMVFW%2F20220314%2Fap-south-1%2Fs3%2Faws4_request&X-Amz-Date=20220314T054113Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=f14608bbf3e1f9f8d215eb5b439b87e167b1055bcd7a45c13a33debd3db1be96

rb

Lệnh rb chỉ đơn giản là để xóa các nhóm S3.

Sử dụng

aws rb <BUCKET_NAME>

Thí dụ

Tháo thùng S3.

aws s3 mb myBucketName
# This command fails if there is any data in this bucket.

Xóa bộ chứa S3 cùng với dữ liệu trong bộ chứa S3.

aws s3 mb myBucketName --force

rừm

Lệnh rm chỉ cần xóa các đối tượng trong bộ chứa S3.

Sử dụng

aws s3 rm <S3Uri_To_The_File>

ví dụ

Xóa một tệp khỏi bộ chứa S3.

aws s3 rm s3://bucket_name/sample_prefix/file_name_2.txt

Xóa tất cả các tệp có tiền tố được chỉ định trong bộ chứa S3.

aws s3 rm s3://bucket_name/sample_prefix --recursive

Xóa tất cả các tệp trong khay S3.

aws s3 rm s3://bucket_name --recursive

đồng bộ hóa

Lệnh đồng bộ sao chép và cập nhật các tệp từ nguồn đến đích, giống như lệnh cp. Điều quan trọng là chúng ta phải hiểu sự khác biệt giữa lệnh cp và lệnh đồng bộ hóa. Khi bạn sử dụng cp, nó sẽ sao chép dữ liệu từ nguồn đến đích, ngay cả khi dữ liệu đã tồn tại ở đích.

Nó cũng sẽ không xóa các tệp khỏi đích nếu chúng bị xóa khỏi nguồn. Tuy nhiên, đồng bộ hóa sẽ kiểm tra đích trước khi sao chép dữ liệu và chỉ sao chép các tệp mới và cập nhật. Lệnh đồng bộ hóa tương tự như cam kết và đẩy các thay đổi đến một nhánh từ xa trong git. Lệnh đồng bộ cung cấp nhiều tùy chọn để tùy chỉnh lệnh.

Sử dụng

aws s3 sync <SOURCE> <DESTINATION> [--options]

ví dụ

Đồng bộ hóa thư mục cục bộ với S3

aws s3 sync ./local_folder s3://bucket_name

Đồng bộ hóa dữ liệu S3 với một thư mục cục bộ

aws s3 sync s3://bucket_name ./local_folder

Đồng bộ hóa dữ liệu giữa hai nhóm S3

aws s3 sync s3://bucket_name s3://bucket_name_2

Truyền dữ liệu giữa hai nhóm S3 ngoại trừ tất cả các tệp .txt

aws s3 sync s3://bucket_name s3://bucket_name_2 --exclude "*.txt

trang mạng

Tài nguyên S3 có thể được sử dụng để lưu trữ các trang web tĩnh. Lệnh trang web được sử dụng để định cấu hình lưu trữ trang web tĩnh S3 cho nhóm của bạn.

Bạn chỉ định tệp chỉ mục và tệp lỗi và S3 cung cấp cho bạn một URL nơi bạn có thể xem tệp.

Sử dụng

aws s3 website <S3_URI> [--options]

Thí dụ:

Thiết lập lưu trữ tĩnh cho bộ chứa S3 và chỉ định tệp chỉ mục và tệp lỗi

aws s3 website s3://bucket_name --index-document index.html --error-document error.html

Đăng kí

Hy vọng những điều trên cung cấp cho bạn ý tưởng về một số lệnh AWS S3 thường được sử dụng để quản lý nhóm. Nếu bạn muốn biết thêm, hãy xem chi tiết chứng nhận AWS.

Mục lục