gNMI / gNOI / OpenConfig / YANG¶
この章は、SONiC の「モデル駆動管理」を、リクエストが入る入口から ConfigDB に到達するまでの順で読み直すための入口である。既存ページは HLD 単位で書かれており、Translib、Transformer、gNMI server、gNOI service が別の文書に分かれている。運用者・開発者が最初に知りたい境界は、どのプロトコル/モデルが何を直接いじっているか、という一点に集約される。
主な問いは次の 4 つ。
- REST / gNMI / Translib / Transformer はどの層で CONFIG_DB に到達するのか。
- OpenConfig YANG と SONiC native YANG はいつ使い分けるのか。
- gNOI System / OS / File / Healthz は SONiC のどの service を呼んでいるのか。
- gNSI、master arbitration、save-on-set、dial-out subscription は運用上どこで効くのか。
読む順番¶
- 概要: Management Framework の全体像、gNMI / REST / CLI の位置付け、OpenConfig と SONiC YANG の使い分けを整理する。
- アーキテクチャ: gNMI server から Translib、Transformer、YANG validation、CONFIG_DB までの request flow を mermaid で追う。
- 設定: gNMI Get / Set / Subscribe、OpenConfig interface / VLAN / PortChannel / BGP の典型例。
- 運用: master arbitration、save-on-set、dial-out telemetry、subscription の競合制御と永続化。
- gNOI / gNSI: System、OS、File、Factory Reset、Healthz、gNSI の API と SONiC service の対応表。
- YANG リファレンス: 機能章別の YANG モジュール参照表。
- 内部実装: gNMI server / Translib / Transformer / sonic-mgmt-common の責務分担と、YANG → ABNF/CONFIG_DB 変換を実装側から見る。
- 発展トピック: dial-out telemetry、master arbitration、gNSI、save-on-set、他章との境界。
統合した既存ページ¶
この章は management の HLD 派生ページ 14 件、system の telemetry 関連 2 件、switching の OpenConfig 関連 2 件、routing の subscription 関連 2 件、categories の入口 1 件、reference の YANG 参照を横断している。細部のスキーマ・操作・実装裏取りは各サブページ末尾の「関連ページ」から参照する。
章構成と進捗¶
| ページ | 状態 | verification |
|---|---|---|
| concept | ✅ 完成 (140 行) | meta |
| setup | ✅ 完成 (208 行) | meta |
| operations | ✅ 完成 (170 行) | meta |
| internals | ✅ 完成 (126 行) | meta |
| advanced | ✅ 完成 (102 行) | meta |
次に読むべき記事¶
この章を読み進める順
関連する HLD 7 件
- SONiC NOS の設定手段一覧(CLI / sonic-cfggen / config_db.json / RESTCONF / gNMI / ZTP / vtysh / redis / apply-patch)
- gNSI 設定と運用(gNMI フラグ / YANG / 運用イメージ)
- YANG モデルによる ConfigDB 更新検証(GCU + ConfigDBConnector デコレータ)
- OpenConfig Interfaces YANG(Ethernet 設定の REST/gNMI 対応と sonic-mgmt-common transformer)
- Redis Client Manager(RCM: connection pool / transactional client)
- シリアルコンソール全体設定(SERIAL_CONSOLE.POLICIES)
- SONiC gNMI Server インタフェース設計(CONFIG_DB / SONiC YANG / Generic Config Updater 連携)
関連トラブルシュート 5 件
- show techsupport の出力サイズが肥大化する
- APP_DB → ASIC_DB の反映が遅延・停止する
- orchagent が CPU 100% で詰まる
- 経路は RIB にあるが FIB / ASIC に降りない
- Warm Reboot が失敗 / 通信断が長引く
関連する章¶
前提として読むべき章
派生で読むべき章
補完的に読む章