So. Pro 21st, 2024

Vzhledem k mému zklamání včera s backuppc jsem se rozhodl, že to musím napravit.


To řešení se nazývá urbackup a na linuxu nemusíte ani mít LVM, aby šlo live backupovat pomocí dattobd modulu kernelu, který snapshotting umožní.

Zde je odkaz na instalaci na OpenSuse, RHEL/CentOS,Fedora, Suse Linux Enterprise, Debian/Ubuntu.

Pár řádků vám stáhne a nainstaluje modul, nebo zdrojáky a vykompiluje. V mém případě to buildovalo, všechna jádra jela chvíli na maximum.

Pro Debian/Ubuntu takto na klientském stroji, který chceme backupovat:

sudo apt-key adv --fetch-keys https://cpkg.datto.com/DATTO-PKGS-GPG-KEY
echo "deb [arch=amd64] https://cpkg.datto.com/datto-deb/public/$(lsb_release -sc) $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/datto-linux-agent.list
sudo apt-get update
sudo apt-get install dattobd-dkms dattobd-utils

Zdroj

Máme nainstalováno:

dpkg -l |grep dattobd
ii  dattobd-dkms                          0.11.2-1.1ubuntu22.04                   all          Kernel module source for dattobd managed by DKMS
ii  dattobd-utils                         0.11.2-1.1ubuntu22.04                   amd64        Utilities for using dattobd kernel module
ii  libdattobd1                           0.11.2-1.1ubuntu22.04                   amd64        Library for communicating with dattobd kernel module

Instalace urbackup klienta

Klient je k dispozici na všechna možná distra linuxu, na MacOS je betaclient, Windows klient na windows 10/11 x86/x64 jak server, tak klient. Je k dispozici i docker.
Je to prakticky jednořádkový skript, který se o vše postará za vás a dokonce po sobě uklidí:


TF=$(mktemp) && wget "https://hndl.urbackup.org/Client/2.5.24/UrBackup%20Client%20Linux%202.5.24.sh" -O $TF && sudo sh $TF; rm -f $TF

Ale výsledek vypadá takto:

--2023-09-12 18:13:50--  https://hndl.urbackup.org/Client/2.5.24/UrBackup%20Clie                                                                                                                                                      nt%20Linux%202.5.24.sh
Resolving hndl.urbackup.org (hndl.urbackup.org)... 198.58.118.162, 2600:3c00::f0                                                                                                                                                      3c:91ff:fec8:ecf6
Connecting to hndl.urbackup.org (hndl.urbackup.org)|198.58.118.162|:443... conne                                                                                                                                                      cted.
HTTP request sent, awaiting response... 200 OK
Length: 25458401 (24M) [text/x-sh]
Saving to: ‘/tmp/tmp.a0OsA2qDfo’

/tmp/tmp.a0OsA2qDfo                                       100%[===================================================================================================================================>]  24.28M  6.34MB/s    in 3.8s

2023-09-12 18:13:54 (6.34 MB/s) - ‘/tmp/tmp.a0OsA2qDfo’ saved [25458401/25458401]

Verifying archive integrity... All good.
Uncompressing UrBackup Client Installer for Linux  100%
Installation of UrBackup Client 2.5.24 to /usr/local ... Proceed ? [Y/n]
y
Uncompressing install data...
Detected Debian \(derivative\) system
Detected systemd
Detected architecture x86_64-linux-glibc
Installed daemon configuration at /etc/default/urbackupclient...
Info: Restoring from web interface is disabled per default. Enable by modifying /etc/default/urbackupclient.
Installing systemd unit...
Created symlink /etc/systemd/system/multi-user.target.wants/urbackupclientbackend.service → /lib/systemd/system/urbackupclientbackend.service.
Starting UrBackup Client service...
Successfully started client service. Installation complete.
+Detected Debian stable. Dattobd supported
-Detected no btrfs filesystem
+Detected LVM volumes
+dmsetup present
Please select the snapshot mechanism to be used for backups:
1) dattobd volume snapshot kernel module from https://github.com/datto/dattobd (supports image backups and changed block tracking)
2) LVM - Logical Volume Manager snapshots
4) Linux device mapper based snapshots (supports image backups and changed block tracking)
5) Use no snapshot mechanism
1
Configured dattobd. Please install dattobd following the instructions at https://github.com/datto/dattobd
Configured snapshot mechanism via /usr/local/etc/urbackup/snapshot.cfg

