Mentransfer file menggunakan adaptor Amazon S3 untuk migrasi data - AWS Snowball Edge Panduan Pengembang

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mentransfer file menggunakan adaptor Amazon S3 untuk migrasi data

Berikut ini adalah ikhtisar adaptor Amazon S3, yang dapat Anda gunakan untuk mentransfer data secara terprogram ke dan dari bucket S3 yang sudah ada di perangkat menggunakan tindakan AWS Snowball Edge Amazon S3 REST API. Dukungan API REST Amazon S3 terbatas pada subset tindakan. Anda dapat menggunakan subset tindakan ini dengan salah satu AWS SDK untuk mentransfer data secara terprogram. Anda juga dapat menggunakan subset dari perintah AWS Command Line Interface (AWS CLI) yang didukung untuk Amazon S3 untuk mentransfer data secara terprogram.

Jika solusi Anda menggunakan AWS SDK for Java versi 1.11.0 atau yang lebih baru, Anda harus menggunakan yang berikut: S3ClientOptions

  • disableChunkedEncoding() – Menunjukkan bahwa enkode chunk tidak didukung dengan antarmuka.

  • setPathStyleAccess(true) – Mengonfigurasi antarmuka untuk menggunakan akses path-style untuk semua permintaan.

Untuk informasi selengkapnya, lihat Kelas S3 ClientOptions .Builder di Amazon AppStream SDK for Java.

penting

Kami menyarankan Anda hanya menggunakan satu metode pada satu waktu untuk membaca dan menulis data ke bucket lokal pada AWS Snowball Edge perangkat. Menggunakan antarmuka file dan adaptor Amazon S3 pada bucket yang sama pada saat yang sama dapat mengakibatkan konflik baca/tulis.

AWS Snowball Kuota Tepimerinci batas-batasnya.

Agar AWS layanan berfungsi dengan baik di Snowball Edge, Anda harus mengizinkan port untuk layanan tersebut. Lihat perinciannya di Port yang Diperlukan untuk Menggunakan AWS Layanan di Perangkat AWS Snowball Edge.

Mengunduh dan menginstal AWS CLI versi 1.16.14 untuk digunakan dengan adaptor Amazon S3

Saat ini, perangkat Snowball Edge hanya mendukung versi 1.16.14 dan sebelumnya AWS CLI untuk digunakan dengan adaptor Amazon S3. Versi yang lebih baru tidak AWS CLI kompatibel dengan adaptor Amazon S3 karena mereka tidak mendukung semua fungsionalitas adaptor S3.

catatan

Jika Anda menggunakan penyimpanan yang kompatibel dengan Amazon S3 di perangkat Snow Family, Anda dapat menggunakan versi terbaru dari file. AWS CLI Untuk mengunduh dan menggunakan versi terbaru, lihat Panduan AWS Command Line Interface Pengguna.

Instal AWS CLI pada sistem operasi Linux

Jalankan perintah berantai ini:

curl "https://s3.amazonaws.com/aws-cli/awscli-bundle-1.16.14.zip" -o "awscli-bundle.zip";unzip awscli-bundle.zip;sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws;/usr/local/bin/aws --version;

Instal AWS CLI pada sistem operasi Windows

Unduh dan jalankan file penginstal untuk sistem operasi Anda:

Menggunakan operasi AWS CLI dan API pada perangkat Snowball Edge

Saat menggunakan operasi AWS CLI atau API untuk mengeluarkan perintah IAM, Amazon S3, dan Amazon EC2 di Snowball Edge, Anda harus menentukan Wilayah sebagai ".” snow Anda dapat melakukan ini menggunakan AWS configure atau di dalam perintah itu sendiri, seperti pada contoh berikut.

aws configure --profile abc AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: 1234567 Default region name [None]: snow Default output format [None]: json

Atau

aws s3 ls --profile snowballEdge --endpoint http://192.0.2.0:8080 --region snow

Otorisasi dengan antarmuka API Amazon S3 untuk AWS Snowball

Saat Anda menggunakan adaptor Amazon S3, setiap interaksi ditandatangani dengan algoritma AWS Signature Version 4 secara default. Otorisasi ini hanya digunakan untuk memverifikasi data yang berjalan dari sumbernya ke antarmuka. Semua enkripsi dan dekripsi terjadi pada perangkat. Data yang tidak terenkripsi tidak pernah disimpan pada perangkat.

Saat menggunakan antarmuka, perhatikan hal berikut:

  • Untuk mendapatkan kredensil Amazon S3 lokal untuk menandatangani permintaan Anda ke AWS Snowball Edge perangkat, jalankan perintah klien dan snowballEdge list-access-keys Snowball snowballEdge get-secret-access-keys Edge. Untuk informasi selengkapnya, lihat Menggunakan perintah klien Snowball Edge. Kredensial Amazon S3 lokal ini mencakup sepasang kunci: access key dan kunci rahasia. Kunci ini hanya berlaku untuk perangkat yang terkait dengan tugas Anda. Mereka tidak dapat digunakan di AWS Cloud karena mereka tidak memiliki mitra AWS Identity and Access Management (IAM).

  • Kunci enkripsi tidak diubah oleh AWS kredensi apa yang Anda gunakan. Penandatanganan dengan algoritme Signature Version 4 hanya digunakan untuk memverifikasi data yang berjalan dari sumbernya ke antarmuka. Dengan demikian, penandatanganan ini tidak pernah memperhitungkan kunci enkripsi yang digunakan untuk mengenkripsi data Anda pada Snowball.

