İçeriğe geç
Subnomic

Depolama

S3 uyumlu nesne depolama

S3 konuşan her şeyle S3 konuşan bucket’lar.

AWS CLI, boto3, rclone, restic ya da s3cmd’yi tek bir uç noktaya ve bir anahtara yönelt. Sürümleme, nesne kilidi, yaşam döngüsü kuralları ve replikasyon, S3’te olduğu gibi bucket ayarlarında durur.

API
S3 · SigV4
Adresleme
yol stili
Önceden imzalanmış URL’ler
7 güne kadar
Anahtarlar
bucket · önek kapsamlı
~/backups
$ aws --endpoint-url https://objects.subnomic.com \
    s3 cp db-2026-09-11.sql.gz s3://acme-db-dumps/nightly/
upload: ./db-2026-09-11.sql.gz to s3://acme-db-dumps/nightly/db-2026-09-11.sql.gz

Nasıl çalışır

Bir anahtar, bir uç nokta ve zaten kullandığın istemci.

01

Bir erişim anahtarı oluştur

Onu bucket’larla ya da bir anahtar önekiyle, okuma, yazma ve silmenin herhangi bir birleşimiyle sınırla — ya da tüm çalışma alanına açık bırak. İstersen bir bitiş süresi ver. Gizli anahtar bir kez gösterilir.

~
$ aws configure
AWS Access Key ID [None]: ••••••••
AWS Secret Access Key [None]: ••••••••
02

İstemciyi uç noktaya yönelt

Yol stili adresleme, başlıkta ya da önceden imzalanmış bir URL’de SigV4 ve her aws-chunked akış modu. Yanlış bölgeye yapılan bir istek doğru bölgeyle yanıtlanır; bu yüzden SDK’lar kendiliğinden yeniden dener.

~
$ aws --endpoint-url https://objects.subnomic.com \
    s3 mb s3://acme-backups
make_bucket: acme-backups
03

S3 gibi kullan

Yedekler, derleme çıktıları, bir tarayıcı formundan yüklemeler. Büyük nesneler için çok parçalı yükleme, kısmi okumalar için aralık (range) istekleri.

~
$ restic -r s3:https://objects.subnomic.com/acme-backups init
$ rclone sync ./dist sn:acme-cdn

Bucket ayarları

S3’ün gerçekten yapılandırdığın kısımları.

Sürümleme

Bucket başına aç. Bir silme işlemi bir silme işareti bırakır ve önceki her sürüm, sen onu kimliğiyle kaldırana kadar kalır.

Nesne kilidi

Yönetişim (Governance) ya da Uyumluluk (Compliance) modu, gün ya da yıl olarak varsayılan saklama süresi ve yasal saklama. Uyumluluk saklama süresi asla kısaltılamaz ve kilitli sürümler barındıran bir bucket silinemez.

Yaşam döngüsü kuralları

Önek ya da etiketlerle süzerek, güncel ya da güncel olmayan sürümleri belirli bir gün sayısından sonra sil ve yarıda kalmış çok parçalı yüklemeleri iptal et. Kurallar saatte bir çalışır ve bir kilidi asla geçersiz kılmaz.

Replikasyon

Bir bucket’ı S3 uyumlu herhangi bir uç noktaya asenkron olarak kopyala; istersen önekle sınırlı, seçersen silmelerle birlikte. Başarısız kopyalar atılmaz; saklanır ve hatalarıyla birlikte gösterilir.

Kapsamlı erişim anahtarları

Anahtarlar bir kişiye değil, çalışma alanına aittir; bu yüzden biri ayrıldığında çalışmaya devam eder. Bucket, önek ve okuma / yazma / silme ile sınırla; istersen bir bitiş süresiyle.

Herkese açık okuma ve bucket politikaları

Herkese açık ayarı yalnızca anonim GET ve HEAD’e izin verir — kimse bucket’ı listeleyemez. Daha fazlası için kaynak IP, TLS, referer ya da user-agent koşulları içeren AWS tarzı bir politika yaz.

Önceden imzalanmış URL’ler ve paylaşım bağlantıları

Yedi güne kadar önceden imzalanmış GET ve PUT. Paylaşım bağlantıları listelenir, iptal edilebilir ve nesne silindiğinde kendiliğinden iptal edilir.

Her yerden yükleme

10.000 parçaya kadar çok parçalı yükleme, tarayıcı formundan yüklemeler için POST Object ve bucket başına CORS kuralları.

İş akışı başlatan olaylar