Instalace serveru (Ubuntu-server/Debian)

mám v testovací síti stroj s dns názvem:
urbackup.local
Na jeho ssh terminálu zadáme tyto commandy:

sudo add-apt-repository ppa:uroni/urbackup
sudo apt update -y
sudo apt install urbackup-server -y

po instalaci zadáme do prohlížeče:
http://urbackup.local:55414/

Ukázka hlavní stránky urbackup

Urbackup je naprosto blbuvzdorný, funkční od začátku, pár skriptů, rozběhaný rychle, přehledný, hezčí web interface než backuppc a nabízí přesně to, co od něho chceme. Ani jsem nikde nezadával možnost backupu, hned to začalo backupovat automaticky přidané VMko.

Ukázka dashboardu Activities, kde je možné zastavit jednotlivé akce, nebo zobrazit logy

Ukázka nastavení, při instalaci vám urbackup umožní nastavit, kam vůbec chcete skladovat zálohy. Ideální pro přimountování nějakého toho diskového pole.
Ukázka nastavení File Backups (zálohování souborů, nastavení uchovávání inkrementálních záloh atd…)
Nastavení záloh celých imagů, četnosti zálohování, minimálního počtu plných záloh atd…
Ukázka nastavení oprávnění
Nastavení chování klientů
Zobrazení všech archivů
Alerty, upozornění, varování
Urbackup umožňuje omezovat rychlost. Je to velmi užitečná vlastnost, když hrnete na jeden stroj více záloh z více zdrojů současně a chcete garantovat rozumné rozložení rychlosti mezi zálohovanými klienty.
Nastavení aktivních klientů. (To jsou ti klienti, kteří se ohlásí po nainstalování urbackup klienta serveru sami, nemusíte ho serveru vůbec přidávat. Tady někdo přemýšlel).
Ukázka rozšířených nastavení
Urbackup vám může posílat emaily s upozorněním
U LDAP/AD přistupů autoři varují, že nemáte očekávat funkčnost. Je fajn aspoň varovat, že to nemusí fungovat. Přitom, co jsem doposud viděl, jsem ochoten autorům urbackup ledacos odpustit.
Zatímco u backuppc vám terminál vygeneroval jednoho uživatele a heslo, tady v defaultu přistoupíte na web bez hesla a jako první úkon po zobrazení webu by mělo být vytvoření uživatele a silného hesla.
Ukázka statistik. Zatím tam nic není, protože se ještě nedokončila první záloha

Ukázka logů
Ukázka probíhající záloha z pokusné virtuálky

Jak obnovit zálohy (Disaster recovery)

Na webu jsou ke stažení instalovatelné image pro nabootování s obnovou zde.

Vyzkouším na virtualboxu. Mohl by to být technicky vzato velmi zajímavý nástroj, konkurující jednomu nástroji od vmwaru, který umožňoval fyzický stroj zvirtualizovat. Tady by to teoreticky mohlo jít úplně stejně.

Nabootuje klient:

boot obrazovka bootujícího klienta
Po kliknutí na enter vás program upozorní, že veškerá data v tomto stroji budou přepsána, tedy ztracena.
Chytré, program si vyhledá backup servery po lokální síti. Jen nesmíte mít ve Virtualboxu nastavené VM na režim NAT, chci vyzkoušet, jestli to server opravdu najde na lokální síti.

Pokud restore program backupserver nenajde, dá vám teprve pak na výběr, mě čeká vypnutí a opětovné zapnutí počítače.
Server to automaticky našlo a rovnou mi dalo na výběr, který stroj chci obnovit. Funguje naprosto bezchybně. Tleskám.
O 2 hodiny jiný čas, ale to bude problém špatné timezony na urbackupserveru
Vybereme KAM na jaký disk obnovíme zálohu (snad mi to sežere v pořádku)
Znovu jsme varováni, že místní disk bude přepsán zálohou a že přijdeme o všechna data na aktuálním disku, který chceme přepsat zálohou

První porodní bolesti.

