Linux DM flerväg - Linux DM Multipath

Linux DM flerväg
Första utgåvan 17 juni 2005 ; För 15 år sedan Linux Kernel 2.6.12  ( 2005-06-17 )
Förvar https://git.opensvc.com/gitweb.cgi?p=multipath-tools%2F.git;a=log
Skrivet i C
Operativ system Linux

Device Mapper Multipath Input Output förkortas ofta till DM-Multipathing och förkortas som DM-MPIO ger input-output ( I / O ) fail-over och belastningsbalansering genom att använda multipath I / O inom Linux för blockenheter . Genom att använda enhetsmapparen tillhandahåller multipathd- demonen värdsidlogiken för att använda flera sökvägar i ett redundant nätverk för att tillhandahålla kontinuerlig tillgänglighet och högre bandbreddsanslutning mellan värdservern och blocknivåenheten. DM-MPIO hanterar omdirigeringen av block I / O till en alternativ väg i händelse av ett banfel. DM-MPIO kan också balansera I / O-belastningen över alla tillgängliga banor som vanligtvis används i Fibre Channel (FC) och iSCSI SAN- miljöer. DM-MPIO är baserad på enhetsmapparen , som ger det grundläggande ramverket som kartlägger en blockenhet på en annan.

Överväganden

När du använder Linux DM-MPIO i ett datacenter som har andra operativsystem och flervägslösningar, måste viktiga komponenter i banhantering övervägas.

  • Lastbalansering - Arbetsbelastningen fördelas över tillgängliga hårdvarukomponenter. Mål: Minska I / O-slutförandetiden, maximera genomströmningen och optimera resurserna
  • Path failover and recovery - Använder redundanta I / O-kanaler för att omdirigera programläsning och skrivning när en eller flera sökvägar inte längre är tillgängliga.

Historia

DM-MPIO startade som en patchuppsättning skapad av Joe Thornber och underhölls senare av Alasdair G Kergon på Red Hat. Det inkluderades i huvudlinjen Linux med kärnversion 2.6.12, som släpptes den 17 juni 2005.

Komponenter

Image
Enkelt flervägsexempel

DM-MPIO i Linux består av kärnkomponenter och användarutrymme-komponenter.

  • Kernel - device-mapper - block subsystem som tillhandahåller lagringsmekanism för blockenheter.
    • dm-multipath - kärnmodul som implementerar målet för mångsidig mappning av enheter.
  • Användarutrymme - flervägsverktyg - tillhandahåller verktygen för att hantera flervägda enheter genom att instruera enhetsmapparens flervägsmodul vad man ska göra. Verktygen består av:
    • Multipath: genomsöker systemet för multipathed-enheter, monterar dem, uppdaterar kartläggaren av kartan.
    • Multipathd: demon som väntar på karthändelser och sedan kör flerväg och övervakar banorna. Markerar en sökväg som misslyckades när sökvägen blir felaktig. Beroende på failback-policyn kan den återaktivera sökvägen.
    • Devmap-name: ger ett meningsfullt enhetsnamn till udev för devmaps.
    • Kpartx: mappar linjära devmaps till enhetspartitioner för att göra flervägskartor partitionerbara.
    • Multipath.conf: konfigurationsfil för flervägsdemon. Används för att skriva över den inbyggda konfigurationstabellen för flerväg.

Konfigurationsfil

Konfigurationsfilen /etc/multipath.conf gör att många av DM-MPIO-funktionerna kan konfigureras av användaren. Den flervägs kommandot och kernel daemon multipathd användning information som finns i den här filen. Filen konsulteras endast under konfigurationen av flervägsenheterna. Ändringar måste göras innan du kör flervägskommandot . Ändringar av filen efteråt kräver flerväg att köras igen.

Multipath.conf har fem sektioner:

  1. Standardnivåer på systemnivå ( standardvärden ): Användaren kan åsidosätta standardnivåerna på systemnivån.
  2. Svartlistade enheter ( svartlista ): Användaren anger listan över enheter som inte ska kontrolleras av DM-MPIO.
  3. Undantag från svartlistan ( svartlista undantag ): Specifika enheter som ska behandlas som flervägsenheter även om de är listade i svartlistan.
  4. Lagringsstyrenhetsspecifika inställningar ( enheter ): Användarspecificerade konfigurationsinställningar tillämpas på enheter med specificerad "Leverantör" och "Produkt" -information.
  5. Enhetsspecifika inställningar ( flervägar ): Finjustera konfigurationsinställningarna för enskilda LUN.

Terminologi

  • HBA: Värdbussadaptrar tillhandahåller det fysiska gränssnittet mellan ingång / utgång (I / O) värdbuss för Fibre Channel- enheter och det underliggande Fibre Channel-nätverket.
  • Sökväg: Anslutning från servern via HBA till en specifik LUN.
  • DM Path States: Enhetskartläggarens syn på sökvägen. Endast två villkor är möjliga:
    • Aktiv: Den senaste I / O-åtgärden som skickats genom den här sökvägen har slutförts. Analogt till färdigt tillstånd.
    • Misslyckades: Den senaste I / O-åtgärden som skickades via den här sökvägen slutfördes inte. Analogt till felaktigt bantillstånd.
  • Failover: När en sökväg bestäms att vara i ett misslyckat tillstånd kommer en sökväg som är i klart tillstånd att aktiveras.
  • Failback: När en misslyckad sökväg bestäms att vara aktiv igen, kan flervägsvägen välja att failback till sökvägen som bestäms av failback-policyn.
  • Återkopplingspolicy: Fyra alternativ som anges i konfigurationsfilen multipath.conf.
    • Omedelbar: Omedelbart failback till sökvägen med högsta prioritet.
    • Manuell: Den misslyckade sökvägen övervakas inte, kräver användarens ingripande för att failback.
    • Uppföljning (för kluster): Utför endast automatisk failback när den första sökvägen till en sökgrupp blir aktiv. Detta hindrar en nod från att automatiskt misslyckas när en annan nod begärde failover.
    • Antal sekunder: Vänta i ett visst antal sekunder så att I / O kan stabiliseras och sedan återgå till den högsta prioritetsvägen.
  • Aktiv / Aktiv: I ett system som har två lagringsstyrenheter kan varje styrenhet bearbeta I / O.
  • Aktiv / passiv: I ett system som har två lagringskontroller kan bara en styrenhet åt gången bearbeta I / O, den andra (passiv) är i beredskapsläge.
  • LUN: SCSI- logiskt enhetsnummer
  • WWID : Worldwide Identifier är en identifierare för flervägsenheten som garanterat är globalt unik och oförändrad.

Vidare läsning

Referenser

externa länkar

  • flervägsverktyg , hemsida för det uppströms projekt som används för att driva enhetsmapparens flervägsförare.