S3 uyumluluğu
Object Storage hangi altyapıda çalışır, hangi S3 işlemlerini destekler ve neleri bilinçli olarak kapalı tutarız. Aracınızı ya da kütüphanenizi bağlamadan önce bu listeye bakın.
Belgeler ve içindekiler
Altyapı
Object Storage açık kaynak Ceph tabanlıdır ve S3 uyumludur. Size yalnız S3 arayüzü (S3 API) sunulur; Swift arayüzü ve küme yönetim arayüzleri dışarıya açık değildir. Bucket ve erişim anahtarlarını panelden ya da panel API'sinden yönetirsiniz.
- Uç nokta
https://s3.tr.sunucu.com.tr, bölgetr-ist-1, imza SigV4 (AWS Signature Version 4). - Her nesne İstanbul'daki ayrı depolama düğümlerinde 3 kopya tutulur; diskler şifrelidir, yalnız HTTPS kabul edilir.
- Bucket, erişim anahtarı, IP listesi ve kullanım bilgisi için panel API'si vardır; S3 API yalnız veri işlemleri içindir.
Desteklenen işlemler
Erişim anahtarınızla S3 API üzerinden yapabildikleriniz:
| Konu | Destek | Ayrıntı |
|---|---|---|
| Nesne işlemleri | Yükleme, indirme, nesne bilgisi, kopyalama, silme ve toplu silme | PutObject, GetObject (Range ile aralıklı indirme dahil), HeadObject, CopyObject, DeleteObject, DeleteObjects. |
| Listeleme | ListObjects (V1) ve ListObjectsV2 | Önek (prefix) ve ayraçla (delimiter) klasör görünümü, sayfalama. Sürümler ListObjectVersions ile listelenir. |
| Parçalı yükleme (multipart) | Başlatma, parça yükleme, tamamlama, iptal ve listeleme | Tek istekte en çok 5 GiB; daha büyük dosyalar parçalı yüklenir (en çok 10.000 parça). Yarım kalan yüklemeler 7 gün sonra temizlenir. |
| Ön imzalı adres (presigned URL) | İndirme ve yükleme için süreli bağlantı, en çok 7 gün | SigV4 ile imzalanır; anahtarın IP kısıtı bu bağlantılara da uygulanır. |
| Sürüm geçmişi (versioning) | Bucket başına panelden açılır | Eski sürümleri okuma, geri yükleme ve silme anahtarla yapılır. Açıldıktan sonra kapatılamaz, askıya alınabilir. |
| Object lock | Yalnız GOVERNANCE kipi, bucket varsayılan süresiyle (1-3.650 gün) | Bucket oluşturulurken panelden açılır. Kilit durumu (GetObjectRetention, GetObjectLegalHold) okunabilir. |
| Bucket başına anahtar | Yalnız tek bucket'ı gören erişim anahtarı ya da hesap geneli anahtar | Bucket başına en çok 2, hesap geneli en çok 4 anahtar. |
| IP kısıtı | Anahtar başına en çok 20 IPv4 ya da IPv6 adresi veya aralığı | Listede olmayan adresten gelen her istek reddedilir. |
| Bucket ayarları | Yaşam döngüsü (lifecycle), CORS, bucket ve nesne etiketleri | Anahtarla S3 API'den okunur ve yazılır. |
Bilinçli kısıtlar
Aşağıdakiler eksik değil, tercihtir: verinin yanlışlıkla herkese açılmasını, silinemeyen veri birikmesini ve anahtar sızdığında yetkinin genişlemesini önler.
| Konu | Durum | Ayrıntı |
|---|---|---|
| Herkese açık erişim | Kapalı: anonim (imzasız) istek ve herkese açık ACL yok | ACL yazma (PutBucketAcl, PutObjectAcl), herkese açık erişim engeli ve sahiplik ayarları reddedilir; statik web sitesi yayını yoktur. Dosya paylaşmak için ön imzalı adres kullanın. |
| COMPLIANCE kilit | Reddedilir | Yüklemede başlıkla ya da ön imzalı adresin sorgusunda COMPLIANCE kipi istenirse istek 403 ile reddedilir. Nesne başına saklama süresi değiştirme (PutObjectRetention) ve yasal tutma (legal hold) yoktur; kilit yalnız bucket varsayılanıyla, GOVERNANCE kipinde çalışır. |
| Bucket politikası | Anahtarlar bucket politikası yazamaz ve silemez | Erişim kuralları (bucket'a özel anahtar, IP kısıtı, yalnız HTTPS) panelde tanımlanır ve anahtar politikasına biz yazarız. |
| Bucket açma ve silme | Anahtarla yapılmaz | Bucket açma, silme, sürüm geçmişi ve object lock ayarı panelden ya da panel API'sinden yapılır. |
| Adresleme | Path-style ve virtual-host | Bucket adı yolda (s3.tr.sunucu.com.tr/bucket) ya da alt alan adında (bucket.s3.tr.sunucu.com.tr) olabilir. |
| Diğer bucket özellikleri | Kapalı | Olay bildirimi, erişim günlüğü, başka bölgeye çoğaltma, şifreleme yapılandırması ve requester pays ayarları anahtarla değiştirilemez. |
| Başka arayüzler | Yalnız S3 API | Swift arayüzü ve küme yönetim arayüzleri dışarıya açık değildir. Yalnız HTTPS kabul edilir. |
Araç ayarları
- Uç noktayı (
endpoint_url,endpoint)https://s3.tr.sunucu.com.tr, bölgeyitr-ist-1yapın. - Adresleme: virtual-host (
<bucket-adi>.s3.tr.sunucu.com.tr, çoğu aracın varsayılanı) ve path-style ikisi de çalışır. Path-style için SDK'lardaforcePathStyle: trueya daaddressing_style = path, rclone'daforce_path_style = true. - Yüklemede ACL göndermeyin ya da
privatebırakın;public-readgibi herkese açık ACL kabul edilmez. - Object lock kullanan yedekleme yazılımında kilit kipini yönetim (GOVERNANCE) seçin.
Hazır ayar örnekleri araçlar ve SDK'lar belgesinde, yedekleme senaryoları yedekleme rehberinde.
Sık karşılaşılan hatalar
AccessDenied(403): önce anahtarın IP listesini, sonra anahtarın doğru bucket'a ait olduğunu kontrol edin. Herkese açık ACL, bucket politikası ya da COMPLIANCE kilit isteyen işlemler de bu hatayı alır.- Ad çözümleme, bağlantı ya da sertifika hatası: uç noktanın
https://s3.tr.sunucu.com.trolduğunu kontrol edin; araç bucket adını farklı bir alan adına ekliyorsa path-style adreslemeyi açın. QuotaExceeded: paket kotası doldu; okuma, listeleme ve silme çalışır. Kotaya eski sürümler ve yarım kalan parçalı yüklemeler de sayılır.- Bucket oluşturma komutu (ör.
aws s3 mb,CreateBucket)AccessDeniedalır: bucket'lar panelden ya da panel API'sinden açılır.
Bir işlem listede yoksa
Kullandığınız aracın ihtiyaç duyduğu bir S3 işlemi burada yazmıyorsa destek talebi açın; aracın adını ve aldığınız hata kodunu yazın, birlikte bakalım.