跳转到内容

所有软件终将病于中介:解读 Palantir 的「运维责任」硬核宣言

在硅谷和国防科技界,Palantir 一向是个画风清奇的存在。当大多数 SaaS 公司还在为微服务拆分、K8s 自动化部署以及 SRE(站点可靠性工程)团队的架构吵得不可开交时,Palantir 在其技术博客上抛出了一篇极具挑衅性的文章:《Operational Responsibility Is the Only Way to Deliver Software》(运维责任是交付软件的唯一途径)。

文章的核心立场冷酷而坚定:在关键业务和高防安全领域,唯一能保证软件真正高可用、快速演进的范式,不是建立更庞大的专用运维团队,而是实行「运维责任」(Operational Responsibility, 简称 OR)——也就是让写代码的开发者直接接管生产环境的运维。

Palantir 甚至直接搬出了 SpaceX 的经典语录进行跨界比惨与呼应:SpaceX 宣称“我们没有独立的系统工程师,因为你们所有人都是系统工程师”;而 Palantir 则宣布:“在 Palantir,你们所有人都是 SRE。”

读完这篇文章,我的第一反应是:这难道不是十几年前 AWS 提出的“You Build It, You Run It”的老酒装新瓶吗?但在仔细拆解 Palantir 的运作细节后,我发现它真正痛击的,是许多现代工程组织正在陷入的一个危险幻觉——以为只要买了先进的 CI/CD 平台、组建了专业的 SRE 团队,就可以把开发者与生产环境的现实疾苦隔离开来。

中间调试员:稳定性假的守护者,真的隔离墙

Section titled “中间调试员:稳定性假的守护者,真的隔离墙”

在传统的软件开发组织中,当线上出现 BUG 或服务挂掉时,常见的流转路径是这样的:告警触发 -> 运维/SRE 团队第一时间响应 -> 运维工程师翻看日志和监控指标进行初步诊断 -> 尝试重启或临时修复 -> 确认是代码逻辑漏洞后,再转交给对应的开发团队。

Palantir 把这种介于生产环境告警与代码作者之间的角色,称为**“中间调试员”(Generalist Debugger)**。

在 Palantir 看来,中间调试员往往是效率的杀手和告警噪声的放大器。一个对底层架构和上层业务逻辑都不如原作者精通的通用运维人员,在面对复杂分布式系统的非预期故障时,只能做粗粒度的排查。这种中转不仅增加了故障响应的延迟(MTTR),更糟糕的是,它切断了非常关键的工程反馈回路。

在之前关于 Agent 真正落地的终局:为什么 Palantir 要用本体论重构企业决策? 的讨论中,我们曾分析过 Palantir 极其强调数据与行动之间的“零中介闭环”。这一哲学在他们的工程运维上体现得淋漓尽致:“把石头放进正确的鞋子里”(Put the pebble in the right shoe)。

当代码作者因为同一个逻辑边缘缺陷在半夜被 Pager 唤醒三次,并且他很清楚自己是解决问题的最后一站时,这种“鞋里有石头”的刺痛感会产生极其强大的进化动力:开发者不仅会以最快速度根治问题,还会主动在代码里加上便于远程诊断的可观测性设计。

相比之下,如果告警总是被独立 SRE 挡在门外,开发者在写代码时就很难对生产环境保持敬畏。

平台自治与告警卫生的双轮驱动

Section titled “平台自治与告警卫生的双轮驱动”

很多人可能会质疑:如果直接把 Pager 挂在开发者头上,难道不会导致告警风暴(Alert Fatigue)?开发者每天光处理线上日常打扰就够了,还怎么安心写新功能?

Palantir 的回答极其系统化——他们并不是粗暴地把运维包袱硬塞给开发,而是靠“平台基础设施”与“严酷的告警卫生”构成了双层安全网。

首先是基础设施。Palantir 打造了自研的 Palantir Apollo 自动化部署平台。Apollo 能够基于策略和约束自动完成跨云、私有云乃至涉密网络的每天数万次升级与自动回滚。正是有了 Apollo 将常规升级变成无感的日常背景音,开发者才不需要去“死守升级”。

其次是告警卫生(Alerting Hygiene)。Palantir 制定了一条极其苛刻的审计铁律:任何情况下,如果第一个被 Pager 叫醒的人/团队不是能够解决该故障的人,这次告警就被直接判定为“反模式”(Anti-pattern)。

通过持续统计这种告警误投和无意义叫醒,团队能够精准清洗掉垃圾告警和不合理的阈值。把告警信噪比拉得极高之后,被 Pager 叫醒才不再是一场无差别的精神折磨,而变成了一次确定性的精确打击。

这一治理逻辑其实与 GitHub 在大规模代码仓库治理时的思路不谋而合。在 当「最好有」变成「必须有」:GitHub 怎么用 45 天给 14,000 个仓库找到主人 中,GitHub 也是通过强制明确每一个仓库的权属(Ownership),取消模糊的中间过度层,才在短时间内重塑了安全与运维秩序。

涉密隔离网下的反英雄主义与作息防护

Section titled “涉密隔离网下的反英雄主义与作息防护”

如果说常规 SaaS 企业的运维只要考虑公网环境,那么 Palantir 最硬核的地方,在于它必须处理大量国防与国家安全级别的涉密隔离网(Air-Gapped / Classified Networks)

在这些不能连公网、甚至需要高等级安全许可才能进入的物理设施里,工程师不可能做到 7x24 小时随时赶到机房。Palantir 是如何落地 OR 的?

他们建立了专门的**网络运维中心(NOC)**作为前线视听哨兵。NOC 负责日常的安装包磁盘扫描、第一级用户支持以及监控过滤;白天开发人员在涉密设施内值班,夜间则由 NOC 进行守夜。只有当出现需要特定产品专家解决的深层故障时,NOC 才会发起远程呼叫。

更令人印象深刻的是 Palantir 对**防耗竭(Burnout)**的制度约束:

  1. 人数底线:单个轮值小组至少需要 3-5 人才能启动 OR 机制,人数太少宁可不推,防止队员被掏空;多于 6 人则会导致轮换周期太长而手生。
  2. 强制恢复(Off-call)规则:任何值班工程师如果在深夜(凌晨 12点 至 6点)被 P0 告警唤醒并参与了排障,次日白天及次日夜间必须强制禁值并休假恢复

这种制度设计彻底摒弃了靠工程师“熬夜硬扛、个人英雄主义救火”的陋习。真正的工程文化,不是鼓励员工比谁加班久,而是建立一套让每个人都能聪明工作、安心睡觉的闭环系统。

运维责任的终局:所有软件工程师都是 SRE

Section titled “运维责任的终局:所有软件工程师都是 SRE”

在文章的结尾,Katie Kauffman 总结道:运维责任看似违背直觉、反传统的部门分工,但它实际上是反中央集权、反中介阻断、反官僚主义的。它释放了开发者最大的自主性(Developer Agency)。

从大模型的排障局限(如 最强大模型也搞不定 K8s 排障?ITBench-AA 给 AI Agent 热浇了一盆冷水 中揭示的复杂基础设施治理难题)到企业级复杂系统的演进,软件工程正在经历一场回归本质的洗礼:越是高度自治和自动化的系统,越需要极致清晰的责任闭环。

当一个团队不再把“写代码”和“管生产”割裂开来,当中间调试员的迷雾被撕开,软件交付的管道才能真正保持通畅与敏捷。这不仅是 Palantir 交付 mission-critical 软件的秘诀,也是每一个渴望追求极速响应与硬核稳定性的技术团队值得深思的方向。


在你的团队中,告警响起的瞬间,第一个被唤醒的是中间运维还是代码作者?你们是如何平衡值班压力与开发效率的?欢迎在评论区分享你的看法。