Build / Packaging / Application Extension¶
この章は、SONiC を「どう作って配るか」と「外部アプリケーションをどう持ち込むか」を、開発者と運用者が同じ地図で読むための入口である。既存ページは build 改善 HLD、Debian cadence、image versioning、application extension(SPM)、ARM、container hardening、feature quality の各 HLD に分散しているが、ビルド成果物が ASIC に届くまでの導線で読み直すと位置関係がはっきりする。
主な問いは次の 4 つ。
- SONiC の build system、build profile、RFS split build はそれぞれ何の遅さや煩雑さを減らすのか。
- Application Extension / sonic-package-manager (SPM) は外部 docker をどう配布し、
config featureの管理面にどう載るのか。 - Base OS と docker image のバージョニングは、互換性とアップグレード手順とどう結びつくのか。
- ARM サポート、container hardening、feature quality は、ビルドとリリースのどの段階に効くのか。
読む順番¶
- 概要: build → image → package → extension の責務を分ける。
- アーキテクチャ: build artifact が ONIE installer になるまでの流れと RFS split を追う。
- 設定 / 運用: SPM・application extension・package manager の lifecycle を運用面から見る。
- 発展トピック: ARM、container hardening、feature quality を、リリース品質の導線として読む。
- 内部実装: sonic-buildimage の Makefile / docker 階層、slave container、
rules//dockers/の責務分担、Application Extension マニフェストの解釈を実装側から見る。
統合した既存ページ¶
この章は architecture / system / management / categories の build・package 系ページ 13 件を横断している。各サブページ末尾の「関連ページ」から原文の HLD と裏取りステータスへ辿れる。
章構成と進捗¶
| ページ | 状態 | verification |
|---|---|---|
| concept | ✅ 完成 (142 行) | meta |
| setup | ✅ 完成 (143 行) | meta |
| operations | ✅ 完成 (180 行) | meta |
| internals | ✅ 完成 (126 行) | meta |
| advanced | ✅ 完成 (115 行) | meta |
次に読むべき記事¶
この章を読み進める順
関連する HLD 7 件
- SONiC OS と Docker イメージのセマンティックバージョニング
- SONiC Feature Quality 定義(Alpha / Beta / GA とリリースノート連動)
- Alpine 仮想 SONiC(ALViS / KNE デプロイ)
- GNS3 VM 上での SONiC 動作(sonic-vs.img と Qemu テンプレート)
- SONiC Debian アップグレード方針(base / container / 廃止 cadence)
- libsairedis API idempotence(warm restart 用 OID キャッシュと duplicate 抑止)
- Error Handling Framework 内部実装(OrchAgent producer / ErrorListener / ASIC_DB notification)
関連トラブルシュート 5 件
- SAI failure / syncd リスタート多発
- Warm Reboot が失敗 / 通信断が長引く
- Multi-ASIC で namespace 間通信できない
- PINS gRPC (P4Runtime) が応答しない
- APP_DB → ASIC_DB の反映が遅延・停止する
関連する章¶
前提として読むべき章
派生で読むべき章
補完的に読む章