两条路径
EdgeOS 的 OTA 走双轨,根据客户部署形态选择:
公有云模式(默认)
官方统一提供 OTA 服务:
- 设备直接连官方 OTA 端点
- 官方仓库托管所有 Runtime 版本与 Protocol Pack
- 灰度发布、签名校验、回滚控制由官方运营
适合:标准 License 客户、量不大但希望少操心运维的项目。
私有化模式(达量后)
客户自己管 OTA,官方提供固件版本:
- 客户在自己机房 / 私有云搭 OTA 服务
- 官方仅发布固件版本 + 校验签名给客户
- 客户决定何时分发、灰度比例、设备分组策略
- 整个分发链路在客户内网,敏感设备无需出公网
适合:达到 License 量级阈值的客户、有内网合规要求的能源 / 电力 / 工业项目。
一次完整 OTA 的步骤
不论哪种模式,状态机一致:
PENDING (心跳上报) → DOWNLOADING → VERIFIED (签名 + 哈希) →
APPLYING (双分区切换) → OK | FAILED → ROLLBACK?
- 双分区设计保证升级失败可自动回滚到上一稳定版本
- 失败设备自动停留在原版本继续工作,不影响业务
- 灰度建议:5% → 25% → 100%,每阶段稳定 24h 再扩
固件版本来源
官方仓库结构:
- Runtime:EdgeOS 内核 + 调度 + License Agent + OTA Agent
- Protocol Pack:设备协议适配包,独立于 Runtime 升级
- Hotfix:紧急补丁,不附带特性变更
私有化客户拿到的是整套 manifest + 签名 + 二进制,可直接灌进私有 OTA 服务。
切换条件
公有云 → 私有化的切换通常发生在:
- 设备数达约定阈值(具体看商务)
- 客户有明确的内网 / 合规要求
- 客户已有成熟的内部分发链路(如自有 Nexus / 镜像仓库 / pm2 / Ansible)
切换时不影响存量设备,仅改 OTA 服务地址 + 重新分配信任根。
Changelog 与版本演进见 /changelog · License 模式见 License 长期有效 / 滥用撤销。