CodingBox ドキュメント

管理プレーン:コンソール、OOB、API、SNMP と光モジュールのテレメトリー

スイッチがトランシーバーについて把握しているすべて(識別情報、DDM、アラーム、モジュールを拒否した理由)は、制御プレーンに存在し、管理プレーンを通じて手元に届きます。コンソールケーブル、アウトオブバンドポート、CLI や API のセッション、SNMP ポーリング、テレメトリーストリーム、 syslog の行などです。このページでは、主要なプラットフォームでトランシーバーデータを運ぶアクセス手段、自動化インターフェース、SNMP オブジェクトとテレメトリーパス、アラートを上げる価値のある syslog メッセージ、そして光モジュールに関わる運用ルーチン(バックアップ、アップグレード、ZTP)を一覧にします。

アクセス手段

手段ポート/インターフェース用途備考
コンソールRJ45 RS-232(Cisco ロールオーバーケーブル、9600 8N1)および/または USB-C/mini-USB(仮想 COM)初期設定、復旧、起動プロセスの確認新しめの機種の多くは 115 200;USB コンソールは Windows でドライバーが必要
アウトオブバンド管理専用の mgmt0 / Management1 / me0 Ethernet、独自の VRF日常の管理、MLAG のキープアライブ、テレメトリー物理的に独立したネットワーク。1G 銅線、SFP の場合もある(ポート名と LED
インバンドデータネットワーク上のループバックまたは SVIOOB がない場合データプレーンが落ちると一緒に失われる
BMC / IPMI / Redfishホワイトボックスと一部の DC スイッチ電源、センサー、ファームウェアサーバーに近い方式
Bluetooth/USB アプリ一部のキャンパススイッチスマートフォンからの初期設定

設定・自動化インターフェース

インターフェース規格対象光モジュールでの用途
CLI(SSH)全機種show interfaces transceiver など(スイッチ上の光モジュールの検証
NETCONF / YANGRFC 6241、OpenConfig およびネイティブモデルJunos、IOS-XE/XR、NX-OS、Arista、Huawei、SONiC(一部)openconfig-platform-transceiver が識別情報と DDM を読み取る
RESTCONF / RESTRFC 8040、ベンダー独自の REST(Arista eAPI、AOS-CX REST、NX-API、Dell OS10 REST)ほとんどの機種同じ show コマンドの内容を JSON で取得
gNMI / gRPCOpenConfig gNMIArista、Cisco、Juniper、Nokia、SONiCストリーミングテレメトリーの購読
SNMPv2c / v3全機種DDM とステータスのポーリング(監視
Ansible / Terraform / Python上記の上で動作機器群全体のトランシーバー台帳管理
ZTP / PoAP / autoinstallDHCP オプション + HTTP/TFTPプロビジョニング新規スイッチがイメージと設定を取得する。光モジュールのポリシーコマンドはその設定に含めておく必要がある

トランシーバー用の SNMP オブジェクト

範囲MIB/オブジェクト備考
インターフェースの状態とカウンター(全機種)IF-MIBifOperStatusifHighSpeedifInErrorsifHCInOctetsEtherLike-MIBdot3StatsFCSErrorsリンクと CRC
物理インベントリ(全機種)ENTITY-MIBentPhysicalDescrentPhysicalModelName(PN)、entPhysicalSerialNum(SN)、entPhysicalMfgName(ベンダー)、entPhysicalClass = port/moduleモジュールはポートの子エンティティとして現れる
センサー(標準)ENTITY-SENSOR-MIB(RFC 3433):entPhySensorType(celsius、volts、amperes、dBm は watts×10^scale として表現)、entPhySensorValueentPhySensorScaleentPhySensorPrecisionArista、Cisco(一部)、Dell、SONiC で使用
CiscoCISCO-ENTITY-SENSOR-MIBentSensorValue、しきい値は CISCO-ENTITY-SENSOR-EXT-MIB)、CISCO-ENTITY-FRU-CONTROL-MIB。トランシーバーの DOM はポートの子エンティティの下にインデックスされるIOS/IOS-XE/NX-OS
JuniperJUNIPER-DOM-MIBjnxDomCurrentRxLaserPowerjnxDomCurrentTxLaserOutputPowerjnxDomCurrentTxLaserBiasCurrentjnxDomCurrentModuleTemperaturejnxDomCurrentModuleVoltage、アラーム/警告の列。レーンごとのテーブル jnxDomCurrentLane*値は 0.01 dBm/0.001 mA 単位
HuaweiHUAWEI-ENTITY-EXTENT-MIBhwEntityOpticalRxPowerhwEntityOpticalTxPowerhwEntityOpticalBiasCurrenthwEntityOpticalTemperaturehwEntityOpticalVendorSnhwEntityOpticalVendorPnhwEntityOpticalTypehwEntityOpticalUserEepromVRP
H3CHH3C-TRANSCEIVER-INFO-MIBhh3cTransceiverHardwareTypehh3cTransceiverVendorNamehh3cTransceiverCurRXPowerhh3cTransceiverCurTXPowerhh3cTransceiverTemperatureComware
HPE ArubaAOS-CX では ENTITY-SENSOR-MIB。AOS-S では hpicfTransceiver MIB
Dell OS10ENTITY-SENSOR-MIB + os10-platform REST
ExtremeEXOS では EXTREME-PORT-MIB / extremeOpticalPort
MikroTikMIKROTIK-MIBmtxrOpticalTablemtxrOpticalRxPowermtxrOpticalTxPowermtxrOpticalTemperaturemtxrOpticalVoltagemtxrOpticalTxBiasRouterOS
UbiquitiUBNT-… は限定的。SSH/ethtool -m を使う
SONiCsnmpagent 経由の ENTITY-SENSOR-MIB。状態は redis の TRANSCEIVER_DOM_SENSOR テーブルに保持
トラップlinkDown/linkUp(IF-MIB)、ベンダーの DOM しきい値トラップ(jnxDomAlarm*hwEntityOpticalTrapcefcFRU*

スケーリングに関する助言:DDM は 10 秒ごとではなく 60–300 秒ごとにポーリングし、差分でアラートを上げてください。監視を参照。

ストリーミングテレメトリーのパス(OpenConfig)

パスデータ
/components/component[name=<port>-transceiver]/transceiver/state/vendorvendor-partserial-noform-factorconnector-typeethernet-pmdpresentdate-code
…/transceiver/physical-channels/channel[index]/state/レーンごとの input-poweroutput-powerlaser-bias-current(instant/avg/min/max)
/components/component/state/temperature/instantモジュール温度
/interfaces/interface[name]/state/counters/in-crc-errorsin-fcs-errorscarrier-transitions(フラップ回数)
/interfaces/interface/ethernet/state/negotiated-port-speedfec-mode(新しめの機種)
ベンダー独自(Cisco XR の Cisco-IOS-XR-controller-optics-oper、Junos の /junos/system/linecard/optics/、Arista の /Sysdb/hardware/xcvr/status/より豊富:しきい値、アラーム、レーンの状態

サンプリング間隔は、DDM が 30–60 秒、カウンターが 10 秒というのが一般的です。テレメトリーはプッシュ型なので、ポートが数百あってもスイッチへの負荷はわずかです。

アラートを上げる価値のある syslog メッセージ

分類例(文言は機種により異なる)意味
モジュールの受理/拒否%PHY-4-UNSUPPORTED_TRANSCEIVERTransceiver … unsupportedphony transceiverMod_InvPIC … optics unsupportedポリシー(各 NOS がモジュールを検証する方法
モジュールの挿抜%SFF8472-…XCVR inserted/removedTransceiver presentインベントリ
DOM しきい値Rx power low warningTEMP_HIGH_ALARMjnxDomAlarmSet%SFF8472-5-THRESHOLD_VIOLATION水準(しきい値とアラーム
リンク状態%LINK-3-UPDOWN%LINEPROTO-5-UPDOWNSNMP_TRAP_LINK_DOWNフラップ(リンクフラッピング
Errdisable%PM-4-ERR_DISABLE gbic-invalidlink-flap error detectedポリシーによるポートシャットダウン
FECFEC uncorrectable errorspre-FEC BER threshold限界に近いリンク
電力/温度power class exceedsModule … high temperature、ファン/PSU のアラーム電力と温度
CMISModule not readyDataPath … stateCDB failureCMIS の問題

光モジュールに関わる運用ルーチン

ルーチンモジュールについて行うべきこと
設定のバックアップ光モジュールのポリシーコマンド(service unsupported-transceiver、FEC 設定、ブレークアウト)を含める。リストア時にこれらが失われるとポートがダウンする
ソフトウェアアップグレードリリースノートのトランシーバー関連項目を確認し、カナリアで検証し、コーディング済みモジュールの台帳を維持する(互換性マトリクスとファームウェア
モジュールのファームウェア一部の NOS はモジュールにファームウェアをプッシュする(Cisco、Arista、Juniper の OEM 光モジュール向け)。新しい NOS がモジュールを黙って更新することがある(コントローラーとファームウェア
インベントリのエクスポートshow inventory / ENTITY-MIB / テレメトリーから CMDB へ:ベンダー、PN、SN、ポート
ZTPプロビジョニング設定に FEC/速度/ポリシーの行があらかじめ含まれている必要がある。ないと、新規プロビジョニングされたリーフのアップリンクがダークのまま立ち上がる
時刻同期NTP/PTP により、機器間で DDM の履歴と syslog の時刻を揃える
AAA とロギング誰がポートの速度/FEC を変更したかを記録する。「光モジュールが死んだ」というチケットの半分は設定変更が原因

CodingBox では

ベンチでの読み取りとスイッチのテレメトリーは、同じバイト列、すなわちベンダー、PN、SN、日付コード、DDM の値としきい値を記述しています。スイッチのインベントリをエクスポートし、シリアル番号を code database と突き合わせれば、識別情報がコーディングされたモジュール、しきい値がデータシートと異なるモジュール、ポート間を移動したモジュールを見つけられます(Check transceiverツールで DDM を読み取る)。


この記事に不正確な点や誤りを見つけた場合は、該当する箇所を選択して Ctrl+Enter を押すと、できます。