Menyiapkan AWS CLI dan AWS S3
Sebelum mulai menyinkronkan file dengan S3, Anda harus menyiapkan dan mengonfigurasi AWS CLI dengan benar. Kedengarannya mungkin menakutkan jika Anda baru di AWS, tetapi hanya butuh beberapa menit.
Penyiapan CLI melibatkan dua langkah utama: memasang alatnya dan mengonfigurasinya. Saya akan membahas keduanya berikut ini.
Memasang AWS CLI
Proses pemasangan AWS CLI sedikit berbeda tergantung sistem operasi Anda.
Untuk sistem Windows:
- Buka halaman unduhan AWS CLI di sini
- Unduh Windows installer (64-bit)
- Jalankan installer dan ikuti petunjuknya
Untuk sistem Linux:
Jalankan tiga perintah berikut melalui Terminal:
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
Untuk sistem macOS:
Dengan asumsi Anda telah memasang Homebrew, jalankan satu baris ini dari Terminal:
brew install awscli
Jika Anda belum memiliki Homebrew, gunakan dua perintah berikut sebagai gantinya:
curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"
sudo installer -pkg AWSCLIV2.pkg -target /
Anda dapat menjalankan perintah aws --version pada semua sistem operasi untuk memverifikasi bahwa AWS CLI telah terpasang. Berikut tampilan yang seharusnya Anda lihat:

Gambar 1 - Versi AWS CLI
Mengonfigurasi AWS CLI
Sekarang CLI sudah terpasang, Anda perlu mengonfigurasinya dengan kredensial AWS Anda.
Dengan asumsi Anda sudah memiliki akun AWS, masuk dan buka layanan IAM. Setelah itu, buat pengguna baru dengan akses programatik. Anda perlu menetapkan izin yang sesuai kepada pengguna, minimal akses S3:

Gambar 2 - Pengguna AWS IAM
Setelah selesai, buka "Security credentials" untuk membuat kunci akses baru. Setelah dibuat, Anda akan memiliki Access key ID dan Secret access key. Simpan di tempat yang aman karena Anda tidak akan bisa mengaksesnya lagi di masa mendatang:

Gambar 3 - Kredensial pengguna AWS IAM
Kembali ke Terminal, jalankan perintah aws configure. Anda akan diminta memasukkan Access key ID, Secret access key, region (eu-central-1 pada kasus saya), dan format output yang diinginkan (json):

Gambar 4 - Konfigurasi AWS CLI
Untuk memverifikasi bahwa Anda berhasil terhubung ke akun AWS dari CLI, jalankan perintah berikut:
aws sts get-caller-identity
Berikut adalah output yang seharusnya Anda lihat:

Gambar 5 - Perintah uji koneksi AWS CLI
Itu saja — tinggal satu langkah lagi sebelum Anda dapat mulai menggunakan perintah S3 sync!
Menyiapkan bucket AWS S3
Langkah terakhir adalah membuat bucket S3 yang akan menyimpan file yang disinkronkan. Anda bisa melakukannya dari CLI atau dari AWS Management Console. Saya akan menggunakan yang kedua, untuk variasi.
Untuk memulai, buka halaman layanan S3 di Management Console dan klik tombol "Create bucket". Setelah itu, pilih nama bucket yang unik (unik secara global di seluruh AWS) lalu gulir ke bawah dan klik tombol "Create":

Gambar 6 - Pembuatan bucket AWS
Bucket sekarang telah dibuat, dan Anda akan langsung melihatnya di management console. Anda juga dapat memverifikasi pembuatan melalui CLI:
aws s3 ls

