2023年4月27日 (初版)
| TAC SR Collection |
| 主な問題 |
IOS-XR 64-bit (eXR)で動作するルータにおいて、SNMP で processMIB (1.3.6.1.4.1.9.9.109) を取得した際に mibd_entity プロセスが deadlock される可能性があります。結果として、同プロセスが block 状態となり SNMP 取得の処理がタイムアウトし、取得に失敗します。
事象が発生している場合、mibd_entity プロセスが block されていることを以下コマンドで確認できます。
RP/0/RP0/CPU0:ios#show process blocked location all
Tue Jul 27 15:29:15.929 GMT-8
node: node0_RP0_CPU0
------------------------------------------
Jid Pid Tid ProcessName State TimeInState Blocked-on
83505 17969 17969 sh_proc_ng_blocked Reply 0000:00:00.0248 4940 procfs_server
437 25359 25373 mibd_entity Mutex 0100:50:06.0710 0x55d96e9613d8 25370 mibd_entity list_thread_lock:70 <<<
437 25359 25370 mibd_entity Mutex 0100:50:00.0739 0x7fca9c0b5a50 25373 mibd_entity cipc_levm_private_handler:1953 <<<
|
| 原因 |
この問題は CSCvz42568 として報告されています。 CSCvz42568 mibd_entity in blocked state due to processmib in thread deadlock
|
| 解決策 |
mibd_entity プロセス と wd_sysmon プロセス (admin 上) をリスタートすることで復旧可能です。
また、processMIB を SNMP で取得する際に、以下の手順にて sysadmin を取得対象から外すことでこの問題の回避が可能です。 1. show snmp entity コマンドにて sysadmin の index 値を確認
RP/0/RP0/CPU0:ios#show snmp entity | inc 0/RP0
Thu Sep 16 04:47:52.104 UTC
entPhysicalIndex: 2 entPhysicalName: 0/RP0-Motherboard
entPhysicalIndex: 3 entPhysicalName: 0/RP0-IDPROM
entPhysicalIndex: 12 entPhysicalName: 0/RP0 processor for sysadmin <<< "12" が sysadmin の index 値
entPhysicalIndex: 13 entPhysicalName: 0/RP0 processor for RP IOS-XR
entPhysicalIndex: 14 entPhysicalName: 0/RP0 processor for LCP XR
2. SNMP host 側で sysadmin の ID を確認 $ snmpwalk -v2c -c <コミュニティ名> <IP アドレス> 1.3.6.1.4.1.9.9.109
SNMPv2-SMI::enterprises.9.9.109.1.1.1.1.2.4097 = INTEGER: 13
SNMPv2-SMI::enterprises.9.9.109.1.1.1.1.2.4129 = INTEGER: 12 <<< "4129" が sysadmin
SNMPv2-SMI::enterprises.9.9.109.1.1.1.1.2.4289 = INTEGER: 14
3. SNMP 取得の際に上記 ""4129"" を除いた他の node を対象に SNMP を実行
根本原因の解決のためには CSCvz42568 の修正済みバージョンを使用する必要があります。
|
備考
本不具合は、Bug Search Tool でも確認できます。
各製品の TAC SR Collection の一覧は、よくある質問と解決方法 (TAC SR Collection) から確認できます。