CZ 
30.11.2025 Ondřej VÍTEJTE V MÉM SVĚTĚ

An English translation is available for this article. Pro tento článek je dostupný anglický překlad.
Veeam Backup & Replication - Wasabi as an Object Backup Repository

Veeam Backup & Replication - Wasabi jako objektové úložiště záloh

Upraveno 06.02.2025 11:40 | vytvořeno | Petr Bouška - Samuraj |
Wasabi je cloudové objektové úložiště (Cloud Object Storage), plně kompatibilní s Amazon S3. Má zajímavou cenou a jednoduchou obsluhou. Ve Veeam Backup & Replication jej můžeme využít jako Backup Repository pro přímé uložení záloh (primární kopie / Performance Tier) nebo sekundární kopii (Backup Copy / Capacity Tier). Veeam má přímou podporu pro Wasabi Hot Cloud Storage, ale můžeme s ním také pracovat jako s S3 Compatible Object Storage. Samozřejmostí je podpora Immutability (neměnnosti) pro ochranu záloh před Ransomware.
zobrazeno: 8 095x (1 245 CZ, 6 850 EN) | Komentáře [4]

Pozn.: Popis v článku vychází z Veeam Backup & Replication 12.3, licencováno pomocí Veeam Universal License (VUL), tedy obdoba Enterprise Plus.

Úvod

Veeam Backup & Replication 12 přinesl podporu pro přímé ukládání záloh na objektové úložiště - Direct-to-Object Storage. Může jít o lokální úložiště nebo cloudovou službu, což je například Wasabi Hot Cloud Storage. Cloudová služba objektového úložiště od firmy Wasabi Technologies.

Wasabi Hot Cloud Storage je ověřeno a testováno společností Veeam. Wasabi získalo status Veeam Ready v kategorii Object Storage with Immutability.

Objektová úložiště a neměnnost

Obecný popis objektových úložišť, fungování a využití Immutability a praktické příklady použití S3 kompatibilního úložiště nebo Microsoft Azure Blob Storage jako úložiště záloh ve VBR obsahují předchozí články. V řadě věcí zde na tyto informace navazujeme.

Detailní informace dopňuje nový článek.

Oficiální dokumentace

Veeam

Wasabi

Wasabi Hot Cloud Storage

Wasabi Hot Cloud Storage můžeme koupit buď v režimu Pay as You Go (PAYG) s měsíční platbou nebo Reserved Capacity Storage (RCS) na rok či delší období. Srovnání se nachází v Pricing. Platíme pouze za kapacitu, nejsou žádné poplatky za výstup (egress) nebo API požadavky.

Wasabi RCS můžeme koupit napřímo nebo přes nějakého partnera. Má různé výhody. Podstatné může být Minimum Storage Duration Policy, která je u RCS 30 dní a u PAYG 90 dní. I když data smažeme dříve, tak za ně platíme tuto minimální dobu. Informace v PAYG FAQ a RCP FAQ.

Wasabi účet a 30denní Trial

Když chceme začít s Wasabi, tak potřebujeme vytvořit účet. Zároveň máme možnost využít 30denní bezplatnou zkušební verzi, kde máme plné funkce a 1 TB prostoru. Při registraci nezadáváme platební kartu, ale pouze pár údajů (jako jméno, email, zemi). Následně můžeme přejít na placenou verzi. Účet vytvoříme na stránce Try Free.

Multi-Factor Authentication (MFA)

Když máme účet vytvořen, tak se přihlásíme na stránce console.wasabisys.com. Pro zabezpečení je dobré nastavit Multi-Factor Authentication (MFA). Využívá se OATH One-Time Password (OTP), takže můžeme použít třeba aplikaci Microsoft Authenticator nebo Google Authenticator. Registrace je jiná, než je běžné. Naskenujeme QR kód, pak musíme z aplikace opsat OTP do Authentication Code 1 a když dojde k jeho změně, tak do Authentication Code 2.

Wasabi a Immutability

Wasabi podporuje dvě metody pro zajištění Immutability. Jde o Compliance a Object Lock. Navzájem se vylučují, takže můžeme na kbelíku použít pouze jednu z nich. Nejprve musíme metodu povolit a následně nastavit, aby neměnnost fungovala.

Pro Veeam potřebujeme Object Lock, který musíme zapnout při vytváření kbelíku. Později aktivovat nelze. Tato metoda umožňuje, aby Veeam nastavil neměnnost na určité objekty v kbelíku a určil retenci. Abychom mohli zapnout Object Lock, tak musíme povolit Versioning.