Gambar 7 - Semua bucket S3 yang tersedia
Perlu diingat bahwa bucket S3 bersifat privat secara default. Jika Anda berencana menggunakan bucket untuk menghosting file publik (seperti aset situs web), Anda harus menyesuaikan kebijakan dan izin bucket sesuai kebutuhan.
Sekarang semua sudah siap dan Anda bisa mulai menyinkronkan file antara mesin lokal dan AWS S3!
Perintah Dasar AWS S3 Sync
Sekarang AWS CLI telah terpasang, dikonfigurasi, dan bucket S3 siap digunakan, saatnya mulai menyinkronkan! Sintaks dasar untuk perintah AWS S3 sync cukup mudah. Saya akan tunjukkan cara kerjanya.
Perintah S3 sync mengikuti pola sederhana berikut:
aws s3 sync <source> <destination> [options]
Baik sumber maupun tujuan bisa berupa path direktori lokal atau S3 URI (diawali dengan s3://). Tergantung arah sinkronisasi yang Anda inginkan, urutannya akan berbeda.
Menyinkronkan file dari lokal ke bucket S3
Belakangan saya bereksperimen dengan riset mendalam Ollama. Misalnya, itu folder yang ingin saya sinkronkan ke S3. Direktori utamanya berada di bawah folder Documents. Beginilah tampilannya:

Isi folder lokal
Ini perintah yang perlu saya jalankan untuk menyinkronkan folder lokal code-files dengan folder backup pada bucket S3:
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup
Folder backup pada bucket S3 akan otomatis dibuat jika belum ada.
Berikut yang akan Anda lihat tercetak di konsol:

Gambar 9 - Proses S3 sync
Setelah beberapa detik, isi folder lokal code-files tersedia di bucket S3:

Gambar 10 - Isi bucket S3
Keunggulan S3 sync adalah hanya mengunggah file yang belum ada di tujuan atau yang telah dimodifikasi secara lokal. Jika Anda menjalankan perintah yang sama lagi tanpa mengubah apa pun, Anda tidak akan melihat apa-apa! Itu karena AWS CLI mendeteksi bahwa semua file sudah tersinkron dan mutakhir.
Sekarang, saya akan membuat dua perubahan kecil — membuat file baru (new_file.txt) dan memperbarui satu file yang sudah ada (requirements.txt). Saat Anda menjalankan perintah sinkronisasi lagi, hanya file baru atau yang dimodifikasi yang akan diunggah:

Gambar 11 - Proses S3 sync (2)
Itu saja yang perlu Anda ketahui saat menyinkronkan folder lokal ke S3. Lalu bagaimana jika Anda ingin sebaliknya?
Menyinkronkan file dari bucket S3 ke direktori lokal
Jika Anda ingin mengunduh file dari bucket S3 ke mesin lokal, cukup tukar sumber dan tujuan:
aws s3 sync s3://testbucket-dradecic/backup /Users/dradecic/Documents/code-files-from-s3
Perintah ini akan mengunduh semua file dari folder backup di bucket S3 Anda ke folder lokal bernama code-files-from-s3 . Sekali lagi, jika folder lokal belum ada, CLI akan membuatnya untuk Anda:

Gambar 12 - Sinkronisasi dari S3 ke lokal
Perlu dicatat bahwa S3 sync bukan dua arah. Arah sinkronisasi selalu dari sumber ke tujuan, membuat tujuan sesuai dengan sumber. Jika Anda menghapus file secara lokal lalu menyinkronkannya ke S3, file tersebut tetap ada di S3. Demikian pula, jika Anda menghapus file di S3 dan menyinkronkan dari S3 ke lokal, file lokal akan tetap tidak berubah.
Jika Anda ingin membuat tujuan persis sama dengan sumber (termasuk penghapusan), Anda harus menggunakan flag --delete, yang akan saya bahas di bagian opsi lanjutan.
Opsi Lanjutan AWS S3 Sync
Perintah dasar S3 sync yang dibahas sebelumnya sudah cukup kuat, tetapi AWS melengkapinya dengan opsi tambahan yang memberi Anda kontrol lebih atas proses sinkronisasi.
Di bagian ini, saya akan menunjukkan beberapa flag paling berguna yang dapat Anda tambahkan ke perintah dasar.
Menyinkronkan hanya file baru atau yang dimodifikasi
Secara default, S3 sync menggunakan mekanisme perbandingan dasar yang memeriksa ukuran file dan waktu modifikasi untuk menentukan apakah suatu file perlu disinkronkan. Namun, pendekatan ini tidak selalu menangkap semua perubahan, terutama jika berurusan dengan file yang dimodifikasi tetapi ukurannya tetap sama.
Untuk sinkronisasi yang lebih presisi, Anda dapat menggunakan flag --exact-timestamps:
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --exact-timestamps
Ini memaksa S3 sync membandingkan stempel waktu dengan presisi hingga milidetik. Perlu diingat, penggunaan flag ini dapat memperlambat proses sinkronisasi sedikit karena memerlukan perbandingan yang lebih mendetail.
Mengecualikan atau memasukkan file tertentu
Terkadang, Anda tidak ingin menyinkronkan semua file dalam sebuah direktori. Mungkin Anda ingin mengecualikan file sementara, log, atau jenis file tertentu (seperti .DS_Store pada kasus saya). Di sinilah flag --exclude dan --include berguna.
Namun untuk ilustrasi, misalkan saya ingin menyinkronkan direktori kode tetapi mengecualikan semua file Python:
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --exclude "*.py"
Kini, jauh lebih sedikit file yang disinkronkan ke S3:

Gambar 13 - S3 sync dengan file Python dikecualikan
Anda juga bisa menggabungkan --exclude dan --include untuk membuat pola yang lebih kompleks. Misalnya, mengecualikan semuanya kecuali file Python:
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --exclude "*" --include "*.py"
Pola dievaluasi sesuai urutan yang ditentukan, jadi urutan itu penting! Berikut yang akan Anda lihat saat menggunakan flag tersebut:

Gambar 14 - Flag exclude dan include
Sekarang hanya file Python yang disinkronkan, dan file konfigurasi penting tidak ikut.
Menghapus file dari tujuan
Secara default, S3 sync hanya menambahkan atau memperbarui file di tujuan — tidak pernah menghapusnya. Artinya, jika Anda menghapus file dari sumber, file tersebut akan tetap ada di tujuan setelah sinkronisasi.
Untuk membuat tujuan benar-benar mencerminkan sumber, termasuk penghapusan, gunakan flag --delete:
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --delete
Jika Anda menjalankannya untuk pertama kali, semua file lokal akan disinkronkan ke S3:

Gambar 15 - Flag delete
Ini sangat berguna untuk mempertahankan replika direktori yang persis sama. Namun berhati-hatilah — flag ini dapat menyebabkan kehilangan data jika digunakan secara keliru.
Misalnya, saya menghapus config.py dari folder lokal dan menjalankan perintah sinkronisasi dengan flag --delete:

Gambar 16 - Flag delete (2)
Seperti yang terlihat, perintah tidak hanya menyinkronkan file baru dan yang dimodifikasi, tetapi juga menghapus file dari bucket S3 yang sudah tidak ada lagi di direktori lokal.
Menyiapkan dry run untuk sinkronisasi yang aman
Operasi S3 sync paling berisiko adalah yang melibatkan flag --delete. Untuk menghindari penghapusan file penting secara tidak sengaja, Anda dapat menggunakan flag --dryrun untuk mensimulasikan operasi tanpa benar-benar melakukan perubahan apa pun:
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --delete --dryrun
Sebagai contoh, saya telah menghapus file requirements.txt dan settings.toml dari folder lokal lalu menjalankan perintah tersebut:

Gambar 17 - Dry run
Ini akan menampilkan dengan tepat apa yang akan terjadi jika Anda menjalankan perintah sebenarnya, termasuk file mana yang akan diunggah, diunduh, atau dihapus.
Saya selalu menyarankan menggunakan --dryrun sebelum mengeksekusi perintah S3 sync apa pun dengan flag --delete, terutama saat bekerja dengan data penting.
Tersedia banyak opsi lain untuk perintah S3 sync, seperti --acl untuk mengatur izin, --storage-class untuk memilih tingkatan penyimpanan S3, dan --recursive untuk menelusuri subdirektories. Lihat dokumentasi resmi AWS CLI untuk daftar lengkap opsi.
Sekarang Anda telah memahami opsi S3 sync dasar dan lanjutan, mari lihat cara menggunakan perintah ini untuk skenario praktis seperti pencadangan dan pemulihan.
Menggunakan AWS S3 Sync untuk Backup dan Restore
Salah satu kasus penggunaan paling populer untuk AWS S3 sync adalah mencadangkan file penting dan memulihkannya saat diperlukan. Mari kita bahas cara menerapkan strategi backup dan restore sederhana menggunakan perintah sync.
Membuat backup ke S3
Membuat backup dengan S3 sync sangatlah mudah — Anda hanya perlu menjalankan perintah sinkronisasi dari direktori lokal ke bucket S3. Namun, ada beberapa praktik terbaik yang perlu diikuti untuk backup yang efektif.
Pertama, sebaiknya atur backup berdasarkan tanggal atau versi. Berikut pendekatan sederhana menggunakan timestamp pada path S3:
# Buat variabel timestamp
TIMESTAMP=$(date +%Y-%m-%d-%H-%M-%S)
# Jalankan backup
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backups/$TIMESTAMP
Ini membuat folder baru untuk setiap backup dengan timestamp seperti 2025-03-10-18-56-42. Berikut yang akan Anda lihat di S3:

Gambar 18 - Backup bertimestamp
Untuk data penting, Anda mungkin ingin menyimpan beberapa versi backup. Ini mudah dilakukan dengan menjalankan backup berbasis timestamp secara berkala.
Anda juga dapat menggunakan opsi --storage-class untuk menentukan kelas penyimpanan yang lebih hemat biaya untuk backup Anda:
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backups/$TIMESTAMP --storage-class STANDARD_IA

Gambar 19 - Isi backup dengan kelas penyimpanan kustom
Ini menggunakan kelas penyimpanan S3 Infrequent Access, yang biayanya lebih rendah namun memiliki biaya pengambilan kecil. Untuk arsip jangka panjang, Anda bahkan dapat menggunakan kelas penyimpanan Glacier:
aws s3 sync /Users/dradecic/Documents/important-data s3://testbucket-dradecic/backups/$TIMESTAMP --storage-class GLACIER
Perlu diingat bahwa file yang disimpan di Glacier membutuhkan waktu berjam-jam untuk diambil, sehingga tidak cocok untuk data yang mungkin Anda perlukan dengan cepat.
Memulihkan file dari S3
Memulihkan dari backup sama mudahnya — cukup balikkan sumber dan tujuan dalam perintah sinkronisasi Anda:
# Pulihkan dari backup terbaru (dengan asumsi Anda tahu timestamp-nya)
aws s3 sync s3://testbucket-dradecic/backups/2025-03-10-18-56-42 /Users/dradecic/Documents/restored-data
Ini akan mengunduh semua file dari backup tersebut ke direktori lokal restored-data Anda:

Gambar 20 - Memulihkan file dari S3
Jika Anda tidak ingat timestamp persisnya, Anda bisa menampilkan daftar semua backup terlebih dahulu:
aws s3 ls s3://testbucket-dradecic/backups/
Yang akan menampilkan sesuatu seperti ini:

Gambar 21 - Daftar backup
Anda juga dapat memulihkan file atau direktori tertentu dari backup menggunakan flag exclude/include yang telah kita bahas sebelumnya:
# Pulihkan hanya file konfigurasi
aws s3 sync s3://testbucket-dradecic/backups/2025-03-10-18-56-42 /Users/dradecic/Documents/restored-configs --exclude "*" --include "*.config" --include "*.toml" --include "*.yaml"
Untuk sistem yang sangat krusial, saya sarankan mengotomatiskan backup dengan tugas terjadwal (seperti cron job di Linux/macOS atau Task Scheduler di Windows). Ini memastikan data Anda dicadangkan secara konsisten tanpa harus mengingat untuk melakukannya secara manual.
Pemecahan Masalah AWS S3 Sync
AWS S3 sync adalah alat yang andal, namun sesekali Anda mungkin mengalami masalah. Meski begitu, sebagian besar error yang akan Anda lihat disebabkan oleh faktor manusia.
Error sinkronisasi yang umum
Mari kita bahas beberapa masalah umum dan solusinya.
- Access denied error biasanya berarti pengguna IAM Anda tidak memiliki izin yang diperlukan untuk mengakses bucket S3 atau melakukan operasi tertentu. Untuk memperbaikinya, coba salah satu dari berikut ini:
- Periksa apakah pengguna IAM Anda memiliki izin S3 yang sesuai (
s3:ListBucket,s3:GetObject,s3:PutObject). - Verifikasi bahwa kebijakan bucket tidak secara eksplisit menolak akses pengguna Anda.
- Pastikan bucket itu sendiri tidak memblokir akses publik jika Anda memerlukan operasi publik.
- No such file or directory biasanya muncul saat path sumber yang Anda tentukan pada perintah sync tidak ada. Solusinya sederhana — periksa ulang path Anda dan pastikan memang ada. Perhatikan khusus pada salah ketik nama bucket atau direktori lokal.
- File size limit dapat terjadi saat Anda ingin menyinkronkan file berukuran besar. Secara default, S3 sync dapat menangani file hingga 5GB. Untuk file yang lebih besar, Anda akan melihat timeout atau transfer yang tidak lengkap.
- Untuk file yang lebih besar dari 5GB, sebaiknya gunakan flag
--only-show-errorsdikombinasikan dengan--size-only. Kombinasi ini membantu transfer file besar dengan meminimalkan output dan hanya membandingkan ukuran file:
aws s3 sync /Users/dradecic/large-files s3://testbucket-dradecic/large-files --only-show-errors --size-only
Optimasi kinerja sinkronisasi
Jika S3 sync berjalan lebih lambat dari perkiraan, ada beberapa penyesuaian yang dapat Anda lakukan untuk mempercepatnya.
- Gunakan transfer paralel. Secara default, S3 sync menggunakan jumlah operasi paralel yang terbatas. Anda dapat meningkatkannya dengan parameter
--max-concurrent-requests:
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --max-concurrent-requests 20
- Sesuaikan ukuran chunk. Untuk file besar, Anda dapat mengoptimalkan kecepatan transfer dengan menyesuaikan ukuran chunk. Ini memecah file besar menjadi chunk 16MB alih-alih default 8MB, yang bisa lebih cepat pada koneksi jaringan yang baik:
aws s3 sync /Users/dradecic/large-files s3://testbucket-dradecic/backup --cli-read-timeout 120 --multipart-threshold 64MB --multipart-chunksize 16MB
- Gunakan
--no-progressuntuk skrip. Jika Anda menjalankan S3 sync dalam skrip otomatis, gunakan flag--no-progressuntuk mengurangi output dan meningkatkan kinerja:
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --no-progress
- Gunakan endpoint lokal. Jika sumber daya AWS Anda berada di region yang sama, menentukan endpoint regional dapat mengurangi latensi:
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --endpoint-url https://s3.eu-central-1.amazonaws.com
Optimasi ini dapat meningkatkan kinerja sinkronisasi secara signifikan, terutama untuk transfer data besar atau saat berjalan di mesin dengan daya terbatas.
Jika Anda masih mengalami masalah setelah mencoba solusi ini, AWS CLI memiliki opsi debugging bawaan. Tambahkan saja --debug ke perintah Anda untuk melihat detail lengkap tentang apa yang terjadi selama proses sinkronisasi:
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --debug
Harapkan untuk melihat banyak pesan log terperinci, mirip dengan ini:

Gambar 22 - Menjalankan sinkronisasi dalam mode debug
Itu saja untuk pemecahan masalah AWS S3 sync. Tentu, ada error lain yang mungkin terjadi, tetapi 99% kasus, solusinya ada di bagian ini.
Ringkasan AWS S3 Sync
Singkatnya, AWS S3 sync adalah salah satu alat langka yang mudah digunakan sekaligus sangat kuat. Anda telah mempelajari semuanya mulai dari perintah dasar hingga opsi lanjutan, strategi backup, dan kiat pemecahan masalah.
Bagi pengembang, administrator sistem, atau siapa pun yang bekerja dengan AWS, perintah S3 sync adalah alat esensial — menghemat waktu, mengurangi penggunaan bandwidth, dan memastikan file Anda berada di tempat yang Anda butuhkan, saat Anda membutuhkannya.
Baik Anda mencadangkan data penting, melakukan deployment aset web, atau sekadar menjaga lingkungan yang berbeda tetap sinkron, AWS S3 sync membuat prosesnya sederhana dan andal.
Cara terbaik untuk terbiasa dengan S3 sync adalah mulai menggunakannya. Cobalah menyiapkan operasi sinkronisasi sederhana dengan file Anda sendiri, lalu secara bertahap jelajahi opsi lanjutan agar sesuai dengan kebutuhan spesifik Anda.
Ingat untuk selalu menggunakan --dryrun terlebih dahulu saat bekerja dengan data penting, terutama saat menggunakan flag --delete. Lebih baik meluangkan waktu sebentar untuk memverifikasi apa yang akan terjadi daripada tidak sengaja menghapus file penting.
Untuk mempelajari lebih lanjut tentang AWS, lihat kursus-kursus berikut dari DataCamp:
- Pengantar AWS
- Teknologi dan Layanan AWS Cloud
- Keamanan dan Manajemen Biaya AWS
- Pengantar AWS Boto di Python
Anda bahkan dapat menggunakan DataCamp untuk mempersiapkan ujian sertifikasi AWS - AWS Cloud Practitioner (CLF-C02).
FAQs
Apa itu AWS S3 sync dan bagaimana cara kerjanya?
AWS S3 sync adalah alat baris perintah yang disertakan dengan AWS CLI, dirancang untuk menyinkronkan file antara sistem lokal dan bucket Amazon S3. Alat ini bekerja dengan membandingkan file di lokasi sumber dan tujuan, mengidentifikasi perbedaan, lalu mentransfer hanya yang diperlukan agar sesuai, sehingga menghemat bandwidth dan waktu dibandingkan unggahan atau unduhan penuh.
Bisakah saya menyinkronkan file ke dan dari bucket S3?
Ya, AWS S3 sync bekerja dua arah. Anda dapat menyinkronkan file lokal ke bucket S3 menggunakan aws s3 sync /local/directory s3://my-bucket/path atau menyinkronkan file dari bucket S3 ke sistem lokal Anda menggunakan aws s3 sync s3://my-bucket/path /local/directory. Perintah ini selalu membuat tujuan sesuai dengan sumber.
Apakah AWS S3 sync secara otomatis menghapus file?
Secara default, S3 sync tidak menghapus file di tujuan yang tidak ada di sumber. Namun, Anda dapat menambahkan flag --delete ke perintah sync untuk membuat tujuan benar-benar mencerminkan sumber, termasuk penghapusan. Gunakan fitur ini dengan hati-hati dan pertimbangkan untuk mengujinya terlebih dahulu dengan flag --dryrun.
Bagaimana cara mengoptimalkan AWS S3 sync untuk file berukuran besar?
Untuk file besar, Anda dapat mengoptimalkan kinerja S3 sync menggunakan beberapa parameter, termasuk --max-concurrent-requests untuk meningkatkan transfer paralel, --multipart-chunksize untuk menyesuaikan ukuran chunk, dan --cli-read-timeout untuk mencegah timeout. Untuk file di atas 5GB, kombinasikan flag --only-show-errors dan --size-only untuk kinerja yang lebih baik.
Bisakah saya mengotomatiskan backup menggunakan AWS S3 sync?
Ya, AWS S3 sync sangat cocok untuk membuat backup otomatis. Anda dapat menyiapkan tugas terjadwal (cron job di Linux/macOS atau Task Scheduler di Windows) untuk menjalankan perintah sinkronisasi secara berkala dengan timestamp pada path tujuan. Untuk penyimpanan jangka panjang yang hemat biaya, gunakan parameter --storage-class untuk menentukan kelas penyimpanan seperti STANDARD_IA atau GLACIER.


Mengelola sinkronisasi file antara sistem lokal dan penyimpanan cloud tidak seharusnya membuat Anda pusing.
AWS S3 menyediakan alat baris perintah yang memudahkan proses menjaga file tetap sinkron antara lingkungan lokal Anda dan bucket Amazon Simple Storage Service (S3). Alat ini sangat berguna bagi pengembang, administrator sistem, dan siapa pun yang perlu mempertahankan versi file yang konsisten di banyak lokasi. Hanya dengan beberapa perintah, Anda bisa mentransfer file, membuat cadangan, dan menerapkan solusi pemulihan bencana secara efisien.
AWS Command Line Interface (CLI) membuat operasi ini dapat diakses oleh berbagai pengguna. Memang, ini tidak senyaman Google Drive atau OneDrive, tetapi ada beberapa trik di baliknya.
Dalam tutorial ini, saya akan membahas semua yang perlu Anda ketahui tentang AWS S3 sync, mulai dari penyiapan dasar hingga pola penggunaan tingkat lanjut.
>Sebenarnya apa itu S3? Pelajari dasar-dasarnya dengan panduan S3 kami.
Apa itu AWS S3 Sync?
AWS S3 sync adalah alat baris perintah yang kuat dan dibundel dengan toolkit AWS CLI. Alat ini dirancang untuk menyinkronkan file antara sistem file lokal Anda dan bucket S3 dalam waktu singkat.
Anggap saja S3 sync sebagai rsync untuk cloud. Perintah ini menganalisis lokasi sumber dan tujuan, mengidentifikasi perbedaan, lalu mentransfer hanya yang diperlukan agar keduanya sama. Pendekatan ini menghemat bandwidth, waktu, dan potensi biaya dibandingkan metode transfer file yang naif.
Di balik layar, S3 sync melakukan panggilan API untuk membandingkan metadata objek seperti ukuran file dan stempel waktu modifikasi. Saat menemukan perbedaan, alat ini menangani proses berat mengunggah atau mengunduh file sesuai kebutuhan.
Keunggulan S3 sync terletak pada kesederhanaannya. Perintah dasar terlihat seperti ini:
Memang, Anda harus menyiapkan CLI untuk menggunakan perintah
aws, tapi intinya jelas — alat ini sangat mudah digunakan.Singkatnya, S3 sync menutupi operasi kompleks yang terjadi di balik layar dan memberi Anda cara mudah untuk mempertahankan keadaan file yang konsisten di berbagai lingkungan. Baik Anda mencadangkan data penting, melakukan deployment aset web, atau mengelola kumpulan data besar — S3 sync menangani semua pekerjaan beratnya untuk Anda.