1、主题正文部分从DevOps到平台工程-构建现代化内部平台数澈软件/江鹏什么是平台工程?DevOps已死,平台工程永存?FaaS(Lambda,Cloud Functions)PaaS(Heroku,Cloud Foundry)Managed K8s(EKS,AKS,ACK,GKE)IaaS(Aliyun,AWS,Azure,Tencent Cloud,Huawei Cloud)Self-hosted K8sBareMetal(Compute,Storage,Network)研发舒适区Control/CustomizabilityDevOps Efforts屏蔽复杂度,降低研发学习使用成本平台工
2、程兴起的原因?SAuthSServiceSServiceSServiceSServiceSServiceSServiceSServiceSCI 流水线SIssueS修复分支SPR/MRS特性分支S发布分支S特性分支SCI 流水线S外部依赖S修复分支SPR/MRSIssueS外部依赖S文档S文档S文档碎片化、复杂化的开发生态系统碎片化、复杂化的开发生态系统复杂多变的应用架构和基础设施复杂多变的应用架构和基础设施这个依赖的功能实现的咋样了?去Jira看看状态CI流水线跑失败了,得上去看看怎么回事?要开发一个新的服务,应该用哪些组件版本?有没有现成的脚手架可以用?要调用另外一个服务接口,这个接口谁负
3、责的?文档在哪里?是不是又要拉个会这个服务的部署yaml应该怎么配置?问问别人吧测试环境部署下去了,好像有点问题,去K8s那边看看情况要一个新的测试环境,找DevOps那边申请创建个新的namespace要一个新的MySQL测试数据库,得去XX云/云管那边申请创建一个复杂度瓶颈导致开发人员效率和满意度降低开发人员效率时间DORA关键指标产品质量安全及合规开发人员满意度变更速度软件、工具及团队复杂度开发人员认知负担开发人员满意度参考:The Atlassian DevOps maturity journey初期复杂度提升复杂度瓶颈复杂度限制期望状态实际状态DORA关键指标产品质量安全及合规开发人
4、员满意度从而影响产品交付质量、速度和其他指标什么是平台(Platform)?“A digital platform is a foundation of self-service APIs,tools,services,knowledge and support which are arranged as a compelling internal product.Autonomous delivery teams can make use of the platform to deliver product features at a higher pace,with reduced coo
5、rdination.”-By Martin Follower and Evan Bottcher,2018 https:/ 什么是平台工程(Platform Engineering)?平台工程是一套用来构建和运营构建和运营支持软件交付和生命周期管理的自助式内部开发者平台自助式内部开发者平台的机制和架机制和架构构。平台工程的目标目标是优化开发者体验优化开发者体验并加快加快产品团队为客户创造价值的速度为客户创造价值的速度。Gartner来源:https:/ 平台工程的价值?内部平台及其构成内部开发者平台?来源:https:/ Development TeamComplex Infrastructu
6、reEngineering PlatformPlatform Engineering:Scale DeliveryConceptual outline of an example platform and its principal componentsConsumptionPlatform Engineering TeamAutomationSource:GartnerReusable ComponentsDeveloper ToolsSelf-Service Developer Portal来源:https:/cf.io/whitepapers/platforms/典型内部平台的逻辑架构产