SAN Host status: degraded

Sziasztok!

 

Adott 3 darab 2 node-os hyper-v cluster. Van hozzá két régi Brocade SAN switch (DS_6505B). Van egy Storwize V7000.

A zónázás ugyanígy néz ki: https://motiejaitis.files.wordpress.com/2012/03/img011.jpg

A 3-ból 2 clusterrel semmi gond nincs.

A harmadik clusterben az egyik host állapota a storage szerint degraded, ugyanakkor a host mindkét portja a storage szerint is active állapotú.

IBM_Storwize:STORAGE-5:superuser>lshost
id name      port_count iogrp_count status   site_id site_name host_cluster_id host_cluster_name protocol owner_id owner_name
0  NODE-1    2          4           online                     0               CLUSTER1          scsi
1  NODE-2    2          4           degraded                   0               CLUSTER1          scsi
2  SERVER-9  2          4           online                     1               CLUSTER2          scsi
3  SERVER-10 2          4           online                     1               CLUSTER2          scsi
4  NODE-3    2          4           online                     2               CLUSTER3          scsi
5  NODE-4    2          4           online                     2               CLUSTER3          scsi
IBM_Storwize:STORAGE-5:superuser>lshost 1
id 1
name NODE-2
port_count 2
type generic
mask 1111111111111111111111111111111111111111111111111111111111111111
iogrp_count 4
status degraded
site_id
site_name
host_cluster_id 0
host_cluster_name CLUSTER1
protocol scsi
status_policy redundant
status_site all
WWPN 100000109BA26F1E
node_logged_in_count 2
state active
WWPN 100000109BA24FEC
node_logged_in_count 2
state active
owner_id
owner_name

Mi lehet a gond?

Merre kéne tovább nyomozni? A hoston? A SAN switchen? A storage-on?

Hozzászólások

Szerkesztve: 2024. 02. 07., sze – 22:44

Hát én megnézném a SAN switchen, hogy a NODE-2 portjai milyen állapotban vannak. Bár mivel 2 SAN switched van, így a 4 útvonalból legalább 1-n a storage-nak látnia kellene a hostot, így szolgáltatás kiesésed nincs még.

Ha a SAN switch szerint minden oké, akkor az is lehet, hogy a NODE-2 FC kártyája / drivere megkotlott. Lehet, hogy egy NODE-2 reboot megoldja a problémát (láttam már ilyet). Érdemes megnézni a NODE-2 logjait, multipath driverét is.

Az lshost leirasa szerint: "The host port is degraded if one or more nodes with volume mappings do not have a login for the specified WWPN." azaz esetedben NODE-2 nem latszik a V7000 mindegyik node canister-enek minden portjan.
Ugyanakkor a node_logged_in_count  ( Indicates the number of nodes the WWPN or NQN is logged in to. ) szerint mindket node canister-en loginelt NODE-2 mindket portja.  

Erdemes lenne ezeket a szamokat osszehasonlitani a tobbi host-tal (pl lshost 0 )

Brocade SAN switchen megnezheted, hogy minden rendben van e a zonakkal ( cfgshow ; zoneshow ; fcping ... ) itt is erdemes megnezni, hogy egyezik e a logika a zonaknal ( talan ha NODE-2 nincs mindegyik node canister mindegyik portjaval zonazva elofordulhat ez a szitu, hogy mindket fabric-en latszik mindket node canister de megsem teljes az orom;) 

Termeszetesen leirhatnad, hogy ez egy hiba ami csak ugy jott a nagy semmibol vagy ez igy volt mar regota es csak most derult ra feny ( es a szokasos kerdes h volt e valtoztatas) ezek alapjan kicsit egyszerubben lehet az iranyt megtalalni ( konfiguracios hiba / hw&sw hiba .... ) :)

Köszi a tippeket

Az lshost kimenetek a status sor kivételével megegyeznek (meg persze a WWPN-ek eltérnek)

