PowerScale. Возможная периодическая задержка или критическая перезагрузка узла после модернизации OneFS
Zusammenfassung: После модернизации до OneFS до 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 г. значение временного решения было увеличено, особенно для узлов класса A с 96 Гбайт памяти или меньше.
Увеличьте параметр sysctl vfs.dirtybufthresh на всех nodes local sysctl.conf файлов, выполнив следующие действия с любого отдельного узла:
- Закомментируйте любое временное решение, если оно применяется, согласно обновлениям в этой статье до 2026-June-03, в /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.