Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Behebung von Fehlern und I/O Fehlern bei der Rückforderung von NFS-Sperren
In diesem Abschnitt werden Probleme im Zusammenhang mit I/O Fehlern und Fehlern bei der Rückgewinnung von NFS-Sperren bei Failover-Ereignissen auf FSx ONTAP-Dateisystemen sowie deren Behebung beschrieben.
Bei Failover-Ereignissen treten Fehler auf I/O
Bei Failovers FSx für ONTAP Single-AZ-Dateisysteme kann es bei NFS-Clients zu vorübergehenden I/O Fehlern oder längeren Pausen kommen. Bei NFSv4 +-Clients sehen Sie möglicherweise Kernel-Log-Meldungen wie:
NFS: __nfs4_reclaim_open_state: Lock reclaim failed!
Diese Meldungen weisen darauf hin, dass der Client NFS-Sperren während des Failover-Fensters nicht erfolgreich zurückgewinnen konnte.
Um I/O Fehler bei Failover-Ereignissen zu reduzieren
Unter Linux können Sie die Netzwerkeinstellungen auf Ihren Clients so konfigurieren, dass die Failover-Erkennungszeit von 55-60 Sekunden auf 15—20 Sekunden reduziert wird.
Wichtig
Testen Sie diese Konfigurationen immer zuerst in einer Umgebung außerhalb der Produktionsumgebung. Diese Einstellungen erhöhen den ARP-Verkehr (Address Resolution Protocol), der zur Zuordnung von IP-Adressen zu physischen (MAC-) Adressen in einem lokalen Netzwerk verwendet wird und sich möglicherweise nicht für Umgebungen mit Netzwerkeinschränkungen eignet.
Um optimierte Netzwerkeinstellungen für NFS-Clients zu konfigurieren
-
Erstellen Sie auf jedem NFS-Client eine Sysctl-Konfigurationsdatei. Im folgenden Beispiel werden Einstellungen
defaultauf alle Netzwerkschnittstellen angewendet. Wenn Ihre Instance über mehrere Netzwerkschnittstellen verfügt, können Sie sie durch den spezifischen Schnittstellennamen (z. B.eth0oderens5)defaultersetzen, der für die Verbindung zu Ihrem FSx for ONTAP Single-AZ-Dateisystem verwendet wird:$sudo tee /etc/sysctl.d/99-fsx-failover.conf > /dev/null << 'EOF' # NFS client optimizations for faster failover detection # Replace 'default' with your interface name (e.g., eth0, ens5) to target a specific interface net.ipv4.neigh.default.base_reachable_time_ms=5000 net.ipv4.neigh.default.delay_first_probe_time=1 net.ipv4.neigh.default.ucast_solicit=0 net.ipv4.tcp_syn_retries=3 EOF -
Wenden Sie die Einstellungen sofort an:
$sudo sysctl -p /etc/sysctl.d/99-fsx-failover.conf -
Stellen Sie sicher, dass die Konfiguration aktiv ist. Wenn Sie dies verwendet haben
default, können Sie dies mit den folgenden Befehlen überprüfen. Wenn Sie eine bestimmte Schnittstelle angegeben haben,defaultersetzen Sie sie durch Ihren Schnittstellennamen (z. B.eth0oderens5):$sysctl net.ipv4.neigh.default.base_reachable_time_ms$sysctl net.ipv4.neigh.default.delay_first_probe_time$sysctl net.ipv4.neigh.default.ucast_solicit$sysctl net.ipv4.tcp_syn_retries
Stellen Sie sicher, dass diese Einstellungen konsistent auf alle NFS-Clients angewendet werden, die innerhalb derselben Availability Zone eine Verbindung zu Ihrem FSx for ONTAP-Dateisystem herstellen. Beachten Sie bei der Verwendung dieser Netzwerkoptimierungen Folgendes:
base_reachable_time_ms=5000 — Reduziert die Gültigkeit von ARP-Cache-Einträgen von 30 Sekunden auf 5 Sekunden, sodass Clients Änderungen des IP-Besitzes während eines Failover-Ereignisses schneller erkennen können.
delay_first_probe_time=1 — Reduziert die Verzögerung vor dem Prüfen eines veralteten Netzwerkeintrags von 5 Sekunden auf 1 Sekunde.
ucast_solicit=0 — Überspringt Unicast-Neighbor-Probes und gibt sofort Broadcast-ARP-Anfragen aus, wodurch die Wiedererkennung des aktiven Dateiservers beschleunigt wird.
tcp_syn_retries=3 — Reduziert die Dauer der TCP-Verbindungswiederholungen von 127 Sekunden auf 15 Sekunden.
Nachdem die Netzwerkeinstellungen vorgenommen wurden, sollten Sie Ihre Umgebung überwachen, um die Änderungen zu überprüfen. Sie können ein Failover-Ereignis testen, indem Sie die Durchsatzkapazität Ihres Dateisystems ändern. Weitere Informationen finden Sie unter Testen eines Failovers auf einem Dateisystem.
Überwachung Ihrer Umgebung nach der Übernahme von Änderungen
-
Überwachen Sie die Systemprotokolle auf NFS-Fehler, um NFS-bezogene Kernel-Protokollmeldungen einzusehen.
$sudo journalctl -f | grep -i nfsStellen Sie sicher, dass weniger Meldungen auftreten, wie z.
Lock reclaim failed Überwachen Sie Anwendungsprotokolle, um sicherzustellen, dass bei Failover-Ereignissen weniger I/O Timeouts, Verbindungsfehler und Fehlversuche auftreten.
Überprüfen Sie die Auswirkungen auf das Netzwerk, um sicherzustellen, dass der erhöhte ARP-Verkehr die Netzwerkleistung in Ihrer Umgebung nicht beeinträchtigt.
Alternative Ansätze für Umgebungen NFSv4
In NFSv4 Umgebungen, in denen eine Änderung der clientseitigen Konfiguration nicht möglich ist, sollten Sie die folgenden Alternativen in Betracht ziehen:
Verlängern Sie die NFSv4 Lease-Timeouts. Arbeiten Sie mit Ihrem Speicheradministrator zusammen, um die NFSv4 Leasing-Timeouts zu erhöhen. Durch die Verlängerung dieser Timeouts haben die Clients zusätzliche Zeit, um Sperren bei Failover-Ereignissen zurückzugewinnen. Weitere Informationen finden Sie in der Dokumentation unter Geben Sie die NFSv4 Sperrfrist
an. NetApp ONTAP