Lewati ke konten
CivoCloudManager

Jelajahi Civo Object Storage lewat S3 di macOS.

Endpoint per region, konfigurasi yang berfungsi untuk s3cmd, rclone dan AWS CLI, serta apa yang dilakukan klien native secara berbeda.

Civo Object Storage berbicara S3, jadi hampir semua klien S3 bisa terhubung begitu dua hal benar: endpoint region tempat store itu berada, dan kredensial yang dibuat di region yang sama. Dokumentasi Civo sendiri memandu s3cmd dan menyerahkan sisa tooling-nya kepada Anda. Halaman ini memberi konfigurasi mentah untuk s3cmd, rclone dan AWS CLI, lalu menunjukkan jalur yang diambil CivoCloudManager, yaitu membaca endpoint dan access key langsung dari Civo API sehingga tidak ada yang perlu dikonfigurasi manual.

Mengonfigurasi klien S3 untuk Civo

  1. 01

    Cari endpoint untuk region Anda.

    Civo menyusun endpoint object store sebagai https://objectstore.<region>.civo.com dengan kode region huruf kecil, jadi store di London dijangkau di https://objectstore.lon1.civo.com dan store di Frankfurt di https://objectstore.fra1.civo.com. Tiap store juga mencantumkan endpoint-nya sendiri di dashboard Civo dan mengembalikannya di field objectstore_endpoint pada REST API. Menurut ikhtisar fitur per region dari Civo, object store tersedia di LON1, FRA1, NYC1 dan MUM1, dan tidak di PHX1.

  2. 02

    Buat kredensial di region yang sama.

    Setiap object store Civo bersifat privat dan butuh access key ID serta secret key. Buat kredensialnya di dashboard Civo di bagian Object Stores sementara pemilih region menunjuk ke region store tersebut, atau lewat Civo CLI. Perintah civo objectstore credential export -a <access_key> mencetak pasangannya sebagai AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_DEFAULT_REGION dan AWS_HOST, siap ditempel ke shell.

  3. 03

    s3cmd: host_base dan host_bucket.

    Di ~/.s3cfg, di bawah [default], isi host_base = objectstore.fra1.civo.com, host_bucket = objectstore.fra1.civo.com, bucket_location = fra1, use_https = True, signature_v2 = False, ditambah access_key dan secret_key. Memberi host_bucket hostname yang sama dengan host_base membuat s3cmd tetap memakai path style addressing, dan itulah yang dijawab Civo. Setelah itu s3cmd ls menampilkan seluruh store Anda, s3cmd ls s3://STORENAME menampilkan isi satu store, s3cmd put file.tar s3://STORENAME/backups/ mengunggah, dan s3cmd get -r s3://STORENAME/backups/ menarik satu prefix utuh ke bawah. Tanpa file konfigurasi, dua nilai yang sama ditulis di baris perintah sebagai --host= dan --host-bucket=.

  4. 04

    rclone: remote bertipe s3, provider Other.

    Jalankan rclone config lalu pilih s3, atau tulis langsung bloknya ke ~/.config/rclone/rclone.conf: di bawah [civo] isi type = s3, provider = Other, env_auth = false, access_key_id dan secret_access_key dari kredensial, region = fra1, endpoint = https://objectstore.fra1.civo.com dan acl = private. Setelah itu rclone lsd civo: menampilkan daftar store, rclone ls civo:STORENAME menampilkan objek, rclone copy ./dir civo:STORENAME/dir -P menyinkronkan satu folder ke atas lengkap dengan progres, dan rclone ncdu civo:STORENAME memberi browser mode teks. Setelan yang sama juga jalan sebagai flag sekali pakai: --s3-provider Other --s3-endpoint https://objectstore.fra1.civo.com --s3-region fra1.

  5. 05

    AWS CLI: --endpoint-url di tiap panggilan.

    AWS CLI tidak butuh plugin khusus Civo, hanya endpoint di tiap perintah: aws s3 ls --endpoint-url https://objectstore.fra1.civo.com, lalu aws s3 ls s3://STORENAME --endpoint-url ... dan aws s3 cp file.tar s3://STORENAME/ --endpoint-url ... . Kredensial diambil dari AWS_ACCESS_KEY_ID dan AWS_SECRET_ACCESS_KEY atau dari sebuah profil bernama, dengan AWS_DEFAULT_REGION diisi kode region Civo supaya cakupan Signature V4 cocok. Satu catatan untuk versi terbaru: AWS CLI 2.23 ke atas menambahkan checksum CRC64NVME pada unggahan secara default, dan tidak semua endpoint yang kompatibel S3 menerimanya, jadi kalau sebuah put gagal dengan galat checksum, setel AWS_REQUEST_CHECKSUM_CALCULATION=when_required dan AWS_RESPONSE_CHECKSUM_VALIDATION=when_required.

