管理プレーン:コンソール、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) |
| インバンド | データネットワーク上のループバックまたは SVI | OOB がない場合 | データプレーンが落ちると一緒に失われる |
| BMC / IPMI / Redfish | ホワイトボックスと一部の DC スイッチ | 電源、センサー、ファームウェア | サーバーに近い方式 |
| Bluetooth/USB アプリ | 一部のキャンパススイッチ | スマートフォンからの初期設定 | — |
設定・自動化インターフェース
| インターフェース | 規格 | 対象 | 光モジュールでの用途 |
|---|
| CLI(SSH) | — | 全機種 | show interfaces transceiver など(スイッチ上の光モジュールの検証) |
| NETCONF / YANG | RFC 6241、OpenConfig およびネイティブモデル | Junos、IOS-XE/XR、NX-OS、Arista、Huawei、SONiC(一部) | openconfig-platform-transceiver が識別情報と DDM を読み取る |
| RESTCONF / REST | RFC 8040、ベンダー独自の REST(Arista eAPI、AOS-CX REST、NX-API、Dell OS10 REST) | ほとんどの機種 | 同じ show コマンドの内容を JSON で取得 |
| gNMI / gRPC | OpenConfig gNMI | Arista、Cisco、Juniper、Nokia、SONiC | ストリーミングテレメトリーの購読 |
| SNMP | v2c / v3 | 全機種 | DDM とステータスのポーリング(監視) |
| Ansible / Terraform / Python | 上記の上で動作 | — | 機器群全体のトランシーバー台帳管理 |
| ZTP / PoAP / autoinstall | DHCP オプション + HTTP/TFTP | プロビジョニング | 新規スイッチがイメージと設定を取得する。光モジュールのポリシーコマンドはその設定に含めておく必要がある |
トランシーバー用の SNMP オブジェクト
| 範囲 | MIB/オブジェクト | 備考 |
|---|
| インターフェースの状態とカウンター(全機種) | IF-MIB:ifOperStatus、ifHighSpeed、ifInErrors、ifHCInOctets;EtherLike-MIB:dot3StatsFCSErrors | リンクと CRC |
| 物理インベントリ(全機種) | ENTITY-MIB:entPhysicalDescr、entPhysicalModelName(PN)、entPhysicalSerialNum(SN)、entPhysicalMfgName(ベンダー)、entPhysicalClass = port/module | モジュールはポートの子エンティティとして現れる |
| センサー(標準) | ENTITY-SENSOR-MIB(RFC 3433):entPhySensorType(celsius、volts、amperes、dBm は watts×10^scale として表現)、entPhySensorValue、entPhySensorScale、entPhySensorPrecision | Arista、Cisco(一部)、Dell、SONiC で使用 |
| Cisco | CISCO-ENTITY-SENSOR-MIB(entSensorValue、しきい値は CISCO-ENTITY-SENSOR-EXT-MIB)、CISCO-ENTITY-FRU-CONTROL-MIB。トランシーバーの DOM はポートの子エンティティの下にインデックスされる | IOS/IOS-XE/NX-OS |
| Juniper | JUNIPER-DOM-MIB:jnxDomCurrentRxLaserPower、jnxDomCurrentTxLaserOutputPower、jnxDomCurrentTxLaserBiasCurrent、jnxDomCurrentModuleTemperature、jnxDomCurrentModuleVoltage、アラーム/警告の列。レーンごとのテーブル jnxDomCurrentLane* | 値は 0.01 dBm/0.001 mA 単位 |
| Huawei | HUAWEI-ENTITY-EXTENT-MIB:hwEntityOpticalRxPower、hwEntityOpticalTxPower、hwEntityOpticalBiasCurrent、hwEntityOpticalTemperature、hwEntityOpticalVendorSn、hwEntityOpticalVendorPn、hwEntityOpticalType;hwEntityOpticalUserEeprom | VRP |
| H3C | HH3C-TRANSCEIVER-INFO-MIB:hh3cTransceiverHardwareType、hh3cTransceiverVendorName、hh3cTransceiverCurRXPower、hh3cTransceiverCurTXPower、hh3cTransceiverTemperature | Comware |
| HPE Aruba | AOS-CX では ENTITY-SENSOR-MIB。AOS-S では hpicfTransceiver MIB | — |
| Dell OS10 | ENTITY-SENSOR-MIB + os10-platform REST | — |
| Extreme | EXOS では EXTREME-PORT-MIB / extremeOpticalPort | — |
| MikroTik | MIKROTIK-MIB:mtxrOpticalTable(mtxrOpticalRxPower、mtxrOpticalTxPower、mtxrOpticalTemperature、mtxrOpticalVoltage、mtxrOpticalTxBias) | RouterOS |
| Ubiquiti | UBNT-… は限定的。SSH/ethtool -m を使う | — |
| SONiC | snmpagent 経由の ENTITY-SENSOR-MIB。状態は redis の TRANSCEIVER_DOM_SENSOR テーブルに保持 | — |
| トラップ | linkDown/linkUp(IF-MIB)、ベンダーの DOM しきい値トラップ(jnxDomAlarm*、hwEntityOpticalTrap、cefcFRU*) | — |
スケーリングに関する助言:DDM は 10 秒ごとではなく 60–300 秒ごとにポーリングし、差分でアラートを上げてください。監視を参照。
ストリーミングテレメトリーのパス(OpenConfig)
| パス | データ |
|---|
/components/component[name=<port>-transceiver]/transceiver/state/ | vendor、vendor-part、serial-no、form-factor、connector-type、ethernet-pmd、present、date-code |
…/transceiver/physical-channels/channel[index]/state/ | レーンごとの input-power、output-power、laser-bias-current(instant/avg/min/max) |
/components/component/state/temperature/instant | モジュール温度 |
/interfaces/interface[name]/state/counters/ | in-crc-errors、in-fcs-errors、carrier-transitions(フラップ回数) |
/interfaces/interface/ethernet/state/ | negotiated-port-speed、fec-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_TRANSCEIVER、Transceiver … unsupported、phony transceiver、Mod_Inv、PIC … optics unsupported | ポリシー(各 NOS がモジュールを検証する方法) |
| モジュールの挿抜 | %SFF8472-…、XCVR inserted/removed、Transceiver present | インベントリ |
| DOM しきい値 | Rx power low warning、TEMP_HIGH_ALARM、jnxDomAlarmSet、%SFF8472-5-THRESHOLD_VIOLATION | 水準(しきい値とアラーム) |
| リンク状態 | %LINK-3-UPDOWN、%LINEPROTO-5-UPDOWN、SNMP_TRAP_LINK_DOWN | フラップ(リンクフラッピング) |
| Errdisable | %PM-4-ERR_DISABLE gbic-invalid、link-flap error detected | ポリシーによるポートシャットダウン |
| FEC | FEC uncorrectable errors、pre-FEC BER threshold | 限界に近いリンク |
| 電力/温度 | power class exceeds、Module … high temperature、ファン/PSU のアラーム | 電力と温度 |
| CMIS | Module not ready、DataPath … state、CDB failure | CMIS の問題 |
光モジュールに関わる運用ルーチン
| ルーチン | モジュールについて行うべきこと |
|---|
| 設定のバックアップ | 光モジュールのポリシーコマンド(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 を読み取る)。