尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

案例研究:Stripe 用 Fleet 将 10,000 台 Mac 迁移到开源 MDM,年省数十万美元

案例研究:Stripe 用 Fleet 将 10,000 台 Mac 迁移到开源 MDM,年省数十万美元 案例研究Stripe 用 Fleet 将 10,000 台 Mac 迁移到开源 MDM年省数十万美元【免费下载链接】fleetOpen device management项目地址: https://gitcode.com/GitHub_Trending/fl/fleet导读本文基于 Fleet 官方案例研究剖析金融科技公司 Stripe 为何放弃传统商业 MDM、改用开源且支持本地化部署的 Fleet 统一管理约 10,000 台 Mac 与 5,000 台 Chromebook 的完整决策过程。读者将理解基础设施即代码IaC团队评估 MDM 时应关注哪些硬性能力Automated Device Enrollment、自定义 Profile、API 优先、本地部署以及如何借助 Fleet 在 10 天内完成万台规模迁移、用自定义 Profile 实现会议室的零接触zero-touch部署。背景Stripe 为什么需要换掉原有 MDMStripe 的员工与支持合作伙伴环境中运行着约10,000 台 Mac和5,000 台 Chromebook。其中所有员工 Mac 都通过 Apple 的 Automated Device EnrollmentADE即此前的 DEP自动开通员工在入职引导onboarding阶段完成设备端认证Chromebook 风险等级较低主要供支持合作伙伴使用。在引入 Fleet 之前Stripe 对原有 MDM 的抱怨集中在三点手动、UI 驱动的运维模式与 IaC 理念冲突Stripe 高度重视安全与自动化而原有 MDM 依赖人工点击界面完成操作API 碎片化导致连简单任务都难以自动化团队被迫自行编写大量 workaround。对最新 Apple 系统支持滞后新版本 macOS/iOS 发布后原有 MDM 往往要到公开正式版之后才提供支持且无法注入原始 payload也无法查看设备端响应Stripe 拿不到想要的可见性与控制力。厂商支持响应缓慢工单等待时间长、解决周期久低优先级缺陷甚至长期无人修复。正如 Stripe Staff Client Platform Engineer Wes Whetstone 所说The ability to get heard [with our previous MDM] was just impossible.选型三项硬性要求当原有 MDM 授权到期续约时Stripe 决定评估替代方案并围绕一套明确的标准进行筛选。要求一核心 MDM 用例必须全部可用员工 Mac 属于纯商务用途任何第三方软件必须被审批为business critical才能安装Stripe 的安全团队还会把 MDM Profile 作为设备信任device-trust决策的一部分。因此Automated Device Enrollment、安全 Profile 下发这类基础能力是否可靠是选型的前提。在 Fleet 仓库中ADE 相关能力有完整的源码级实现与架构文档支撑。根据 docs/Contributing/mdm/apple/automated-device-enrollment.mdFleet 的 ADE 架构通过 Apple Business/Apple School Manager 集成在设备激活时自动完成注册核心组件包括Enrollment Program Integration与平台注册计划的集成Device Assignment设备与注册配置之间的映射数据保存在host_dep_assignments表Enrollment Profiles注册过程中应用的配置Synchronizationdep_syncer定时任务每分钟拉取一次所有 AB Token 的设备同步新增/修改的设备会立即在hosts表中创建或匹配对应主机记录按序列号即可在设备上线前被 IT 管理员看到。要求二必须融入自动化工作流最好是开源Stripe 团队以基础设施即代码为准则希望 MDM 融入既有工作流而不是成为又一个孤立工具同时他们偏好开源软件因为可以看清产品内部到底怎么工作。Fleet 的 API-first 设计与开源许可证正好满足这一点。要求三必须支持本地化部署on-premiseStripe 把 MDM 视为关键基础设施因此没有考虑任何纯云端 MDM。管理着 10,000 台 Mac他们要求完全掌控谁能访问这套系统本地部署成为选型红线。Fleet 官方支持多种自托管方式仓库中提供了 Docker Composedocker-compose.yml、Kubernetesdeploy-fleet-on-kubernetes.md、AWS ECSdeploy-fleet-on-aws-ecs.md、GCPdeploy-fleet-on-gcp.md等部署路径并配套 docs/Deploy/deploy-fleet.md 与 docs/Deploy/Reference-Architectures.md 参考架构文档。为什么最终选择 Fleet评估期间Stripe 需要确认 Fleet 能承载其核心 MDM 用例——Automated Device Enrollment 与安全 Profile 下发。Fleet 满足了这些要求但真正给 Stripe 加分的是开源带来的确定性看得见能直接查看 Profile 是如何构建和下发的这让 Stripe 对用 Fleet 管理 Mac 感到放心查得清出问题时可以自己定位而不是上传日志等厂商回复。团队通常能自行判断问题源头从而更快解决改得动Fleet 的 API-first 设计让 Stripe 把整个 MDM 工作流自动化。Wes Whetstone 的评价是The openness of the whole management stack … is more valuable to us.这一开放管理栈特性与 Fleet 仓库的结构互相印证server/mdm目录下除 MDM 核心服务外还包含 nanodepApple DEP 协议实现与 nanomdmMDM 协议实现等底层模块MDM 配置的 YAML 结构则在 docs/Configuration/yaml-files.md 中有完整说明。迁移与结果10 天迁完 10,000 台 Mac迁移规模与速度通过 API 驱动工作流Stripe 在10 天内完成了 10,000 台 Mac 的迁移。此前无法实现的场景也随之落地We saved a couple of hundred thousand dollars a year.每年节省数十万美元的授权成本会议室 Mac 零接触部署借助自定义 ProfileStripe 可以配置视频会议室的 Mac实现真正的 zero-touch 部署——这是原 MDM 无法支持的远程屏幕共享无需人员到场即可在会议室启用远程屏幕共享零信任设备认证核心 MDM 能力已成为 Stripe 零信任设备认证device attestation的支柱之一。后续规划Stripe 对 Fleet 的支持模式高度认可明确表示Fleet 的 Customer Success Manager 在迁移与上线中发挥了关键作用同时计划在管理的其他平台包括 Windows 虚拟机与 BYOD 计划上继续评估 Fleet 开源 MDM 的能力。案例启示评估 MDM 时的可复用检查清单从 Stripe 的选型与落地过程可以提炼出一份面向 DevOps/IaC 团队的 MDM 评估清单维度关注点Fleet 中的对应物核心用例ADE 自动注册、安全 Profile 下发是否稳定可靠server/mdm/nanodep、automated-device-enrollment.md自动化是否有完整、可编程的 API能否融入 IaC 管线Fleet REST API见 docs/REST API与 GitOps 模式透明度源码是否开放能否自行排障开源仓库MDM 协议实现位于server/mdm部署形态是否支持本地化/自托管部署docker-compose.yml、deploy-fleet-on-kubernetes.md 等扩展性能否用自定义 Profile 实现非常规场景MDM Profile 配置参考 docs/Configuration/yaml-files.md对同样把终端管理视为关键基础设施、且坚持基础设施即代码的组织而言Stripe 的路径提供了一个已被验证的参照先以开源与本地部署解决信任与控制问题再以 API-first 把整套 MDM 工作流工程化最终将终端管理从手动运维升级为可编程的基础设施能力。【免费下载链接】fleetOpen device management项目地址: https://gitcode.com/GitHub_Trending/fl/fleet创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表