阿里云云效,云原生时代新** DevOps 平台**,支持公共云、专有云和混合云多种部署形态,通过云原生新技术和研发新模式,助力创新创业和数字化转型企业快速实现研发敏捷和组织敏捷,打造“双敏”组织,实现 10 倍效能提升。
云效 DevOps 提供项目协作、代码管理、持续交付流水线、制品仓库、测试管理、知识库 6 大产品。
产品家族 云效项目协作是什么?每一个市场都在赛跑, 使用云效项目协作打造一体化研发协作流程,借助专业工具,让团队表现更优异,产品更快响应需求变化。
全面支持「看板」和「Scrum」敏捷方法,你可以围绕产品目标灵活规划每个迭代冲刺。实时数据反馈,让计划调整更及时,团队成员积极应对变化,持续交付价值。你的产品交付,可以远超预期。
云效测试管理是什么?「测试管理」包含对测试计划与执行用例的创建、编辑、规划与关联等功能,让测试人员可以直接在云效的项目中进行测试工作的规划和执行进展反馈,并将「测试计划」与「需求」和「缺陷」一起进行管理。
云效代码管理 Codeup 是什么?云效代码管理 Codeup 是阿里云出品的一款企业级代码管理平台,提供代码托管、代码评审、代码扫描、质量检测等功能,全方位保护企业代码资产,帮助企业实现安全、稳定、高效的研发管理。
云效流水线Flow是什么?「流水线」,又名「Flow」,是「云效」产品矩阵中一款企业级、自动化的研发交付流水线, 提供灵活易用的持续集成、持续验证、 持续发布功能,帮助企业高质量、高效率的交付业务。流水线是持续交付的载体,通过构建自动化、集成自动化、验证自动化、部署自动化,完成从开发到上线过程的持续交付。通过持续向团队提供及时反馈,让交付过程高效顺畅。
云效制品仓库是什么?制品库顾名思义是制品的仓库,制品是软件交付的成果性产物,通常是可运行的二进制形式,因此制品库通常也被称之为二进制制品仓库。云效制品库致力于帮助开发者统一管理各种开发语言在开发、构建过程中的依赖,构建成果(二进制制品)以及交付过程关键信息的重要组件。制品库衔接持续集成和持续部署,是持续集成的成果管理仓库,也是持续部署的物料来源,同时也为研发的静态安全提供保障。现阶段云效的制品仓库支持 Maven 、NPM类型仓库,后续还将提供一下的仓库类型,敬请期待:HelmDocker镜像普通构建产物
云效知识库是什么?云效知识库是一款企业 知识管理 工具,通过独立的知识库空间,结构化地组织在线协作文档,实现企业知识的积累和沉淀,促进知识的高度复用和流通。
什么是DevOpsDevops很难有单一的定义,就像盲人摸象一样。 DevOps 是一种文化、专业的运动,专注于我们如何建立和运营高速组织,源于其从业者的经验 DevOps 很大程度上建立在组织熟练的协作和沟通以及由此产生的文化中 DevOps 是运维和开发工程师共同参与整个服务生命周期的实践,从设计到开发过程再到生产支持 Devops 运动的特点是拥有多学科技能的人——他们对基础设施和配置感到满意,乐于编写测试、调试和交付功能
Dev的重点是开发人员需要学习如何创建高质量、生产就绪的软件,而 ops 需要了解敏捷技术实际上是实现有效、低风险变更管理的强大工具。
DevOps 不仅仅是使用工具或自动化流程,尽管这些都很重要。DevOps 不仅仅与人、文化或流程有关。
持续集成/交付本身并不是目标。它们只是实现 DevOps 目标的必要步骤。
最终,我们都在努力实现相同的目标——通过软件创造商业价值。
我们的Devops要做到什么地步? 先来看看经典的Devops循环整个DevOps循环涉及Dev和Ops两个阶段 Dev阶段包括计划管理、代码管理、构建管理、测试管理 Ops阶段包括制品管理、发布管理、运维管理、监控/可观测性
那么这些阶段需要对应哪些工具呢?
可以发现整个Devops阶段我们需要种种工具。那么这些工具对应到云效里的种种工具。
哪些工具可以加速构建DevOps DevOps和精益、敏捷的关系要交付高质量的产品,我们需要三个要素:精益概念、敏捷实践和 DevOps 思维方式。
敏捷是关于自动化构建、测试和交付。DevOps 将自动化扩展到部署。精益专注于端到端流程以解决瓶颈和浪费。
敏捷采用各种技术来更快地构建产品。DevOps 使用敏捷实践,但也讨论如何集成、测试和交付产品到用户手中。
如何自建DevOps首先,Devops是一种文化,他需要整个技术团队认可,需要跨部门、跨组织协作。
在技术层面由谁来主导和推动 DevOps 平台的组建,在组织或者团队层面,如何传递 DevOps 文化的价值并让团队理解 DevOps 文化的价值,不同的公司能看到有不同的做法。
每日优鲜的做法从技术层面,我们自建了一套应用中心,统一来管理应用,包括应用信息、仓库信息、人员组织信息、环境信息和cmdb相关的机器信息等。
从代码仓库到资源配置、到发布平台到资产、环境、监控都是以应用标识(AppCode)为中心构建。
围绕应用,我们自研了:应用中心、CMDB平台、Max发布系统、监控系统、自动化测试平台、质量度量平台等DevOps相关组件化平台。
应用中心所有的Devops步骤都以应用为主题。
代码仓库我们的代码仓库用的开源的Gitlab,一切项目也是AppCode命名,所有的代码仓库都是根据脚手架创建的。
发布平台 流水线发布 分批发布 监控系统监控系统也是以应用为中心构建,关联与该应用相关的所有监控,从基础监控到应用监控、数据库监控等等
测试管理 测试用例 测试计划 制品仓库Maven和Harbor以及云厂商的镜像仓库。
项目管理项目管理系统主要包括需求和缺陷两块,创建完毕后与应用中心和发布平台实现关联绑定。
我们的整个的DevOps体系也不是一朝一夕搞起来的,一切都是为了提高效率,提高稳定性而搞出来的,所以我们在构建DevOps体系时不需要上来就要搞多么完美,好的架构一定是演进的,DevOps也是一样。