Pozn.: NPV není podporováno na všech přepínačích, ale pouze na vybraných modelech řady Cisco MDS 9000 a Cisco Nexus 5000. Já jsem testy prováděl na Cisco MDS 9148S s verzí NX-OS 6.2(9).
Fibre Channel (FC) switch může pracovat ve dvou režimech. Buď klasický Fabric mode (někde označovaný jako Switch mode), kdy se komunikace zpracovává a přepíná (switchuje), provádí zónování, apod. Nebo v NPV mode, kde se komunikace pouze předává dále, switch funguje jakoby proxy nebo přeposílač. Stane se z něj pouze rozšíření portů (nějaký extender) pro další FC (core) switch, který již pracuje v klasickém Fabric módu.
Když chceme využít NPV, tak musíme mít jeden switch, který přepneme do NPV módu. A druhý, který podporuje NPIV, a který bude zpracovávat komunikaci zařízení připojených do prvního přepínače. Tyto switche mezi sebou propojíme, ale ne pomocí E portů - ISL linky (typy portů jsme popisovali minule), protože přepínač v NPV módu se nechová jako switch, ale spíše jako koncové zařízení. Takže na nadřazeném switchi použijeme F port. A na NPV switchi speciální typ NP port.
- N port - Node port - jde o port na straně koncového zařízení (může jít o HBA port serveru nebo target port na diskovém poli)
- NP port - Proxy Node port - port na switchi v NPV módu, který se připojuje k nadřazenému (core) switchi, chová se jako N port, ale umožňuje skrze sebe proxovat více fyzických N portů
NPIV (N Port Identifier Virtualization)
N Port (Node Port) je Fibre Channel (FC) port na koncovém zařízení (tento port se spojuje s F Portem na switchi). Standardně má přiřazeno jedno 3-bytové (24-bitové) číslo N Port Identifier (N Port ID), u Cisca častěji označované jako Fibre Channel ID (FCID). Toto FCID přiřazuje switch během FLOGI procesu. Každý N Port by tedy měl mít přiřazeno právě jedno FCID a standardně má také jedno WWPN. Zjednodušeně tedy na switchi vidíme na každém F Portu (tam kde je připojen koncový N Port) jedno FCID a jedno WWPN.
NPIV dovoluje, aby jeden fyzický N Port měl více FCID a WWPN. Po proběhnutí normálního FLOGI procesu mohou proběhnout následné registrace dalších WWPN a FCID. Switch, se zapnutým NPIV, dovolí, aby F Port viděl více WWPN a FCID a uměl s nimi pracovat.
Využijeme to například u virtualizace (pokud ovšem chceme dostat Fibre Channel až k virtuálu), kde bychom standardně viděli pouze jedno WWPN fyzického portu nodu. Takto můžeme vidět WWPN jednotlivých virtuálních serverů a na FC switchi provádět detailní zónování.
NPV (N Port Virtualization) mód
NPV se používá v rozsáhlých SAN nasazeních pro snížení počtu Fibre Channel domain ID. Každý switch, který se připojí do Fabric (SAN nebo VSAN) dostane přiděleno 8-bitové Domain ID (to se používá jako první část přidělovaného FCID) a je podporováno maximálně 239 Domain ID (tedy počet přepínačů). Switch v NPV módu se nepřipojuje do fabricy, ale přenáší provoz mezi Core switchem a koncovými zařízeními. Nepotřebuje tedy Domain ID (FCID přiděluje Core switch a používá svoje Domain ID). V některých případech může také zjednodušit správu.
Jiná možnost je, že nám NPV umožní spojení Cisco MDS switche s Fibre Chanell switchem jiných výrobců (například Brocade). NPV vyřeší problémy spolupráce, protože zde neběží služba Fabric (neukončuje Fabric), ale přeposílá požadavky dále. Na Core switch tedy přichází standardní klientská komunikace. Připojujeme se na běžný F port, takže nemusíme navazovat InterSwitch Link (ISL) s E Porty. Různí výrobci používají jiný způsob adresování nebo posílají jiná data po ISL.
Pokud máme zapojení, kde je centrální Core switch a do něj připojené Edge switche, do kterých jsou připojena koncová zařízení. Tak můžeme na Core switchi zapnout NPIV a Edge switche nastavit do NPV módu. Port na Edge switchi, kterým je připojen ke Core, nastavíme jako NP Port, na druhé straně F Port. NPV agreguje více lokálně připojených N Portů do jednoho nebo více externích NP linek. Všechna koncová zařízení, připojená do Edge switche, uvidíme na portu Core switche. NP Port funguje jako proxy pro všechny N Porty na NPV switchi. Zónování a další logiku budeme nastavovat na Core switchi.
NP linka (uplink, také se označuje jako External Interface) je spojení z NP portu Edge switche na F port Core switche. Když se ustanoví, tak switch nejprve přihlásí sebe pomocí FLOGI a provede svoji registraci na Name Server Core switche. Následující FLOGI z koncových zařízení jsou konvertovány na Fabric Discovery Messages (FDISC).
Konfigurace v NX-OS
Zapnutí NPIV
Zapnutí se provádí povolením vlastnosti NPIV. Alespoň u některých zařízení je defaultně zapnuto.
SWITCH(config)#feature npiv
Zjištění stavu NPIV
SWITCH#show npiv status
Konfigurace NPV
Zapnutí NPV módu se provádí pro celý switch, dojde k jeho restartu, resetu konfigurace (maže se vše společné s FC) a zásadní změně jeho chování. V NPV módu je k dispozici pouze omezená množina CLI příkazů a vlastností (feature). Takže než přepínač konvertujeme do NPV módu, tak je to třeba dobře zvážit a udělat zálohu aktuální konfigurace.
Nejsou k dispozici například informace o Fabric Login a FCNS, protože toto probíhá na Core switchi. Takže například příkazy show flogi database
a show fcns database
musíme používat na Core switchi.
Oficiální dokumentace uvádí, že se přepnutí do NPV módu provádí následujícím příkazem, ale já takový příkaz na switchi nemám.
SWITCH(config)#npv enable
V praxi se musí provést povolení vlastnosti NPV a tím rovnou dojde k restartu switche a přepnutí módu. Dostaneme varování (a můžeme akci zrušit), že dojde k restartu a konfigurace bude odstraněna.
SWITCH(config)#feature npv Verify that boot variables are set and the changes are saved. Changing to npv mode erases the current configuration and reboots the switch in npv mode. Do you want to continue? (y/n):y
Jak jsme již uváděli, tak nedojde ke kompletnímu smazání konfigurace. Zůstává základní konfigurace jako je management IP a GW, jméno switche, uživatelé (nastavení AAA), věci jako SNMP, Syslog, NTP, nastavení času. Takže na switch se můžeme pořád připojit vzdáleně. Odstraní se konfigurace FC, VSAN, interface, zone, apod.
Po restartu v NPV módu nakonfigurujeme uplinkový port na Core switch (a samozřejmě i port na druhé straně). Hlavní je, že jej nastavíme do NP módu a povolíme.
SWITCH(config)#interface fc1/1 SWITCH(config-if)#switchport mode NP SWITCH(config-if)#no shutdown
Pokud chceme využívat VSAN, tak je musíme nově definovat a port zařadit.
SWITCH(config)#vsan database SWITCH(config-vsan-db)#vsan 10 interface fc1/1
Ostatní porty, kam jsou připojena koncová zařízení, nastavíme do F módu a zařadíme do patřičné VSAN.
SWITCH(config)#interface fc1/2 - 10 SWITCH(config-if)#switchport mode F SWITCH(config-if)#no shutdown SWITCH(config)#vsan database SWITCH(config-vsan-db)#vsan 10 interface fc1/2 - 10
Jedna poznámka na závěr, která se týká vlastností Port Channel a VSAN Trunk. Minule jsme si uvedli, že obě vlastnosti můžeme použít pouze na E porty (potažmo TE porty). Cisco ale podporuje i další možnosti, hlavně ve spolupráci s NPV switchem. Trunk tedy můžeme nastavit i na F port (TF) spojený s N portem (TN) na koncovém zařízení (využívá se Exchange Virtual Fabrics Protocol - EVFP) nebo NP portem (TNP) na NPV switchi (využívá se Cisco Port Trunking Protocol - PTP). Více F portů spojených s NP porty můžeme spojit i do PortChannelu a použít Trunk (opět se využije PTP, které podporuje i trunking PortChannels). Mělo by fungovat i spojení F portu na ne-Cisco Core switchi s NP portem na Cisco NPV switchi a využití Trunku (použije se EVFP).
Zobrazení informací o NPV
Můžeme si zobrazit informace o interfacech.
SWITCH#show npv status npiv is disabled disruptive load balancing is disabled External Interfaces: ==================== Interface: fc1/1, VSAN: 10, FCID: 0x03c200, State: Up Number of External Interfaces: 1 Server Interfaces: ================== Interface: fc1/2, VSAN: 10, State: Up Number of Server Interfaces: 1
Seznam zařízení a jejich NP link (external interface).
SWITCH#show npv flogi-table -------------------------------------------------------------------------------- SERVER EXTERNAL INTERFACE VSAN FCID PORT NAME NODE NAME INTERFACE -------------------------------------------------------------------------------- fc1/2 10 0x03c110 51:40:2e:c0:00:ff:83:ac 51:40:2e:c0:00:ff:83:ad fc1/1
Okolo NPV můžeme zobrazit různé další informace. Hodit se mohou chybové události, zprávy nebo využití externích interfaců. Případně podrobný technický výpis.
SWITCH#show npv internal errors SWITCH#show npv internal msgs SWITCH#show npv external-interface-usage SWITCH#show tech-support npv
Pro zobrazení FCNS se musíme připojit na Core switch a zde si zobrazíme informace i ze všech Edge switchů.
SWITCH#show fcns database
Zatím zde nejsou žádné komentáře.