S3 Object Lock může využívat dva režimy uchovávání (Retention Mode), které se nastavují na úrovni kbelíku nebo objektu. Objekty jsou neměnné, dokud nedosáhnou definovaného data uchování (Retention Date).

  • Governance Mode - uživatel se speciálním oprávněním má právo úpravy či mazání
  • Compliance Mode - nikdo (ani root) nemůže upravovat či mazat

Navíc můžeme nastavit Legal Hold, kdy jsou verze objektu chráněny neomezeně dlouho, dokud není Legal Hold odstraněn. Toto nastavení má přednost před oběma režimy.

Pozn.: Veeam využívá Object Lock v Compliance Mode.

Když vytvoříme kbelík se zapnutým Object Lock, tak můžeme jít do jeho nastavení (Settings). Zde je karta Object Lock a možnost zapnout Default Object Retention. Toto nastavení aplikuje definovanou Retention Period na všechny nově umístěné objekty do kbelíku. To pro Veeam nesmíme provést. Potřebujeme, aby si nastavení řídil sám. Obecně na objektových úložištích nesmíme zapínat defaultní retenci, Lifecycle Rules nebo Tiering.

Wasabi - Bucket Object Lock - Default Object Retention

Vytvoření kbelíku (S3 bucket)

Pozn.: Z výkonových důvodů (limity na IOPS nebo API volání za vteřinu) může být lepší mít více menších kbelíků než jeden velký. Ale patrně jde až o hodnoty desítek či stovek TB (ve Veeam Best Practice uvádí 250 TB). Wasabi chtělo v minulosti nastavit limit na 100 milionů objektů v kbelíku, ale patrně to neprovedlo.

Ve Wasabi Console vytvoříme kbelík pomocí průvodce se 6 kroky. Pokud již máme existující kbelík, tak můžeme využít Quick Setup a zkopírovat nastavení z vybraného kbelíku.

  • menu Buckets - Create Bucket
Wasabi - Create Bucket
  • 1 - Bucket Name - musíme zadat unikátní jméno kbelíku (v rámci celého Wasabi) a vybrat region (zeměpisnou polohu)
Wasabi - Create Bucket - step 1
  • 2 - Set Properties - zapneme verzování a Object Lock
Wasabi - Create Bucket - step 2
  • 3 - Logging - můžeme zapnout logování všech přístupů ke kbelíku, vytváří textový soubor, který se ukládá do nějakého kbelíku a zabírá prostor
Wasabi - Create Bucket - step 3
  • 4 - Replication - můžeme zapnout replikaci dat do jiného regionu
Wasabi - Create Bucket - step 4
  • 5 - Tags - můžeme vytvořit značky pro organizaci objektů
  • 6 - Review - vidíme nastavené parametry, kbelík vytvoříme tlačítkem Create Bucket 
Wasabi - Create Bucket - Finish

Vytvoření uživatele a získání Access key

Pro přístup na S3 API, které využívá Veeam, potřebujeme přístupový a tajný klíč (Access and Secret Key). Přístupové klíče jsou přiřazeny k uživatelskému účtu (každý může mít 2).

Vytvoříme nový uživatelský účet (mohli bychom také využít účet root). Pro seskupení uživatelů pro společnou správu můžeme nejprve vytvořit skupinu (Group), do které účet při vytváření zařadíme.

  • menu Users - Create User
  • 1 - Details - zadáme jméno uživatele a zatrhneme Programmatic (create API keys)
Wasabi - Create User - step 1
  • 2 - Groups - můžeme přiřadit skupiny
  • 3 - Policies - přiřadíme politiky, které určují oprávnění účtu
Wasabi - Create User - step 3
  • 4 - Review - vidíme nastavené parametry, uživatele vytvoříme tlačítkem Create User 
  • vytvoří se přístupový klíč, který můžeme zkopírovat nebo uložit

Pozn.: Přístupové klíče se nachází souhrnně v menu Access Keys.

Omezení přístupu uživatele k jednomu kyblíku

Pro vyšší bezpečnost můžeme chtít omezit přístup uživatele (pomocí Access Keys) pouze k určitému kbelíku. Pro každý kbelík pak vytvoříme samostatného uživatele. Můžeme k tomu využít politiky (Policy) s JSON kódem.

  • menu Policies - Create Policy
  • Policy Name - zadáme unikátní jméno, například veeam-access-okveeam-1
  • Policy Editor - vložíme kód, který povoluje přístup ke kbelíku zadaného jména okveeam-1 (nalezl jsem na internetu)
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "s3:ListAllMyBuckets",
      "Resource": "arn:aws:s3:::*"
    },
    {
      "Effect": "Allow",
      "Action": "s3:*",
      "Resource": [
        "arn:aws:s3:::okveeam-1",
        "arn:aws:s3:::okveeam-1/*"
      ]
    }
  ]
}
  • přiřadíme politiku uživateli při vytváření nebo úpravou stávajícího