Jebakan yang menghabiskan satu jam: key terikat pada satu region

Dokumentasi Civo menyebutnya terang-terangan dalam dua kalimat yang gampang terlewat saat dibaca cepat: object store bersifat spesifik per region, dan kredensial untuk mengelola serta mengakses object store terikat pada region tempat kredensial itu dibuat. Key yang dibuat saat dashboard sedang di FRA1 tidak akan lolos autentikasi ke endpoint LON1, meski akunnya sama dan tagihannya sama. Gejalanya berupa galat autentikasi atau signature yang terlihat seperti salah ketik secret, jadi reaksi alaminya adalah meregenerasi key, yang justru menghasilkan key lain di region yang salah juga. Periksa pemilih region lebih dulu, buat kredensialnya tepat di sebelah store, baru setelah itu curigai konfigurasi.

Apa yang tidak dicakup baris perintah

Untuk skrip, backup dan CI, s3cmd, rclone dan AWS CLI adalah jawaban yang tepat dan tidak ada di sini yang menggantikannya. Yang tidak mereka berikan adalah pandangan ke dalam sebuah store: pohon folder, ukuran yang terbaca sekilas, seleksi yang bisa Anda seret keluar. Klien S3 umum di Mac seperti Cyberduck atau Transmit menutup celah itu, tapi mereka tidak tahu apa-apa soal Civo, jadi Anda memasukkan endpoint, menempel dua key per store, dan menjaganya tetap sinkron secara manual tiap kali kredensial dirotasi.

Jalur aplikasi: tidak ada endpoint yang perlu diisi

CivoCloudManager melakukan autentikasi sekali dengan API key Civo Anda lalu membaca daftar object store dari Civo REST API v2, yang sudah membawa endpoint dan kredensial terkait untuk tiap store. Dari situ klien S3-nya dibangun, jadi tidak ada kolom endpoint, tidak ada key yang ditempel dan tidak ada file konfigurasi. Lapisan S3-nya Swift murni: AWS Signature V4 dihitung dengan HMAC-SHA256 dari CryptoKit, tanpa AWS SDK dan tanpa Electron. Ia melakukan ListObjects v2 dengan continuation token, navigasi breadcrumb di atas common prefix, seleksi banyak item, dan unduhan folder rekursif dengan baris progres berjalan. Jujur soal bentuknya: browser ini membaca dan mengunduh. Unggahan dan penghapusan tetap urusan s3cmd atau rclone. Aplikasinya butuh macOS 15 atau lebih baru.

Access key di balik Touch ID, bukan di dotfile

Bagian inilah yang membuat instalasi tetap berharga meski Anda mempertahankan CLI. Setup s3cmd yang berfungsi berarti secret key duduk di ~/.s3cfg dalam teks biasa, dan hal yang sama berlaku untuk rclone.conf dan ~/.aws/credentials. Proses apa pun yang berjalan sebagai user Anda bisa membaca ketiganya, begitu juga apa pun yang menyisir home directory Anda. CivoCloudManager menyimpan API key Civo di macOS Keychain, dan menampilkan secret access key sebuah object store di antarmuka menuntut Touch ID atau kata sandi sistem lebih dulu. Batasnya jelas dan perlu dikatakan: begitu Anda menyalin sebuah key ke terminal, ia kembali menjadi file teks biasa.

Pause dan Resume untuk store yang tidak Anda pakai

Store yang menganggur tetap ditagih sesuai ukuran yang dialokasikan. Pause menyalin tiap objek ke satu object store terpusat bernama civo-cloud-manager, memperbesar vault itu lebih dulu bila datanya tidak muat, membandingkan key dan ukuran hasil salinan dengan sumbernya, lalu menghapus store asli hanya kalau keduanya cocok. Pos itu hilang dari tagihan Civo. Resume membuat ulang store dengan nama dan kredensial yang sama, menyalin objeknya kembali, memverifikasi key dan ukuran sekali lagi, lalu membersihkan vault. Maksimal empat objek berpindah sekaligus. Batas jujurnya: verifikasi membandingkan nama dan ukuran, bukan hash isi; transfer menyangga objek utuh di memori; dan manifest jarak jauh ditulis setelah sumbernya dihapus, dengan manifest lokal sebagai cadangan.

Klien mana untuk pekerjaan mana