dávám r – Restart restore
znovu to hledá backup servery.

Tak verze 2.0.2 úplně nevyšla, zkusme verzi 2.4.2

Verze 2.4.2, uznávám, že předchozí verze 2.0.2 mohla mít problém.
Zkusíme Graphical/modern interface
měl jsem raději dát textový interface, nicméně i tohle je příjemná zkušenost.

Příjemná klikačka.
Na výběr je z obnovy MBR/GPT a potom obnovy obsahu diskových oddílů, nebo jenom MBR/GPT anebo jen obnovy diskového oddílu (to se může hodit v případě, když všechno je v pořádku, jenom chceme obnovit konkrétní z vícero rozbitých oddílů.
Opět upozornění, že přijdeme o data přepsáním ze zálohy. Všimněte si již správného času.


Na menší filesystém to neobnovíte, ačkoliv objem dat na původním VMku nepřesahuje velikost stávajícího virtuálního disku. Takže jdeme zvětšit virtuální disk. Další screenshoty budou pokračovat tam, kde jsme zde skončili.

Velmi pěkné. Vidíte na grafu aktuální rychlost, progress bar, kolik %, jaká fáze se právě v backupu odehrává a do toho si můžete projít další utility v live restore debianu
K dispozici na live restorebackupu je i gparted na vytváření, formátování a práci s oddíly.
Dále Chromium browser a kalkulačka a další „nezbytnosti“ Velikost urbackup_restore_2.4.2.iso je 606 MB.

Věřím, že by se řešení dalo přepracovat do PXE serveru, ze kterého by se restore bootoval. Stroje pro disaster recovery by se tak následně mohly snadno nabootovat ze sítě pro „rychlou obnovu“. V tomto vláknu se někdo pro tyto účely rozběhat docker kontejner. Takže to jde.

Na dockerhubu jsem zatím našel jen urbackup-clienta, ale nikoliv pxe server s urbackup klientem. Asi to vypadá, že budu muset něco sám udělat a pomoci komunitě.

Ukázka dokončeného obnovení ze zálohy.

Závěr

Když dva dělají totéž, není to totéž. Urbackup řešení prakticky nemám co vytknout. Umí to live backupy, přehledné rozhraní, velmi snadná, automatizovatelná instalace (ještě musím přijít na to, jak odkliknout tu jedničku pro dattobd na ext4 souborových systémech) a dovedu si představit, že bych tohle řešení používal i na produkci. Intuitivní, spolehlivé, snadno rozběhané.
Obnovení zálohy příjemné, bez problémů, komunita si poradila a vytváří pxe servery s urbackup-restorem, který chci též rozběhat, akorát v prostředí, kde mohou mít servery např. 802.3ad protokol (LACP bonding) na všech síťových kartách, to bude trošku komplikovanější. Prakticky nemám co vytknout. Za jeden večer to máte rozběhané a můžete fungovat.

Avatar

By mirra

Hardwaru a počítačům se věnuji již od roku 2003. Za tu dobu jsem poskládal stovky počítačů, opravil tisíce počítačů a vyřešil nespočetně problémů, vad a chyb, se kterými se setkávali uživatelé. Od roku 2005 se zabývám servery, zejména těmi herními, v roce 2007 jsem se začal věnovat Valve Source SDK level designu, který šel od roku 2009 k ledu kvůli studiu Informatiky na univerzitě. Podílel jsem se chvíli i na provozu síťové laboratoře MENDELU, dnes spravuji v jedné osobě cca 100 serverů/diskových polí na univerzitě, řeším IT v malých a středních firmách tak, aby firmy ušetřily nemalé částky při zlepšení kvality a soustředím se na snižování nákladů na IT od licencí až po hardware, software, provádím konsolidace a audity platnosti licencí, které firmám šetří rovněž nemalé peníze. Z velkých firem jsem měl příležitost s dalšími kolegy řešit správu 8000 serverů po celé západní Evropě s vysokou mírou automatizace a poznávání nejrůznějších evropských pracovních mentalit. Dále jsem řešil hybridní cloud ve velké firmě, orientované na trhy střední a východní Evropy. Posledních několik let se věnuji Devops pro velké zákazníky v Azure cloudu, spravuji kubernetes (AKS), Gitlab.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *