Manajemen Neo Object Storage dengan Rclone dari Terminal
Tutorial DevOps Cloud #rclone #object-storage #s3 #cloud-storage

Manajemen Neo Object Storage dengan Rclone dari Terminal

A
Abd. Asis
5 min read
Bagikan:

Kamu menyimpan backup database di object storage, lalu tim minta file-file itu dipindah ke bucket baru setiap malam secara otomatis. Opsinya: tulis script curl yang panjang dan rawan salah, atau gunakan rclone — satu tool yang menghandle semua operasi itu dengan syntax yang bersih dan konsisten.

Rclone adalah CLI open source untuk mengelola cloud storage. Ia mendukung lebih dari 70 provider berbeda — termasuk provider S3-compatible seperti Neo Object Storage dari Biznet Gio. Satu konfigurasi, puluhan command yang bisa dikombinasikan untuk otomasi transfer, sync, dan monitoring storage.

Artikel ini membahas cara mengkonfigurasi rclone untuk Neo Object Storage dan menguasai command-command yang paling sering dipakai dalam pekerjaan sehari-hari.

Apa Itu Rclone dan Kenapa Ia Berguna

Rclone bekerja dengan konsep remote — setiap koneksi ke cloud provider disimpan sebagai named profile di file konfigurasi lokal. Setelah remote dikonfigurasi, kamu bisa menjalankan operasi seperti rclone sync, rclone copy, atau rclone ls persis seperti saat bekerja dengan file lokal.

Yang membuat rclone unggul dibanding opsi lain adalah konsistensinya. Command yang sama bekerja untuk AWS S3, Google Cloud Storage, Backblaze B2, dan semua provider S3-compatible lainnya. Kamu tidak perlu mempelajari CLI baru setiap kali ganti provider.

Instalasi Rclone

Rclone tersedia untuk Linux, macOS, dan Windows. Cara tercepat menginstalnya di Linux dan macOS adalah lewat script resmi:

curl https://rclone.org/install.sh | sudo bash

Di Windows, unduh installer atau file binary dari halaman download resmi rclone, ekstrak ke direktori pilihan kamu, lalu akses via Command Prompt atau PowerShell.

Verifikasi instalasi:

rclone version

Output akan menampilkan versi rclone yang terinstal beserta informasi OS dan Go runtime.

Konfigurasi Koneksi ke Neo Object Storage

Neo Object Storage menggunakan protokol S3-compatible, jadi kita pilih provider S3 saat konfigurasi. Sebelum mulai, siapkan credential dari panel Neo:

  • Access Key dan Secret Key dari portal Neo Object Storage
  • REST Endpoint: nos.wjv-1.neo.id

Jalankan wizard konfigurasi:

rclone config

Ikuti langkah-langkah berikut di prompt interaktif:

Membuat Remote Baru

Rclone akan menampilkan menu pilihan. Ketik n untuk membuat remote baru, kemudian beri nama yang mudah diingat — kita gunakan neo-storage sebagai contoh.

No remotes found, make a new one?
n) New remote
...
n/s/q> n
name> neo-storage

Memilih Provider S3

Dari daftar storage type, pilih nomor yang sesuai dengan Amazon S3 Compliant Storage Providers and Compatible. Nomor ini bisa berubah antar versi rclone, jadi perhatikan deskripsinya, bukan hanya nomornya.

Storage> [nomor untuk Amazon S3]

Selanjutnya pilih provider any other S3 compatible dari sub-menu provider.

Memasukkan Credential

Saat ditanya apakah ingin memasukkan credential secara manual, pilih false (atau n) untuk opsi env auth, lalu masukkan Access Key dan Secret Key:

env_auth> false
access_key_id> YOUR_ACCESS_KEY
secret_access_key> YOUR_SECRET_KEY

Konfigurasi Endpoint dan Region

Endpoint adalah bagian paling kritis untuk provider S3-compatible yang bukan AWS:

endpoint> nos.wjv-1.neo.id
region>

Biarkan region kosong — Neo Object Storage tidak memerlukan region secara eksplisit. Rclone akan menggunakan default.

Untuk ACL, pilih private agar bucket dan object tidak dapat diakses publik secara default:

acl> private

Setelah melewati semua prompt, ketik y untuk menyimpan konfigurasi. Verifikasi remote yang baru dibuat:

rclone listremotes

Output akan menampilkan neo-storage: sebagai salah satu remote yang tersedia.

File konfigurasi rclone disimpan di ~/.config/rclone/rclone.conf di Linux/macOS. Kamu bisa mengeditnya langsung jika perlu mengubah credential tanpa harus menjalankan wizard lagi.

Operasi Dasar: Bucket dan File

Setelah koneksi terkonfigurasi, semua operasi menggunakan format rclone <command> neo-storage:<bucket-name>.

