JH.

PowerStore Metro Volume sur Fibre Channel — Partie 2 : fabrics Connectrix DS-7720B, ISL et zoning

PowerStore Metro Volume sur Fibre Channel — Partie 2 : fabrics Connectrix DS-7720B, ISL et zoning
Série « build » en trois parties :Préparation et designFabrics Connectrix DS-7720B, ISL et zoning (cet article)Réplication FC, Metro Witness en cloud et Metro Volumes

Une partie 4 optionnelle traitera vSphere Metro Storage Cluster (HA/DRS) et la recette.

Synthèse

Cet article construit les deux fabrics FC de la plateforme et pose tout le zoning nécessaire à la partie 3 :

  • 4 Connectrix DS-7720B (FOS 9.2.2c), un par site et par fabric ;
  • 1 ISL de 10 km par fabric, en mode longue distance LE ;
  • zoning hôtes : 1 initiateur par zone, une seule baie par zone. Chaque ESXi obtient 16 chemins par Metro Volume ;
  • zoning de réplication : 1 port source + 1 port destination par zone, 4 zones par fabric ;
  • règles d'exploitation propres à un fabric étendu, notamment l'interdiction de toucher au zoning pendant une segmentation.

Les noms et WWPN de l'article sont fictifs. Les scripts complets des deux fabrics sont fournis avec l'article : zoning-fabric-a.txt et zoning-fabric-b.txt.

Note de syntaxe. Les commandes sont écrites pour FOS 9.2.x. Pour toute commande dont la syntaxe varie selon la version (configure, portcfglongdistance, portname, MAPS), vérifier avec help <commande> sur le switch avant exécution.

1. Design des fabrics

1.1 Switches

Switch Fabric Site Domain ID IP management Nom de cfg
fca-nord-01 A DC-NORD 11 10.10.10.31 CFG_FAB_A
fca-sud-01 A DC-SUD 12 10.20.10.31 CFG_FAB_A
fcb-nord-01 B DC-NORD 21 10.10.10.32 CFG_FAB_B
fcb-sud-01 B DC-SUD 22 10.20.10.32 CFG_FAB_B

Principes :

  • A et B ne sont jamais interconnectés : ce sont deux domaines de panne indépendants.
  • Domain IDs uniques dans le fabric et figés (insistent). La convention « 1x = fabric A, 2x = fabric B » permet de reconnaître le fabric dans un FCID ou une sortie nsshow.
  • Une seule configuration de zoning par fabric, partagée par les deux switches.

1.2 DS-7720B : ce qui compte pour ce design

D'après la fiche technique Dell de la gamme DS-7700B :

Élément Valeur Conséquence
Ports 48 SFP+ 64G + 8 SFP-DD 2×64G Largement suffisant (10 ports utilisés par switch)
Ports on Demand 24 ports actifs de base, extensible à 64 La plateforme tient dans la licence de base. Vérifier quels ports sont actifs avec licenseport --show
Licences Fabric Vision, Extended Fabrics et ISL Trunking incluses Pas de licence à prévoir pour l'ISL longue distance ni pour un futur trunk
SFP longue distance 32G LWL 10 km (et ELWL 25 km) ; les SFP 64G listés sont SWL uniquement L'ISL de 10 km tourne à 32G

À valider avec le partenaire ou Dell : la référence exacte du SFP LWL 32G et sa compatibilité avec FOS 9.2.2c.

1.3 Plan de ports par switch

Même plan sur les quatre switches. Seuls changent les ports PowerStore (P0 sur le fabric A, P1 sur le fabric B) et les HBA (HBA0 sur A, HBA1 sur B).

Port Équipement (fabric A, DC-NORD) Vitesse Type attendu
0–4 esx-n01 … esx-n05 HBA0 32G F-Port
8 ps-nord-01 nœud A IOM0 P0 (hôtes + réplication) 32G F-Port
9 ps-nord-01 nœud A IOM1 P0 (hôtes) 32G F-Port
10 ps-nord-01 nœud B IOM0 P0 (hôtes + réplication) 32G F-Port
11 ps-nord-01 nœud B IOM1 P0 (hôtes) 32G F-Port
23 ISL A vers fca-sud-01 port 23 (SFP LWL) 32G E-Port

