浙江移动的DevOps实践课件.pptx(29页)
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《浙江移动的DevOps实践课件.pptx(29页)》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 浙江 移动 DevOps 实践 课件
- 资源描述:
-
1、浙江移动的DevOps实践目录目录浙江移动的成熟浙江移动的成熟度度结果结果1搭建弹性高可用搭建弹性高可用的的构构建建环境环境2代码质量检查提代码质量检查提前前到到开开发发阶阶段段3安全高效的应用安全高效的应用部部署署4小结和思考小结和思考5研发运营一体化成熟度评估是什研发运营一体化成熟度评估是什么么一级二级三级四级五级初始级基础级全面级优秀级卓越级在组织局部范围内开始尝试DevOps活动并获得初期效果在组织较大范围内推行DevOps实践并获得局部效率提升在组织内全面推行DevOps实践并贯穿软件全生命周期获得整体效率提升 在组织内全面落地DevOps并可按需交付用户价值达到整体效率最优化在组织
2、内全面形成持续改进的文化并不断驱动DevOps在更大范围内取得成功持续交付能力成熟度评估根据配置管理、构建与持续集成、测试管理、部署与发布管理、环境管理、数据 管理、度量与反馈等七大领域,十四个维度七大领域,十四个维度进行。持续交付持续交付配置管理配置管理构建与持续集构建与持续集 成成测试管理测试管理部署与发布管理部署与发布管理环境管理环境管理数据管理数据管理度量与反馈度量与反馈版本管理构建实践测试分层管理部署与发布模式环境管理测试数据管理度量指标变更管理持续集成代码质量管理持续部署流水线数据变更管理度量驱动改进自动化测试持续交付成熟评估持续交付成熟评估需 将 的 成分 构实 一构实持续部署流
3、水线级别构建方式构建环境构建计划构建职责卓越级持续优化的构建服务平台, 持续改进服务易用性持续改进构建性能,实现 构建资源动态按需分配回 收,如搭建基于云服务虚拟化和容器化的分布式构 建集群分级构建计划,实现按 构建并达到资源和速度有效平衡构建能力赋予全部团队 员,并按需触发构建实现快速反馈优秀级实现构建服务化,可按需 提供接口和用户界面用于 可视化构建编排优化构建速度,实现增量 化构建和模块化构建,如 可采用分布式构建集群、构建缓存等技术,实现构 建资源的共享级构建计划,实现按需 建并达到资源和速度的有效平衡构建系统服务化提供更多 用户使用,构建不再局限 于专业团队进行全部级定义结构化构建脚
4、本, 现模块级共享复用和统维护建环境配置实现标准化, 有独立的构建集群明确定义构建计划和规则, 实现代码提交触发构建和 定期自动执行构建构建工具和环境由专门团 队维护,并细分团队人员 职责基础级有独立的构建服务器,多 种任务共享构建环境明确定义版本号规则,并 根据发布策略细分构建类 型,实现每日自动构建构建工具和环境由专人负 责维护,并使用权限隔离现脚本自动化,通过手 工配置完成构建使用本地设备,构建环境 不可靠没有明确的版本号规则和 构建任务计划构建工具和环境受限于团 队人员能力,频繁手动干 预维护初始级采用手工方式进行构建, 构建过程不可重复评估方式评估方式在能力子项目里,对每个级别做了明
5、确的要求定基准:确定最快、最好 效率的初步行动评估的方式:人员访谈、材料审查、模式演示指方向:跃迁需要做什么查补缺:哪些实践必是必须的评估结果评估结果能力域能力子域 能力项 能力指标项 能力得分评级持续交付配置管理版本控制版本控制系统三级效率和质 量提升点三级优势点分支管理制品管理单一可信数据源变更管理变更过程变更追溯变更回滚构建与持续 集成构建实践构建方式四级构建环境构建计划构建职责持续集成集成服务集成频率集成方式反馈周期测试管理测试分级策略分层方法四级分层策略测试时机代码质量管理质量规约检查方式反馈处理测试自动化自动化设计自动化开发自动化执行自动化分析部署与发布 管理部署与发布模式部署方式
6、三级部分过程部署策略部署质量持续部署流水线协作模式流水线过程过程可视化环境管理环境管理环境类型四级环境构建环境依赖与配置管理数据管理测试数据管理数据来源三级数据覆盖数据独立性数据变更管理变更过程兼容回滚数据监控度量与反馈度量指标度量指标定义三级度量指标类型度量数据管理度量指标更新内容和生产方式度量驱动改进数据和生产方式数据失效性覆盖范围反馈改进构建和持续集成构建和持续集成构建脚本版本管理构建环境容器化构建资源弹性高可用代码质量管理代码质量管理pre-commit检查代码环境管理环境管理容器的大规模应用持续部署流水线持续部署流水线Jar包发布数据与代码部署分离变更管理变更管理变更项多,触发来源广
7、人人流程流程技术技术构建和部署活动参与的角色 和职责 个人,全栈工程师 团队,人员合理地安排在 一起,合理地组织起来协 作 代码提交流程,Code Review 代码构建流程,持续集成流 水线 应用发布流程,部署流水线线 源码、依赖包、制品的管理 工具和方式 代码质量检查和漏洞分析的 策略和工具 构建和部署使用的工具 能力和容量构建和部署要解决的问题构建和部署要解决的问题代码构建关注软件代码到可运行程序之间的过程,通过规则、资源和工具的有效结合,提升构建 质量和构建速度,使构建成为一个轻量级,可靠可重复的过程。部署和发布模式关注交付过程中的具体实践, 将部署活动自动化并前移到研发阶段, 通过频
8、繁的演练和实践部署活动,成为研发日常工作的一部分,可靠、可重复的完成部署发布任务。打造DevOps工具链平台支撑应用构建部署目录目录浙江移动的成熟浙江移动的成熟度度结果结果1搭建弹性高可用搭建弹性高可用的的构构建建环境环境2代码质量检查提代码质量检查提前前到到开开发发阶阶段段3安全高效的应用安全高效的应用部部署署4小结和思考小结和思考5痛点:应用接入平台构建的困难痛点:应用接入平台构建的困难用户的困难脚本管理,没有构建脚本,或者 构建脚本是个黑盒职责调整,管理构建的职责集中 在BM异常处理,使用平台后构建过程 中出错谁负责平台的困难团队的差异,代码、依赖、配置 的管理工具和模式不一样工具的差异
9、,应用的差异性很大, 语言、版本、工具都不相同规模,应用接入的速度太多,构 建资源和管理模式跟不上举措一:三步提升构建脚本管理举措一:三步提升构建脚本管理应用编写构建脚本,实现构建过程脚本化管理。去除脚本对构建主机本地资源的依赖,统一配置 和依赖的管理,标准化的应用能够自动生成构建指令。构建脚本版本管理,脚本快速获取,变更过程 可以追溯。构建脚本可以快速获取版本管理构建指令的持久化构建脚本版本管理构建过程脚本化从无到有为应用编写构建脚本规范代码目录结构规范应用依赖管理构建脚本可以在 任意主机执行从繁到简统一代码仓库统一依赖仓库管理统一配置管理去除对本地目录的依赖根据语言、工具自动生成脚本管理的
10、目标:脚本可以在任意构建主机构建应用举措二:容器化构建环境举措二:容器化构建环境构建环境容器化,通过容器封装不同语言、工具导致构建环境的差异,通过容器规格划分和弹性提 升构建环境的资源利用率。屏蔽编译环境差异:不同的容器包含 不同的编译工具和环境配置。提升构建主机利用率:在同一个构 建主机上启动多个容器,提升主机 资源的利用率。构建任务配置:编译工具和资源诉 求分配对应的mesos标签举措三:搭建弹性高可用的构建环境举措三:搭建弹性高可用的构建环境Jenkins-maser高可用只有一个jenkins masterNFS共享config文件Jenkins-slave弹性扩缩jenkins ma
11、ster注册成为Framework一个slave容器只分配一个jobZZZZookeeper quorumMesosMasterStandbyMesosOn dockerOn dockerJenkins S l a v eJJoobbJobJenkins SlaveJJoobbJobMesos slave/app/dataOn dockerOn dockerJenkins S l a v eJJoobbJobJenkins SlaveJJoobbJobMesos slave/app/dataOn dockerJenkins S l a v eJJoobbOn dockerJobJenkins
12、SlaveJJoobbJobMesos slave/app/dataMarathonMasterStandbyMarathon数据共享NFS服务服务域名域名On dockerOn dockerJenkins S l a v eJJoobbJobJenkins SlaveJJoobbJobMesos slave/app/dataOn dockerJenkins SlaveJ oJ obbJobMesos slave/app/dataJenkinsMasterJenkins 申请资源启动jenkins slaveJenkins 分配任务举措四:划分构建流水线类型明确职责举措四:划分构建流水线类型明
展开阅读全文