Membuat dan Melihat Daftar Bucket

Buat bucket baru menggunakan mkdir:

rclone mkdir neo-storage:project-backups

Tampilkan semua bucket yang ada di account:

rclone lsd neo-storage:

Flag lsd (list directories) menampilkan daftar bucket beserta tanggal modifikasi. Berbeda dengan ls yang menampilkan isi file secara rekursif.

Menyalin File ke Bucket

copy memindahkan file dari sumber ke tujuan tanpa menghapus file yang sudah ada di tujuan:

rclone copy /home/deploy/exports/laporan-2026.csv neo-storage:project-backups

Untuk menyalin seluruh direktori:

rclone copy /home/deploy/exports/ neo-storage:project-backups/exports

Melihat Isi Bucket

Tampilkan semua file dalam sebuah bucket:

rclone ls neo-storage:project-backups

Output menampilkan ukuran file dalam bytes dan path relatif. Untuk tampilan yang lebih manusiawi dengan unit seperti KB/MB, gunakan lsl:

rclone lsl neo-storage:project-backups

Sync: Sinkronisasi Direktori Lokal ke Bucket

sync adalah command yang paling sering dipakai untuk backup otomatis. Ia membuat tujuan identik dengan sumber — file yang tidak ada di sumber akan dihapus dari tujuan.

rclone sync /var/www/uploads neo-storage:project-backups/uploads

rclone sync menghapus file di tujuan yang tidak ada di sumber. Pastikan arahnya benar sebelum menjalankan di production. Gunakan flag --dry-run terlebih dahulu untuk simulasi tanpa perubahan nyata.

Simulasi tanpa eksekusi nyata:

rclone sync /var/www/uploads neo-storage:project-backups/uploads --dry-run

Output akan menampilkan file apa saja yang akan disalin atau dihapus, tanpa benar-benar melakukannya.

Menambahkan Progress dan Verbose Output

Untuk operasi besar, tambahkan flag --progress agar bisa memantau transfer secara real-time:

rclone sync /var/www/uploads neo-storage:project-backups/uploads --progress

Mempercepat Transfer dengan Paralelisme

Secara default, rclone mentransfer 4 file sekaligus. Untuk koneksi yang bagus atau file berukuran kecil yang banyak, naikkan nilai ini:

rclone copy /home/deploy/assets neo-storage:project-backups/assets --transfers 16 --checkers 8
  • --transfers — jumlah file yang ditransfer paralel
  • --checkers — jumlah thread untuk memeriksa apakah file perlu ditransfer

Untuk direktori dengan ribuan file kecil, tambahkan --fast-list agar rclone mengurangi jumlah API call dengan membatch operasi listing:

rclone sync /home/deploy/assets neo-storage:project-backups/assets --fast-list

--fast-list menggunakan lebih banyak memori tapi mengurangi jumlah request ke API. Cocok digunakan saat berhadapan dengan bucket yang berisi puluhan ribu objek.

Otomasi Backup dengan Cron

Kombinasi rclone dan cron menjadi setup backup yang solid. Buat script sederhana:

#!/bin/bash
# /home/deploy/scripts/backup-uploads.sh

TIMESTAMP=$(date +%Y-%m-%d)
LOG_FILE="/var/log/rclone-backup-${TIMESTAMP}.log"

rclone sync /var/www/uploads neo-storage:project-backups/uploads \
  --fast-list \
  --transfers 8 \
  --log-file="${LOG_FILE}" \
  --log-level INFO

Jadwalkan via cron untuk jalan setiap malam pukul 02.00:

0 2 * * * /home/deploy/scripts/backup-uploads.sh

Flag --log-file menyimpan log ke file untuk audit, dan --log-level INFO mencatat semua operasi transfer yang terjadi.

Kesimpulan

Rclone mengubah manajemen object storage dari pekerjaan yang membutuhkan script khusus menjadi serangkaian command yang bisa dikombinasikan bebas. Setelah satu remote dikonfigurasi, kamu punya akses penuh ke semua operasi — dari listing sederhana hingga sinkronisasi terjadwal dengan paralelisme yang bisa disetel. Untuk eksplorasi lebih lanjut, dokumentasi rclone menyediakan referensi lengkap untuk setiap flag dan command di rclone.org/docs.

Referensi

  1. 1Rclone — Amazon S3 and S3-compatible Storage Providers
  2. 2Rclone Documentation — Official Reference
  3. 3Rclone Downloads — Binary dan Installer untuk Semua Platform

Tentang Penulis

Abd. Asis

Abd. Asis

Software Developer dan Laravel Programmer dari Madura, Indonesia. Passionate tentang PHP, Laravel, dan teknologi web modern.

Komentar

Artikel Terkait

Artikel lain yang mungkin menarik untuk kamu