S3 objektisalvestus Eestis — StorageVault

    S3-ühilduv salvestusruum arendajatele

    Töötab kõigi S3 tööriistadega: aws-cli, boto3, rclone, Terraform. Osa Pilvio pilvest — ühenda oma serveritega sisevõrgu kaudu, liiklus VM ↔ storage tasuta.

    • S3 API ühilduv
    • Andmed Eestis
    • 15 TB tasuta liiklust
    • Pay-as-you-go

    S3 salvestusruum, mis räägib sinu tööriistade keelt

    StorageVault on Pilvio S3-ühilduv objektisalvestus. See töötab sama API-ga nagu Amazon S3 — mis tähendab, et kõik tööriistad ja teegid, mis töötavad AWS S3-ga, töötavad ka StorageVault'iga. Sa ei pea oma koodi muutma. Vaheta endpoint ja credentials — kõik muu jääb samaks. Erinevalt eraldiseisvatest storage-teenustest on StorageVault osa Pilvio pilvest. See tähendab, et sinu VM-id ja storage on samas andmekeskuses, ühendatud sisevõrgu kaudu. Andmevahetus serveri ja storage vahel on kiire (<1 ms latentsus) ja sisevõrgu liiklus on tasuta.

    S3 API ühilduv

    aws-cli, boto3, s3cmd, rclone, Cyberduck, Terraform S3 backend — kõik töötab. Standard S3 API, mitte custom lahendus.

    Automaatne skaleerimine

    Bucket'itel ei ole eeldefineeritud mahupiirangut. Lisa andmeid ja bucket kasvab automaatselt. Ei pea ette ostma.

    Versioneerimine

    Failid ei kirjutata üle. Kasuta versioneerimist, et hoida failide ajalugu ja taastada varasemaid versioone.

    Unikaalsed URL-id

    Iga bucket saab unikaalse URL-i. Avalikud failid on otse brauserist ligipääsetavad — sobib staatiliste failide serveerimiseks.

    Sisseehitatud redundantsus

    Andmed on kaitstud riistvararikete eest. Eraldi backup samas klastris ei ole vajalik.

    Üks platvorm

    Halda VM-e ja storage't samast dashboardist ja API-st. Üks arve, üks konto, üks tugi.

    7 viisi, kuidas arendajad StorageVault'i kasutavad

    1.Terraform state backend

    Probleem: Terraform state fail on sinu infrastruktuuri tõeallikas. Kui see on lokaalne, ei saa meeskond koostööd teha. Kui see on AWS S3-s, on sinu Eesti infrastruktuuri state fail USA jurisdiktsioonis.

    Lahendus: Kasuta StorageVault'i Terraform remote state backend'ina. S3-ühilduv API tähendab, et seadistus on sarnane AWS-iga — erinev on endpoint ja mõned ühilduvusflag'id.

    terraform {
      backend "s3" {
        bucket = "my-tfstate"
        key    = "production/terraform.tfstate"
    
        endpoint = "https://s3.pilw.io"
        region   = "eu-west-1"  # nõutud, aga ignoreeritakse
    
        # Nõutud mitte-AWS S3 pakkuja jaoks:
        skip_credentials_validation = true
        skip_metadata_api_check     = true
        skip_requesting_account_id  = true
        skip_s3_checksum            = true
        force_path_style            = true
      }
    }
    
    # Terraform >= 1.11.2 checksum workaround:
    # export AWS_REQUEST_CHECKSUM_CALCULATION=when_required
    # export AWS_RESPONSE_CHECKSUM_VALIDATION=when_required

    Tulemus: Terraform state on Eestis, meeskond saab koostööd teha, ja state locking hoiab ära konflikte.

    2.Staatilise veebi vahekiht (CDN backend)

    Probleem: Veebileht loeb andmeid välisest API-st (Google Drive, Google Calendar, CMS). Iga leheküljelaadimine teeb API päringu — leht on aeglane ja API limiidid saavad otsa.

    Lahendus: Cron job või CI/CD pipeline tõmbab andmed API-st, kirjutab need JSON/HTML failidena StorageVault'i, ja veebileht loeb andmeid sealt. StorageVault töötab kiire vahekihina.

    # GitHub Actions schedule → Google API → JSON → StorageVault → veebileht
    curl -s "https://api.example.com/data" \
      | aws s3 cp - s3://site-cache/data.json \
          --endpoint-url https://s3.pilw.io

    Tulemus: Veebileht laadib kiiresti (andmed on juba valmis), API päringuid ei tehta igal leheküljelaadimisel, ja limiidid ei ole probleem.

    3.CI/CD artefaktide ja build'ide hoidla

    Probleem: CI/CD pipeline'id toodavad build artefakte (Docker image'id, kompilatsioonid, testiraportid). GitHub Actions ja GitLab CI artefaktide storage on piiratud ja kallis.

    Lahendus: Pipeline kirjutab artefaktid StorageVault'i. Järgmised pipeline etapid või deploy skriptid loevad sealt.

    # GitHub Actions: upload build artifact
    aws s3 cp ./dist/app.tar.gz s3://builds/app-${GITHUB_SHA}.tar.gz \
      --endpoint-url https://s3.pilw.io
    
    # Deploy: pull artifact on production VM
    ssh production "aws s3 cp s3://builds/app-${GITHUB_SHA}.tar.gz /tmp/ \
      --endpoint-url https://s3.pilw.io && tar xzf /tmp/app-*.tar.gz -C /opt/app"

    4.Varundamine ja disaster recovery

    Probleem: Serveri varundused peavad olema eraldi asukohast. Samasse serverisse varundamine ei kaitse riistvararikke eest.

    Lahendus: Automaatne varundamine StorageVault'i. Kuna StorageVault on samas Pilvio sisevõrgus, on andmete ülekanne kiire ja tasuta. Aga andmed on füüsiliselt eraldatud serverist.

    # Igaöine andmebaasi dump StorageVault'i
    pg_dump mydb | gzip | aws s3 cp - \
      s3://backups/db-$(date +%Y%m%d).sql.gz \
      --endpoint-url https://s3.pilw.io
    
    # Veebi failide sync
    rclone sync /var/www/html storagevault:website-backup/

    Tulemus: Eraldatud varundused, automaatne ajagraafik, ei pea eraldi backup-teenust ostma.

    5.Meedia ja failide serveerimine

    Probleem: Rakendus vajab suurt hulka pilte, videoid, PDF-e või muid faile. Nende hoidmine VM-i kettal on kallis ja ei skaleeru.

    Lahendus: Hoia meediafailid StorageVault'is. Avalikud failid on otse URL-iga ligipääsetavad. Privaatfailid on kättesaadavad signed URL-ide kaudu.

    import boto3
    
    s3 = boto3.client('s3',
        endpoint_url='https://s3.pilw.io',
        aws_access_key_id='YOUR_KEY',
        aws_secret_access_key='YOUR_SECRET'
    )
    
    s3.upload_file('photo.jpg', 'media-bucket', 'images/photo.jpg')
    
    # Signed URL (kehtib 1 h)
    url = s3.generate_presigned_url('get_object',
        Params={'Bucket': 'media-bucket', 'Key': 'images/photo.jpg'},
        ExpiresIn=3600
    )

    6.Staatilise saidi hosting (JAMstack backend)

    Probleem: JAMstack / staatilised saidid (Hugo, Next.js export, Astro) vajavad kohta, kust HTML/CSS/JS faile serveerida.

    Lahendus: Ehita sait lokaalselt või CI/CD-s, lae failid StorageVault'i, seadista Caddy või Nginx reverse proxy Pilvio VM-is. Alternatiivina kasuta bucket'i avalikke URL-e otse.

    # Hugo build + deploy
    hugo --minify
    aws s3 sync ./public/ s3://my-website/ \
      --endpoint-url https://s3.pilw.io \
      --delete

    7.GitHub → S3 → veebileht pipeline

    Probleem: Sisu hallatakse GitHubis (Markdown, JSON, andmed), aga veebileht ei saa GitHubist otse lugeda (rate limit, kiirus).

    Lahendus: GitHub Actions webhook/schedule tõmbab uuendatud failid, töötleb need ja laeb StorageVault'i. Veebileht loeb alati StorageVault'ist — kiirelt ja usaldusväärselt.

    # .github/workflows/sync-to-s3.yml
    name: Sync content to StorageVault
    on:
      push:
        branches: [main]
        paths: ['content/**']
    
    jobs:
      sync:
        runs-on: ubuntu-latest
        steps:
          - uses: actions/checkout@v4
          - name: Sync to StorageVault
            env:
              AWS_ACCESS_KEY_ID: ${{ secrets.SV_ACCESS_KEY }}
              AWS_SECRET_ACCESS_KEY: ${{ secrets.SV_SECRET_KEY }}
            run: |
              aws s3 sync ./content/ s3://site-content/ \
                --endpoint-url https://s3.pilw.io \
                --delete

    Seadista 5 minutiga

    Loo bucket, seadista credentials, kasuta mis iganes S3 tööriistaga.

    1

    Loo bucket

    Loo uus bucket API kaudu või veebikeskkonnas app.pilvio.com → StorageVault → Create Bucket.

    curl -X PUT "https://api.pilvio.com/v1/storage/bucket" \
      -H "apikey: $PILVIO_API_KEY" \
      -d "name=my-bucket" \
      -d "billing_account_id=YOUR_ID"
    2

    Seadista S3 credentials

    Access ja secret key leiad Pilvio dashboardist (app.pilvio.com → StorageVault → Credentials).

    aws configure --profile pilvio
    # Access Key:    <Pilvio dashboardist>
    # Secret Key:    <Pilvio dashboardist>
    # Region:        us-east-1 (ignoreeritakse)
    # Output format: json
    3

    Kasuta

    Kõik standard S3 operatsioonid töötavad — lae üles, listeeri, sünkroniseeri.

    # Lae fail üles
    aws s3 cp myfile.zip s3://my-bucket/ \
      --endpoint-url https://s3.pilw.io --profile pilvio
    
    # Listeeri
    aws s3 ls s3://my-bucket/ \
      --endpoint-url https://s3.pilw.io --profile pilvio
    
    # Sünkroniseeri kataloog
    aws s3 sync ./data/ s3://my-bucket/data/ \
      --endpoint-url https://s3.pilw.io --profile pilvio

    Ühilduvad tööriistad

    • aws-cli— Amazon ametlik CLI
    • boto3— Python SDK
    • s3cmd— käsureaklient Linux/Mac
    • rclone— universaalne pilve sync tööriist
    • Cyberduck— GUI klient Mac/Windows
    • Terraform— S3 backend state jaoks
    • Veeam— ettevõtte backup
    • rclone + cron— automaatne sync/backup

    Lihtne hinnastamine

    StorageVault kasutab pay-as-you-go hinnastamist. Maksad ainult tegelikult kasutatud mahtu — bucket'id ei ole eeldefineeritud suurusega.

    RessurssHindMärkused
    Salvestusruum0,025 €/GB/kuu~25 €/TB/kuu
    Väljaminev liiklusTasutaKuni 15 TB/kuu
    Sissetulev liiklusTasutaPiiramatu
    API päringudTasutaPiiramatu
    Pilvio sisevõrgu liiklusTasutaVM ↔ StorageVault

    Näited

    • 10 GB — Terraform state + config0,25 €/kuu
    • 100 GB — veebisaidi meedia + backup2,50 €/kuu
    • 500 GB — rakenduse andmed + arhiiv12,50 €/kuu
    • 1 TB — suurem meedia/backup25,00 €/kuu

    Liiklus Pilvio VM-ide ja StorageVault'i vahel (sisevõrgus) on alati tasuta. Sa ei maksa andmete liigutamise eest oma serveri ja storage vahel. Väljaminev liiklus internetti on tasuta kuni 15 TB kuus.

    Sinu failid jäävad Eestisse

    StorageVault andmed asuvad füüsiliselt Pilvio andmekeskustes Eestis. Need ei lahku Eesti jurisdiktsioonist.

    GDPR ilma lisatööta

    Kui sinu rakendus salvestab kasutajate andmeid (fotod, dokumendid, isikuandmed), on andmete asukoht Eestis automaatselt GDPR-kohane. Ei pea koostama andmeedastuse mõjuhinnangut kolmandatesse riikidesse.

    CLOUD Act ei laiene

    Pilvio on 100% Eesti omandis. USA CLOUD Act, mis lubab USA valitsusel nõuda andmeid USA ettevõtete käest, ei laiene Pilvio StorageVault'ile. AWS S3, Azure Blob ja Google Cloud Storage on kõik USA ettevõtted.

    Madal latentsus

    Eesti ja Baltikumi kasutajatele on latentsus ~1–10 ms. AWS-i lähim S3 regioon (eu-north-1, Stockholm) on ~20–30 ms.

    StorageVault võrdluses

    Pilvio StorageVaultStoraderaAWS S3 (eu-north)Hetzner Obj. Storage
    Hind/TB/kuu~25 €~6 €~23 €*~5,24 €
    Andmed Eestis✅ Tallinn + Amsterdam❌ Stockholm❌ Saksa/Soome
    100% Eesti omandis❌ USA❌ DE
    CLOUD Act risk❌ puudub❌ puudub✅ USA❌ puudub
    VM integratsioon (sama platvorm)✅ sisevõrk tasuta❌ eraldi teenus✅ (EC2)❌ eraldi teenused
    Terraform provider
    Tasuta liiklus15 TBTasutaTasuline (kallis)1 TB
    API päringudTasutaTasutaTasulineTasuta
    Eestikeelne tugi✅ ~5 min❌ EN❌ EN❌ EN
    Parim kasutusArendaja workflow, VM + S3 comboSuur backup / arhiivGlobaalne ökosüsteemBackup Hetzneri VM-idele
    • * AWS S3 Standard, ilma liikluse ja päringute tasudeta (need lisanduvad).
    • ** Hetzner Object Storage ja Cloud on eraldi teenused, pole sisevõrku.

    Kui vajad odavaimat TB-hinda suurte backup-mahtude jaoks, on Storadera ja Hetzner soodsamad. Kui vajad S3 salvestusruumi, mis on integreeritud sinu Eesti-põhise serveriinfrastruktuuriga — üks platvorm, üks arve, sisevõrgu kaudu — on StorageVault parem valik. AWS S3 on mõttekas ainult siis, kui kasutad juba AWS ökosüsteemi.

    KKK

    Mis on StorageVault?+

    StorageVault on Pilvio S3-ühilduv objektisalvestus. See töötab sama API-ga nagu Amazon S3 — kõik S3-ühilduvad tööriistad (aws-cli, boto3, rclone, Terraform S3 backend, Veeam jt) töötavad otse. Andmed asuvad Eesti andmekeskustes.

    Kas StorageVault on päriselt S3 ühilduv?+

    Jah. StorageVault toetab standardseid S3 API operatsioone: PUT, GET, DELETE, LIST, multipart upload, versioneerimine, signed URL-id. Tööriistad nagu aws-cli, boto3, s3cmd, rclone ja Cyberduck töötavad ilma modifitseerimata — vaheta ainult endpoint (https://s3.pilw.io).

    Kui palju StorageVault maksab?+

    Salvestusruum maksab 0,025 €/GB/kuu (25 €/TB/kuu). Väljaminev liiklus on tasuta kuni 15 TB/kuu. API päringud on tasuta. Sisevõrgu liiklus Pilvio VM-ide ja StorageVault'i vahel on tasuta. Ei ole miinimumtasusid ega pikaajalisi lepinguid.

    Kas StorageVault sobib Terraform state backend'iks?+

    Jah, aga vajab mõnda ühilduvusflag'i. Kasuta backend "s3" konfiguratsiooni endpoint'iga https://s3.pilw.io ja lisa järgmised flag'id: skip_credentials_validation, skip_metadata_api_check, skip_requesting_account_id, skip_s3_checksum ja force_path_style. Terraform >= 1.11.2 puhul ekspordi ka AWS_REQUEST_CHECKSUM_CALCULATION=when_required ja AWS_RESPONSE_CHECKSUM_VALIDATION=when_required (HashiCorp issue #37432 workaround). Sinu infrastruktuuri state fail asub Eestis, mitte AWS-i serverites.

    Kas ma saan kasutada StorageVault'i koos Pilvio VM-iga?+

    Jah. StorageVault ja Pilvio VM-id on samas andmekeskuses ja ühendatud sisevõrguga. Andmevahetus on kiire (<1 ms latentsus) ja sisevõrgu liiklus on tasuta. See tähendab, et backup'id, failisüsteemi sünkroniseerimine ja rakenduse meediafailide lugemine on kiire ega maksa liiklustasu.

    Kuidas StorageVault erineb AWS S3-st?+

    Funktsionaalselt on StorageVault AWS S3 analoog — sama API, samad tööriistad. Peamised erinevused: andmed asuvad Eestis (mitte Stockholmis või Iirimaal), Pilvio ei allu USA CLOUD Act'ile, liiklus ja API päringud on tasuta (AWS-is tasulised), ja StorageVault on integreeritud Pilvio VM-idega sisevõrgu kaudu. AWS S3 on laiem ökosüsteemilt (Lambda, CloudFront jt integratsioonid), aga StorageVault on lihtsam ja läbipaistvam.

    Kuidas StorageVault erineb Storaderast?+

    Storadera on spetsialiseerunud odavale suuremahulisele S3 storage'le (~6 €/TB/kuu), mis on mõeldud peamiselt backup'idele ja arhiividele. StorageVault (~25 €/TB/kuu) on integreeritud Pilvio pilveplatvormiga — saad kasutada VM-e, storage't, API-d ja Terraformi ühes kohas. Kui vajad ainult odavat backup-kohta, on Storadera soodsam. Kui vajad S3-d osana oma arendus-workflow'st (Terraform state, CI/CD artefaktid, rakenduse meediafailid) koos Eesti VM-idega, on StorageVault parem valik.

    Kas StorageVault toetab versioneerimist ja signed URL-e?+

    Jah. Versioneerimine hoiab failide ajalugu ja kaitseb juhuslike ülekirjutuste eest. Signed URL-id (presigned URLs) võimaldavad jagada privaatseid faile ajaliselt piiratud lingi kaudu ilma avaliku bucket'i tegemata. Kasuta boto3 generate_presigned_url() või aws-cli presign käsku.

    Proovi StorageVault'i tasuta

    Loo Pilvio konto ja saa 30 € tasuta krediiti. Loo esimene bucket ja lae failid üles alla 5 minuti. Krediit katab nii StorageVault'i kui VM-e — testi kogu platvormi.

    info@pilw.io | +372 521 68 08 | Telliskivi 57, 10412 Tallinn