Les numéros de ports sont un choix d'exemple. L'ISL doit être placé sur un port couvert par la licence POD de base.


2. Préparation FOS, switch par switch

À faire sur chaque switch avant de connecter l'ISL. Exemple : fca-nord-01.

2.1 Identité et version

# FOS 9.2.x — chaque switch
version                                   # attendu : Fabric OS v9.2.2c
firmwareshow
switchname "fca-nord-01"
ipaddrset                                 # interactif : IP 10.10.10.31/24, passerelle 10.10.10.1
licenseshow
licenseport --show                        # ports activés par la licence POD

2.2 Heure

tsclockserver "10.10.10.5;10.20.10.5"
tstimezone Europe/Paris                   # syntaxe à confirmer : help tstimezone
date

Horodatages cohérents entre les 4 switches, les baies, les ESXi et le Witness : c'est indispensable pour corréler les logs pendant la recette.

2.3 Domain ID figé

# ⚠ switchdisable coupe tout le trafic du switch : uniquement en build,
#   ou en maintenance avec l'autre fabric validé sain.
switchdisable
configure
#   Fabric parameters (yes, y, no, n): [no] y
#     Domain: (1..239) [1] 11
#     ...
#     Insistent Domain ID Mode (yes, y, no, n): [no] y
#   Laisser les autres paramètres par défaut (R_A_TOV, E_D_TOV identiques sur tout le fabric)
switchenable
switchshow                                # switchDomain: 11

Le menu configure est interactif et son contenu varie selon la version. Seuls le domaine et le mode insistent changent ici.

2.4 Zoning par défaut : aucun accès

defzone --show
defzone --noaccess
cfgsave

Sans configuration de zoning active, defzone --noaccess empêche tout équipement de voir les autres. Un port branché avant la fin du zoning ne voit donc rien. Le paramètre est propagé à tout le fabric lors de la fusion ; il doit être identique sur les deux switches.

2.5 Nommage des ports

portname 0 -n "ESX-N01_HBA0"              # syntaxe à confirmer : help portname
portname 8 -n "PSN_NA_IOM0_P0"
portname 23 -n "ISL_A_to_fca-sud-01_p23"

Les noms de ports apparaissent dans switchshow et dans SANnav. Ils font gagner du temps pendant les tests de bascule.

2.6 Sauvegarde

configupload                              # interactif : SCP/SFTP vers le serveur de sauvegarde

Faire une sauvegarde après la préparation, avant la fusion du fabric, puis avant chaque cfgenable.


3. ISL de 10 km

3.1 Modes longue distance (Brocade FOS)

Mode Distance Licence Extended Fabrics Usage
L0 (défaut) Quelques km, et de moins en moins quand la vitesse augmente (1 km de 8G à 16G) Non Liaisons dans la salle ou le campus
LE > 5 km jusqu'à 10 km Non Cette plateforme
LS Distance statique déclarée (-distance) Oui (incluse sur DS-7720B) > 10 km, ou distance réelle supérieure à 10 km
LD Distance mesurée dynamiquement Oui > 10 km

Source : Dell KB 000219296 (Connectrix B-Series, modes longue distance).

Points de vigilance :

  • Distance réelle de fibre, pas distance à vol d'oiseau. Avec les jarretières et le chemin opérateur, une « liaison de 10 km » peut dépasser 10 km. Dans ce cas, passer en LS avec la distance mesurée. L'ISL monte quand même en LE, mais avec trop peu de buffer credits : le débit plafonne sous charge.
  • Le mode se configure aux deux extrémités.

3.2 Configuration

# FOS 9.2.x — sur fca-nord-01 (port 23) PUIS sur fca-sud-01 (port 23)
# ⚠ Le port est réinitialisé : aucun trafic sur l'ISL à ce stade du build.
portcfgspeed 23 32                        # vitesse fixe 32G (SFP LWL 10 km)
portcfglongdistance 23 LE 1               # LE ; syntaxe à confirmer : help portcfglongdistance
portcfgshow 23

3.3 Fusion du fabric

Prérequis avant de brancher l'ISL :

Contrôle Attendu sur les deux switches
Domain ID Différents (11 / 12) et insistent
Configuration de zoning Aucune (build) : le zoning sera créé après la fusion, sur un seul switch
defzone noaccess des deux côtés
Paramètres de fabric Identiques (valeurs par défaut)

Un écart sur ces points segmente l'ISL : le port passe en E-Port segmenté et la fusion n'a pas lieu.

# Après raccordement de l'ISL — sur un des deux switches
switchshow                                # port 23 : E-Port, 32G, voisin fca-sud-01
fabricshow                                # 2 switches : DID 11 et 12, principal marqué ">"
islshow                                   # ISL 23 → 23, 32G
portbuffershow                            # buffers alloués au port 23 (mode LE)
sfpshow 23                                # puissances optiques Rx/Tx
porterrshow                               # relever les compteurs de référence

3.4 Critères d'acceptation de l'ISL

Contrôle Attendu
fabricshow 2 switches par fabric, aucun switch de l'autre fabric
islshow 32G, aucun « segmented »
portcfgshow 23 Mode longue distance LE des deux côtés
sfpshow 23 Rx/Tx dans les seuils du SFP, avec de la marge
porterrshow après 24 h de charge crc_err, enc_out, link_fail, loss_sync stables
Latence Mesure opérateur cohérente avec 10 km (~0,1 ms RTT)

3.5 Supervision

Fabric Vision est inclus : activer une politique MAPS et la supervision des ports ISL.

mapspolicy --show -summary                # syntaxe à confirmer : help mapspolicy
mapsdb --show

Avec un seul ISL par fabric, une dégradation de cet ISL (erreurs CRC, perte de crédits) touche tous les chemins inter-site de son fabric. Il faut une alerte avant la coupure franche.


4. Collecte des WWPN

4.1 PowerStore

PowerStore Manager : Hardware > Ports > Fibre Channel, colonne SCSI WWPN, pour les 8 ports câblés de chaque baie. Relever aussi la colonne Capabilities : IOM0 P0/P1 doivent afficher Replication, Import.

4.2 ESXi

# ESXi 8 — esxcli, sur chaque hôte
esxcli storage san fc list               # champ "Port Name" = WWPN
# PowerCLI 13.x — tout le cluster, export CSV
Get-Cluster 'CL-METRO' | Get-VMHost | Get-VMHostHba -Type FibreChannel |
    Select-Object @{n='Host';e={$_.VMHost.Name}}, Device,
        @{n='WWPN';e={ ('{0:x16}' -f $_.PortWorldWideName) -replace '(..)(?!$)','$1:' }} |
    Export-Csv .\wwpn-esxi.csv -NoTypeInformation -Encoding utf8

4.3 Contrôle croisé avec le switch

nsshow                                    # équipements connectés localement : WWPN + portname
nscamshow                                 # équipements vus via l'autre switch du fabric

Chaque WWPN de l'inventaire doit apparaître dans nsshow sur le switch et le port prévus. Un HBA sur le mauvais fabric se repère ici, avant la création des alias.


5. Best practices de zoning

# Règle Pourquoi Source
1 Zoning par WWPN (alias), pas par port (D,I) Résiste à un recâblage ou à un changement de port Usage courant Brocade
2 Un initiateur par zone Évite les logins et RSCN entre HBA Usage courant Brocade
3 Une seule baie par zone hôte Les ports PowerStore sont en dual SCSI mode (initiateur + cible). Dans une zone standard, tous les membres se voient : mettre PS-NORD et PS-SUD dans la même zone hôte crée des chemins baie↔baie non maîtrisés en dehors du zoning de réplication H18153 (dual SCSI mode)
4 Zones de réplication 1 source + 1 destination Exigence Dell. La compliance PowerStore contrôle que chaque port est zoné vers un port par nœud distant H18153
5 Ports de réplication zonés vers tous les nœuds de la baie distante Sinon : alerte de chemins manquants à la création du Remote System H18153
6 defzone --noaccess Un port branché sans zone ne voit rien Usage courant Brocade
7 Convention de nommage stricte Lisibilité en exploitation, scripts —
8 Un fabric modifié à la fois, avec sauvegarde avant cfgenable cfgenable s'applique aux deux sites du fabric —
9 Compléter la configuration active (cfgadd), ne jamais activer une config partielle Activer une petite config neuve supprime toutes les autres zones —
10 Aucun changement de zoning pendant une segmentation À la fusion, deux bases différentes provoquent un zone conflict : l'ISL reste segmenté §8
11 Taille de base surveillée (cfgsize) Base limitée à 4 Mo par fabric sur Gen 6/Gen 7 avec FOS 9.x Broadcom SAN Scalability FOS 9.x

5.1 Conventions de nommage

Objet Format Exemple
Alias port PowerStore <baie>_<nœud>_<IOM>_<port> PSN_NA_IOM0_P0
Alias HBA <hôte>_<HBA> ESX-N01_HBA0
Zone hôte Z_<hôte>_<HBA>__<baie> Z_ESX-N01_HBA0__PSN
Zone réplication Z_REP_<src>_<nœud>_<port>__<dst>_<nœud>_<port> Z_REP_PSN_NA_P0__PSS_NB_P0
Configuration CFG_FAB_<fabric> CFG_FAB_A

Rappel FOS : noms limités à 64 caractères et sensibles à la casse. Ils commencent par une lettre ou un chiffre et n'acceptent que lettres, chiffres, -, _, $ et ^.

5.2 Bilan du zoning

Par fabric Nombre
Alias PowerStore 8 (4 par baie)
Alias HBA 10
Zones réplication 4
Zones hôtes 20 (10 HBA × 2 baies)
Total zones 24 (48 sur les deux fabrics)

6. Zoning du fabric A

Toutes les commandes sont exécutées sur un seul switch du fabric (ici fca-nord-01). La base est propagée à fca-sud-01 par l'ISL.

6.1 Alias

# FOS 9.2.x — fca-nord-01 — WWPN FICTIFS
alicreate "PSN_NA_IOM0_P0", "58:cc:f0:90:11:a0:00:00"
alicreate "PSN_NA_IOM1_P0", "58:cc:f0:90:11:a0:01:00"
alicreate "PSN_NB_IOM0_P0", "58:cc:f0:90:11:b0:00:00"
alicreate "PSN_NB_IOM1_P0", "58:cc:f0:90:11:b0:01:00"
alicreate "PSS_NA_IOM0_P0", "58:cc:f0:90:22:a0:00:00"
alicreate "PSS_NA_IOM1_P0", "58:cc:f0:90:22:a0:01:00"
alicreate "PSS_NB_IOM0_P0", "58:cc:f0:90:22:b0:00:00"
alicreate "PSS_NB_IOM1_P0", "58:cc:f0:90:22:b0:01:00"

alicreate "ESX-N01_HBA0", "10:00:00:10:9b:01:01:00"
# … ESX-N02 à ESX-N05, ESX-S01 à ESX-S05 (voir zoning-fabric-a.txt)

6.2 Zones de réplication

zonecreate "Z_REP_PSN_NA_P0__PSS_NA_P0", "PSN_NA_IOM0_P0; PSS_NA_IOM0_P0"
zonecreate "Z_REP_PSN_NA_P0__PSS_NB_P0", "PSN_NA_IOM0_P0; PSS_NB_IOM0_P0"
zonecreate "Z_REP_PSN_NB_P0__PSS_NA_P0", "PSN_NB_IOM0_P0; PSS_NA_IOM0_P0"
zonecreate "Z_REP_PSN_NB_P0__PSS_NB_P0", "PSN_NB_IOM0_P0; PSS_NB_IOM0_P0"

Les ports IOM1 n'apparaissent dans aucune zone de réplication, même s'ils sont eux aussi en dual SCSI mode. La réplication reste ainsi sur IOM0, conformément à la recommandation Dell (premier module FC).

6.3 Zones hôtes

Deux zones par HBA, une par baie :

zonecreate "Z_ESX-N01_HBA0__PSN", "ESX-N01_HBA0; PSN_NA_IOM0_P0; PSN_NA_IOM1_P0; PSN_NB_IOM0_P0; PSN_NB_IOM1_P0"
zonecreate "Z_ESX-N01_HBA0__PSS", "ESX-N01_HBA0; PSS_NA_IOM0_P0; PSS_NA_IOM1_P0; PSS_NB_IOM0_P0; PSS_NB_IOM1_P0"
# … même schéma pour les 9 autres HBA0 (voir zoning-fabric-a.txt)

Chemins obtenus pour un HBA : 4 vers PS-NORD + 4 vers PS-SUD = 8. Avec HBA1 sur le fabric B, on arrive à 16 chemins par volume, l'écart à la recommandation Dell assumé en partie 1 (§6.4).

6.4 Configuration et activation

cfgcreate "CFG_FAB_A", "Z_REP_PSN_NA_P0__PSS_NA_P0"
cfgadd "CFG_FAB_A", "Z_REP_PSN_NA_P0__PSS_NB_P0; Z_REP_PSN_NB_P0__PSS_NA_P0; Z_REP_PSN_NB_P0__PSS_NB_P0"
cfgadd "CFG_FAB_A", "Z_ESX-N01_HBA0__PSN; Z_ESX-N01_HBA0__PSS; Z_ESX-N02_HBA0__PSN; Z_ESX-N02_HBA0__PSS"
# … zones hôtes restantes

# Contrôle avant activation
cfgshow "CFG_FAB_A"
cfgtransshow                              # transaction ouverte : la sienne uniquement
cfgsize

# ⚠ Effet immédiat sur les deux sites du fabric A. Sauvegarde configupload faite avant.
cfgsave
cfgenable "CFG_FAB_A"
cfgactvshow

cfgcreate ne sert qu'au build initial d'un fabric vide. Sur un fabric en production, on ajoute les zones à la configuration active existante avec cfgadd, puis on la réactive.

6.5 Validation du fabric A, avant de toucher au fabric B

Contrôle Commande / écran Attendu
Zoning actif identique sur les deux switches cfgactvshow sur fca-nord-01 et fca-sud-01 CFG_FAB_A, 24 zones
Logins nsshow / nscamshow 8 ports PowerStore + 10 HBA
Vue ESXi esxcli storage san fc list Port HBA0 Online
Vue PowerStore Compute > Hosts & Host Groups > Add Host (sans valider) Les WWPN HBA0 apparaissent comme initiateurs détectés sur les deux baies

7. Zoning du fabric B

Même procédure sur fcb-nord-01, après validation du fabric A :

Élément Fabric A Fabric B
Ports PowerStore P0 (IOM0 et IOM1) P1 (IOM0 et IOM1)
HBA HBA0 HBA1
Zones réplication Z_REP_…_P0__…_P0 Z_REP_…_P1__…_P1
Configuration CFG_FAB_A CFG_FAB_B

Le script complet est dans zoning-fabric-b.txt.


8. Alternative : peer zoning

Le peer zoning (FOS 8.1+) remplace les zones hôtes standards par une zone par baie et par fabric :

  • les ports PowerStore sont principals ;
  • les HBA sont members ;
  • seuls les échanges principal ↔ member sont autorisés. Member ↔ member et principal ↔ principal sont bloqués par la zone.
# FOS 9.2.x — syntaxe Broadcom zoneCreate --peerzone (principals multiples séparés par « ; »)
zonecreate --peerzone "PZ_PSN_FAB_A" -principal "PSN_NA_IOM0_P0;PSN_NA_IOM1_P0;PSN_NB_IOM0_P0;PSN_NB_IOM1_P0" -members "ESX-N01_HBA0;ESX-N02_HBA0;ESX-N03_HBA0;ESX-N04_HBA0;ESX-N05_HBA0;ESX-S01_HBA0;ESX-S02_HBA0;ESX-S03_HBA0;ESX-S04_HBA0;ESX-S05_HBA0"
zonecreate --peerzone "PZ_PSS_FAB_A" -principal "PSS_NA_IOM0_P0;PSS_NA_IOM1_P0;PSS_NB_IOM0_P0;PSS_NB_IOM1_P0" -members "ESX-N01_HBA0;ESX-N02_HBA0;ESX-N03_HBA0;ESX-N04_HBA0;ESX-N05_HBA0;ESX-S01_HBA0;ESX-S02_HBA0;ESX-S03_HBA0;ESX-S04_HBA0;ESX-S05_HBA0"
Critère Zones standards (retenu) Peer zoning
Zones hôtes par fabric 20 2
Ajout d'un ESXi 2 zones à créer 2 zoneadd de member
Isolation baie ↔ baie dans les zones hôtes Par construction (une baie par zone) Par le mécanisme (principal ↔ principal bloqué)
Lecture en troubleshooting Une zone = un HBA Une zone = une baie
Réplication Zones standards 1:1 Zones standards 1:1 dans tous les cas : principal ↔ principal est bloqué, une peer zone ne peut pas porter la réplication
Contraintes Aucune Pas de mélange WWN et D,I dans une peer zone ; vérifier la commande d'ajout avec help zoneadd

Pour 10 ESXi, les deux approches se valent. Le peer zoning devient intéressant au-delà de quelques dizaines d'hôtes.


9. Exploitation d'un fabric étendu

9.1 Segmentation

Avec un seul ISL par fabric, la perte de l'ISL A scinde le fabric A en deux fabrics d'un switch. Chaque switch garde sa copie de la base de zoning.

Pendant la segmentation Conséquence
I/O hôtes Chemins croisés du fabric A perdus. Les chemins locaux du fabric A et tout le fabric B restent actifs
Réplication Plus de zones de réplication utilisables sur le fabric A. Le Remote System continue sur le fabric B (détail en partie 3)
Zoning Gel total. Une modification d'un seul côté produit deux bases différentes : à la reconnexion, zone conflict et ISL segmenté (voir l'animation)

9.2 Procédure de changement de zoning

  1. fabricshow : les 2 switches du fabric sont présents.
  2. cfgtransshow : aucune transaction ouverte par quelqu'un d'autre.
  3. configupload : sauvegarde.
  4. Modification + cfgshow de contrôle.
  5. cfgsave, puis cfgenable "CFG_FAB_x".
  6. cfgactvshow sur les deux switches, contrôle des chemins côté ESXi.
  7. Seulement ensuite, l'autre fabric.

9.3 Reprise après zone conflict

Si un conflit s'est produit malgré tout : identifier la base de référence (en général celle du site qui n'a pas été modifié), sauvegarder les deux bases, puis aligner l'autre switch. ⚠ Opération à fort impact : vider la base d'un switch en production (cfgdisable / cfgclear) coupe tout le zoning de ce switch. À faire en fenêtre de maintenance, avec la procédure Dell/Broadcom de la version FOS.


Vérification (fin de partie 2)

Contrôle Commande / écran Attendu
Version version FOS 9.2.2c sur les 4 switches
Fabrics fabricshow A : DID 11 + 12 ; B : DID 21 + 22
ISL islshow, portcfgshow 23 32G, mode LE, non segmenté
Erreurs porterrshow après 24 h Compteurs stables
Default zone defzone --show No access
Zoning cfgactvshow 24 zones par fabric, identiques sur les 2 switches
Logins nsshow / nscamshow 8 ports PowerStore + 10 HBA par fabric
PowerStore Hardware > Ports 8 ports up par baie ; initiateurs détectés sur les 2 baies
Sauvegarde configupload Fichier daté par switch, post-zoning

Risques / points d'attention

  • Distance réelle > 10 km en mode LE : manque de buffer credits, débit plafonné sous charge. Mesurer la fibre, passer en LS si besoin.
  • Un seul ISL par fabric : point unique de défaillance par fabric. MAPS et alerte sur les erreurs ISL obligatoires.
  • Les deux baies dans une même zone hôte : chemins baie ↔ baie hors zoning de réplication.
  • cfgenable d'une configuration partielle : suppression du zoning de production sur les deux sites.
  • Zoning modifié pendant une segmentation : zone conflict, fabric durablement coupé.
  • 16 chemins par volume : écart assumé (partie 1, §6.4), à valider par Dell.

Sources

  • Dell PowerStore: Replication Technologies (H18153) — ports dual SCSI mode, zoning de réplication
  • Dell PowerStore: Best Practices Guide (H18241)
  • Dell Connectrix B-Series DS-7700B Spec Sheet (H18424) — ports, licences incluses, SFP LWL 32G
  • Dell KB 000219296 — Connectrix B-Series : modes longue distance L0/LE/LS/LD
  • Broadcom TechDocs FOS 9.2.x — zoneCreate et Creating Peer Zones
  • Broadcom SAN Scalability Guidelines FOS 9.x — taille de la base de zoning

Partie 3 : Remote System en FC, Metro Witness dans le cloud, création des Metro Volumes et contrôle des 16 chemins côté ESXi.