Přeskočit obsah

Datové úložište

TeskaLabs LogMan.io pracuje s několika různými úrovněmi datových úložišť, aby bylo dosaženo optimální izolace dat, výkonu a nákladů.

Struktura ukládání dat

Storage structure

Schema: Doporučená struktura datového úložiště.

Rychlé úložiště dat

Rychlé úložiště dat (známé také jako "horká" úroveň) obsahuje nejčerstvější logů a další události přijaté do systému TeskaLabs LogMan.io. Doporučujeme používat nejrychlejší možnou třídu úložiště pro dosažení nejlepší propustnosti a výkonu vyhledávání. Komponenta reálného času (Apache Kafka) rovněž používá rychlé datové úložiště pro perzistenci datového toku.

  • Doporučené časové rozpětí: jeden den až jeden týden.
  • Doporučená velikost: 2 TB - 4 TB
  • Doporučená redundance: Doporučená redundance: RAID 1, další redundanci zajišťuje aplikační vrstva.
  • Doporučený hardware: SSD NVMe PCIe 4.0 a lepší.
  • Fyzická zařízení pro rychlé ukládání dat MUSÍ BÝT spravována nástrojem mdadm
  • Přípojný bod: /data/ssd
  • Souborový systém: Pro optimální výkon se doporučuje nastavit příznak noatime.

Strategie zálohování

Příchozí události (protokoly) jsou kopírovány do archivního úložiště, jakmile vstoupí do TeskaLabs LogMan.io. To znamená, že vždy existuje způsob, jak v případě potřeby "přehrát" události do TeskaLabs LogMan.io. Také data jsou replikována do ostatních uzlů clusteru ihned po příchodu do clusteru. Z tohoto důvodu se tradiční zálohování nedoporučuje, ale je možné.

Obnovu zajišťují komponenty clusteru replikací dat z ostatních uzlů clusteru.

Example

/data/ssd/kafka-1
/data/ssd/elasticsearch/es-master
/data/ssd/elasticsearch/es-hot1
/data/ssd/zookeeper-1
/data/ssd/influxdb-2
...

Pomalé datové uložiště

Pomalé úložiště obsahuje data, ke kterým není nutné přistupovat rychle, a obvykle obsahuje starší logy a události, například teplé a studené indexy pro ElasticSearch.

  • Doporučená redundance: softwarový RAID 6 nebo RAID 5; RAID 0 pro virtualizované/cloudové instance s redundancí základního úložiště.
  • Doporučený hardware: Nákladově efektivní pevné disky, SATA 2/3+, SAS 1/2/3+.
  • Typická velikost: desítky TB, např. 18 TB
  • Řídicí karta: (režim IT): SATA nebo HBA SAS
  • Fyzická zařízení pro pomalé ukládání dat MUSÍ BÝT spravována softwarovým RAID (mdadm).
  • Přípojný bod: /data/hdd
  • Souborový systém: Pro optimální výkon se doporučuje nastavit příznak noatime.

Výpočet kapacity clusteru

Toto je vzorec pro výpočet celkové dostupné kapacity clusteru na pomalém datovém úložišti.

celkem = (disky-raid) * kapacita * servery / replika
  • disky je počet pomalých disků pro ukládání dat na server
  • raid je režie RAID, 1 pro RAID5 a 2 pro RAID6
  • kapacita je kapacita disku pro pomalé ukládání dat
  • servery je počet serverů
  • replica je replikační faktor v ElasticSearch

Example

(6[disků]-2[raid6]) * 18TB[kapacita] * 3[servery] / 2[replika] = 108TB

Strategie zálohování

Data uložená na pomalém datovém úložišti jsou VŽDY replikována do ostatních uzlů clusteru a také uložena v archivu. Z tohoto důvodu se tradiční zálohování nedoporučuje, ale je možné (vezměte v úvahu obrovskou velikost pomalého úložiště).

Obnovu zajišťují komponenty clusteru replikací dat z ostatních uzlů clusteru.

Example

/data/hdd/elasticsearch/es-warm01
/data/hdd/elasticsearch/es-warm02
/data/hdd/elasticsearch/es-cold01
/data/hdd/mongo-2
/data/hdd/nginx-1
...

Strategie ukládání velkých pomalých dat

Pokud bude vaše pomalé datové úložiště větší než >50 TB, doporučujeme jako optimální strategii pro škálování pomalého datového úložiště použít řadiče HBA SAS, expandéry SAS a JBOD. Připojení úložišť SAS lze řetězit, aby bylo možné připojit velký počet jednotek. Externí šasi JBOD lze také připojit pomocí SAS a poskytnout tak prostor pro další disky.

RAID 6 vs RAID 5

RAID 6 a RAID 5 jsou oba typy RAID (redundantní pole nezávislých disků), které používají prokládání dat a paritu k zajištění redundance dat a vyššího výkonu.

RAID 5 používá prokládání dat na více disků, přičemž jeden paritní blok se počítá pro všechny disky. Pokud dojde k selhání jednoho z disků, lze data stále rekonstruovat pomocí paritních informací. Pokud však druhý disk selže dříve, než je první disk nahrazen, jsou data ztracena.

Naproti tomu pole RAID 6 používá prokládání a dva nezávislé paritní bloky, které jsou uloženy na samostatných discích. Pokud dojde k selhání dvou disků, lze data stále rekonstruovat pomocí paritních informací. RAID 6 poskytuje ve srovnání s RAID 5 další úroveň ochrany dat. RAID 6 však také zvyšuje režii a snižuje kapacitu úložiště kvůli dvěma paritním blokům.

Pokud jde o pomalé ukládání dat, je RAID 5 obecně považován za méně bezpečný než RAID 6, protože data protokolu jsou obvykle životně důležitá a selhání dvou disků by mohlo způsobit ztrátu dat. V tomto případě je nejlepší RAID 6, protože dokáže přežít dvě selhání disku a poskytuje větší ochranu dat.

V případě pole RAID 5 je potřebný počet disků (N-1), kde N je počet disků v poli. Je to proto, že jeden z disků se používá pro paritní informace, které slouží k rekonstrukci dat v případě selhání jednoho disku. Chcete-li například vytvořit pole RAID 5 s kapacitou 54 TB, budete potřebovat alespoň čtyři (4) disky, každý o kapacitě alespoň 18 TB.

V případě pole RAID 6 je potřebný počet disků (N-2). Je to proto, že používá dvě sady paritních informací uložených na samostatných discích. Díky tomu může RAID 6 přežít selhání až dvou disků, než dojde ke ztrátě dat. Chcete-li například vytvořit pole RAID 6 s kapacitou 54 TB, budete potřebovat nejméně pět (5) disků, každý o kapacitě alespoň 18 TB.

Je důležité si uvědomit, že pole RAID 6 vyžaduje více místa na disku, protože používá dva paritní bloky, zatímco RAID5 používá pouze jeden. Proto RAID 6 vyžaduje ve srovnání s RAID 5 další disky. RAID 6 však poskytuje dodatečnou ochranu a dokáže přežít i dvě selhání disku.

Za zmínku stojí, že data v pomalém datovém úložišti jsou replikována napříč clusterem (pokud je to možné), aby byla zajištěna další redundance dat.

Tip

K výpočtu požadavků na úložiště použijte Online RAID Calulator.

Systémové úložiště

Systémové úložiště je určeno pro operační systém, instalace softwaru a konfigurace. V systémovém úložišti nejsou uložena žádná provozní data. Instalace na virtualizačních platformách využívá běžně dostupný lokálně redundantní diskový prostor.

  • Doporučená velikost: 250 GB a více
  • Doporučený hardware: dva (2) místní disky SSD v softwarovém RAID 1 (zrcadlení), SATA 2/3+, SAS 1/2/3+.

V případě potřeby se doporučuje následující rozdělení úložiště na parity:

  • EFI oddíl, připojený na /boot/efi, velikost 1 GB.
  • výměnný oddíl, 64 GB
  • Softwarový RAID1 (mdadm) na zbytku prostoru
  • Zaváděcí oddíl na RAID1, připojený na /boot, velikost 512 MB, souborový systém ext4.
  • Oddíl LVM na RAID1, zbytek dostupného prostoru se skupinou svazků systemvg.
  • Logický svazek LVM rootlv, připojený na /, velikost 50 GB, souborový systém ext4
  • Logický svazek LVM loglv, připojený na /var/log, velikost 50 GB, souborový systém ext4
  • Logický svazek LVM dockerlv, připojený na /var/lib/docker, velikost 100 GB, souborový systém ext4 (je-li k dispozici)

Strategie zálohování systémového úložiště

Doporučujeme pravidelně zálohovat všechny souborové systémy v systémovém úložišti, aby je bylo možné v případě potřeby použít pro obnovení instalace. Zálohovací strategie je kompatibilní s většinou běžných zálohovacích technologií na trhu.

  • Cíl bodu obnovy (RPO): úplné zálohování jednou týdně nebo po větších údržbových pracích, přírůstkové zálohování jednou denně.
  • Cíl doby obnovy (RTO): 12 hodin.

Note

RPO a RTO jsou doporučené za předpokladu vysoce dostupného nastavení clusteru LogMan.io. To znamená tři a více uzlů, aby úplný výpadek jediného uzlu neměl dopad na dostupnost služby.

Ukládání archivních dat

Ukládání dat do archivu je doporučené, ale nepovinné. Slouží k velmi dlouhému uchovávání dat a k redundanci. Představuje také ekonomický způsob dlouhodobého ukládání dat. Data nejsou v clusteru k dispozici online, je třeba je v případě potřeby obnovit zpět, což je spojeno s určitým intervalem "time-to-data".

Data jsou při kopírování do archivu komprimována, typický kompresní poměr se pohybuje v rozmezí 1:10 až 1:2 v závislosti na povaze logů.

Data jsou do úložiště replikována po počáteční konsolidaci na rychlém datovém úložišti, prakticky ihned po požití do clusteru.

  • Doporučené technologie: SAN / NAS / Cloudové úložiště (AWS S3, MS Azure Storage).
  • Přípojný bod: /data/archive (pokud je k dispozici)

Note

Veřejné cloudy lze použít jako úložiště pro archivaci dat. V takovém případě je třeba povolit šifrování dat, aby byla data chráněna před neoprávněným přístupem.

Vyhrazené archivační uzly

Pro velké archivy se doporučují vyhrazené archivační uzly (servery). Tyto uzly by měly používat připojení disků HBA SAS a distribuce operačního systému orientované na úložiště, jako je Unraid nebo TrueNAS.

Co nedoporučujeme

  • Nedoporučujeme používat úložiště NAS / SAN pro ukládání dat.
  • Pro ukládání dat nedoporučujeme používat hardwarové řadiče RAID apod.

Správa úložišť

V této kapitole je uveden praktický příklad konfigurace úložiště pro TeskaLabs LogMan.io. Úložiště LogMan.io nemusíte konfigurovat ani spravovat, pokud k tomu nemáte konkrétní důvod, LogMan.io se dodává v plně nakonfigurovaném stavu.

Za předpokladu následující hardwarové konfigurace:

  • SSD disky pro rychlé ukládání dat: /dev/nvme0n1, /dev/nvme1n1.
  • HDD disky pro pomalé ukládání dat: /dev/sde, /dev/sdf, /dev/sdg

Tip

Ke sledování aktuálního stavu úložných zařízení použijte příkaz lsblk.

Vytvoření softwarového pole RAID1 pro rychlé ukládání dat

mdadm --create /dev/md2 --level=1 --raid-devices=2 /dev/nvme0n1 /dev/nvme1n1
mkfs.ext4 /dev/md2
mkdir -p /data/ssd

Přidejte přípojné body do /etc/fstab:

/dev/md2 /data/ssd ext4 defaults,noatime 0 2

Připojení souborových systémů pro ukládání dat:

mount /data/ssd

Tip

Pomocí cat /proc/mdstat zkontrolujte stav softwarového RAID.

Vytvoření softwarového pole RAID5 pro pomalé ukládání dat

mdadm --create /dev/md1 --level=5 --raid-devices=3 /dev/sde /dev/sdf /dev/sdg
mkfs.ext4 /dev/md1
mkdir -p /data/hdd

Note

Pro RAID6 použijte --level=6.

Přidejte přípojné body do /etc/fstab:

/dev/md1 /data/hdd ext4 defaults,noatime 0 2

Připojení souborových systémů pro ukládání dat:

mount /data/hdd

Zvětšit velikost datového úložiště

Při stále rostoucích objemech dat je velmi pravděpodobné, že budete potřebovat zvětšit (alias rozšířit) datové úložiště, a to buď na rychlém, nebo pomalém datovém úložišti. To se provádí přidáním nového datového svazku (např. fyzického disku nebo virtuálního svazku) do počítače - nebo u některých virtualizovaných řešení - zvětšením stávajícího svazku.

Note

Úložiště dat lze rozšířit bez jakýchkoli prostojů.

Příklad navyšování kapacity pomalého datového úložiště

Předpokládejme, že chcete přidat nový disk /dev/sdh do pomalého datového úložiště /dev/md1:

mdadm --add /dev/md1 /dev/sdh

Nový disk se přidá jako náhradní zařízení.

Stav pole RAID můžete zkontrolovat:

cat /proc/mdstat

Písmeno (S) za zařízením znamená náhradní zařízení.

RAID se zvětší na náhradní zařízení:

mdadm --grow --raid-devices=4 /dev/md1

Číslo 4 je třeba upravit tak, aby odpovídalo skutečnému nastavení RAID.

Zvětšete souborový systém:

resize2fs /dev/md1