您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[-]:平台建设-如何完成从DevOps-到平台工程的转变 - 发现报告

平台建设-如何完成从DevOps-到平台工程的转变

信息技术2024-11-04宋凯-A***
AI智能总结
查看更多
平台建设-如何完成从DevOps-到平台工程的转变

个人简介 宋 凯 高 效 运 维 社 区 资 深 技 术 专 家 软件持续交付领域13年DevOps相关领域⼯作经验;前五⼋到家业务DevOps平台负责⼈资质:•DOIDevOpsEnterpriseCoach国际认证•中国新⼀代IT产业推进联盟DevOps专家•DAOps⾦牌讲师项⽬案例:•农⾏、交⾏、上交所、⺠⽣银⾏、浦发银⾏、中信银⾏、移动、电信、南航、⼀汽⼤众、华夏银⾏、华泰证券、海通证券、中泰证券等企业DevOps建设;合作平台建设:•ADS、云效、蓝鲸、博云牧繁、恒⽣DevOps等擅⻓DevOps平台设计、CI/CD领域相关的⼯具链应⽤、流⽔线设计落地。 一个关于平台工程的故事 平台建设的成本 目录 聊聊核心竞争力 一个关于平台工程的故事 争取讲透这个概念 平台工程的概念受到广泛关注 国家层面:多项政策文件均提及或鼓励企业建设内部平台工程 Ø平台工程是一组用于设计、构建和运营支持软件价值交付和生命周期管理的平台的方法、流程和机制,具备自助式、自服务能力,能够最小化内部IT人员的认知负荷,提升DevOps/BizDevOps质量、效率与效能。 Ø当前,在我国加速数字化转型的浪潮下,平台工程对于加强科技能力至关重要,多项政策文件均提及或鼓励企业建设内部开发运维平台。 国家金融监管总局:积极引入研发运维一体化工具,完善数字化交付管理体系 中国证券业协会:建设统一的源代码管理工具和标准化的研发运维一体化工具平台 Ø《中国银保监会办公厅关于银行业保险业数字化转型的指导意见》要求”推动科技管理敏捷转型。建立能够快速响应需求的敏捷研发运维体系,积极引入研发运维一体化工具,建设企业级一站式研发协同平台。建立适应敏态与’稳态’的全周期线上交付管理流程,完善数字化交付管理体系“ Ø《证券公司网络和信息安全三年提升计划(2023-2025)》提到,建设统一的源代码管理工具和标准化的研发运维一体化工具平台,进而将安全控制手段嵌入信息系统开发的需求分析、设计、编码、测试、发布和运维等各环节中,有助于持续提升代码开发效率及安全 Gatner将平台工程列为2024年顶级战略技术趋势之一,已经连续两年将平台工程作为关键技术预测。根据Gatner的预测,到2026年,80%的软件工程组织将拥有平台工程团队,来提供内部服务、组件和应用程序交付工具,作为可重复使用的资源。其对”平台工程“的定义为:一套用来构建和运营支持软件交付和生命周期管理的自助式内部开发者平台的机制和架构。 国际权威资讯机构预测 企业DevOps整体向好,但存在一定发展瓶颈 01 全面推广、规模化平台能力待加强 目前PaaS市场发展比较成熟,存在 着 各 种 工 具,如SAP云,Azure,AWS Lambda等。大多数PaaS平台为开发人员提供了构建应用程序的环境,但只能提供一条路径,只能通过简单设置支持相对不那么复杂的用例。在企业规模扩张时,开发者人数增加,现有的PaaS解决方案难以满足不同需求。 目前,DevOps发展迅速,受到广大 组 织 的积 极 响 应。但 是,在DevOps理念的落地实施中,研发人员发现自己需要负责一些原来没接触过的工作。 基础设施管理:如管理Docker文 件、Helm图 表、Terraform代码等文件 调查显示,DevOps落地成熟度处于全面级 的企 业 最 多,为41.20%,同 比 增 长0.34%,具 备 自动 化、规 范 化 的 特点;17.83%企业的实践成熟度处于优秀级,具备平台化、自服务化与度量驱动改进的特点;0.85%的企业处于卓越级,能够实现DevOps的高度智能化、数据化及社会化的特点。 流程设计:人员变动、组织架构调整,对现有工作流的影响 认知负担有可能会引起研发人员的不满,导致DevOps的实践工作受到阻碍。 所有权管理:包含对接第三方工具以及产品的管理工作,成本等 关于平台工程的故事-背景 某家公司中,开发团队和运维团队一直面临着:开发与运维的协作不畅;部署过程繁琐且易出错;环境造成的故障;缺乏常见的代码质量和安全检测;系统监控和问题排查困难;频率部署低且响应速度慢;资源管理和扩展困难;缺乏可追溯性和变更管理;文档不足或不及时更新;缺乏统一的工作流程和工具集成等问题,公司引入了DevOps的理念,搭建了一个DevOps平台。 这个DevOps平台最初解决了许多问题 协作问题 效率问题 质量问题 DevOps平台集成了自动化测试、代码审查和持续集成(CI)工具,可以在每次代码提交后自动进行测试和构建,确保代码质量并降低缺陷风险。 DevOps平台自动化构建、测试和部署流程,实现了一键部署,减少了人工干预和错误,提高了部署效率和频率 DevOps平台通过CI/CD流水线、自动化测试、版本控制等工具,将开发和运维流程紧密集成,使得开发和运维可以无缝协作。 关于平台工程的故事-故事 关于平台工程的故事-故事-结局二 关于平台工程的故事-故事-结局三 关于平台工程的故事-问题 复杂性增加 依然于很多问题 随着业务系统的增加,平台的功能越来越多,支持的技术栈也越来越丰富,开发人员需要花费大量时间去学习和适应平台工具,平台管理也变得更加复杂。 复杂性增加:责任分配不明确:缺乏标准化和自服务能力。 责任分配不明确、响应不及时 由于DevOps平台是由多个团队共同维护的,开发团队、运维团队和平台团队之间的职责边界不明确,导致问题出现时很难迅速定位和解决。 缺乏标准化和自服务能力 虽然平台上有很多工具和功能,但开发团队依然需要依赖平台团队来进行环境配置和资源申请,导致了流程的延迟和资源浪费。 G O P S全 球 运 维 大 会 暨 研 运 数 智 化 技 术 峰 会2 0 2 4·上 海 站 关于平台工程的故事-故事-结局四 关于平台工程的故事-故事-结局四 只专注单独工作场景 从DevOps平台到平台工程的实践 四、强化平台的监控、治理和安全性 二、标准化环境和模板 •部署全面的监控系统,以及日志管理工具来实时监控平台和应用的状态,并进行可视化展示。•实施访问控制和身份管理确保平台资源的安全性,并且建立审计日志记录和自动化的合规检测。•配置自动化安全扫描工具和容器镜像扫描,及时发现并修复潜在的安全漏洞。 •建立基础设施即代码标准,通过工具,将基础设施配置自动化。•针对公司内部常用的技术栈(如微服务、容器化、无服务器架构)设计标准化的模板,让开发人员可以快速部署。•确保这些模板经过测试,并定期更新和维护,保证一致性和可靠性。 三、构建自服务门户和自动化工具 一、评估当前DevOps平台现状 •开发一个自服务门户,集成环境配置、资源申请、CI/CD配置等功能,开发 人员可以通过简单的界面或API进行操作。•集成企业工作流、实现应用的自动化部署和持续交付。•将CI/CD流水线工具与自服务门户集成,实现代码提交后自动化构建、测试和部署。 •收集开发和运维团队的反馈,评估开发者体验(Developer Experience, DX)。•分析现有工具链和CI/CD流程的效率,找出瓶颈和不足。•评估平台的监控、自动化程度以及扩展性。 G O P S全 球 运 维 大 会 暨 研 运 数 智 化 技 术 峰 会2 0 2 4·上 海 站 从DevOps平台到平台工程的实践 六、持续改进和团队文化转型 •建立定期的反馈和改进机制,通过开发人员和运维团队的反馈来不断优化平台功能。•实行敏捷开发和DevOps实践,确保平台工程团队能够快速响应和迭代。•开展跨团队的培训和工作坊,推广平台的使用方法和最佳实践,增强团队之间的协作和知识共享。 工作项关联分支自动化质检特性测试自动化辅助评审自动计算版本变更范围权限模型 小场景功能示例:应用定义描述、检索查看生成代码框架自动创建合适流水线自动生成需要环境自动匹配工作流 五、优化和扩展平台架构 •引入容器化和编排技术,实现微服务架构的自动扩展和资源调度。•配置服务网格来增强微服务之间的通信管理和安全性。•优化CI/CD流水线,使其支持多集群和多云环境的部署,提高平台的可扩展性。 基础能力:打造工具平台基础服务能力 编排和嵌套 •流水线的编排和嵌套,可以应对众多复杂的业务场景,实现流水线的灵活编排和调度 •流水线支持模板化创建,基于模板创建,方便开发人员手工配置流水线的繁琐过程,以提升其配置效率 并行执行 代码变更触发 •流水线支持代码变更触发,当代码发生变化时,将第一时间触发流水线运行,能够快速的反馈给开发人员代码修改的问题 配置代码化 质量门禁 •流水线中的质量门禁,可以很好的实现自动化的质量控制,实现质量检查左移,及早的发现潜在的问题,避免在集成后期出现问题而导致大范围修改,影响效率 进阶能力:迈向工具平台的场景化服务能力 单点能力的不断提升并外延,与其他单点能力结合,形成场景,场景来源于企业既定的业务流程,实现工具的连锁反应 解决场景化服务能力的关键:构建以应用为中心的交付模式 从DevOps平台到平台工程 为了解决这些问题,公司决定向平台工程(Platform Engineering)转型。平台工程的核心思想以开发者体验为中心,建立一个“工程化”的自服务平台,让开发团队可以像使用一样产品具有相同使用平台的功能,降低学习成本和操作复杂度。 平台工程成功的四个关键实践 产品思维设计平台,用户思维优化体验 产品思维是发现问题解决问题并把解决方案标准化的思维模式。用户思维是以用户需求为导向,尽可能满足用户需求和期望的思维方式。 MVP思想持续迭代 平台工程团队 用最快、最简洁的方式建立一个可用的产品原型。通过不断的快速迭代来修正产品,最终适应用户需求。 平台工程是一个系统工程要解决组织级、覆盖项目管理、全技术领域的管理升级 面向应用全生命周期 建立管理规范。建立项目与应用的关联关系。 创造开放共享的文化氛围 平台工程的成功是技术与文化的成功 平台建设的成本 建设DevOps平台到底要花多少钱 一些企业建设DevOps的成本 持续投入的关键是什么 案例一-目标规划 人才培养与效能度量 质效与专项组织级赋能人才与度量 è逐层积累è科学赋能è人才培养 以组织级能力支撑为主,按专题领域进行细化,如:工具、赋能、测试等,团队级教练:以贯穿组织级要求辅导团队落实改进为主,组织级教练以体系规范和实践落地为主,针对复杂问题,给予团队以指导,如参与代码评审、用例设计研讨等。通过效能度量从内部标准化维度、教练成长维度、赋能推广维度和效能度量与持续改进维度进行提升 人才与度量 组织级DevOps能力激发质效提升助力业务 研发质量 基于PDCA持续改进的核心理念,以内部标准、内部教练与内部平台形成三项能力要素共同赋能科技团队,2026年延续内部赋能推广,通过内部标准为抓手,平台工具提供支撑,根据贯标项目积累的教练资源,设计内部教练赋能级制 组织级DevOps赋能提升研发质量 2025年1个目标4项举措13个专题,健全企业标准体系,提升质量管理意识,推进质量规范,加强监管力度,践行持续测试,打造标杆项目,积极变革创新,提升管理效能,同时引入平台工程标准,积累技术创新实践 案例一-目标量化拆分 目标一 不断完善企业标准建设,落实“质量追溯体系”。提升全员质量意识,控制质量风险,做到质量管控“横向到边,纵向到底,上下可追溯”。 目标二 抓好组织级规范适配,实施质量最佳实践方案,致力高标准全流程质量监管,适应敏捷快速上线要求的同时确保项目高品质交付。 目标三 落地实施持续测试试点项目贯标,持续推进精准测试,加强质量内建和测试左移保障,打造持续测试标杆。 目标四 积极推广DevOps转型,扩大持续交付试点范围,协同平台功能优化,研发管理驾驶舱,以新方法新技术新工具提升质量管理水平。 研发质量提升