Isilon PowerScale OneFS 8.2 und höher: Aufgeben freier Vnodes für neue Vnodes zulassen, wenn der Cache voll ist
Summary: Ermöglicht die Freigabe freier virtueller Nodes (Vnodes) für neue Vnodes, wenn der Cache voll ist.
This article applies to
This article does not apply to
This article is not tied to any specific product.
Not all product versions are identified in this article.
Symptoms
Die Ausführung auf niedrigen Vnodes wird durch die Anzeige mehrerer
vlruwk Laufende Threads:
/var/log/messages 2022-03-11T17:17:01-08:00 <0.4> Isilon-4(id4) /boot/kernel.amd64/kernel: [rbm_worker.c:350](pid 4738="kt: dxt1")(tid=102982) There are now 505 DXT threads, msg stats: READ_INODE: 1, callback stats: kernel:lk_lock_async_callback2+0: 502, wait stats: biord: 3, vlruwk: 507Beachten Sie im VMLOG, dass VNODE den höchsten Arbeitsspeicher belegt:
vm.uma_zalloc_pigs: UMA Zalloc Pigs:
ZONE NAME SIZE LIMIT COUNT MEM USED
VNODE 000560, 00000000, 00830165, 00453996K
IFSINODE 000568, 00000000, 00777624, 00431338K
VM OBJECT 000240, 00000000, 00813154, 00190582K
lki_lin_ent 000208, 00000000, 00934988, 00189919K
lkc_gen_ent 000064, 00000000, 02235094, 00139693K
stat_cache 000176, 00000000, 00752869, 00129399K
lki_ref_ent 000105, 00000000, 00936379, 00096015K
lkc_lin_idds 000076, 00000000, 01012017, 00075110K
lkc_ref_idds 000068, 00000000, 01008047, 00066940K
mbuf_jumbo_p 004096, 00000000, 00016394, 00065576K
mbuf_cluster 002048, 00000000, 00026630, 00053260K
RADIX NODE 000144, 00000000, 00308743, 00043416K
ifm_attr_cac 000048, 00000000, 00770256, 00036105K
lki_mds_ent 000144, 00000000, 00255978, 00035996K
UMA Slabs 000080, 00000000, 00239085, 00018678K
Unshown zones account for 174014K
Total: 2200045KCause
Nodes können Out Of Memory (OOM) haben, weil freie Vnodes nicht zurückgewonnen werden. In OneFS 8.2 und höher wird eine neue systcl implementiert wurde (vfs.vnlru_reuse_freevnodes), um das Aufgeben freier Vnodes für neue Vnodes zu ermöglichen, wenn der Cache voll ist.
Standardmäßig vnlru_reuse_freevnodes ist deaktiviert, da Isilon es vorzieht, das Vnode-Recycling auf vnlru_proc. Andrehend vnlru_reuse_freevnodes erlaubt getvnewvnode() um verfügbare freie Vnodes wiederzuverwenden, um Platz für neue zu schaffen, wenn der Cache voll ist (aber nicht überdimensioniert ist). Dadurch wird verhindert, dass Vnode-Zuweisungen in den Ruhemodus versetzt werden, und es wird vermieden, dass sie aus dem Ruhemodus aktiviert werden vnlru_proc.
Resolution
Achtung: Holen Sie vor dem Deaktivieren oder Aktivieren die technische Genehmigung ein
vfs.vnlru_reuse_freevnode. Alle Cluster sollten unabhängig evaluiert werden, selbst wenn es sich um ein Peer-Cluster oder ein Disaster-Recovery-Cluster handelt.
Process:
- Überprüfen Sie, ob der Wert mit dem folgenden Befehl festgelegt wurde (der Standardwert ist 0):
# isi_for_array sysctl vfs.vnlru_reuse_freevnodes
- "Festlegen"
vfs.vnlru_reuse_freevnodeszu 1:
# isi_sysctl_cluster vfs.vnlru_reuse_freevnodes=1
- Überprüfen Sie, ob der Wert festgelegt ist, indem Sie den folgenden Befehl erneut ausführen:
# isi_for_array sysctl vfs.vnlru_reuse_freevnodesUm die Nutzung von nach einer Änderung zu überwachen, verwenden Sie die folgenden Befehle, um die Nutzung von zu überwachen
vnode cache und vlurwk Fäden:
# isi_for_array -s 'sysctl vfs.numvnodes kern.maxvnodes| xargs'; sleep 300 # isi_for_array -s sysctl kern.malloc_pigs|grep vlurwk
Additional Information
Article Properties
Article Number: 000173892
Article Type: Solution
Last Modified: 18 Jun 2025
Version: 17
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.