Cloudflare 通过可编程 UEFI 控制将核心服务器启动时间从小时级降至分钟级
内容摘要
核心要点
Cloudflare 核心数据中心的裸金属服务器在例行固件更新后,启动时间从几分钟激增至数小时。根本原因是 UEFI 固件在 PXE 预启动阶段,会线性搜索所有可用的网络引导接口(如 IPv4 HTTPS、IPv4 iPXE、IPv6 HTTPS),每个失败尝试等待约 5 分钟超时,导致单次启动浪费约 20 分钟。对于需要多次重启的固件升级流程,总时间累积至近 4 小时。
Cloudflare 工程团队通过串口控制台追踪引导序列,定位到问题在于固件供应商默认设置的不可变引导优先级 Force Priority Httpv4 Httpv6 Pxev4 Pxev6。他们与 OEM 厂商合作,启用了 Boot Order Module 中的特定令牌,从而获得了通过程序化方式(而非手动 BIOS GUI)设置网络引导接口优先级的能力。
解决方案涉及三方面:1) 在预启动 PXE 阶段早期为每种硬件/用例声明引导接口顺序,绕过线性搜索;2) 改造内部工具 CfHIIConfig_App 以处理不同 NIC 供应商的异构接口描述字符串(如 UEFI: HTTPS IPv4 Ethernet Network Adapter...);3) 在 iPXE 脚本中实现状态验证标志(uefi-same-hex),避免每次比较配置,优化了设置命令的执行。
重要性说明
(控制层转移型)这标志着基础设施自动化的控制层正从硬件供应商锁定的固件预设,向基础设施运营者自身的软件定义流程转移。价值从依赖 OEM 的固件更新周期和手动 BIOS 配置,转向了内部工程能力与开源工具(如 iPXE)的深度集成。对于管理大规模异构裸金属资产的企业,获得引导层的程序化控制权是实现分钟级恢复、无缝固件滚动升级和真正“可编程硬件”的关键一步,否则将始终受制于底层固件的低效默认行为。
PRO 决策建议
[Vendors] 基础设施和硬件供应商应评估将 UEFI/BIOS 设置(尤其是引导顺序)的编程接口标准化和开放,作为其自动化就绪硬件的关键卖点。因为控制权上移是客户的核心需求,封闭性将成为竞争劣势。
[Enterprises] 运营大规模物理基础设施的企业应审计其服务器引导流程,识别是否存在类似的线性搜索或供应商锁定导致的延迟,并启动与硬件供应商的协作,探索通过 API 或工具实现引导层自动化的可行性。因为分钟级与小时级的恢复时间差直接关系到业务弹性和运维成本。
[Investors] 应关注那些在基础设施底层自动化、开源固件工具(如 iPXE、OpenBMC)集成,以及与硬件生态建立深度技术协作关系的公司。因为将自动化延伸至固件层的能力,是提升基础设施效率、降低运营风险的重要护城河。
觉得这篇分析有用?
每周收到3-5条AI基础设施关键信号 →
💬 评论 (0)