Keempatnya berbicara ke S3 API yang sama di endpoint yang sama. Bedanya ada di mana konfigurasinya tinggal, di mana secret-nya berakhir, dan apa yang bisa Anda lihat.

Tugas s3cmdrcloneAWS CLICivoCloudManager
Konfigurasi endpoint host_base dan host_bucket di ~/.s3cfgendpoint di dalam remote--endpoint-url di tiap panggilandibaca dari Civo API
Di mana secret key berakhir ~/.s3cfg, teks biasarclone.conf, teks biasa~/.aws/credentials, teks biasamacOS Keychain, Touch ID untuk menampilkan
Menjelajahi store secara visual tidakrclone ncdu, mode tekstidakya, file browser dengan breadcrumb
Mengunggah dan menghapus objek yayayatidak di browser
Unduhan folder rekursif s3cmd get -rrclone copyaws s3 cp --recursiveya, dengan progres
Pause store menganggur agar berhenti membayar tidaktidaktidakya, vault dengan verifikasi sebelum hapus
Berjalan di CI yayayatidak, ini aplikasi Mac

Civo Object Storage lewat S3, dijawab

Apa URL endpoint Civo object storage?
Endpoint object store Civo mengikuti pola https://objectstore.<region>.civo.com dengan kode region huruf kecil, misalnya https://objectstore.lon1.civo.com di London atau https://objectstore.fra1.civo.com di Frankfurt. Endpoint-nya bergantung pada region tempat store itu dibuat. Tiap store juga menampilkan endpoint-nya sendiri di dashboard Civo dan mengembalikannya di field objectstore_endpoint pada Civo REST API.
Bisakah saya memakai s3cmd atau rclone dengan Civo Object Storage?
Bisa, keduanya berfungsi, begitu juga AWS CLI dan klien lain yang kompatibel S3. Untuk s3cmd, isi host_base dan host_bucket di ~/.s3cfg dengan hostname region seperti objectstore.fra1.civo.com lalu isi access_key dan secret_key. Untuk rclone, buat remote dengan type = s3, provider = Other, endpoint = https://objectstore.fra1.civo.com dan pasangan key yang sama. Untuk AWS CLI, tambahkan --endpoint-url https://objectstore.fra1.civo.com di tiap perintah.
Kenapa access key Civo object storage saya tidak berfungsi?
Penyebab yang biasa adalah region. Civo menyatakan object store bersifat spesifik per region dan kredensial terikat pada region tempat kredensial itu dibuat, jadi key yang dibuat di FRA1 tidak akan lolos autentikasi ke endpoint LON1 meski berasal dari akun yang sama. Buat kredensialnya saat dashboard sedang menunjuk region store tersebut. Penyebab umum kedua adalah klien yang tidak pernah menerima endpoint, atau host_bucket s3cmd yang dibiarkan di nilai default, sehingga permintaannya pergi ke Amazon alih-alih ke Civo.
Adakah GUI untuk Civo object storage di Mac?
CivoCloudManager adalah aplikasi macOS native, macOS 15 atau lebih baru, tersedia di Mac App Store, dan ia mengenal Civo: endpoint dan access key tiap store dibaca dari Civo API sehingga tidak ada yang perlu dikonfigurasi. Ia menjelajah dengan breadcrumb dan mengunduh satu file, seleksi banyak file, atau seluruh folder secara rekursif, sementara unggahan dan penghapusan tetap di CLI. Klien S3 umum seperti Cyberduck atau Transmit juga terhubung ke Civo begitu Anda mengetik endpoint dan menempel dua key per store.
Apa yang dilakukan Pause terhadap data di object store Civo saya?
Pause menyalin tiap objek ke object store terpusat bernama civo-cloud-manager di dalam akun Civo Anda sendiri, membandingkan key dan ukuran hasil salinan dengan sumbernya, baru kemudian menghapus store asli supaya berhenti menagih. Resume membuat ulang store dengan nama dan kredensial yang sama, menyalin objeknya kembali dan memverifikasi key serta ukuran sekali lagi sebelum vault dibersihkan. Data tidak pernah keluar dari akun Civo Anda, dan verifikasinya memakai nama dan ukuran, bukan hash isi.

Lewati konfigurasi endpoint.

CivoCloudManager membaca endpoint dan access key dari akun Civo Anda sendiri, jadi store-nya langsung terbuka alih-alih menuntut file konfigurasi. Tier menu bar gratis, dashboard lengkap sekali bayar di Mac App Store.

Unduh di Mac App Store

Membutuhkan macOS 15 (Sequoia) atau yang lebih baru.

Kembali ke beranda