Wasabi - Create Policy

Využití úložiště a minimální doba uložení

Wasabi jednou denně (v noci) počítá velikost obsazení kbelíku. Údaje pro každý kbelík vidíme v jeho nastavení Settings - Properties - Bucket Size. Můžeme stáhnout účetní údaje, což je CSV s detaily pro každý den (počet objektů, aktivní úložiště, smazané, přenosy, API volání). Na Dashboard vidíme využití celého úložiště (zobrazuje se mi s denním zpožděním). Jsou zde nejen aktivní data, ale také smazaná data, která podléhají politice minimální doby uložení.

Při prvním testu jsem provedl zálohu prázdného VM, takže obsazený prostor byl pár kB. Ale zároveň se objevil smazaný prostor. Když jsem nahrál reálnou zálohu asi 260 GB, tak se objevil smazaný prostor asi 40 MB.

Wasabi - Storage Utilization

WasabiMinimum storage duration policy, která je minimálně 30 dní. To znamená, že když nahrajeme nějaká data, tak se vyplatí je uchovat minimálně 30 dní. Pokud je smažeme dříve, tak za ně stejně platíme, dokud neuplyne 30 dní od jejich uložení.

Nastavená doba Immutability na objektu

V menu Buckets můžeme procházet obsah kbelíků. Na jednotlivých objektech (souborech) můžeme zobrazit jejich detaily. Vidíme, zda je nastavený Object Lock, v jakém režimu a do jakého data.

  • proklikáme se na určitý objekt
  • zapneme zobrazení verzí Show Versions vpravo nad seznamem objektů (jinak neuvidíme informace o zámku)
  • klikneme na řádek objektu a vpravo se zobrazí detaily
Wasabi - Object Details - Object Lock

Veeam Backup & Replication

Vytvoření Wasabi Cloud Storage Repository

Adding Wasabi Cloud Object Storage

  • Veeam Backup & Replication Console
  • Backup Infrastructure - Backup Repositories - Add Repository
  • zvolíme Object Storage - Additional Providers - Wasabi Cloud Storage
  • Name - unikátní název a popis úložiště
  • Account
    • Region - zkopírujeme region, který jsme vybrali při vytváření kbelíku
    • Credentials - vybereme nebo přidáme přístupové údaje našeho Wasabi uživatele (Access key a Secret key)
    • Connection mode - volíme způsob přenosu dat, buď přímý (nejčastěji) nebo skrze bránu
Veeam Backup & Replication - Add Object Storage Repository - Account
  • Bucket
    • Bucket - vybereme předem připravený kbelík pro ukládání záloh
    • Folder - vybereme existující složku nebo vytvoříme novou
    • Limit object storage consumption to - můžeme určit měkký limit využití úložiště, pokud je limit překročen, tak se běžící úloha dokončí, ale nová se nespustí
    • Make recent backups immutable - můžeme nastavit immutability period, tedy dobu, po kterou není možné uložená data měnit nebo mazat, GUI dovoluje zadat 1 až 90 dní, delší období můžeme nastavit pomocí PowerShellu
Veeam Backup & Replication - Add Object Storage Repository - Bucket
  • Mount Server - vybereme mount server a jeho parametry pro obnovu souborů a aplikačních položek
  • Review - klikneme na Apply a proběhne instalace a konfigurace všech požadovaných komponent

Reálná doba neměnnosti (Block Generation)

Veeam automaticky aplikuje něco, čemu říká Block Generation (generace bloků). Důvod je ušetření API volání na objektové úložiště na úkor většího obsazení prostoru (delší doby neměnnosti). Ve Wasabi za API volání neplatíme, takže to nemusí být důležité.

Block Generation je časový úsek, ve kterém mají všechny bloky v zálohách (plné i přírůstkové zálohy) stejnou dobu neměnnosti. K zadané době Immutability Period na úložišti přidává 10 dní (pro většinu objektových úložišť). Hodnotu můžeme změnit zásahem do registrů.

