macOS'ta Civo Object Storage'ı S3 üzerinden gezin.
Bölgesel uç nokta, s3cmd, rclone ve AWS CLI için çalışan yapılandırma, bir de yerel bir istemcinin farkı.
Civo Object Storage S3 konuşur, yani iki şey doğru olduğunda neredeyse her S3 istemcisi onunla anlaşır: store'un bulunduğu bölgenin uç noktası ve aynı bölgede oluşturulmuş bir kimlik bilgisi. Civo'nun kendi belgeleri s3cmd'yi adım adım anlatır, gerisini size bırakır. Bu sayfa s3cmd, rclone ve AWS CLI için ham yapılandırmayı veriyor, sonra da CivoCloudManager'ın yolunu gösteriyor: uç noktayı ve erişim anahtarlarını doğrudan Civo API'sinden okumak, yani elle ayarlanacak hiçbir şey bırakmamak.
Civo için bir S3 istemcisi yapılandırmak
-
01
Bölgenizin uç noktasını bulun.
Civo object store uç noktalarını
https://objectstore.<region>.civo.combiçiminde kurar, bölge kodu küçük harfle yazılır; yani Londra'daki bir store'ahttps://objectstore.lon1.civo.com, Frankfurt'takinehttps://objectstore.fra1.civo.comadresinden ulaşılır. Her store kendi uç noktasını Civo panelinde de gösterir ve REST API'ninobjectstore_endpointalanında döndürür. Civo'nun bölge özellikleri tablosuna göre object store LON1, FRA1, NYC1 ve MUM1'de var, PHX1'de yok. -
02
Kimlik bilgisini aynı bölgede oluşturun.
Her Civo object store özeldir ve bir access key ID ile secret key ister. Kimlik bilgisini, bölge seçici store'un bölgesindeyken Civo panelinde Object Stores altında ya da Civo CLI ile oluşturun. civo objectstore credential export
-a<access_key>komutu çiftiAWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY,AWS_DEFAULT_REGIONveAWS_HOSTolarak, kabuğa yapıştırılmaya hazır yazdırır. -
03
s3cmd: host_base ve host_bucket.
~/.s3cfgdosyasında [default] altınahost_base=objectstore.fra1.civo.com,host_bucket=objectstore.fra1.civo.com,bucket_location= fra1,use_https= True,signature_v2= False ve bir deaccess_keyilesecret_keyyazın.host_bucketdeğerinehost_baseile aynı ana makine adını vermek s3cmd'yi yol tabanlı adreslemede tutar, Civo'nun yanıt verdiği biçim de budur. Sonrası: s3cmd ls store'larınızı listeler, s3cmd ls s3://STORENAME tek bir store'u listeler, s3cmd put file.tar s3://STORENAME/backups/ yükler, s3cmd get-rs3://STORENAME/backups/ bütün bir ön eki indirir. Yapılandırma dosyası olmadan aynı iki değer komut satırında--host=ve--host-bucket=olarak verilir. -
04
rclone: s3 türünde, provider Other olan bir remote.
rclone config çalıştırıp s3'ü seçin veya bloğu doğrudan
~/.config/rclone/rclone.confiçine yazın: [civo] altında type = s3, provider = Other,env_auth= false, kimlik bilgisinden gelenaccess_key_idvesecret_access_key, region = fra1, endpoint =https://objectstore.fra1.civo.comve acl = private. Sonrasında rclone lsd civo: store'ları listeler, rclone ls civo:STORENAME nesneleri listeler, rclone copy ./dir civo:STORENAME/dir -P bir klasörü ilerleme göstergesiyle yukarı eşitler, rclone ncdu civo:STORENAME ise metin kipinde bir tarayıcı açar. Aynı ayarlar tek seferlik bayrak olarak da çalışır:--s3-providerOther--s3-endpointhttps://objectstore.fra1.civo.com--s3-regionfra1. -
05
AWS CLI: her çağrıda --endpoint-url.
AWS CLI için Civo'ya özel bir eklenti gerekmez, yalnızca her komutta uç nokta: aws s3 ls
--endpoint-urlhttps://objectstore.fra1.civo.com, ardından aws s3 ls s3://STORENAME--endpoint-url... ve aws s3 cp file.tar s3://STORENAME/--endpoint-url... . Kimlik bilgileriAWS_ACCESS_KEY_IDveAWS_SECRET_ACCESS_KEYdeğişkenlerinden ya da adlandırılmış bir profilden gelir;AWS_DEFAULT_REGIONdeğerini Civo bölge koduna ayarlayın ki Signature V4 kapsamı tutsun. Yeni sürümler için bir dipnot: AWS CLI 2.23 ve sonrası yüklemelere varsayılan olarak CRC64NVME sağlama toplamı ekliyor ve her S3 uyumlu uç nokta bunu kabul etmiyor. Bir put sağlama toplamı hatasıyla düşerse AWS_REQUEST_CHECKSUM_CALCULATION=when_required ve AWS_RESPONSE_CHECKSUM_VALIDATION=when_required verin.
Bir saate mal olan tuzak: anahtarlar tek bir bölgeye bağlı
Civo bunu belgelerinde iki cümleyle açıkça yazıyor, ama iki cümle göz kaçırmaya çok müsait: object store'lar bölgeye özeldir ve object store'ları yönetmek ve onlara erişmek için kullanılan kimlik bilgileri, oluşturuldukları bölgeye bağlıdır. Panel FRA1'deyken üretilmiş bir anahtar, aynı hesap ve aynı fatura olmasına rağmen LON1 uç noktasında doğrulanmaz. Belirti, secret key'de yazım hatası varmış gibi görünen bir kimlik doğrulama veya imza hatasıdır; doğal tepki de anahtarı yeniden üretmek olur, bu da yine yanlış bölgede bir anahtar daha demektir. Önce bölge seçiciye bakın, kimlik bilgisini store'un yanında oluşturun, yapılandırmadan ancak ondan sonra şüphelenin.
Komut satırının kapsamadığı şey
Betikler, yedekler ve CI için s3cmd, rclone ve AWS CLI doğru cevap ve buradaki hiçbir şey onların yerini almıyor. Vermedikleri şey store'a bakabilmek: klasör ağacı, bir bakışta boyutlar, sürükleyip çıkarabileceğiniz bir seçim. Cyberduck veya Transmit gibi genel Mac S3 istemcileri bu boşluğu dolduruyor, ama Civo'dan haberleri yok; uç noktayı siz giriyorsunuz, her store için iki anahtarı siz yapıştırıyorsunuz ve her kimlik bilgisi değişiminde bunları elle güncel tutuyorsunuz.
Uygulamanın yolu: girilecek uç nokta yok
CivoCloudManager bir kez Civo API anahtarınızla kimlik doğrular ve object store listesini Civo REST API v2'den okur; o liste zaten her store'un uç noktasını ve bağlı kimlik bilgisini taşır. S3 istemcisini bundan kurar, yani ortada uç nokta alanı, anahtar yapıştırma ya da yapılandırma dosyası yok. S3 katmanı düz Swift: AWS Signature V4, CryptoKit HMAC-SHA256 ile hesaplanıyor, AWS SDK yok, Electron yok. Devam belirteçleriyle ListObjects v2, ortak ön ekler üzerinde breadcrumb gezinme, çoklu seçim ve akan bir ilerleme satırıyla özyinelemeli klasör indirme yapar. İşin şekli konusunda dürüst olmak gerekirse: tarayıcı okur ve indirir. Yükleme ve silme hâlâ s3cmd ya da rclone tarafında. Uygulama macOS 15 veya üstünü ister.
Erişim anahtarları dotfile yerine Touch ID'nin arkasında
Komut satırını bırakmayacak olsanız bile kurulumu hak eden kısım burası. Çalışan bir s3cmd kurulumu demek, secret key'in ~/.s3cfg içinde düz metin durması demek; aynısı rclone.conf ve ~/.aws/credentials için de geçerli. Sizin kullanıcınızla çalışan her süreç üçünü de okuyabilir, ev dizininizi tarayan her şey de öyle. CivoCloudManager Civo API anahtarını macOS Keychain'de tutar ve arayüzde bir object store secret access key değerini göstermek önce Touch ID ya da sistem parolası ister. Sınırı ortada ve söylemekte fayda var: anahtarı bir terminale kopyaladığınız anda o yine düz metin bir dosyadır.
Kullanmadığınız store'lar için Pause ve Resume
Boşta duran bir store yine de ayrılan boyutu üzerinden fatura üretir. Pause her nesneyi civo-cloud-manager adlı merkezi bir object store'a kopyalar, veri sığmıyorsa önce o kasayı büyütür, kopyalanan anahtarları ve boyutları kaynakla karşılaştırır ve ancak eşleştiklerinde orijinal store'u siler. Kalem Civo faturasından düşer. Resume store'u aynı ad ve aynı kimlik bilgisiyle yeniden oluşturur, nesneleri geri kopyalar, anahtarları ve boyutları tekrar doğrular, sonra kasayı temizler. Aynı anda en fazla dört nesne taşınır. Dürüst sınırlar: doğrulama içeriği özetlemek yerine adları ve boyutları karşılaştırır, aktarımlar nesneleri bütün olarak bellekte tamponlar ve uzak manifest kaynak silindikten sonra yazılır, yerel manifest de yedek olarak durur.
Hangi iş için hangi istemci
Dördü de aynı uç noktada aynı S3 API'siyle konuşuyor. Fark, yapılandırmanın nerede durduğu, secret key'in nerede bittiği ve neyi görebildiğiniz.
| İş | s3cmd | rclone | AWS CLI | CivoCloudManager |
|---|---|---|---|---|
| Uç nokta yapılandırması | ~/.s3cfg içinde host_base ve host_bucket | remote içinde endpoint | her çağrıda --endpoint-url | Civo API'sinden okunur |
| Secret key nerede bitiyor | ~/.s3cfg, düz metin | rclone.conf, düz metin | ~/.aws/credentials, düz metin | macOS Keychain, göstermek için Touch ID |
| Store'u görsel olarak gezme | hayır | rclone ncdu, metin kipi | hayır | evet, breadcrumb'lı dosya tarayıcısı |
| Nesne yükleme ve silme | evet | evet | evet | tarayıcıda yok |
| Özyinelemeli klasör indirme | s3cmd get -r | rclone copy | aws s3 cp --recursive | evet, ilerleme göstergeli |
| Boştaki store'u duraklatıp ödemeyi kesme | hayır | hayır | hayır | evet, silmeden önce doğrulayan kasa |
| CI içinde çalışır | evet | evet | evet | hayır, bir Mac uygulaması |
S3 üzerinden Civo Object Storage, cevaplarla
- Civo object storage uç nokta adresi nedir?
- Civo object store uç noktaları
https://objectstore.<region>.civo.comkalıbını izler, bölge kodu küçük harfle yazılır; örneğin Londra'dahttps://objectstore.lon1.civo.com, Frankfurt'tahttps://objectstore.fra1.civo.com. Uç nokta, store'un oluşturulduğu bölgeye göre değişir. Her store kendi uç noktasını Civo panelinde de gösterir ve Civo REST API'sininobjectstore_endpointalanında döndürür. - Civo Object Storage ile s3cmd veya rclone kullanabilir miyim?
- Evet, ikisi de çalışır; AWS CLI ve başka her S3 uyumlu istemci de öyle. s3cmd için
~/.s3cfgiçindehost_basevehost_bucketdeğerleriniobjectstore.fra1.civo.comgibi bölgesel ana makine adına ayarlayın,access_keyvesecret_keyalanlarını doldurun. rclone için type = s3, provider = Other, endpoint =https://objectstore.fra1.civo.comve aynı anahtar çiftiyle bir remote oluşturun. AWS CLI için her komuta--endpoint-urlhttps://objectstore.fra1.civo.comekleyin. - Civo object storage erişim anahtarım neden çalışmıyor?
- Her zamanki sebep bölge. Civo, object store'ların bölgeye özel olduğunu ve kimlik bilgilerinin oluşturuldukları bölgeye bağlı olduğunu söylüyor; yani FRA1'de oluşturulan bir anahtar, aynı hesaba ait olsa bile LON1 uç noktasında doğrulanmaz. Kimlik bilgisini panel store'un bölgesindeyken oluşturun. İkinci sık sebep, uç noktayı hiç almamış bir istemci ya da varsayılanında bırakılmış bir s3cmd
host_bucketdeğeri; o zaman istek Civo'ya değil Amazon'a gider. - Mac'te Civo object storage için bir arayüz var mı?
- CivoCloudManager yerel bir macOS uygulaması, macOS 15 ve üstü, Mac App Store'da ve Civo'yu biliyor: her store'un uç noktasını ve erişim anahtarlarını Civo API'sinden okuduğu için ayarlanacak bir şey yok. Breadcrumb'larla gezer; tek dosyayı, çoklu seçimi veya bütün bir klasörü özyinelemeli indirir, yükleme ve silme ise komut satırında kalır. Cyberduck ya da Transmit gibi genel S3 istemcileri de uç noktayı yazıp her store için iki anahtarı yapıştırdığınızda Civo'ya bağlanır.
- Pause, Civo object store'umdaki verilere ne yapıyor?
- Pause her nesneyi kendi Civo hesabınızın içindeki civo-cloud-manager adlı merkezi bir object store'a kopyalar, kopyalanan anahtarları ve boyutları kaynakla karşılaştırır ve ancak ondan sonra orijinal store'u siler, böylece maliyet durur. Resume store'u aynı ad ve aynı kimlik bilgisiyle yeniden oluşturur, nesneleri geri kopyalar ve kasayı temizlemeden önce anahtarları ve boyutları yeniden doğrular. Veri hiçbir zaman Civo hesabınızdan çıkmaz ve doğrulama içerik özeti değil, ad ve boyut karşılaştırmasıdır.
Rehberler
Adım adım, ve dürüst karşılaştırmalar.
- 01 Civo API anahtarını bağlayın Anahtarı Civo panelinde üretin, bir kez yapıştırın, gerisini macOS Keychain tutsun.
- 02 IP'niz için firewall açın Elle yordam, geride bıraktığı dinamik IP tuzağı ve kuralı süresi dolunca kapatan ücretsiz menü çubuğu yolu.
- 03 Lens, OpenLens ve k9s ile karşılaştırma Üç cluster bağımsız araç, bir tane Civo'ya özel. Fark, hangisini açık tutacağınıza karar veriyor.
- 04 Mac'te Civo DNS Alan adını Civo'nun ad sunucularına yönlendirin, sonra zone'u tarayıcı sekmesi yerine yerel bir uygulamada tutun.
- 05 Changelog Yayımlanan her sürüm, en yenisi üstte; mağaza notunun taşıyamayacağı ayrıntıyla.
Derinlemesine
Her Civo ürünü için odaklı okumalar.
CivoCloudManager'ın dokunduğu her Civo yüzeyinin kendi sayfası var: ayrıntılar, ödünleşimler ve mimari kararlar. Bugün yaptığınız işe en yakın olanı seçin.
- 01 Mac için Civo CLI alternatifi Arayüz komut satırını nerede geçer, nerede geçmez, ikisi nasıl bir arada çalışır.
- 02 Mac için Civo Kubernetes GUI Canlı cluster paneli, gerçek zamanlı pod logları, kubectl gerekmez.
- 03 Mac için Civo Object Storage tarayıcısı Yerel S3 uyumlu tarayıcı. Boştaki bucket'ları merkezi kasaya alın.
- 04 Mac menü çubuğundan Civo firewall Firewall başına tek tıkla aç/kapat, otomatik IP tespiti, otomatik kapatma zamanlayıcısı.
- 05 Mac için Civo maliyet paneli Civo charges API'sinden gerçek ücretler. Dönem seçici ve ay sonu projeksiyonu.
Uç nokta yapılandırmasını atlayın.
CivoCloudManager uç noktayı ve erişim anahtarlarını kendi Civo hesabınızdan okur, yani yapılandırma dosyası beklemek yerine store doğrudan açılır. Menü çubuğu katmanı ücretsiz, tam panel Mac App Store'da tek seferlik satın alım.