Mendapatkan dan menggunakan kredensyal Amazon S3 lokal

Setiap interaksi dengan Snowball Edge ditandatangani dengan algoritma AWS Signature Version 4. Untuk informasi selengkapnya tentang algoritme, lihat Proses Penandatanganan Versi Tanda Tangan 4 di Referensi Umum AWS.

Anda bisa mendapatkan kredensi Amazon S3 lokal untuk menandatangani permintaan Anda ke perangkat Edge klien Snowball Edge dengan menjalankan informasi klien Snowball Edge dan snowballEdge list-access-keys Snowball snowballEdge get-secret-access-key Edge, lihat. Mendapatkankan Kredensial Kredensial Amazon S3 lokal ini mencakup sepasang kunci: access key ID dan kunci rahasia. Kredensial ini hanya berlaku untuk perangkat yang terkait dengan tugas Anda. Mereka tidak dapat digunakan di AWS Cloud karena mereka tidak memiliki mitra IAM.

Anda dapat menambahkan kredensyal ini ke file AWS kredensyal di server Anda. File profil kredensial default biasanya terletak di ~/.aws/credentials, tetapi lokasi dapat bervariasi per platform. File ini dibagikan oleh banyak AWS SDK dan oleh file. AWS CLI Anda dapat menyimpan kredensial lokal dengan nama profil seperti dalam contoh berikut.

[snowballEdge] aws_access_key_id = AKIAIOSFODNN7EXAMPLE aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

Menentukan adaptor S3 sebagai titik akhir AWS CLI

Saat Anda menggunakan perintah AWS CLI untuk mengeluarkan perintah ke AWS Snowball Edge perangkat, Anda menentukan bahwa titik akhir adalah adaptor Amazon S3. Anda memiliki pilihan untuk menggunakan titik akhir HTTPS, atau titik akhir HTTP tidak aman, seperti yang ditunjukkan berikut.

Titik akhir yang diamankan HTTPS

aws s3 ls --profile snowballEdge --endpoint https://192.0.2.0:8443 --ca-bundle path/to/certificate

Titik akhir HTTP tidak aman

aws s3 ls --profile snowballEdge --endpoint http://192.0.2.0:8080

Jika Anda menggunakan titik akhir HTTPS 8443, data Anda ditransfer dengan aman dari server Anda ke Snowball Edge. Enkripsi ini dipastikan dengan sertifikat yang dihasilkan oleh Snowball Edge ketika mendapat alamat IP baru. Setelah Anda memiliki sertifikat, Anda dapat menyimpannya ke file ca-bundle.pem lokal. Kemudian Anda dapat mengonfigurasi AWS CLI profil Anda untuk menyertakan jalur ke sertifikat Anda, seperti yang dijelaskan berikut.

Untuk mengaitkan sertifikat Anda dengan titik akhir antarmuka
  1. Connect Snowball Edge ke daya dan jaringan, dan nyalakan.

  2. Setelah perangkat selesai melakukan booting, catat alamat IP-nya di jaringan lokal Anda.

  3. Dari terminal di jaringan Anda, pastikan Anda dapat melakukan ping Snowball Edge.

  4. Jalankan perintah snowballEdge get-certificate di terminal Anda. Untuk informasi lebih lanjut tentang perintah ini, lihat Mengelola sertifikat kunci publik.

  5. Simpan output dari perintah snowballEdge get-certificate ke file, misalnya ca-bundle.pem.

  6. Jalankan perintah berikut dari terminal Anda.

    aws configure set profile.snowballEdge.ca_bundle /path/to/ca-bundle.pem

Setelah Anda menyelesaikan prosedur, Anda dapat menjalankan perintah CLI dengan kredensial lokal ini, sertifikat Anda, dan titik akhir yang ditentukan, seperti dalam contoh berikut.

aws s3 ls --profile snowballEdge --endpoint https://192.0.2.0:8443

Fitur Amazon S3 yang tidak didukung untuk adaptor Amazon S3

Menggunakan adaptor Amazon S3, Anda dapat mentransfer data secara terprogram ke dan dari Snowball Edge dengan tindakan API Amazon S3. Namun, tidak semua fitur transfer Amazon S3 dan tindakan API didukung untuk digunakan dengan perangkat Snowball Edge saat menggunakan adaptor Amazon S3. Misalnya, fitur dan tindakan dan fitur berikut tidak didukung untuk digunakan dengan Snowball Edge:

  • TransferManager— Utilitas ini mentransfer file dari lingkungan lokal ke Amazon S3 dengan SDK for Java. Pertimbangkan untuk menggunakan tindakan API yang didukung atau perintah AWS CLI dengan antarmuka sebagai gantinya.

  • GET Bucket (List Objects) Version 2 – Implementasi tindakan GET ini menghasilkan beberapa atau semua (hingga 1.000) objek dalam bucket. Pertimbangkan untuk menggunakan tindakan GET Bucket (List Objects) Version 1 atau perintah AWS CLI ls.

  • ListBuckets— Titik akhir ListBuckets dengan objek tidak didukung. Perintah berikut tidak berfungsi dengan penyimpanan yang kompatibel dengan Amazon S3 di perangkat Snow Family:

    aws s3 ls --endpoint https://192.0.2.0 --profile profile