O zálohách v Proxmox VE

O zálohách v Proxmox VE
V článku «Kouzlo virtualizace: úvodní kurz v Proxmox VE» Úspěšně jsme nainstalovali na server hypervizor, připojili k němu úložiště, postaráli se o základní zabezpečení a dokonce vytvořili první virtuální stroj. Nyní se podíváme, jak realizovat nejzákladnější úkoly, které je třeba splnit, abychom vždy měli možnost obnovit provoz služeb v případě poruchy.

Nativní nástroje Proxmox umožňují nejen provádět zálohování dat, ale také vytvářet sady předem nakonfigurovaných obrazů operačních systémů pro rychlé nasazení. To nejenže pomáhá při potřebě vytvořit nový server pro jakoukoli službu během několika sekund, ale také snižuje dobu výpadku na minimum.

O potřebě vytváření záloh se nebudeme zmiňovat, protože je to zřejmé a již dlouho je to axiom. Zaměříme se na některé méně zřejmé věci a rysy.

Nejprve se podíváme, jak jsou data ukládána při procesu zálohování.

Algoritmy zálohování

Začneme tím, že Proxmox má slušné nativní nástroje pro vytváření záloh virtuálních strojů. Umožňuje snadno uložit všechna data virtuálního stroje a podporuje dva mechanismy komprese, stejně jako tři metody vytváření těchto záloh.

Nejdříve se podíváme na mechanismy komprese:

  1. Komprese LZO. Algoritmus bezztrátové komprese dat, vynalezený již v polovině 90. let. Kód byl napsán Markusem Oberheimerem (v Proxmox realizováno utilitou lzop). Hlavní zvláštností tohoto algoritmu je velmi rychlá dekomprese. To znamená, že jakákoli záloha vytvořená tímto algoritmem může být v případě potřeby obnovena za minimální čas.
  2. Komprese GZIP. Při použití tohoto algoritmu bude záloha „za běhu“ komprimována utilitou GNU Zip, která používá výkonný algoritmus Deflate, vytvořený Philem Katzem. Hlavní důraz je kladen na maximální kompresi dat, což umožňuje zmenšit místo na disku, které zabírají zálohy. Hlavním rozdílem oproti LZO je, že postupy komprese/dekomprese zabírají značné množství času.

Režimy archivace

Proxmox nabízí systémovým administrátorům tři metody zálohování. Pomocí nich lze vyřešit požadovaný úkol, přičemž se stanoví priorita mezi nutností odstavení a spolehlivostí vytvořené zálohy:

  1. Režim Snapshot (Snímek). Tento režim lze nazvat také jako Live backup, protože k jeho použití není nutné zastavovat běh virtuálního stroje. Použití tohoto mechanismu nepřerušuje činnost VM, avšak má dvě velmi vážné nevýhody — mohou vznikat problémy kvůli zámkám souborů operačním systémem a nejnižší rychlost vytváření. Zálohy vytvořené touto metodou je třeba vždy ověřovat v testovacím prostředí. Jinak existuje riziko, že při potřebě nouzového obnovení mohou selhat.
  2. Režim Suspend (Pozastavení). Virtuální stroj dočasně "zmrazuje" svůj stav až do skončení procesu zálohování. Obsah operační paměti není vymazán, což umožňuje pokračovat v práci přesně z místa, kde byla činnost pozastavena. Samozřejmě to vyžaduje odstavení serveru po dobu kopírování informací, ale není nutné vypínat/zapínat virtuální stroj, což je dost kritické pro některé služby. Zejména pokud spuštění části služeb není automatické. Přesto by také tyto zálohy měly být rozbaleny v testovacím prostředí pro kontrolu.
  3. Režim Stop (Zastavení). Nejdůvěryhodnější způsob zálohování, ale vyžadující úplné vypnutí virtuálního stroje. Je odeslána příkaz na standardní vypnutí, po zastavení se provádí zálohování a poté se vydává příkaz na zapnutí virtuálního stroje. Počet chyb při tomto přístupu je minimální a většinou se blíží nule. Zálohy vytvořené tímto způsobem jsou téměř vždy rozbalovány správně.

