PowerScale: OneFS: Brak alertów SPN bez dopasowania nazwy strefy SmartConnect (SCZN)
Summary: Klastry zgłaszają, że na serwerze usługi AD brakuje wymaganych nazw SPN po przejściu w tryb failover lub powrót po awarii dla nazw głównych usług (SPN), które są zgodne z nazwą strefy SmartConnect klastra. ...
Symptoms
Po wykonaniu procesu przełączania awaryjnego/powrotu po awarii Superna w celu wyznaczenia głównego klastra PowerScale mogą pojawić się następujące błędy w klastrze dodatkowym.
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'
Po zbadaniu może się okazać, że brakujące nazwy SPN nie mają takiej samej nazwy jak żadna z nazw pul sieciowych w klastrze pomocniczym.
Na przykład, jeśli PowerScale clusterA pokazuje brakujące alerty SPN:
NAZWA KLASTRA: clusterA
Kontrola nazwy SPN zgłasza brakujące nazwy SPN:
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
Żadna z nazw pul sieciowych nie jest zgodna, co pokazuje polecenie "isi network pools list -v". Brakująca nazwa SPN i nazwa puli sieci muszą być dokładnie zgodne. Inne niepowiązane, podobne nazwy, które zawierają część brakującej nazwy SPN, nie są liczone.
Pule sieciowe klastra 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
Podczas sprawdzania nowego klastra podstawowego, klastra B, można znaleźć nazwę puli SmartConnect odpowiadającą brakującej nazwie SPN. Jest to nazwa SPN, do której odwołuje się alert w klastrze pomocniczym cluster clusterA.
NAZWA KLASTRA: clusterB
Klaster produkcyjny z nazwą SPN + puli:
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
Nazwa puli sieciowej klastra głównego
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 używa następującego polecenia do dodawania i usuwania nazw SPN. Określają również konto maszyny skojarzone z nazwą SPN w domenie usługi AD.
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
We wprowadzeniu OneFS 9.5.1.1 opcja "--machine-account" z polecenia "isi auth ads spn create/delete" nie działa zgodnie z przeznaczeniem. Polecenie z ustawioną flagą nie usuwa dodatkowych nazw SPN z klastra pomocniczego, gdy są używane.
Resolution
Obejście problemu polega na ręcznym usunięciu nazw SPN z drugiego klastra, którego dotyczy problem, przy użyciu interfejsu wiersza polecenia tego klastra. Należy to zrobić bez opcji "--machine-account" po przejściu w tryb failover/powrót po awarii Superna. Komunikaty można również bezpiecznie zignorować, ponieważ nie ma potrzeby wprowadzania brakującej nazwy SPN w klastrze dodatkowym bez powiązanej z nią nazwy puli SmartConnect.
# isi auth ads spn delete <nazwa> SPN --zone=<nazwa strefy>