PowerScale:OneFS 升級後可能出現間歇性延遲或節點錯誤重新開機
Zusammenfassung: 升級至 OneFS 9.10.1.7、9.13.0.1、9.13.0.2 或 9.13.1.0 後,PowerScale 節點間歇性重新開機並出現 BUF_TIMELOCK 或日誌緩衝區交易鎖定 (BTL) 耗盡。 由於與當機傾印發生間歇性鎖定爭用,用戶端可能會遇到延遲。
Symptome
可能會注意到以下一個或多個症狀:
- 一或多個 PowerScale 節點發生錯誤,並出現與以下狀況類似其中一個的字串:
/var/log/messages:
panic @ time 1778169056.246, thread 0xfffffe8ec0574100: Journal BTL drain on buf 0xfffffe8143e0c038 failed due to timeout. BTL was held by transaction (5:5143063721) [0xfffffe8efdbd3a40] tracking: getblk_core panic @ time 1778435497.146, thread 0xfffffe98692b3000: BUF_TIMELOCK: Waited more than 300 seconds for lock on 0xfffffe82c3b03ea8 (lock access type: 0x89900; wmesg: getblk) -- lockinfo: lock state: EXCL (recursed 0), held by: 0xffffff1e8e18b000; buf_track: jt_flush_block extrainfos: (0: td: 0x0; flags: 200200; time: 4108081318; 1: td: 0x0; flags: 201200; time: 676860600; 2: td: 0x0; flags: 201200; time: 676860439); ext_fields: (b_ext = 0xfffffe82c3b04240; b_trans_item: 0xfffff82333d71de0; b_shadow_item: 0x0; b_ifs_type: 2; b_source_baddr: 2cade5b7000e0029); vnode: 0xfffff80a562026a8; ldnum: 14; disk: 0xfffff80509c67800 da2; iosched: (total_inqueue: 41820; total_inprog: 18; bio_in_prog: 18); panic @ time 1777739689.534, thread 0xfffffe9dff52bb00: BUF_TIMELOCK: Waited more than 240 seconds for lock on 0xfffffe837d0e17b0 (lock access type: 0x89900; wmesg: getblk) -- lockinfo: lock state: EXCL (recursed 0), held by: 0xfffffffffffffff0; buf_track: biodone extrainfos: (0: td: 0x0; flags: 200200; time: 3583726706; 1: td: 0x0; flags: 201200; time: 2710420770; 2: td: 0x0; flags: 201200; time: 1737195872); ext_fields: (b_ext = 0xfffffe837d0e1b48; b_trans_item: 0x0; b_shadow_item: 0x0; b_ifs_type: 0; b_source_baddr: 660d66b900020002); geom bio fields: (bp->b_bio: 0xfffff8325b43dce8; bio_cmd: 2; bio_tdflags: 0; bio_disk: 0x0);
- 由於執行緒正在等待
txn_i_commit這可能會導致客戶端延遲。
Dell 支援部門必須分析任何hangdumps以確認此癥狀。
- 受影響節點上一或多個磁碟機上的磁碟佇列過高
/var/log/vmlog。
例如:
Drive Type OpsIn BytesIn OpsOut BytesOut TimeAvg TimeInQ Queued Busy ------------------------------------------------------------------------------ . . . 2:20 SAS 330.7 11.4M 18.7 284.0k 2.2ms 2.9ms 624.9 76.3
Ursache
這是新發現的問題,其中頻繁刷新會導致磁碟無回應。
受影響的版本:
只有這些確切版本會受到影響:
- OneFS 9.10.1.7
- OneFS 9.13.0.1
- OneFS 9.13.0.2
- OneFS 9.13.1.0
這些版本之前和之後的 OneFS 版本不會受到影響。
Lösung
因應措施:
如果計劃升級到受影響的版本之一,請在升級之前主動應用此解決方法。
升級到受影響的版本後,也可以應用此解決方法。
自 2026 年 6 月 3 日以來,因應措施的值已提高,特別是對於記憶體為 96 GB 或更低的 A 級節點。
增加 sysctl vfs.dirtybufthresh 全部 nodes local sysctl.conf 檔,方法是從任何單個節點執行以下步驟:
- 若根據 2026 年 6 月 3 日前在所有節點 上的 /etc/local/sysctl.conf 文章中的本文更新套用,請註釋掉任何因應措施。若要這樣做,請執行:
isi_for_array "sed -i '' 's/^vfs.dirtybufthresh/#vfs.dirtybufthresh/g' /etc/local/sysctl.conf "
- 在所有節點上的 /etc/local/sysctl.conf 中套用此新的更新因應措施。
若要這樣做,請執行:
isi_for_array -s 'echo "vfs.dirtybufthresh=$((16 * (`sysctl -n kern.nbuf` / 2 + 20) * 9 / 10 ))" >> /etc/local/sysctl.conf'
上述命令會將下列行新增至所有節點上的 /etc/local/sysctl.conf :
vfs.dirtybufthresh=<value_for_specific_node>
上述因應措施不適用於相容性叢集。
建議升級至法規遵循叢集的修正程式碼版本。
永久解決方案:
工程部門正在規劃未來 OneFS 版本中的永久解決方案。
在這些版本推出之前,請保留 在 /etc/local/sysctl.conf 中設定的因應措施值。