Tutorial: Memigrasikan data lokal ke penyimpanan cloud dengan AzCopy
AzCopy adalah alat baris perintah untuk menyalin data ke atau dari penyimpanan Azure Blob, Azure Files, dan penyimpanan Azure Table menggunakan perintah sederhana. Perintah dirancang untuk kinerja optimal. Dengan AzCopy, Anda dapat menyalin data antara sistem file dan akun penyimpanan, atau antara akun penyimpanan. AzCopy dapat digunakan untuk menyalin data dari data lokal ke akun penyimpanan.
Dalam tutorial ini, Anda akan mempelajari cara:
- Membuat akun penyimpanan.
- Menggunakan AzCopy untuk mengunggah semua data Anda.
- Mengubah data untuk tujuan pengujian.
- Membuat tugas terjadwal atau tugas cron untuk mengidentifikasi file baru untuk diunggah.
Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.
Prasyarat
Untuk menyelesaikan tutorial ini, unduh azCopy versi terbaru. Lihat Mulai menggunakan AzCopy.
Jika menggunakan Windows, Anda akan memerlukan Schtasks karena tutorial ini menggunakannya untuk menjadwalkan tugas. Sebagai gantinya, pengguna Linux akan menggunakan perintah crontab.
Untuk membuat akun penyimpanan v2 serbaguna di portal Azure, ikuti langkah-langkah ini.
- Di bagian layanan Azure, pilih Akun penyimpanan.
- Pada halaman Akun Penyimpanan, pilih + Buat.
- Pada bidang Dasar, pilih langganan tempat membuat akun penyimpanan.
- Di bidang Grup sumber daya, pilih grup sumber daya yang Anda inginkan, atau buat grup sumber daya baru. Untuk informasi selengkapnya tentang grup sumber daya Azure, lihat Gambaran Umum Azure Resource Manager.
- Selanjutnya, masukkan nama untuk akun penyimpanan Anda. Nama yang Anda pilih harus unik di seluruh Azure. Nama ini juga harus 3 sampai 24 karakter panjangnya, dan dapat menyertakan angka dan huruf kecil saja.
- Pilih wilayah untuk akun penyimpanan Anda, atau gunakan wilayah default.
- Pilih tingkat performa. Tingkat defaultnya adalah Standar.
- Tentukan cara akun penyimpanan akan direplikasi. Opsi redundansi default adalah penyimpanan redundan-geografis (GRS). Untuk informasi selengkapnya tentang opsi replikasi yang tersedia, lihat Redundansi Azure Storage.
- Opsi tambahan tersedia pada bilah Tingkat Lanjut, Jaringan, Perlindungan data, dan Tag. Untuk menggunakan Azure Data Lake Storage, pilih bilah Tingkat Lanjut, lalu atur Ruang nama hierarki menjadi Diaktifkan. Untuk informasi selengkapnya, lihat Pengenalan Azure Data Lake Storage Gen2.
- Pilih Tinjau + Buat untuk meninjau pengaturan akun penyimpanan Anda dan membuat akun.
- Pilih Buat.
Gambar berikut menunjukkan pengaturan pada bilah Dasar untuk akun penyimpanan baru:
Membuat kontainer
Langkah pertama adalah membuat wadah, karena gumpalan harus selalu diunggah ke dalam kontainer. Kontainer digunakan sebagai metode untuk mengelola kelompok blob seperti Anda mengelola file di komputer Anda dalam folder.
Ikuti langkah ini untuk membuat kontainer:
Pilih tombol Akun penyimpanan dari halaman utama, lalu pilih akun penyimpanan yang Anda buat.
Pilih Blob di bawah Layanan, lalu pilih Kontainer.
Nama kontainer harus dimulai dengan huruf atau angka. Nama kontainer hanya boleh berisi huruf, angka, dan karakter tanda hubung (-). Untuk aturan lainnya tentang penamaan blob dan kontainer, lihat Menamai dan mereferensikan kontainer, blob, dan metadata.
Mengunduh AzCopy
Unduh file AzCopy V10 yang dapat dijalankan.
Tempatkan file AzCopy di mana saja di komputer Anda. Tambahkan lokasi file ke variabel jalur sistem sehingga Anda dapat merujuk ke file yang dapat dijalankan dari folder apa pun di komputer.
Autentikasi dengan Microsoft Entra ID
Pertama, tentukan peran Kontributor Data Blob Penyimpanan untuk identitas Anda. Lihat Menetapkan peran Azure untuk akses ke data blob.
Lalu, buka prompt perintah, ketik perintah berikut, dan tekan tombol ENTER.
azcopy login
Perintah ini mengembalikan kode autentikasi dan URL situs web. Buka situs web, berikan kode, lalu pilih tombol Berikutnya.
Jendela masuk akan muncul. Di jendela tersebut, masuk ke akun Azure menggunakan kredensial akun Azure Anda. Setelah berhasil masuk, Anda dapat menutup jendela browser dan mulai menggunakan AzCopy.
Mengunggah konten folder ke penyimpanan Blob
Anda dapat menggunakan AzCopy untuk mengunggah semua file dalam folder ke penyimpanan Blob di Windows atau Linux. Untuk mengunggah semua blob dalam folder, masukkan perintah AzCopy berikut:
azcopy copy "<local-folder-path>" "https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>" --recursive=true
Ganti
<local-folder-path>
placeholder dengan jalur ke folder yang berisi file (Misalnya:C:\myFolder
atau/mnt/myFolder
).Ganti
<storage-account-name>
placeholder dengan nama akun penyimpanan.Ganti
<container-name>
placeholder dengan nama kontainer yang Anda buat.
Untuk mengunggah konten direktori tertentu ke penyimpanan Blob secara rekursif, sebutkan opsi --recursive
. Jika Anda menjalankan AzCopy dengan opsi ini, semua subfolder dan filenya juga akan diunggah.
Mengunggah file yang telah diubah ke penyimpanan Blob
Anda dapat menggunakan AzCopy untuk mengunggah file berdasarkan waktu terakhir diubah.
Untuk mencobanya, ubah atau buat file baru di direktori sumber Anda untuk tujuan pengujian. Kemudian, gunakan perintah sync
AzCopy.
azcopy sync "<local-folder-path>" "https://<storage-account-name>.blob.core.windows.net/<container-name>" --recursive=true
Ganti placeholder
<local-folder-path>
dengan jalur ke folder yang berisi file (Misalnya:C:\myFolder
atau/mnt/myFolder
).Ganti
<storage-account-name>
placeholder dengan nama akun penyimpanan.Ganti
<container-name>
placeholder dengan nama kontainer yang Anda buat.
Untuk mempelajari selengkapnya tentang perintah sync
, lihat Menyinkronkan file.
Membuat tugas terjadwal
Anda dapat membuat tugas terjadwal atau pekerjaan cron yang menjalankan skrip perintah AzCopy. Skrip mengidentifikasi dan mengunggah data lokal baru ke penyimpanan cloud pada interval waktu tertentu.
Salin perintah AzCopy ke editor teks. Perbarui nilai parameter perintah AzCopy ke nilai yang sesuai. Simpan file sebagai script.sh
(Linux) atau script.bat
(Windows) untuk AzCopy.
Contoh ini mengasumsikan bahwa folder Anda bernama myFolder
, nama akun penyimpanan Anda adalah mystorageaccount
dan kontainer Anda bernama mycontainer
.
Catatan
Contoh Linux menambahkan token SAS. Anda harus menyediakan token SAS dalam perintah Anda. Untuk menggunakan autentikasi Microsoft Entra dalam pekerjaan cron, pastikan Anda mengonfigurasi variabel lingkungan AZCOPY_AUTO_LOGIN_TYPE dengan tepat.
azcopy sync "/mnt/myfiles" "https://mystorageaccount.blob.core.windows.net/mycontainer?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-05-30T06:57:40Z&st=2019-05-29T22:57:40Z&spr=https&sig=BXHippZxxx54hQn/4tBY%2BE2JHGCTRv52445rtoyqgFBUo%3D" --recursive=true
Dalam tutorial ini, Schtasks digunakan untuk membuat tugas terjadwal di Windows. Perintah Crontab digunakan untuk membuat pekerjaan cron di Linux.
Schtasks memungkinkan administrator untuk membuat, menghapus, mengkueri, mengubah, menjalankan, dan mengakhiri tugas terjadwal pada komputer lokal atau jarak jauh. Cron memungkinkan pengguna Linux dan Unix untuk menjalankan perintah atau skrip pada tanggal dan waktu tertentu dengan ekspresi cron.
Untuk membuat pekerjaan cron di Linux, ketik perintah berikut di terminal:
crontab -e
*/5 * * * * sh /path/to/script.sh
Menentukan ekspresi cron dalam */5 * * * *
perintah menunjukkan bahwa skrip shell script.sh
harus berjalan setiap lima menit. Anda dapat menjadwalkan skrip untuk dijalankan pada waktu tertentu setiap hari, setiap bulan, atau setiap tahun. Untuk mempelajari lebih lanjut tentang mengatur tanggal dan waktu untuk menjalankan pekerjaan, lihat ekspresi cron.
Untuk memvalidasi bahwa tugas/pekerjaan cron terjadwal berjalan dengan benar, buat file baru di direktori myFolder
Anda. Tunggu lima menit untuk mengonfirmasi bahwa file baru telah diunggah ke akun penyimpanan Anda. Buka direktori log Anda untuk melihat log output tugas terjadwal atau pekerjaan cron.
Langkah berikutnya
Untuk mempelajari lebih lanjut tentang cara memindahkan data lokal ke Azure Storage dan sebaliknya, ikuti tautan ini:
Untuk informasi lebih lengkap tentang AzCopy, lihat salah satu artikel berikut ini: