Multipathing (MPIO)

Multipathing (často označovaný jako MPIO – Multi-Path Input/Output) je technika odolnosti proti chybám a zvyšování výkonu, která umožňuje vytvořit více než jednu fyzickou cestu mezi procesorem serveru a úložným zařízením (typicky LUNem na diskovém poli).

V prostředí SAN (Fibre Channel nebo iSCSI) je multipathing nezbytný pro eliminaci tzv. „Single Point of Failure“ (jediného bodu selhání).

Problém bez Multipathingu

Pokud propojíte server s diskovým polem dvěma kabely bez aktivního multipathingu, nastanou dva problémy:

1. **Duplicita:** Operační systém uvidí stejný disk dvakrát (např. jako ''/dev/sdb'' a ''/dev/sdc''). Pokud byste se pokusili zapsat na oba současně, dojde k nevratnému poškození dat.
2. **Nespolehlivost:** Při selhání jedné cesty (např. vytažení kabelu) operační systém ztratí přístup k disku, přestože druhá cesta je stále funkční.

Jak Multipathing funguje?

Multipathingový software (ovladač v OS) funguje jako logická vrstva, která:

Agreguje cesty: Identifikuje, že různé fyzické cesty vedou ke stejnému WWN nebo IQN.

Vytváří virtuální zařízení: Místo několika cest ukáže systému pouze jeden virtuální disk (např. /dev/mapper/mpatha).

Sleduje zdraví: Neustále testuje, zda jsou cesty aktivní.

Hlavní funkce a výhody

1. Failover (Odolnost proti chybám)

Pokud dojde k přerušení jedné cesty (porucha HBA, zlomený optický kabel, pád switche), provoz se okamžitě a automaticky přesměruje na záložní cestu bez přerušení práce aplikací.

2. Load Balancing (Vyvažování zátěže)

Multipathing dokáže rozkládat datový provoz mezi všechny dostupné cesty současně, čímž výrazně zvyšuje celkovou propustnost (např. spojení dvou 10Gbps linek do jednoho 20Gbps kanálu).

3. Agregace šířky pásma

Využívá se algoritmů jako:

Round Robin: Požadavky se střídají mezi všemi cestami.

Least Queue Depth: Data jdou cestou, která je aktuálně nejméně vytížená.

ALUA (Asymmetric Logical Unit Access)

Většina moderních diskových polí má dva řadiče (Controllery). ALUA je protokol, který umožňuje poli říct serveru, která cesta je „preferovaná“ (optimalizovaná) a která je „záložní“ (neoptimalizovaná).

Active/Optimized: Cesta přímo k řadiči, který momentálně LUN vlastní.

Active/Non-optimized: Cesta k druhému řadiči, který musí data interně předat kolegovi (pomalejší).

Implementace v systémech

Linux: Používá se balíček Device Mapper Multipath (DM-Multipath). Konfigurační soubor se nachází v /etc/multipath.conf.

Windows Server: Funkce MPIO, kterou je nutné povolit ve správci serveru.

VMware ESXi: Má vlastní nativní multipathingový modul (NMP).

Srovnání: Multipathing vs. Bonding/Teaming

Vlastnost	Síťový Bonding (LACP)	Multipathing (MPIO)
Vrstvy	Vrstva 2 (Ethernet)	Vrstva 4+ (SCSI/Storage)
Konfigurace	Vyžaduje podporu na switchi.	Switch o něm nemusí vědět (nezávislé cesty).
Účel	Spojení síťových karet pro LAN.	Spojení úložných cest k disku.

— Související termíny: SAN, iSCSI, LUN, HBA, Failover.