IBM_Storwize:STORAGE-5:superuser>lshost 0
id 0
name NODE-1
port_count 2
type generic
mask 1111111111111111111111111111111111111111111111111111111111111111
iogrp_count 4
status online
site_id
site_name
host_cluster_id 0
host_cluster_name CLUSTER1
protocol scsi
status_policy redundant
status_site all
WWPN 100000109B530A7A
node_logged_in_count 2
state active
WWPN 100000109BA26EEE
node_logged_in_count 2
state active
owner_id
owner_name
SAN-1:admin> zoneshow "Z-TVT-NODE-2_*"
 zone:  Z-TVT-NODE-2_HBA1_PORT0-TVT_STORAGE-5_PORT3
                TVT_NODE-2_HBA1_PORT0; TVT_STORAGE-5_PORT3
 zone:  Z-TVT-NODE-2_HBA2_PORT0-TVT_STORAGE-5_PORT4
                TVT_NODE-2_HBA2_PORT0; TVT_STORAGE-5_PORT4

SAN-1:admin> zoneshow "Z-TVT-NODE-1_*"
 zone:  Z-TVT-NODE-1_HBA1_PORT0-TVT_STORAGE-5_PORT1
                TVT_NODE-1_HBA1_PORT0; TVT_STORAGE-5_PORT1
 zone:  Z-TVT-NODE-1_HBA2_PORT0-TVT_STORAGE-5_PORT2
                TVT_NODE-1_HBA2_PORT0; TVT_STORAGE-5_PORT2

SAN-1:admin> alishow "TVT_NODE-2_HBA1_PORT0"
 alias: TVT_NODE-2_HBA1_PORT0
                10:00:00:10:9b:a2:6f:1e

SAN-1:admin> fcping 10:00:00:10:9b:a2:6f:1e
Destination:    10:00:00:10:9b:a2:6f:1e

Pinging 10:00:00:10:9b:a2:6f:1e [0x010300] with 12 bytes of data:
received reply from 10:00:00:10:9b:a2:6f:1e: 12 bytes time:804 usec
received reply from 10:00:00:10:9b:a2:6f:1e: 12 bytes time:722 usec
received reply from 10:00:00:10:9b:a2:6f:1e: 12 bytes time:630 usec
received reply from 10:00:00:10:9b:a2:6f:1e: 12 bytes time:747 usec
received reply from 10:00:00:10:9b:a2:6f:1e: 12 bytes time:624 usec
5 frames sent, 5 frames received, 0 frames rejected, 0 frames timeout
Round-trip min/avg/max = 624/705/804 usec
SAN-1:admin> alishow "TVT_NODE-2_HBA2_PORT0"
 alias: TVT_NODE-2_HBA2_PORT0
                10:00:00:10:9b:a2:4f:ec

SAN-1:admin> fcping 10:00:00:10:9b:a2:4f:ec
fcping: Error destination wwn invalid
SAN-2:admin> zoneshow "Z-TVT-NODE-2_*"
 zone:  Z-TVT-NODE-2_HBA1_PORT0-TVT_STORAGE-5_PORT3
                TVT_NODE-2_HBA1_PORT0; TVT_STORAGE-5_PORT3
 zone:  Z-TVT-NODE-2_HBA2_PORT0-TVT_STORAGE-5_PORT4
                TVT_NODE-2_HBA2_PORT0; TVT_STORAGE-5_PORT4

SAN-2:admin> zoneshow "Z-TVT-NODE-1_*"
 zone:  Z-TVT-NODE-1_HBA1_PORT0-TVT_STORAGE-5_PORT1
                TVT_NODE-1_HBA1_PORT0; TVT_STORAGE-5_PORT1
 zone:  Z-TVT-NODE-1_HBA2_PORT0-TVT_STORAGE-5_PORT2
                TVT_NODE-1_HBA2_PORT0; TVT_STORAGE-5_PORT2

SAN-2:admin> alishow "TVT_NODE-2_HBA1_PORT0"
 alias: TVT_NODE-2_HBA1_PORT0
                10:00:00:10:9b:a2:6f:1e

SAN-2:admin> fcping 10:00:00:10:9b:a2:6f:1e
fcping: Error destination wwn invalid
SAN-2:admin> alishow "TVT_NODE-2_HBA2_PORT0"
 alias: TVT_NODE-2_HBA2_PORT0
                10:00:00:10:9b:a2:4f:ec

SAN-2:admin> fcping 10:00:00:10:9b:a2:4f:ec
Destination:    10:00:00:10:9b:a2:4f:ec

Pinging 10:00:00:10:9b:a2:4f:ec [0x010300] with 12 bytes of data:
received reply from 10:00:00:10:9b:a2:4f:ec: 12 bytes time:698 usec
received reply from 10:00:00:10:9b:a2:4f:ec: 12 bytes time:697 usec
received reply from 10:00:00:10:9b:a2:4f:ec: 12 bytes time:628 usec
received reply from 10:00:00:10:9b:a2:4f:ec: 12 bytes time:637 usec
received reply from 10:00:00:10:9b:a2:4f:ec: 12 bytes time:657 usec
5 frames sent, 5 frames received, 0 frames rejected, 0 frames timeout
Round-trip min/avg/max = 628/663/698 usec

A változtatás az - mivel új clusterrel bővült a rendszer - most kerültek be a SAN switchek, mert eddig elegendőek voltak a storage saját portjai.

Azóta próbáltam firmware frissítést a hoston, valamint windows update-et, de nem változott a helyzet.

cfgshowban mindkét switchen ezek vannak

SAN-1:admin> cfgshow
Defined configuration:
 cfg:   ZC-TVT-v2
                Z-TVT-NODE-1_HBA1_PORT0-TVT_STORAGE-5_PORT1;
                Z-TVT-NODE-1_HBA2_PORT0-TVT_STORAGE-5_PORT2;
                Z-TVT-NODE-2_HBA1_PORT0-TVT_STORAGE-5_PORT3;
                Z-TVT-NODE-2_HBA2_PORT0-TVT_STORAGE-5_PORT4;
...
 zone:  Z-TVT-NODE-1_HBA1_PORT0-TVT_STORAGE-5_PORT1
                TVT_NODE-1_HBA1_PORT0; TVT_STORAGE-5_PORT1
 zone:  Z-TVT-NODE-1_HBA2_PORT0-TVT_STORAGE-5_PORT2
                TVT_NODE-1_HBA2_PORT0; TVT_STORAGE-5_PORT2
 zone:  Z-TVT-NODE-2_HBA1_PORT0-TVT_STORAGE-5_PORT3
                TVT_NODE-2_HBA1_PORT0; TVT_STORAGE-5_PORT3
 zone:  Z-TVT-NODE-2_HBA2_PORT0-TVT_STORAGE-5_PORT4
                TVT_NODE-2_HBA2_PORT0; TVT_STORAGE-5_PORT4
...
 alias: TVT_NODE-1_HBA1_PORT0
                10:00:00:10:9b:a2:6e:ee
 alias: TVT_NODE-1_HBA2_PORT0
                10:00:00:10:9b:53:0a:7a
 alias: TVT_NODE-2_HBA1_PORT0
                10:00:00:10:9b:a2:6f:1e
 alias: TVT_NODE-2_HBA2_PORT0
                10:00:00:10:9b:a2:4f:ec
...
 alias: TVT_STORAGE-5_PORT1
                50:05:07:68:0b:21:af:ea; 50:05:07:68:0b:21:af:eb;
                50:05:07:68:0b:25:af:ea; 50:05:07:68:0b:25:af:eb;
                50:05:07:68:0b:29:af:ea; 50:05:07:68:0b:29:af:eb
 alias: TVT_STORAGE-5_PORT2
                50:05:07:68:0b:22:af:ea; 50:05:07:68:0b:22:af:eb;
                50:05:07:68:0b:26:af:ea; 50:05:07:68:0b:26:af:eb;
                50:05:07:68:0b:2a:af:ea; 50:05:07:68:0b:2a:af:eb
 alias: TVT_STORAGE-5_PORT3
                50:05:07:68:0b:23:af:ea; 50:05:07:68:0b:23:af:eb;
                50:05:07:68:0b:27:af:ea; 50:05:07:68:0b:27:af:eb;
                50:05:07:68:0b:2b:af:ea; 50:05:07:68:0b:2b:af:eb
 alias: TVT_STORAGE-5_PORT4
                50:05:07:68:0b:24:af:ea; 50:05:07:68:0b:24:af:eb;
                50:05:07:68:0b:28:af:ea; 50:05:07:68:0b:28:af:eb;
                50:05:07:68:0b:2c:af:ea; 50:05:07:68:0b:2c:af:eb

Effective configuration:
 cfg:   ZC-TVT-v2
 zone:  Z-TVT-NODE-1_HBA1_PORT0-TVT_STORAGE-5_PORT1
                10:00:00:10:9b:a2:6e:ee
                50:05:07:68:0b:21:af:ea
                50:05:07:68:0b:21:af:eb
                50:05:07:68:0b:25:af:ea
                50:05:07:68:0b:25:af:eb
                50:05:07:68:0b:29:af:ea
                50:05:07:68:0b:29:af:eb
 zone:  Z-TVT-NODE-1_HBA2_PORT0-TVT_STORAGE-5_PORT2
                10:00:00:10:9b:53:0a:7a
                50:05:07:68:0b:22:af:ea
                50:05:07:68:0b:22:af:eb
                50:05:07:68:0b:26:af:ea
                50:05:07:68:0b:26:af:eb
                50:05:07:68:0b:2a:af:ea
                50:05:07:68:0b:2a:af:eb
 zone:  Z-TVT-NODE-2_HBA1_PORT0-TVT_STORAGE-5_PORT3
                10:00:00:10:9b:a2:6f:1e
                50:05:07:68:0b:23:af:ea
                50:05:07:68:0b:23:af:eb
                50:05:07:68:0b:27:af:ea
                50:05:07:68:0b:27:af:eb
                50:05:07:68:0b:2b:af:ea
                50:05:07:68:0b:2b:af:eb
 zone:  Z-TVT-NODE-2_HBA2_PORT0-TVT_STORAGE-5_PORT4
                10:00:00:10:9b:a2:4f:ec
                50:05:07:68:0b:24:af:ea
                50:05:07:68:0b:24:af:eb
                50:05:07:68:0b:28:af:ea
                50:05:07:68:0b:28:af:eb
                50:05:07:68:0b:2c:af:ea
                50:05:07:68:0b:2c:af:eb
...
Szerkesztve: 2024. 02. 08., cs – 10:39

fcping eseteben tudsz 2db WWPN-t is megadni ez az elejen csinal egy zone check-et is , ami kicsit homalyos szamomra az az, hogy miert van 6db WWPN felsorolva minegyik TVT_STORAGE-5_PORT-nal ( elvileg a 2 canister 2-2 portja fabriconkent 4 WWPN-t kene jelentsen ) 

A "nagy konyv" szerint load balancing-al valahogy igy kene kinezni a zoneset-nek a feltoltott kep neveit hasznalva (Fabric-A portok a V7000-en 1,2   Fabric-B portok 3,4) :

Fabric-A

zone: SERVER-1_Fabric-A_Port + V7000_NodeCanister1_Port1   
zone: SERVER-1_Fabric-A_Port + V7000_NodeCanister2_Port1              

zone: SERVER-2_Fabric-A_Port + V7000_NodeCanister1_Port2   
zone: SERVER-2_Fabric-A_Port + V7000_NodeCanister2_Port2

Fabric-B

zone: SERVER-1_Fabric-B_Port + V7000_NodeCanister1_Port3   
zone: SERVER-1_Fabric-B_Port + V7000_NodeCanister2_Port3              

zone: SERVER-2_Fabric-B_Port + V7000_NodeCanister1_Port4   
zone: SERVER-2_Fabric-B_Port + V7000_NodeCanister2_Port4
 

Tehat Server-1 ket portot lat Fabric-A es ket portot Fabric-B iranyaban.  Aliasbol is termeszetesen eleg Fabric-A oldalon csak az oda csatlakoztatott portokat felsorolni. 
 

https://www.ibm.com/docs/en/flashsystem-v7000u/1.6.2?topic=details-san-…

  • For optimal performance, include a maximum of two paths per volume per host Fibre Channel port. This ratio equates to a zone that contains one port per Storwize V7000 Unified node per HBA.
  • For load balancing, alternate the server Fibre Channel ports between the ports of the Storwize V7000 Unified. For example, the first server is zoned with ports 1 and 3 of each Storwize V7000 Unified node (one Storwize V7000 Unified port per fabric). The second server is zoned with ports 2 and 4.

Mivel ez egy "uj" deployment erdemes igy szepen ujrairni a zonakat, a load balance pedig fontos mert sokszor agyatlanul az elso path-en kommunikalnak a hostok ami dugot okozhat :D

 6 WWPN innen jön: https://i.imgur.com/VWHLveM.png

Melyik a felesleges? Úgy emlékszem, hogy kevés volt a nem virtualizált WWPN-eket megadni, de lehet, hogy rosszul rémlik.

Külön zónákra kéne szednem a canisterek azonos portjait?

Akkor ez egy szuper uj v7000 amin mar van NPIV ;) 

https://www.ibm.com/docs/en/flashsystem-7x00/8.2.x?topic=names-storwize…
When N-Port ID Virtualization (NPIV) is enabled, each WWPN also has an NPIV WWPN value that should be used for communications with hosts.

Tehat eleg a virtualizalt portokat hasznalnod ((amikben van 25 vagy 29 )) ( ezek a virtualis portok hiba eseten at tudnak maszni masik fizikai portra es a host elvileg nem vesz eszre semmit). 

Igen ez egy remek kerdes. Probald ki egy fent emlitett modszerrel azaz a problemas hostra irj uj zonat mindket fabricban + uj aliasokat is csinalj a storagenek amikben csak a virtualis portok vannak. Nekem gyanus, hogy az a 6 WWPN kavar be. Ismet csak idezek "The maximum number of supported paths to a Storwize V7000 Unified volume is eight." 

Újracsináltam a zónákat.

A host HBA1-hez beraktam az ID1-es virtuális portokat ((amikben van 25 vagy 29 )), a HBA2-höz az ID2 virtuális portjait. (4-4db)

A storage szerint most minden oké, de egyáltalán nem vagyok benne biztos, hogy jól csináltam.

SAN1-re a storage CAN1-2 port1,3 portjai vannak kötve, SAN2-re a CAN1-2 port2,4 portjai. (4-4 kábel)

Szuper hír ! :) Load balancing miatt per fabric én csak két V7000 portot raknék egy hosthoz ( ahogy azt fentebb javasoltam ). 

Fabric-A

zone: SERVER-1_Fabric-A_Port ( 10:00:00:10:9b:a2:6e:ee ) + V7000_NodeCanister1_Port1  ( 50:05:07:68:0b:29:af:ea
zone: SERVER-1_Fabric-A_Port ( 10:00:00:10:9b:a2:6e:ee ) + V7000_NodeCanister2_Port1  ( 50:05:07:68:0b:29:af:eb

zone: SERVER-2_Fabric-A_Port ( 10:00:00:10:9b:a2:6f:1e ) + V7000_NodeCanister1_Port2  ( 50:05:07:68:0b:25:af:ea
zone: SERVER-2_Fabric-A_Port ( 10:00:00:10:9b:a2:6f:1e ) + V7000_NodeCanister2_Port2  ( 50:05:07:68:0b:25:af:eb )

Fabric-B

zone: SERVER-1_Fabric-B_Port + V7000_NodeCanister1_Port3   
zone: SERVER-1_Fabric-B_Port + V7000_NodeCanister2_Port3              

zone: SERVER-2_Fabric-B_Port + V7000_NodeCanister1_Port4   
zone: SERVER-2_Fabric-B_Port + V7000_NodeCanister2_Port4
 

Amennyiben nem egy production rendszeren dolgozol érdemes tényleg egy szép új zoneset-et csinálni ( + tesztelni: lekapcsolni a host egyik portjának SAN switch oldali portját, lekapcsolni a v7000 egyik nodejának SAN switch oldali portját , v7000 node shutdown, stb stb... ), ellenkezõ esetben marad az óvatos verzió csak az egyik fabric-en módosítva új alias és új zóna. Érdemes ezt egyszer rendesen megcsinálni (és dokumentálni) majd késõbb örülni, hogy minden rendezett ;)

Ha az IBM-es ajanlasbol indulunk ki akkor 1 host port + 1 storage node port ... en egy zonaba raknam a host egyik portjat + az egyik v7000 node virtualis WWPN-t + a masik v7000 node egyik virtualis WWPN-jet tehat 3 elem lenne egy zonaban. Egy klasszikus load balance megoldas ha paros paratlan hostnev szerint keszited a zonakat:

Valami hasonlo naming convention hasznalataval:

Fabric-A

Z-TVT-NODE-1_TVT_STORAGE-5_ODD
      TVT-NODE-1_Fabric-A_Port + TVT_STORAGE-5_NodeCanister1_Port1 + TVT_STORAGE-5_NodeCanister2_Port   

Z-TVT-NODE-2_TVT_STORAGE-5_EVEN
     TVT-NODE-2_Fabric-A_Port + TVT_STORAGE-5_NodeCanister1_Port2  + TVT_STORAGE-5_NodeCanister2_Port2

Fabric-B
Z-TVT-NODE-1_TVT_STORAGE-5_ODD
      TVT-NODE-1_Fabric-B_Port + TVT_STORAGE-5_NodeCanister1_Port3 + TVT_STORAGE-5_NodeCanister2_Port3    

Z-TVT-NODE-2_TVT_STORAGE-5_EVEN
     TVT-NODE-2_Fabric-B_Port + TVT_STORAGE-5_NodeCanister1_Port4 + TVT_STORAGE-5_NodeCanister2_Port4

Igy a zona nevek azonosak mindket fabric-ben, kesobb egyszerubb scriptelni es megtalalni dolgokat + a szabaly is egyszeru:

ha a hostnev paros szammal vegzodik a zona neve hostnev_storage_EVEN , Fabric-A-ban a storage nodejainak 2-es portjaival , Fabric-B-ben a storage nodejainak 4-es portjaival

ha a hostnev paratlan szammal vegzodik a zona neve hostnev_storage_ODD , Fabric-A-ban a storage nodejainak 1-es portjaival , Fabric-B-ben a storage nodejainak 3-as portjaival

>> azaz ugyan ez egyszerubben :

- ha a hostnev paros szammal vegzodik a zona neve hostnev_storage_EVEN es a storage nodejainak paros portjaival lesz zonazva  

- ha a hostnev paratlan szammal vegzodik a zona neve hostnev_storage_ODD es a storage nodejainak paratlan portjaival lesz zonazva  

Lehet ez igy elsore bonyolultnak latszik de egyszeru es nagyszeru :D