Provádění procedury zálohování

Pro vytvoření zálohy:

  1. Přejdeme na požadovaný virtuální stroj.
  2. Vybereme položku Zálohování.
  3. Stiskneme tlačítko Zálohovat nyní. Otevře se okno, ve kterém si můžete vybrat parametry budoucí zálohy.

    O zálohách v Proxmox VE

  4. Jako úložiště uvedeme to, které jsme připojili v předchozí části.
  5. Po výběru parametrů stiskneme tlačítko Zálohování a čekáme, až bude záloha vytvořena. O tom bude informována zpráva TASK OK.

    O zálohách v Proxmox VE

Nyní budou vytvořené archivy záloh virtuálních strojů k dispozici ke stažení ze serveru. Nejjednodušším a nejtriviálnějším způsobem kopírování je SFTP. K tomu použijte populárního multiplatformního FTP klienta FileZilla, který dokáže pracovat protokolem SFTP.

  1. V poli Hostitel zadajte IP adresu našeho virtualizačního serveru do pole Uživatelské jméno zadejte root do pole Heslo — ten, který byl zvolen při instalaci, a do pole Port uvedete „22“ (nebo jakýkoliv jiný port, který byl nastaven pro SSH připojení).
  2. Stiskneme tlačítko Rychlé připojení a pokud byly všechny údaje zadány správně, zobrazí se ve vašem aktivním panelu všechny soubory umístěné na serveru.
  3. Přecházíme do adresáře /mnt/storage. Všechny vytvářené záložní kopie budou uloženy v podsložce „dump“. Budou mít formát:
    • vzdump-qemu-číslo_stroje-datum-čas.vma.gz v případě zvolení metody GZIP;
    • vzdump-qemu-číslo_stroje-datum-čas.vma.lzo v případě zvolení metody LZO.

Doporučuje se ihned stahovat zálohy ze serveru a uchovávat je na bezpečném místě, například v našem cloudovém úložišti. Pokud rozbalíte soubor s příponou vma pomocí stejnojmenného nástroje dodávaného s Proxmox, uvnitř najdete soubory s příponami raw, conf a fw. V těchto souborech se nachází následující:

  • raw — obraz disku;
  • conf — konfigurace VM;
  • fw — nastavení firewallu.

Obnova ze zálohy

Představme si situaci, kdy byla virtuální mašina omylem odstraněna a je třeba její náhlé obnovení ze zálohy:

  1. Otevřete úložiště, ve kterém se nachází záloha.
  2. Přejdeme na záložku Obsah.
  3. Vyberte potřebnou kopii a stiskněte tlačítko Obnovení.

    O zálohách v Proxmox VE

  4. Uveďte cílové úložiště a ID, které bude stroji přiděleno po dokončení procesu.
  5. Stiskneme tlačítko Obnovení.

Jakmile bude obnovení dokončeno, VM se objeví v seznamu dostupných.

Klonování virtuální mašiny

Jako příklad si představme, že je ve firmě potřeba provést změny v nějaké kritické službě. Taková změna se provádí prostřednictvím mnoha úprav konfiguračních souborů. Výsledek je přitom nepředvídatelný a jakákoliv chyba může způsobit pád služby. Aby takový experiment neovlivnil fungující server, doporučuje se provést klonování virtuální mašiny.

Mechanismus klonování vytvoří přesnou kopii virtuálního serveru, se kterou je možné provádět jakékoliv změny, aniž by to ovlivnilo provoz hlavní služby. Pokud budou změny úspěšně aplikovány, nová VM bude uvedena do provozu a stará bude vypnuta. Při tomto procesu je důležité pamatovat na jednu zvláštnost. Na klonovaném stroji bude IP adresa stejná jako u původní VM, což znamená, že při jejím spuštění dojde ke konfliktu adres.

