Halaman ini hanya untuk pelanggan lama dari layanan S3 Glacier menggunakan Vaults dan asli dari 2012. REST API
Jika Anda mencari solusi penyimpanan arsip, kami sarankan untuk menggunakan kelas penyimpanan S3 Glacier di Amazon S3, Pengambilan Instan Gletser S3, Pengambilan Fleksibel Gletser S3, dan S3 Glacier Deep Archive. Untuk mempelajari lebih lanjut tentang opsi penyimpanan ini, lihat Kelas penyimpanan S3 Glacier dan Penyimpanan data jangka panjang menggunakan kelas
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengunggah Arsip Besar dengan Menggunakan AWS CLI
Anda dapat mengunggah arsip di Amazon S3 Glacier (S3 Glacier) dengan menggunakan (). AWS Command Line Interface AWS CLI Untuk meningkatkan pengalaman mengunggah arsip yang lebih besar, S3 Glacier menyediakan beberapa API operasi untuk mendukung unggahan multipart. Dengan menggunakan API operasi ini, Anda dapat mengunggah arsip di beberapa bagian. Bagian-bagian ini dapat diunggah secara independen, dalam urutan apa pun, dan secara paralel. Jika unggahan bagian gagal, Anda hanya perlu mengunggah bagian itu lagi, bukan seluruh arsip. Anda dapat menggunakan unggahan multipart untuk arsip dari 1 byte hingga sekitar 40.000 gibibytes (GiB) dalam ukuran.
Untuk informasi selengkapnya tentang unggahan multipart S3 Glacier, lihat. Mengunggah Arsip Besar dalam Beberapa Bagian (Unggahan Multipart)
Topik
(Prasyarat) Menyiapkan AWS CLI
-
Unduh dan konfigurasikan AWS CLI. Untuk melakukannya, lihat topik berikut di Panduan Pengguna AWS Command Line Interface :
-
Verifikasi AWS CLI pengaturan Anda dengan memasukkan perintah berikut pada prompt perintah. Perintah ini tidak memberikan kredensial secara eksplisit, sehingga kredensial profil default digunakan.
-
Coba gunakan perintah bantuan.
aws help
-
Untuk mendapatkan daftar brankas S3 Glacier pada akun yang dikonfigurasi, gunakan perintah.
list-vaults
Ganti123456789012
dengan Akun AWS ID Anda.aws glacier list-vaults --account-id
123456789012
-
Untuk melihat data konfigurasi saat ini untuk AWS CLI, gunakan
aws configure list
perintah.aws configure list
-
(Prasyarat) Instal Python
Untuk menyelesaikan unggahan multipart, Anda harus menghitung hash SHA256 pohon dari arsip yang Anda unggah. Melakukannya berbeda dengan menghitung hash SHA256 pohon dari file yang ingin Anda unggah. Untuk menghitung hash SHA256 pohon dari arsip yang Anda unggah, Anda dapat menggunakanJava, C# (dengan. NET), atauPython. Dalam contoh ini, Anda akan menggunakanPython. Untuk petunjuk tentang penggunaan Java atau C #, lihatChecksum Komputasi.
Untuk informasi selengkapnya tentang menginstalPython, lihat Menginstal atau memperbarui Python
(Prasyarat) Buat S3 Glacier Vault
Untuk menggunakan contoh berikut, Anda harus memiliki setidaknya satu lemari besi S3 Glacier yang dibuat. Untuk informasi selengkapnya tentang membuat brankas, lihat. Membuat Vault di Amazon S3 Glacier
Contoh: Mengunggah Arsip Besar di Bagian dengan Menggunakan AWS CLI
Dalam contoh ini, Anda akan membuat file dan menggunakan API operasi unggahan multibagian untuk mengunggah file ini, sebagian, ke Amazon S3 Glacier.
penting
Sebelum memulai prosedur ini, pastikan Anda telah melakukan semua langkah prasyarat. Untuk mengunggah arsip, Anda harus memiliki vault yang dibuat, AWS CLI dikonfigurasi, dan siap untuk menggunakanJava, C #, atau Python untuk menghitung hash SHA256 pohon.
Prosedur berikut menggunakaninitiate-multipart-upload
,upload-multipart-part
, dan complete-multipart-upload
AWS CLI perintah.
Untuk informasi lebih rinci tentang masing-masing perintah ini, lihat, initiate-multipart-uploadupload-multipart-part, dan complete-multipart-uploaddi Referensi AWS CLI Perintah.
-
Gunakan initiate-multipart-uploadperintah untuk membuat sumber daya unggahan multibagian. Dalam permintaan Anda, tentukan ukuran bagian dalam jumlah byte. Setiap bagian yang Anda unggah, kecuali bagian terakhir, akan berukuran ini. Anda tidak perlu mengetahui ukuran arsip keseluruhan saat memulai unggahan. Namun, Anda akan memerlukan ukuran total, dalam byte, dari setiap bagian saat menyelesaikan unggahan pada langkah terakhir.
Dalam perintah berikut, ganti nilai untuk
--account-ID
parameter--vault-name
dan dengan informasi Anda sendiri. Perintah ini menentukan bahwa Anda akan mengunggah arsip dengan ukuran bagian 1 mebibyte (MiB) (1024 x 1024 byte) per file. Ganti nilai--part-size
parameter ini jika diperlukan.aws glacier initiate-multipart-upload --vault-name
awsexamplevault
--part-size1048576
--account-id123456789012
Keluaran yang diharapkan
{ "location": "/
123456789012
/vaults/awsexamplevault
/multipart-uploads/uploadId
", "uploadId": "uploadId
" }Setelah selesai, perintah akan menampilkan ID unggahan dan lokasi sumber daya unggahan multibagian di S3 Glacier. Anda akan menggunakan ID unggahan ini pada langkah selanjutnya.
-
Untuk contoh ini, Anda dapat menggunakan perintah berikut untuk membuat file 4.4 MiB, membaginya menjadi potongan 1 MiB, dan mengunggah setiap potongan. Untuk mengunggah file Anda sendiri, Anda dapat mengikuti prosedur serupa untuk membagi data Anda menjadi beberapa bagian dan mengunggah setiap bagian.
Linux atau macOS
Perintah berikut membuat file 4.4 MiB, bernama
file_to_upload
, di Linux atau macOS.mkfile -n 9000b
file_to_upload
Windows
Perintah berikut membuat file 4.4 MiB, bernama
file_to_upload
, pada Windows.fsutil file createnew
file_to_upload
4608000 -
Selanjutnya, Anda akan membagi file ini menjadi potongan 1 MiB.
split -b 1048576
file_to_upload
chunkAnda sekarang memiliki lima potongan berikut. Empat yang pertama adalah 1 MiB, dan yang terakhir adalah sekitar 400 kibibytes (KiB).
chunkaa chunkab chunkac chunkad chunkae
-
Gunakan upload-multipart-partperintah untuk mengunggah bagian dari arsip. Anda dapat mengunggah bagian arsip dalam urutan apa pun. Anda juga dapat mengunggahnya secara paralel. Anda dapat mengunggah hingga 10.000 bagian untuk unggahan multipart.
Dalam perintah berikut, ganti nilai untuk
--vault-name
,--account-ID
, dan--upload-id
parameter. ID upload harus cocok dengan ID yang diberikan sebagai output dariinitiate-multipart-upload
perintah.--range
Parameter menentukan bahwa Anda akan mengunggah bagian dengan ukuran 1 MiB (1024 x 1024 byte). Ukuran ini harus sesuai dengan apa yang Anda tentukan dalaminitiate-multipart-upload
perintah. Sesuaikan nilai ukuran ini jika diperlukan.--body
Parameter menentukan nama bagian yang Anda upload.aws glacier upload-multipart-part --body
chunkaa
--range='bytes 0-1048575/*'
--vault-nameawsexamplevault
--account-id123456789012
--upload-idupload_ID
Jika berhasil, perintah akan menghasilkan output yang berisi checksum untuk bagian yang diunggah.
-
Jalankan
upload-multipart-part
perintah lagi untuk mengunggah bagian yang tersisa dari unggahan multipart Anda. Perbarui nilai--range
dan–-body
parameter untuk setiap perintah agar sesuai dengan bagian yang Anda unggah.aws glacier upload-multipart-part --body
chunkab
--range='bytes 1048576-2097151/*'
--vault-nameawsexamplevault
--account-id123456789012
--upload-idupload_ID
aws glacier upload-multipart-part --body
chunkac
--range='bytes 2097152-3145727/*'
--vault-nameawsexamplevault
--account-id123456789012
--upload-idupload_ID
aws glacier upload-multipart-part --body
chunkad
--range='bytes 3145728-4194303/*'
--vault-nameawsexamplevault
--account-id123456789012
--upload-idupload_ID
aws glacier upload-multipart-part --body
chunkae
--range='bytes 4194304-4607999/*'
--vault-nameawsexamplevault
--account-id123456789012
--upload-idupload_ID
catatan
Nilai
--range
parameter perintah akhir lebih kecil karena bagian akhir dari unggahan kami kurang dari 1 MiB. Jika berhasil, setiap perintah akan menghasilkan output yang berisi checksum untuk setiap bagian yang diunggah. -
Selanjutnya, Anda akan merakit arsip dan menyelesaikan unggahan. Anda harus menyertakan ukuran total dan hash SHA256 pohon arsip.
Untuk menghitung hash SHA256 pohon arsip, Anda dapat menggunakanJava, C #, atau. Python Dalam contoh ini, Anda akan menggunakanPython. Untuk petunjuk tentang penggunaan Java atau C #, lihatChecksum Komputasi.
Buat Python file
checksum.py
dan masukkan kode berikut. Jika perlu, ganti nama file asli.from botocore.utils import calculate_tree_hash checksum = calculate_tree_hash(open('
file_to_upload
', 'rb')) print(checksum) -
Jalankan
checksum.py
untuk menghitung hash SHA256 pohon. Hash berikut mungkin tidak cocok dengan output Anda.$
python3 checksum.py$
3d760edb291bfc9d90d35809243de092aea4c47b308290ad12d084f69988ae0c -
Gunakan complete-multipart-uploadperintah untuk menyelesaikan unggahan arsip. Ganti nilai untuk
--vault-name
,--account-ID
,--upload-ID
, dan--checksum
parameter. Nilai--archive
parameter menentukan ukuran total, dalam byte, dari arsip. Nilai ini harus merupakan jumlah dari semua ukuran masing-masing bagian yang Anda unggah. Ganti nilai ini jika diperlukan.aws glacier complete-multipart-upload --archive-size
4608000
--vault-nameawsexamplevault
--account-id123456789012
--upload-idupload_ID
--checksumchecksum
Setelah selesai, perintah akan menampilkan ID arsip, checksum, dan lokasi di S3 Glacier.