Pro příklad nastavíme období neměnnosti na úložišti 20 dní. Když se provede první plná záloha, tak se na její bloky nastaví neměnnost 30 dní. Tím začne generace, která trvá 10 dní, a všechny přírůstkové zálohy budou mít stejné datum vypršení platnosti neměnnosti (jako plná záloha). Pokud se provádí přírůstkové zálohy jednou denně, tak se pokaždé nastaví neměnnost o 1 menší. Všechny bloky v rámci generace mají neměnnost minimálně 20 dní.

Veeam prodlužuje expiraci neměnnosti pro bloky, které stále existují v novějších zálohách. Jsou tedy součástí novějších Restore Point.

Backup Repositories

Přehled vytvořených úložišť.

Veeam Backup & Replication - Backup Repositories

Vytvoření Backup Job

Zálohovací úlohu vytvoříme standardním způsobem (popsáno ve starších článcích). Jako Storage - Backup repository vybereme naše Wasabi Cloud Storage Repository. Neměnnost záloh bude minimálně taková, jako Immutability period zadaná na úložišti (Backup Repository). Takže nemá cenu nastavovat Retention policy kratší.

Mimo jiné bychom měli zvážit nastavení Storage - Advanced

  • Maintenance - Health Check for Object Storage Repositories (pokud jde o kopii dat, tak není tak důležité), Remove deleted items data after
  • Storage - zapnutí šifrování (striktně doporučeno)
  • Notifications - pokud nevyužíváme výchozí

Vytvoření Backup Copy Job

Osobně si myslím, že je dobré mít primární zálohy uloženy blízko zdroje, tedy On-Premises, kde je dosažena dobrá síťová latence a výkon. Do cloudového úložiště pak uložit kopii záloh.

Úlohu kopírování zálohy vytvoříme opět standardním způsobem (popsáno ve starších článcích). Patrně jako Periodic copy. V Target - Backup repository vybereme naše Wasabi Cloud Storage Repository. Retention policy nastavíme větší než Immutability period.

Veeam Backup & Replication - New Backup Copy Job - Target

Zálohy (Backups)

Vytvořené zálohy vidíme ve složce Object Storage respektive Object Storage (Copy).

Veeam Backup & Replication - Backups - Object Storage (Copy)

Pokus o smazání souborů zálohy

Když zkusíme smazat zálohu ve Veeam Backup & Replication, tak ke smazání nedojde a dostaneme informaci, že do určitého data je nastavena Immutability. V testovacím případě jsem nastavil Immutability period pouze 1 den, ale ukazuje se, že soubor půjde smazat až za 11 dní. To je přidaných 10 dní v rámci Block Generation.

Veeam Backup & Replication - Immutability - delete from backup

Pokud se pokusíme o smazání ve Wasabi, tak dostaneme podobně chybu.

Wasabi - Immutability - delete object error

Jak funguje ukládání záloh na objektové úložiště

Lépe a detailněji je fungování popsáno v novém článku Jak Veeam pracuje s objektovým úložištěm a využitím Immutability.

Pokud máme v zálohovací úloze (Backup Job) jako cíl objektové úložiště, tak se standardně vytváří Forever Forward Incremental (bez toho, že by muselo docházet ke spojení dat do plné zálohy). Nikdy se nevytváří syntetické plné zálohy, což je dáno principem objektových úložišť. Můžeme nastavit provádění pravidelné aktivní plné zálohy, tím se zvýší spotřeba prostoru v úložišti. Nebo zapnout Long-Term Retention Policy (GFS), v tom případě se vytváří syntetická plná záloha. A tím se přepnout na Forward Incremental.

Pozn.: Backup Copy Job používá Forever Forward Incremental standardně i na souborovém úložišti.

Syntetická plná záloha vzniká spojením předchozí plné zálohy s následnými přírůstkovými. Vytváří se nový soubor, který zabírá daný diskový prostor. Pokud využíváme souborový systém s Fast Clone (ReFS nebo XFS), tak můžeme ušetřit prostor (i čas kopírování), protože se využívají odkazy na bloky dat v předchozích souborech.

Objektové úložiště nepracuje se soubory, ale s objekty. Veeam rozdělí soubory záloh (Restore Points) na bloky určité velikosti (standardně 1 MB), ty komprimuje a přenese jako objekty na objektové úložiště. Neměnnost se nastavuje na každý objekt. Každý bod obnovy (Restore Point) odkazuje na požadované objekty.

Když proběhne přírůstková záloha, tak se přenesou objekty s novými (změněnými) daty. Nový bod obnovy opět odkazuje na všechny potřebné objekty, aby bylo možné provést plnou obnovu. Tedy starší objekty (bez případných nově nahrazených nebo smazaných) plus nově nahrané. Když pro určitý bod obnovy skončí retence, tak dojde k jeho smazání. Smažou se objekty, na které odkazuje tento bod obnovy, ale neodkazuje na ně žádný novější. Tedy aktivní data stále zůstávají uložena. Z tohoto důvodu nepotřebujeme provádět syntetickou plnou zálohu a šetří se prostor podobně jako u Fast Clone.

Veeam na objektovém úložišti vytvoří a udržuje strukturu adresářů. Popis je v dokumentaci Object Storage Repository Structure.

Obnova (Restore) z Wasabi a výkon zálohování i obnovy

Vyzkoušel jsem si několik testovacích obnov. Komunikace do internetu na Wasabi úložiště jde po lince o rychlosti 1 Gb/s.

  • Copy Backup - kopie zálohy jednoho VM na interní úložiště, kopírovalo se 20 GB asi 6 minut, rychlost 59 MB/s (472 Mb/s)
  • Restore Guest Files (File Level Restore) - připojení disku z Windows VM přímo ze zálohy, šlo plynule procházet soubory, obnova menšího souboru proběhla okamžitě
  • Instant VM Recovery - obnova VM (připojení k virtualizaci) přímo ze zálohy, to již bylo pomalejší, ale funkční, VM startovalo přes 2 minuty a reagovalo pomaleji, pro takové použití není toto úložiště určeno

Plná záloha o velikosti asi 265 GB přenášených dat do Wasabi úložiště. Trvala 53 minut a reálný přenos na lince byl konstantní zhruba 750 Mb/s (94 MB/s). Obnova zatěžovala linku nárazově, proto byl průměr nižší.

Související články:

Veeam Backup & Replication

Články, které se věnují zálohovacímu řešení společnosti Veeam Software. Jde o platformu pro zálohování (Backup), replikaci (Replication) a obnovu (Restore) dat. Jinak řečeno řešení pro ochranu dat (Data Protection) a obnovu po havárii (Disaster Recovery).

Úložiště záloh

Články zaměřené na různé typy úložišť vhodných pro ukládání záloh. Popisují jejich vlastnosti a použití především v prostředí Veeam Backup & Replication.

Pokud se chcete vyjádřit k tomuto článku, využijte komentáře níže.

Komentáře
  1. [1] Petr

    Jaké z toho máte zatím dojmy? A co myslíte o úvaze, že se z cenového pohledu (na první dobrou) mnohem výhodnější alternativu k ukládání dat přes Veeam Cloud Connect?

    Pondělí, 03.02.2025 12:37 | odpovědět
  2. [2] Samuraj

    Jestli chápu správně dotaz, že Wasabi je levnější než využít Veeam Cloud Connect s nějakým providerem. Nemám s tím zkušenost.

    Zatím mi to běží bez problémů, musím udělat testy s větší zátěží. Ale v diskuzích člověk nalezne hodně informací o zkušenostech s Wasabi. Vypadá to, že ho pro Veeam využívají lidé již řadu let. Cílí hlavně na nízkou cenu.

    Ještě jsem při hledání informací narazil na podobný 1111systems.com/.

    • na komentář odpověděl [3]Petr
    Pondělí, 03.02.2025 13:24 | odpovědět
  3. [3] Petr

    odpověď na [2]Samuraj: ano, díky za tipy

    Pondělí, 03.02.2025 17:48 | odpovědět
  4. [4] roland

    I made a lot of test on Veeam and Wasabi and this is definitively a good explanation. Good job !

    I would like to add an information on security and limiting access to the bucket.

    Wasabi FAQ / Veeam ask us to implement security with this json:

    "Effect": "Allow", "Action": "s3:ListAllMyBuckets", "Resource":arn:aws:s3:::*"

    The result is that all users defined at the s3 level are allowed to list all existing buckets even if they are not allowed to get in. If you share your Wasabi S3 against different customer it could be an issue to see other buckets.

    Středa, 19.02.2025 18:44 | odpovědět
Přidat komentář

Vložit tag: strong em link

Nápověda:
  • maximální délka komentáře je 2000 znaků
  • HTML tagy nejsou povoleny (budou odstraněny), použít se mohou pouze speciální tagy (jsou uvedeny nad vstupním polem)
  • nový řádek (ENTER) ukončí odstavec a začne nový
  • pokud odpovídáte na jiný komentář, vložte na začátek odstavce (řádku) číslo komentáře v hranatých závorkách