private:poznamky:linux:zfs
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verze | ||
| private:poznamky:linux:zfs [2023/03/03 10:15] – [Instalace Debian 11 - Bullseye] snemec | private:poznamky:linux:zfs [2025/05/07 19:55] (aktuální) – [Příklad použití clone - obnova souborů k určitému datu] snemec | ||
|---|---|---|---|
| Řádek 1: | Řádek 1: | ||
| + | ====== ZFS ====== | ||
| + | |||
| + | ZFSonLinux | ||
| + | |||
| + | https:// | ||
| + | |||
| + | ===== Doporučení pro vytváření ZFS device - Read Me 1st ===== | ||
| + | |||
| + | ZFS Raid - popis\\ | ||
| + | |||
| + | http:// | ||
| + | |||
| + | https:// | ||
| + | |||
| + | **Verze ZFS**\\ | ||
| + | '' | ||
| + | |||
| + | |||
| + | ===== Vytvoření zpool ===== | ||
| + | Zpool je tvořen jen jedním diskem, může se použít např. pro zálohy na USB disk.\\ | ||
| + | Disky mohou rotovat. | ||
| + | |||
| + | zpool create -f poolz3bck /dev/sdg | ||
| + | |||
| + | zfs create poolz3bck/ | ||
| + | |||
| + | zfs set compression=lz4 poolz3bck/ | ||
| + | | ||
| + | ===== Odstranění zpool ===== | ||
| + | |||
| + | < | ||
| + | zpool destroy poolz3bck | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Vytvoření ZFS pool dle id disků ==== | ||
| + | '' | ||
| + | |||
| + | Mapování mezi ID a jménem lze zjistit příkazem '' | ||
| + | Konkrétně např. pro disk '' | ||
| + | |||
| + | lsblk -O /dev/sda | ||
| + | |||
| + | ===== Vytvoření raid pool ===== | ||
| + | |||
| + | Vytvoření **mirror** pool:\\ | ||
| + | < | ||
| + | zpool create -f vspool mirror | ||
| + | </ | ||
| + | Vytvoření **raidz1** pool:\\ | ||
| + | |||
| + | < | ||
| + | zpool create -f vspool raidz1 / | ||
| + | </ | ||
| + | | ||
| + | ==== Raid pool pro Proxmox - VS ==== | ||
| + | |||
| + | https:// | ||
| + | https:// | ||
| + | |||
| + | **Mirror vdev**\\ | ||
| + | < | ||
| + | zpool create vspool01 -o ashift=12 mirror ata-SAMSUNG_MZ7L31T9HBLT-00A07_S6ESNC0TC10583 ata-SAMSUNG_MZ7L31T9HBLT-00A07_S6ESNC0TC10568 | ||
| + | </ | ||
| + | |||
| + | **Nastavení komprese**\\ | ||
| + | < | ||
| + | zfs set compression=lz4 vspool01 | ||
| + | </ | ||
| + | |||
| + | **Vypnutí atime**\\ | ||
| + | < | ||
| + | zfs set atime=off vspool01 | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | | ||
| + | ===== Vytvoření block device - dataset ===== | ||
| + | Např. pro Xen VM | ||
| + | |||
| + | |||
| + | < | ||
| + | zfs create -V 40G vspool/ | ||
| + | | ||
| + | # blocksize 128k | ||
| + | zfs create -V 200G -o compression=lz4 -o volblocksize=128k vspool/ | ||
| + | |||
| + | |||
| + | zfs get volsize, | ||
| + | |||
| + | </ | ||
| + | ==== Rozšíření prostoru pro block device - rozšíření datasetu - resize ==== | ||
| + | |||
| + | Zjištění stávající velikosti\\ | ||
| + | |||
| + | zfs get volsize vspool/ | ||
| + | | ||
| + | Nstavení nvé velikosti | ||
| + | | ||
| + | zfs set volsize=45G vspool/ | ||
| + | |||
| + | http:// | ||
| + | http:// | ||
| + | |||
| + | Pro rozšíření je nutné vypnout/ | ||
| + | |||
| + | Pro **Windows systémy** je diskový prostor možné rozšířit online v rámci nástroje **Správa disků**.\\ | ||
| + | |||
| + | Pro **Linux systémy** by měl být funkční následující postup:\\ | ||
| + | |||
| + | - Vypnout virtuální počítač | ||
| + | - Pomocí nástroje fdisk odstranit obkast pro swap (např. '' | ||
| + | - Smazat oblast 1 a následně vytvořit novou rozšířenou(větší než původní) oblast. Ponechte prostor pro swap. | ||
| + | - Proveďte kontrolu nové oblasti 1 -> '' | ||
| + | - Po úspěšně kontrole proveďte resize -> '' | ||
| + | |||
| + | |||
| + | |||
| + | ==== Kopie block device do img souboru ==== | ||
| + | |||
| + | Block device(např. virtuální PC) lze zkopírovat pomocí příkazu '' | ||
| + | |||
| + | Např.: '' | ||
| + | ===== ZIL log a L2ARC cache ===== | ||
| + | |||
| + | http:// | ||
| + | |||
| + | https:// | ||
| + | |||
| + | ZFS with SSDs: Am I asking for a headache in the near future?\\ | ||
| + | https:// | ||
| + | |||
| + | I have no idea how the lack of TRIM in ZFS affects cache performance in the long term, but all SSDs have automatic garbage collection / maintenance routines, so I think the most important thing is to set aside some decent OP (over provision = unpartitioned space) area, like 15-20% of the capacity, and I reckon everything should be fine. | ||
| + | |||
| + | On 250 GB TLC drives, I would leave about 40-50 GB unpartitioned, | ||
| + | - 10 GB SWAP (mirrored on other drive) | ||
| + | - 10 GB ZIL (mirrored on other drive) | ||
| + | - 180 GB L2ARC (striped with other drive) | ||
| + | |||
| + | |||
| + | | ||
| + | Používaji se SSD disky. Pro ZIL log stačí menší prostor ideálně miror, pro L2ARC cache nemirorovaný.\\ | ||
| + | |||
| + | SSD disky se rozdělí na partition. Např pro 128GB SSD se nechá 8GB pro log a zbytek pro cache.\\ | ||
| + | |||
| + | |||
| + | zpool add vspool log mirror / | ||
| + | zpool add vspool cache / | ||
| + | |||
| + | Výsledek pak vypadá podobně jako na výpisu: | ||
| + | |||
| + | debian:~# zpool status | ||
| + | pool: vspool | ||
| + | state: ONLINE | ||
| + | scan: resilvered 0 in 0h33m with 0 errors on Tue May 17 14:41:08 2016 | ||
| + | config: | ||
| + | | ||
| + | vspool | ||
| + | mirror-0 | ||
| + | ata-WDC_WD7500BPKX-00HPJT0_WD-WXG1A95HA0A8 | ||
| + | ata-WDC_WD7500BPKX-00HPJT0_WD-WXG1A95HAH3C | ||
| + | logs | ||
| + | mirror-1 | ||
| + | ata-Samsung_SSD_850_PRO_128GB_S24ZNWAG942247J-part1 | ||
| + | ata-Samsung_SSD_850_PRO_128GB_S24ZNXAGA14082B-part1 | ||
| + | cache | ||
| + | ata-Samsung_SSD_850_PRO_128GB_S24ZNWAG942247J-part2 | ||
| + | ata-Samsung_SSD_850_PRO_128GB_S24ZNXAGA14082B-part2 | ||
| + | errors: No known data errors | ||
| + | | ||
| + | ===== Mount ===== | ||
| + | |||
| + | Mount zfs pool. | ||
| + | |||
| + | Nastavení mountpointu a zároveň připojení\\ | ||
| + | < | ||
| + | | ||
| + | Připojení k již existujícímu mountpointu\\ | ||
| + | < | ||
| + | |||
| + | |||
| + | | ||
| + | |||
| + | ===== Quota ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | Existují dvě možnosti jak nastavit quotu. | ||
| + | |||
| + | **Quota** - do celkové velikosti se započítavají snapshoty\\ | ||
| + | |||
| + | **Refquota** - započítává se jen místo obsazené daty (ne snapshoty)\\ | ||
| + | |||
| + | < | ||
| + | zfs get refquota, | ||
| + | |||
| + | zfs set quota=20G vspool/ | ||
| + | zfs get quota vspool/ | ||
| + | |||
| + | zfs set refquota=15G vspool/ | ||
| + | zfs get refquota vspool/ | ||
| + | </ | ||
| + | |||
| + | |||
| + | Pomocí quoty jsou omezeny velikosti LXC kontejnerů v Proxmoxu - např. jira, confluence, bamboo | ||
| + | |||
| + | |||
| + | |||
| + | <WRAP left round important 100%> | ||
| + | Pokud se vyčerpá nastavený limit, není možné mazat soubory a odstraňovat adresáře.\\ | ||
| + | Nikdy nezkoušejte zmenšit velikost. | ||
| + | </ | ||
| + | |||
| + | ===== zfSnap - Zálohování pomocí snashotů ===== | ||
| + | |||
| + | zfs backup - zfSnap\\ | ||
| + | |||
| + | |||
| + | Je použitý externí skrip zfSnap\\ | ||
| + | https:// | ||
| + | |||
| + | Pro Debian a Ubuntu existuje balíček '' | ||
| + | |||
| + | apt-get install zfsnap | ||
| + | |||
| + | '' | ||
| + | např: '' | ||
| + | |||
| + | < | ||
| + | 0 8-22/1 * * * / | ||
| + | 0 23 * * 1-5 / | ||
| + | 0 23 * * 6 / | ||
| + | 45 23 1 * * / | ||
| + | 0 1 * * * / | ||
| + | 10 */1 * * * / | ||
| + | </ | ||
| + | |||
| + | ===== Smazání všech snapshotů ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | ### s parametrem n se provede test - nedojde ke smazání | ||
| + | zfs destroy -rnv data/ | ||
| + | | ||
| + | zfs destroy -rv data/ | ||
| + | |||
| + | ===== Obnova ze snapshotu ===== | ||
| + | |||
| + | Lze použít buď příkaz **rollback** nebo **clone** | ||
| + | |||
| + | Pro obnovu je ideální použít **clone** a **promote** | ||
| + | |||
| + | |||
| + | Po naklonování snapshotu se otestuje funkčnost(dostupná data, funkční VS). Pokud je vše v pořádku tak se může provést **promote**\\ | ||
| + | To má za následek, že vznikne druhý dataset. | ||
| + | |||
| + | **DODĚLAT -UPRAVIT** | ||
| + | |||
| + | https:// | ||
| + | |||
| + | |||
| + | ==== Rolback ==== | ||
| + | |||
| + | **POZOR**, rollback snapshotu se vrátí do stavu pořízení snapshotu. Časově následující snapshoty jsou smazány. | ||
| + | |||
| + | zfs rollback -r vspool/ | ||
| + | |||
| + | ==== Clone, promote, rename ==== | ||
| + | |||
| + | zfs clone vspool/ | ||
| + | | ||
| + | < | ||
| + | debian:/ | ||
| + | NAME USED AVAIL REFER MOUNTPOINT | ||
| + | vspool | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | </ | ||
| + | |||
| + | Byl vytvořen zapisovatelný snapshot '' | ||
| + | |||
| + | disk = [ ' | ||
| + | |||
| + | Jestliže jsou na disku očekávaná data, lze použít příkaz '' | ||
| + | |||
| + | < | ||
| + | zfs promote vspool/ | ||
| + | </ | ||
| + | |||
| + | Pokud klon nebyl proveden ze správného snapshotu - na disku nejsou požadovaná data je možné klon smazat příkazem | ||
| + | |||
| + | < | ||
| + | zfs destroy vspool/ | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | debian:/ | ||
| + | NAME USED AVAIL REFER MOUNTPOINT | ||
| + | vspool | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | </ | ||
| + | |||
| + | Po provedení '' | ||
| + | |||
| + | zfs rename vspool/ | ||
| + | zfs rename vspool/ | ||
| + | zfs rename vspool/ | ||
| + | | ||
| + | ==== Příklad použití clone, promote a rename pro KEO ==== | ||
| + | |||
| + | Po výpadku el. nenastartovala postrges SQL databáze.\\ | ||
| + | Obnovil jsem server ze snapshotu cca 1hod před výpadkem el. | ||
| + | |||
| + | Výpis příkazů: | ||
| + | |||
| + | < | ||
| + | zfs clone vspool/ | ||
| + | |||
| + | # po overeni funkcnosti(musi se upravit xen cfg soubor) nasleduje promote | ||
| + | zfs promote vspool/ | ||
| + | |||
| + | # | ||
| + | zfs rename vspool/ | ||
| + | |||
| + | # | ||
| + | zfs rename vspool/ | ||
| + | |||
| + | #smazání poškozeného souboru - keo-bad | ||
| + | zfs destroy -r vspool/ | ||
| + | |||
| + | </ | ||
| + | |||
| + | ==== Příklad použití clone - obnova souborů k určitému datu ==== | ||
| + | |||
| + | **Blokové zařízení - Proxmox VS** | ||
| + | |||
| + | V příkladu je popsána obnova souboru uloženého na sdíleném NTFS disku.\\ | ||
| + | |||
| + | < | ||
| + | #Vyber pozadovaneho snapshotu | ||
| + | zfs list -t all|grep props|grep server02 | ||
| + | |||
| + | #Vybran snapshot z 2025-04-30_02.00.01 | ||
| + | backup/ | ||
| + | |||
| + | #Clone snapshotu | ||
| + | zfs clone backup/ | ||
| + | |||
| + | #Pripojeni - mount Clone device | ||
| + | mount / | ||
| + | |||
| + | #Vyber pozadovaneho souboru a kopie napr. do slozky /home | ||
| + | root@bcksrv01:/# | ||
| + | total 3670149 | ||
| + | drwxrwxrwx 1 root root 28672 Apr 16 16:18 . | ||
| + | drwxr-xr-x 4 root root 4096 May 7 21:40 .. | ||
| + | drwxrwxrwx 1 root root 4096 Jan 6 17:23 ' | ||
| + | -rwxrwxrwx 1 root root 80 Mar 17 2022 bootTel.dat | ||
| + | drwxrwxrwx 1 root root 4096 Feb 10 2022 Data | ||
| + | lrwxrwxrwx 2 root root 15 Jan 14 2020 ' | ||
| + | drwxrwxrwx 1 root root 0 Feb 26 2020 inetpub | ||
| + | drwxrwxrwx 1 root root 4096 Feb 23 18:53 MKSol | ||
| + | -rwxrwxrwx 2 root root 44812 Apr 4 22:00 OnedriveService.log | ||
| + | drwxrwxrwx 1 root root 0 Jan 12 2022 OneDriveTemp | ||
| + | -rwxrwxrwx 1 root root 3758096384 Apr 4 21:59 pagefile.sys | ||
| + | drwxrwxrwx 1 root root 0 Jun 18 2021 PerfLogs | ||
| + | drwxrwxrwx 1 root root 4096 Feb 12 2024 ProgramData | ||
| + | drwxrwxrwx 1 root root 8192 Apr 16 09:41 ' | ||
| + | drwxrwxrwx 1 root root 8192 Feb 6 2023 ' | ||
| + | drwxrwxrwx 1 root root 0 Jan 14 2020 Recovery | ||
| + | drwxrwxrwx 1 root root 4096 Jan 14 2020 ' | ||
| + | drwxrwxrwx 1 root root 4096 Jan 6 17:23 Users | ||
| + | drwxrwxrwx 1 root root 16384 Apr 16 09:41 Windows | ||
| + | |||
| + | #Umount | ||
| + | umount /mnt/zvol | ||
| + | |||
| + | #Odstraneni naklonovaneho zarizeni - zfs destroy | ||
| + | backup/ | ||
| + | |||
| + | </ | ||
| + | | ||
| + | |||
| + | |||
| + | ===== Replikace - záloha pomocí skriptu zxfer ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | Jedná o externí skript.\\ | ||
| + | '' | ||
| + | |||
| + | https:// | ||
| + | |||
| + | Raw file - pro stažení - verze 1.1.7-20190219\\ | ||
| + | https:// | ||
| + | |||
| + | '' | ||
| + | |||
| + | Manuál s příklady použití\\ | ||
| + | https:// | ||
| + | |||
| + | **Upravený skript - řeší problém lokální replikace a readonly parametrů**\\ | ||
| + | https:// | ||
| + | |||
| + | |||
| + | **Pozor** skript standardně nepoužívá sysstémovou proměnou PATH, což může být problém při použití v cronu.\\ | ||
| + | V logu se objevovala hláška: //Failed to retrieve datasets from the destination// | ||
| + | |||
| + | Po přidání '' | ||
| + | |||
| + | |||
| + | Nastavení cron pro rekurzivní zálohu všech filesystemů na vspool/VM\\ | ||
| + | |||
| + | '' | ||
| + | |||
| + | Rekurzivní záloha filesystému vision na USB disk\\ | ||
| + | | ||
| + | zxfer -dFkPv -g 376 -R vspool/ | ||
| + | | ||
| + | Rekurzivní záloha filesystému na vzdálený počítač\\ | ||
| + | |||
| + | / | ||
| + | / | ||
| + | / | ||
| + | | ||
| + | Konfigurace pro ssh je uložena v souboru / | ||
| + | |||
| + | < | ||
| + | Host btax01 | ||
| + | HostName 192.168.0.10 | ||
| + | Port 22 | ||
| + | User root | ||
| + | IdentityFile ~/ | ||
| + | </ | ||
| + | ===== Obnova pomocí zxfer ===== | ||
| + | |||
| + | ==== Obnova celého pool(u) ==== | ||
| + | | ||
| + | zxfer -deFPv -R backup01/ | ||
| + | |||
| + | |||
| + | ==== Obnova filesystému ==== | ||
| + | | ||
| + | **Vzdálená obnova - podmínkou je nakonfigurované ssh(config + klíč)**\\ | ||
| + | zxfer -deFPv -O bckralupy -R backup/ | ||
| + | | ||
| + | Kopíruje se ze zálohovacího serveru(bckralupy) na lokální server do vspool\\ | ||
| + | |||
| + | < | ||
| + | NAME USED AVAIL | ||
| + | vspool | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | vspool/ | ||
| + | . | ||
| + | . | ||
| + | . | ||
| + | </ | ||
| + | |||
| + | **Lokálně**\\ | ||
| + | zxfer -deFPv -N zbackup/ | ||
| + | | ||
| + | Před spuštěním přikazu je potřeba smazat původní file system\\ | ||
| + | zfs destroy -r vspool/ | ||
| + | |||
| + | | ||
| + | | ||
| + | http:// | ||
| + | https:// | ||
| + | https:// | ||
| + | Zvýšení rychlosti zfs send a receive\\ | ||
| + | http:// | ||
| + | http:// | ||
| + | https:// | ||
| + | http:// | ||
| + | |||
| + | ===== Problém při lokální kopii pomocí ZXFER ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | Upravený skript zxfer: {{ : | ||
| + | |||
| + | Zakomentovány řádky **688, | ||
| + | |||
| + | <code bash> | ||
| + | #if [ " | ||
| + | # rzfs_list_hr_S_snap=$lzfs_list_hr_S_snap | ||
| + | #else ##SNE | ||
| + | rzfs_list_hr_S_snap=$($RZFS list -Hr -o name -S creation -t snapshot $destination) || | ||
| + | { echo " | ||
| + | #fi ##SNE | ||
| + | </ | ||
| + | |||
| + | ===== Problém při replikaci na zfs verze 0.7.x ===== | ||
| + | |||
| + | V teto verzi přibyli nové atributy. Proto je potřeba upravit skript '' | ||
| + | |||
| + | https:// | ||
| + | |||
| + | |||
| + | Upravený skript - řeší i problém lokální replikace\\ | ||
| + | https:// | ||
| + | |||
| + | ==== Replikace z ProxMox serveru - problém s právy ==== | ||
| + | |||
| + | Při pokusu o replikaci se objeví chybová hláška: | ||
| + | < | ||
| + | / | ||
| + | Creating destination filesystem " | ||
| + | cannot create ' | ||
| + | Error when creating destination filesystem. | ||
| + | </ | ||
| + | |||
| + | Na záložním serveru je potřeba vytvořit jednotlivé filestémy a nastavit oprávnění | ||
| + | |||
| + | < | ||
| + | zfs create backup/ | ||
| + | zfs create backup/ | ||
| + | zfs create backup/ | ||
| + | zfs set acltype=posixacl backup/ | ||
| + | zfs set acltype=posixacl backup/ | ||
| + | </ | ||
| + | |||
| + | ===== Záloha na vyměnitelná média - USB disk ===== | ||
| + | |||
| + | zpool list | ||
| + | | ||
| + | NAME | ||
| + | vspool | ||
| + | zfsbck | ||
| + | |||
| + | |||
| + | |||
| + | zpool export zfsbck | ||
| + | | ||
| + | |||
| + | |||
| + | zpool list | ||
| + | | ||
| + | NAME | ||
| + | vspool | ||
| + | |||
| + | | ||
| + | zpool import zfsbck | ||
| + | | ||
| + | Pokud se použije příkaz '' | ||
| + | |||
| + | | ||
| + | zpool list | ||
| + | | ||
| + | NAME | ||
| + | vspool | ||
| + | zfsbck | ||
| + | |||
| + | ===== Obnova ze zálohy ===== | ||
| + | |||
| + | Před obnovou můžeme ověřit zálohu příkazem | ||
| + | |||
| + | zstreamdump < confluence.img | ||
| + | |||
| + | V rámci dvou zfs uložišť lze použít '' | ||
| + | Ale pokud např. uložíme zfs snapshot na Ext4 souborový systém příkazem\\ '' | ||
| + | |||
| + | Zde jsem chvíli tápal, domníval jsem se, že soubor cnfluence.img je již obraz virtuálního serveru. Ale není tomu tak.Jedná se o uložený dataset a jeden konkrétní snapshot. | ||
| + | |||
| + | Pro obnovu je potřeba příkazem '' | ||
| + | |||
| + | Např.: '' | ||
| + | |||
| + | < | ||
| + | zfs list -t all|grep vspool | ||
| + | |||
| + | vspool/ | ||
| + | vspool/ | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ===== Výměna vadného disku ===== | ||
| + | | ||
| + | http:// | ||
| + | |||
| + | Pomocí příkazu zdb zjistíme disk GUID a následně převedeme disk do stavu offline. | ||
| + | |||
| + | zpool offline vspool 8908311146390156902 | ||
| + | | ||
| + | Následně vyměníme vadný disk za nový a pak pomocí příkazu replace zařadíme do pool. | ||
| + | |||
| + | zpool replace vspool 8908311146390156902 / | ||
| + | | ||
| + | |||
| + | ===== Odstranění Logs a Cache device z pool ===== | ||
| + | |||
| + | Na serveru docházelo k chybám disku v Log a Cache | ||
| + | |||
| + | < | ||
| + | |||
| + | | ||
| + | vspool | ||
| + | raidz1-0 | ||
| + | ata-WDC_WD7500BPKX-00HPJT0_WD-WXA1A25RKPVC | ||
| + | ata-WDC_WD7500BPKX-00HPJT0_WD-WXG1A95HA0A8 | ||
| + | ata-WDC_WD7500BPKX-00HPJT0_WD-WXG1A95HAH3C | ||
| + | logs | ||
| + | mirror-1 | ||
| + | 6032371930805775579 | ||
| + | ata-Samsung_SSD_850_PRO_128GB_S24ZNXAGA14082B-part1 | ||
| + | cache | ||
| + | ata-Samsung_SSD_850_PRO_128GB_S24ZNWAG942247J-part2 | ||
| + | ata-Samsung_SSD_850_PRO_128GB_S24ZNXAGA14082B-part2 | ||
| + | | ||
| + | </ | ||
| + | | ||
| + | | ||
| + | Proto bylo nutné zrušit Logs a Cache.\\ | ||
| + | |||
| + | Vadný disk není možné odebrat, je nutné nejdříve provést detach. | ||
| + | |||
| + | zpool remove vspool ata-Samsung_SSD_850_PRO_128GB_S24ZNWAG942247J-part1 | ||
| + | cannot remove ata-Samsung_SSD_850_PRO_128GB_S24ZNWAG942247J-part1: | ||
| + | | ||
| + | zpool detach vspool ata-Samsung_SSD_850_PRO_128GB_S24ZNWAG942247J-part1 | ||
| + | |||
| + | |||
| + | Partititon zařazenou v Cache nebylo možné detach, ale bylo možné jí odebrat\\ | ||
| + | |||
| + | zpool detach vspool ata-Samsung_SSD_850_PRO_128GB_S24ZNWAG942247J-part2 | ||
| + | cannot detach ata-Samsung_SSD_850_PRO_128GB_S24ZNWAG942247J-part2: | ||
| + | | ||
| + | zpool remove vspool ata-Samsung_SSD_850_PRO_128GB_S24ZNWAG942247J-part2 | ||
| + | | ||
| + | zpool status pak vypadá následovně\\ | ||
| + | |||
| + | < | ||
| + | |||
| + | root@ubuntu: | ||
| + | pool: vspool | ||
| + | | ||
| + | scan: scrub repaired 0 in 0h0m with 0 errors on Sun Feb 12 00:24:13 2017 | ||
| + | config: | ||
| + | |||
| + | NAME | ||
| + | vspool | ||
| + | raidz1-0 | ||
| + | ata-WDC_WD7500BPKX-00HPJT0_WD-WXA1A25RKPVC | ||
| + | ata-WDC_WD7500BPKX-00HPJT0_WD-WXG1A95HA0A8 | ||
| + | ata-WDC_WD7500BPKX-00HPJT0_WD-WXG1A95HAH3C | ||
| + | logs | ||
| + | ata-Samsung_SSD_850_PRO_128GB_S24ZNXAGA14082B-part1 | ||
| + | cache | ||
| + | ata-Samsung_SSD_850_PRO_128GB_S24ZNXAGA14082B-part2 | ||
| + | |||
| + | errors: No known data errors | ||
| + | | ||
| + | </ | ||
| + | |||
| + | Nyní je možné odstranit z pool dvě funkční partition | ||
| + | |||
| + | zpool remove vspool ata-Samsung_SSD_850_PRO_128GB_S24ZNXAGA14082B-part1 | ||
| + | zpool remove vspool ata-Samsung_SSD_850_PRO_128GB_S24ZNXAGA14082B-part2 | ||
| + | | ||
| + | < | ||
| + | root@ubuntu: | ||
| + | pool: vspool | ||
| + | | ||
| + | scan: scrub repaired 0 in 0h0m with 0 errors on Sun Feb 12 00:24:13 2017 | ||
| + | config: | ||
| + | |||
| + | NAME STATE READ WRITE CKSUM | ||
| + | vspool | ||
| + | raidz1-0 | ||
| + | ata-WDC_WD7500BPKX-00HPJT0_WD-WXA1A25RKPVC | ||
| + | ata-WDC_WD7500BPKX-00HPJT0_WD-WXG1A95HA0A8 | ||
| + | ata-WDC_WD7500BPKX-00HPJT0_WD-WXG1A95HAH3C | ||
| + | |||
| + | errors: No known data errors | ||
| + | |||
| + | </ | ||
| + | | ||
| + | |||
| + | |||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | ==== Odkazy ==== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | https:// | ||
| + | |||
| + | http:// | ||
| + | |||
| + | https:// | ||
| + | |||
| + | http:// | ||
| + | |||
| + | http:// | ||
| + | |||
| + | http:// | ||
| + | |||
| + | |||
| + | http:// | ||
| + | |||
| + | http:// | ||
| + | |||
| + | Xen domu storage\\ | ||
| + | http:// | ||
| + | |||
| + | Ubuntu ZFS install\\ | ||
| + | http:// | ||
| + | Ubuntu 16.4 ZFS install\\ | ||
| + | https:// | ||
| + | |||
| + | https:// | ||
| + | |||
| + | https:// | ||
| + | |||
| + | ZFS Raidz Performance, | ||
| + | https:// | ||
| + | http:// | ||
| + | |||
| + | ZVOL storage for VMs\\ | ||
| + | https:// | ||
| + | http:// | ||
| + | http:// | ||
| + | |||
| + | https:// | ||
| + | |||
| + | |||
| + | **832 TB ZFS - HW Supermicro**\\ | ||
| + | https:// | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ===== Zapracovat do dokumentu ===== | ||
| + | |||
| + | zfs send tank/ | ||
| + | |||
| + | ===== Scrub ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | Na cca 3TB poli jsem spustil '' | ||
| + | Servery přestali reagovat a celý systém měl hrozně dlouhé odezvy. Nakonec jsem musel scrub ukončit '' | ||
| + | |||
| + | ===== Problémy ===== | ||
| + | |||
| + | Nový pool nebylo možné vytvořit, jeden z disků se pro OS zdál používaný.\\ | ||
| + | Problém byl způsoben asi historickým použitím raid disku(instalace mdadm). Problém se podařilo detekovat pomocí programu '' | ||
| + | Pak pomohla odinstalace balíku mdadm - '' | ||
| + | |||
| + | |||
| + | ===== ZFS on Debian 9 ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | |||
| + | < | ||
| + | sed -i ' | ||
| + | apt-get update | ||
| + | |||
| + | apt -y install linux-headers-$(uname -r) | ||
| + | ln -s /bin/rm /usr/bin/rm | ||
| + | apt-get -y install zfs-dkms | ||
| + | |||
| + | / | ||
| + | |||
| + | systemctl restart zfs-import-cache | ||
| + | systemctl restart zfs-import-scan | ||
| + | systemctl restart zfs-mount | ||
| + | systemctl restart zfs-share | ||
| + | </ | ||
| + | |||
| + | **Pozor**, nyní je potřeba vytvořit pool, zkontrolovat příkazem '' | ||
| + | |||
| + | |||
| + | ===== Optimalizace ZFS pro SSD disky ===== | ||
| + | |||
| + | http:// | ||
| + | |||
| + | https:// | ||
| + | |||
| + | ===== Remove ZFS Metadata ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | |||
| + | < | ||
| + | #replace /dev/sdXX with that actual ID of your hard drive | ||
| + | dd if=/ | ||
| + | dd if=/ | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Resilver ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | ===== ZFS Storage ===== | ||
| + | |||
| + | 71 TiB DIY NAS Based on ZFS on Linux | ||
| + | |||
| + | https:// | ||
| + | |||
| + | |||
| + | ===== ZFS Health Check and Status ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | |||
| + | ===== Rename POOL ===== | ||
| + | |||
| + | ZFS rename POOL | ||
| + | |||
| + | https:// | ||
| + | |||
| + | Postup je jednoduchý, | ||
| + | |||
| + | Pokud je disk registrovaný jako storage v Proxmoxu, je potřeba ho nejdříve odebrat - jinak se automaticky importuje. | ||
| + | |||
| + | < | ||
| + | zpool export vspool01 | ||
| + | zpool import 5450106253634307464 vspool011 | ||
| + | </ | ||
| + | |||
| + | ===== Optimalizace pro DB ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | |||
| + | ===== Vytvoření raid1 pool přidáním disku - beze ztráty dat ===== | ||
| + | |||
| + | Po připojení druhého disku se spustí resilvering. Doba trvání resilveringu(synchronizace dat v rámci pole) je závislá na množství dat a velikosti disku. | ||
| + | |||
| + | < | ||
| + | zpool attach mypool /dev/sdX /dev/sdY | ||
| + | </ | ||
| + | |||
| + | https:// | ||
| + | |||
| + | |||
| + | ===== ZFS share ===== | ||
| + | |||
| + | Sdílení souborového systému např. pro nfs nebo smb(samba) | ||
| + | |||
| + | https:// | ||
| + | |||
| + | ===== ZFS volume - změna volblocksize ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | https:// | ||
| + | |||
| + | ===== Instalace Debian 11 - Bullseye ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | < | ||
| + | apt update | ||
| + | |||
| + | # uprava sources list - add backports | ||
| + | codename=$(lsb_release -cs);echo "deb http:// | ||
| + | |||
| + | apt install linux-headers-amd64; | ||
| + | </ | ||
| + | |||
| + | ===== ZFS rename ===== | ||
| + | |||
| + | **Rename** | ||
| + | |||
| + | Příklad relokace v rámci ZFS struktury.\\ | ||
| + | Původní stav: | ||
| + | < | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | </ | ||
| + | |||
| + | Nová struktura ZFS - cestabyla upravena o název serveru **SKOL02X** | ||
| + | < | ||
| + | zfs create backup/ | ||
| + | zfs set compression=lz4 backup/ | ||
| + | zfs rename backup/ | ||
| + | |||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | backup/ | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | |||