Povíme, jak se vyvarovat takové situaci. Přímo před provedením klonování je nutné provést změny v konfiguraci sítě. K tomu je třeba dočasně změnit IP adresu, ale restartovat síťovou službu. Po provedení klonování je třeba nastavení vrátit zpět na hlavním stroji a na klonovaném stroji nastavit libovolnou jinou IP adresu. Tak získáme dvě kopie jednoho a toho samého serveru na různých adresách. To umožní rychle uvést novou službu do provozu.

Pokud je touto službou webový server, stačí pouze změnit A záznam u Vašeho DNS poskytovatele, po čemž budou požadavky klientů na toto doménové jméno směřovány již na adresu klonované virtuální mašiny.

Mimochodem, Selectel poskytuje všem svým klientům službu hostování libovolného počtu domén na NS serverech zdarma. Správa záznamů se provádí jak pomocí naší administrativní panely, tak i pomocí speciálního API. Více o tom se dočtete v naší znalostní bázi.

Klonování VM v Proxmox je velmi jednoduchý úkol. K jeho provedení je třeba učinit následující kroky:

  1. Přejděte na potřebný stroj.
  2. Vyberte z menu Více bod Klonovat.
  3. V otevřeném okně vyplňte parametr Název.

    O zálohách v Proxmox VE

  4. Proveďte klonování stisknutím tlačítka Klonovat.

Tento nástroj umožňuje vytvořit kopii virtuálního stroje nejen na lokálním serveru. Pokud několik virtualizačních serverů spojíme do clusteru, pomocí tohoto nástroje lze okamžitě přesunout vytvořenou kopii na požadovaný fyzický server. Užitečnou funkcí je volba diskového úložiště (parametr Cílové úložiště), což je velmi pohodlné při přesunu virtuálního stroje z jednoho fyzického nosiče na druhý.

Formáty virtuálních úložišť

Podrobně si povíme o formátech úložišť používaných v Proxmox:

  1. RAW. Nejspolehlivější a nejjednodušší formát. Je to soubor obsahující data pevného disku "byte for byte" bez komprese nebo optimalizace. Je to velmi pohodlný formát, protože se snadno připojí standardním příkazem mount v jakémkoli linuxovém systému. Navíc je to nejrychlejší "typ" úložiště, protože hypervizor ho nemusí nijak zpracovávat.

    Závažnou nevýhodou tohoto formátu je to, že kolik místa jste přidělili virtuální mu, tolik místa na pevném disku bude soubor ve formátu RAW zabírat (nezávisle na skutečně využitém prostoru uvnitř virtuálního stroje).

  2. Formát obrazu QEMU (qcow2). Snad nejuniverzálnější formát pro vykonávání jakýchkoli úkolů. Jeho výhodou je, že soubor s daty bude obsahovat pouze skutečně obsazené místo uvnitř virtuálního stroje. Například, pokud bylo přiděleno 40 GB místa a skutečně bylo obsazeno pouze 2 GB, veškeré zbývající místo bude dostupné pro jiné VM. To je velmi aktuální v podmínkách úspory diskového prostoru.

    Malou nevýhodou práce s tímto formátem je následující: pro připojení takového obrazu v jakémkoli jiném systému bude nejprve nutné stáhnout speciální ovladač nbd, a také použít utilitu qemu-nbd, která umožní operačnímu systému přistupovat k souboru jako k běžnému blokovému zařízení. Poté bude obraz dostupný pro připojení, dělení na oddíly, provádění kontrolních operací souborového systému a další operace.

    Je třeba mít na paměti, že veškeré operace I/O při použití tohoto formátu jsou programově zpracovávány, což vede k zpomalení při aktivní práci s diskovým subsystémem. Pokud je cílem nasadit na server databázi, je lepší zvolit formát RAW.

  3. Formát obrazu VMware (vmdk). Tento formát je "nativní" pro hypervizor VMware vSphere a byl zahrnut do Proxmox pro zajištění kompatibility. Umožňuje migraci virtuálního stroje VMware do infrastruktury Proxmox.

    Použití vmdk na trvalém základě se nedoporučuje, tento formát je nejpomalejší v Proxmox, a proto je vhodný pouze k provádění migrace, nic víc. Pravděpodobně bude v blízké budoucnosti tato nevýhoda odstraněna.

Práce s obrazy disků

Sada s Proxmoxem je velmi užitečný nástroj s názvem qemu-img. Jednou z jeho funkcí je převod obrazů virtuálních disků. Pro jeho použití stačí otevřít konzoli hypervizoru a provést příkaz ve formátu:

qemu-img convert -f vmdk test.vmdk -O qcow2 test.qcow2

V uvedeném příkladu bude vmdk-obraz virtuálního úložiště VMware s názvem test převeden do formátu qcow2. To je velmi užitečný příkaz, když je potřeba opravit chybu při původním výběru formátu.

Díky tomuto příkazu lze také vynutit vytvoření potřebného obrazu pomocí argumentu – vytvoření instance,:

qemu-img create -f raw test.raw 40G

Takový příkaz vytvoří obraz test ve formátu RAW, o velikosti 40 GB. Nyní je možné ho připojit k libovolné z virtuálních strojů.

Změna velikosti virtuálního disku

A nakonec ukážeme, jak zvětšit velikost obrazu disku, pokud z nějakého důvodu přestalo být na něm místo. K tomu použijeme argument resize:

qemu-img resize -f raw test.raw 80G

Nyní má náš obraz velikost 80 GB. Podrobné informace o obrazu lze zobrazit pomocí argumentu Zobrazit užitečné informace o obrazech:

qemu-img info test.raw

Není třeba zapomínat, že samo rozšíření obrazu automaticky nezvětší velikost oddílu — pouze přidá dostupné volné místo. Pro zvětšení oddílu použijte příkaz:

resize2fs /dev/sda1

kde /dev/sda1 — požadovaný oddíl.

Automatizace vytvoření záloh

Použití ručního způsobu vytvoření záloh je velmi pracná úloha a zabere spoustu času. Proto Proxmox VE obsahuje nástroj pro automatické zálohování podle plánu. Podívejme se, jak to udělat:

  1. Pomocí webového rozhraní hypervizoru otevřeme položku Datacenter.
  2. Vybereme položku Zálohování.
  3. Stiskneme tlačítko Přidat.
  4. Nastavíme parametry pro plánovač.

    O zálohách v Proxmox VE

  5. Zaškrtneme položku Povolit.
  6. Uložíme změny pomocí tlačítka Vytvořit.

Nyní plánovač automaticky spustí program zálohování přesně v určeném čase, podle zadaného plánu.

Závěr

Byly zkoumány standardní způsoby zálohování a obnovy virtuálních strojů. Jejich použití umožňuje bez zvláštních problémů uchovat všechna data a v případě nouze je rychle obnovit.

Samozřejmě, že to není jediný možný způsob uchování důležitých dat. Existuje mnoho nástrojů, například, Duplicity, pomocí kterých je možné vytvářet kompletní a inkrementální kopie obsahu virtuálních serverů na bázi Linux.

Při provádění zálohovacích postupů je vždy třeba mít na paměti, že aktivně zatěžují diskovou subsystém. Vzhledem k tomu se doporučuje tyto postupy provádět v době minimální zátěže, aby se předešlo zpožděním při provádění operací vstupu a výstupu uvnitř strojů. Stav zpoždění diskových operací je možné sledovat přímo z webového rozhraní hypervizora (parametr IO delay).

Zdroj: habr.com

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster