PowerScale: OneFS: Fehlende SPN-Warnmeldungen ohne übereinstimmenden SmartConnect-Zonennamen (SCZN)
Summary: Cluster melden, dass dem AD-Server benötigte SPNs nach einem Superna-Failover oder -Failback für Serviceprinzipalnamen (Service Principle Names, SPN) fehlen, die mit einem beliebigen SmartConnect-Zonennamen des Clusters übereinstimmen. ...
Symptoms
Nachdem ein Superna-Failover/Failback-Prozess durchgeführt wurde, um den primären PowerScale-Cluster festzulegen, werden möglicherweise die folgenden Fehler auf dem sekundären Cluster angezeigt.
2.365102 10/21 09:26 I 0 729106 AD server missing needed SPN(s) HOST/eyeglasstest.example.org, HOST/eyeglasstest, nfs/eyeglasstest.example.org, nfs/eyeglasstest; try 'isi auth ads spn check EXAMPLE.ORG' 2.365089 10/21 09:11 I 0 729106 AD server missing needed SPN(s) HOST/eyeglasstest.example.org, HOST/eyeglasstest, nfs/eyeglasstest.example.org, nfs/eyeglasstest; try 'isi auth ads spn check EXAMPLE.ORG'
Bei der Untersuchung stellen Sie möglicherweise fest, dass die fehlenden SPNs nicht denselben Namen wie die Namen des Netzwerkpools auf dem sekundären Cluster haben.
Beispiel: Wenn PowerScale cluster A die fehlenden SPN-Warnmeldungen anzeigt:
CLUSTERNAME: clusterA
Die SPN-Prüfung meldet die fehlenden SPNs:
clusterA-1# isi auth ads spn check EXAMPLE.ORG Possible missing SPNs: HOST/eyeglasstest.example.org HOST/eyeglasstest nfs/eyeglasstest.example.org nfs/eyeglasstest Possible extra SPNs: nfs/igls-original-eyeglasstest
Keiner der Netzwerkpoolnamen stimmt überein, angezeigt durch "isi network pools list -v". Der fehlende SPN- und Netzwerkpoolname muss exakt übereinstimmen. Andere nicht verwandte, ähnliche Namen, die einen Teil des fehlenden SPN enthalten, zählen nicht.
Netzwerkpools von Cluster A:
clusterA-1# isi network pools list -v ID: groupnet0.subnet0.pool0 Groupnet: groupnet0 Subnet: subnet0 Name: pool0 Rules: rule0 Access Zone: System Allocation Method: static Aggregation Mode: lacp Description: Initial 10gige-1 pool Firewall Policy: default_pools_policy Ifaces: 1:10gige-agg-1, 2:10gige-agg-1, 3:10gige-agg-1, 4:10gige-agg-1, 5:10gige-agg-1, 6:10gige-agg-1 IP Ranges: 172.20.14.41-172.20.14.46 IPv6 Perform DAD: No Rebalance Policy: auto SC Failover Policy: round_robin Static Routes: - NFSv3 RDMA RRoCE only: No SC Suspended Nodes: - SC Connect Policy: round_robin SC Zone: d8fs14.example.org SC DNS Zone Aliases: igls-ignore-vlan14.example.org SC Subnet: subnet0 SC TTL: 0 -------------------------------------------------------------------------------- ID: groupnet0.subnet1.Eyeglass_Pool Groupnet: groupnet0 Subnet: subnet1 Name: Eyeglass_Pool Rules: - Access Zone: EyeglassRunbookRobot Allocation Method: static Aggregation Mode: lacp Description: Firewall Policy: default_pools_policy Ifaces: 1:10gige-agg-1 IP Ranges: 172.20.15.6-172.20.15.6 IPv6 Perform DAD: No Rebalance Policy: auto SC Failover Policy: round_robin Static Routes: - NFSv3 RDMA RRoCE only: No SC Suspended Nodes: - SC Connect Policy: round_robin SC Zone: igls-original-eyeglasstest.example.org SC DNS Zone Aliases: igls-robot-oco.example.org SC Subnet: subnet1 SC TTL: 0 -------------------------------------------------------------------------------- ID: groupnet0.subnet1.pool0 Groupnet: groupnet0 Subnet: subnet1 Name: pool0 Rules: - Access Zone: prod Allocation Method: static Aggregation Mode: lacp Description: Firewall Policy: default_pools_policy Ifaces: 1:10gige-agg-1, 2:10gige-agg-1, 3:10gige-agg-1, 4:10gige-agg-1, 5:10gige-agg-1, 6:10gige-agg-1 IP Ranges: 172.20.15.41-172.20.15.46 IPv6 Perform DAD: No Rebalance Policy: auto SC Failover Policy: round_robin Static Routes: - NFSv3 RDMA RRoCE only: No SC Suspended Nodes: - SC Connect Policy: round_robin SC Zone: igls-original.example.org SC DNS Zone Aliases: igls-prod.example.org SC Subnet: subnet1 SC TTL: 0
Wenn Sie den neuen primären Cluster clusterB überprüfen, können Sie den SmartConnect-Poolnamen finden, der mit dem fehlenden SPN übereinstimmt. Dies ist der SPN, der in der Warnmeldung auf dem sekundären Cluster, Cluster A, referenziert wird.
CLUSTERNAME: clusterB
Produktionscluster mit SPN + Poolname:
clusterB-1# isi auth ads spn list EXAMPLE.ORG | grep -i eyeglasstest SPN ---------------------------------------------------- nfs/eyeglasstest nfs/eyeglasstest.example.org HOST/eyeglasstest HOST/eyeglasstest.example.org
Der Name des Netzwerkpools des primären Clusters
clusterB-1# isi network pools list -v ID: groupnet0.subnet1.Eyeglass_Pool Groupnet: groupnet0 Subnet: subnet1 Name: Eyeglass_Pool Rules: - Access Zone: EyeglassRunbookRobot Allocation Method: static Aggregation Mode: lacp Description: Used for Eyeglass test failover Firewall Policy: default_pools_policy Ifaces: 1:10gige-agg-1 IP Ranges: 172.29.28.5-172.29.28.5 IPv6 Perform DAD: No Rebalance Policy: auto SC Failover Policy: round_robin Static Routes: - NFSv3 RDMA RRoCE only: No SC Suspended Nodes: - SC Connect Policy: round_robin SC Zone: eyeglasstest.example.org <<<<<<<<<<<<<<<<<<< SC DNS Zone Aliases: igls-robot-rco.example.org SC Subnet: subnet1 SC TTL: 0
Cause
Superna verwendet den folgenden Befehl, um SPNs hinzuzufügen und zu entfernen. Sie geben auch das Maschinenkonto an, das dem SPN in der AD-Domain zugeordnet ist.
2025-02-04T09:33:03,953 SSH /172.20.14.37 echo '[REDACTED]' | sudo -S -k -p "" isi auth ads spn delete EXAMPLE.ORG HOST/eyeglasstest.example.org --machine-account clusterA$ 2>&1;echo 0 2025-02-04T09:33:05,568 SSH /172.20.14.37 echo '[REDACTED]' | sudo -S -k -p "" isi auth ads spn delete EXAMPLE.ORG HOST/eyeglasstest --machine-account clusterA$ 2>&1;echo 0 2025-02-04T09:33:07,180 SSH /172.20.14.37 echo '[REDACTED]' | sudo -S -k -p "" isi auth ads spn delete EXAMPLE.ORG nfs/eyeglasstest.example.org --machine-account clusterA$ 2>&1;echo 0
Die in OneFS 9.5.1.1 eingeführte Option "--machine-account" aus dem Befehl "isi auth ads spn create/delete" funktioniert nicht wie vorgesehen. Ein Befehl mit festgelegter Markierung entfernt die zusätzlichen SPNs nicht aus dem sekundären Cluster, wenn sie verwendet werden.
Resolution
Der Workaround besteht darin, die SPNs aus dem zweiten betroffenen Cluster manuell über die CLI dieses Clusters zu löschen. Dies muss ohne die Option "--machine-account" nach Superna Failover/Failback durchgeführt werden. Die Meldungen können auch bedenkenlos ignoriert werden, da der fehlende SPN auf dem sekundären Cluster ohne einen zugehörigen SmartConnect-Poolnamen nicht benötigt wird.
# isi auth ads spn delete <SPN-Name> --zone=<Zonenname>