Bir yazma, kopyalama ya da silme işlemi bir iş akışı başlatabilir — bir görselin küçük resmini üret, bir belgeyi dizine ekle, beklenmedik bir silmede uyarı ver.

Uyumluluk

Neler uygulanıyor, neler reddediliyor.

Listenin dışındaki her şey sessizce kabul edilmek yerine açık bir S3 hatasıyla reddedilir; böylece ona bağımlı bir istemci üretimde sessizce değil, ilk gün yüksek sesle hata verir.

Uygulananlar

  • ListBuckets, CreateBucket, DeleteBucket, HeadBucket, GetBucketLocation
  • ListObjects v1 ve v2, ListObjectVersions
  • GetObject, PutObject, HeadObject, DeleteObject, CopyObject, DeleteObjects (1.000 anahtar)
  • Aralık (range) ve koşullu istekler
  • Çok parçalı yükleme: oluşturma, parça yükleme, kopyalayarak parça yükleme, tamamlama, iptal, parçaları listeleme, yüklemeleri listeleme
  • CORS, bucket politikası ve politika durumu, sürümleme, yaşam döngüsü
  • Nesne kilidi yapılandırması, saklama ve yasal saklama; nesne etiketleme
  • Tarayıcı formundan yüklemeler için POST Object; önceden imzalanmış GET ve PUT

Açık bir hatayla reddedilenler

  • —ACL’ler — bunun yerine bucket politikalarını kullan
  • —Sanal barındırma stili (virtual-hosted-style) adresleme — yalnızca yol stili
  • —Depolama sınıfları, geçişler, Intelligent-Tiering, Glacier geri yükleme
  • —SSE-KMS ve müşterinin sağladığı anahtarlar
  • —S3 Select, envanter, analitik ve erişim günlüğü
  • —Bucket etiketleme, herkese açık erişim engeli, sahiplik denetimleri

Ayrılmak

Standart API ile gir, standart API ile çık.

Ürün S3 API’sinin kendisi olduğu için çıkış yolu, girerken kullandığın araçların aynısıdır. Nesnelerine dair hiçbir şey yalnızca bizim okuyabileceğimiz bir biçimde saklanmaz.

  • Depolama, çalışma alanının içinde tekilleştirilir; çalışma alanları arasında asla.
  • Taşınma sürerken replikasyon, başka bir sağlayıcıda canlı bir kopya tutabilir.
  • Bucket adları tüm çalışma alanlarında benzersizdir ve başka bir çalışma alanının bucket’ı yalnızca 404 döndürür.
~
$ aws --endpoint-url https://objects.subnomic.com \
    s3 sync s3://acme-db-dumps ./acme-db-dumps
download: s3://acme-db-dumps/nightly/db-2026-09-11.sql.gz …

Sınırlar

Her planda neler var.

Plan Ücretsiz Pro Team Enterprise
Depolanan512 MB20 GB100 GB1 TB
Nesneler1.00050.000250.0002.500.000
Bucket’lar11050500

Depolanan baytlar Siteler ile ortaktır. Nesne anahtarları en fazla 1.024 bayt olabilir; çok parçalı yüklemede sonuncusu dışındaki parçalar en az 5 MB olmalıdır.

Sorular

Bir yedekleme işini taşımadan önce.

Hangi istemciler çalışır?

Yol stili adreslemeyle SigV4 konuşan her şey: AWS CLI, boto3 ve diğer AWS SDK’ları, rclone, restic ve s3cmd. AWS CLI, CI’da ona karşı bir uyumluluk test paketi olarak çalıştırılır. AWS CLI, boto3 ve rclone için kurulumlar.

Yol stilini (path-style) nasıl açarım?

rclone’da force_path_style = true, boto3’te addressing_style: path ayarla ya da SDK’ndaki eşdeğer seçeneği kullan. --endpoint-url ile AWS CLI olduğu gibi çalışır.

Diğer çalışma alanları nesnelerimi görebilir mi?

Hayır. Tekilleştirme yalnızca bir çalışma alanının içinde yapılır ve bir bucket, anahtarsız olarak ancak herkese açık okumayı açarsan ya da buna izin veren bir politika yazarsan okunabilir.

Depolama bir iş akışı başlatabilir mi?

Evet. Bir bucket üzerindeki olay kuralları bir yazma, kopyalama, çok parçalı yüklemenin tamamlanması ya da silme işleminde bir iş akışı başlatır — bucket başına en fazla 25 kural.

Bir uç nokta ve bir anahtar, yaklaşık bir saniye sonra.

Bir çalışma alanı oluştur, bir anahtar üret, istemcini ona yönelt. Ücretsiz plan için kart gerekmez.