基于docker的devops实战培训 - buzzsource.buzz.cn/14999318367291.pdf ·...

13
咨询服务 基于Docker的DevOps实战培训 WE FOCUS ON RAPID GROWTH OF TECHNOLOGY-ORIENTED ENTERPRISES 麦思博 咨询服务 我们专注于技术型企业的快速成长

Upload: others

Post on 02-Aug-2020

32 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 基于Docker的DevOps实战培训 - buzzsource.buzz.cn/14999318367291.pdf · 【基于Docker的DevOps培训】课程是由msup麦思博推出的系列课程之一。本课程融合了敏捷最佳实践和方法,是

咨询服务

基于Docker的DevOps实战培训WE FOCUS ON RAPID GROWTHOF TECHNOLOGY-ORIENTED ENTERPRISES

麦思博 咨询服务我们专注于技术型企业的快速成长

Page 2: 基于Docker的DevOps实战培训 - buzzsource.buzz.cn/14999318367291.pdf · 【基于Docker的DevOps培训】课程是由msup麦思博推出的系列课程之一。本课程融合了敏捷最佳实践和方法,是

1Coach教练简介

01 Coach 教练简介

www.msup.com.cn

《基于Docker的DevOps实战培训》研发战略手册

MVPRegional

Director

徐磊msup咨询顾问

首席架构师微软最有价值专家

Microsoft

Certified ScrumMaster

资深ALM顾问和解决方案专家 | 微软最有价值专家 | 大中华区域社区技术总监 | ScrumMaster | 敏捷教练 | 超过10年的软件研发项目管理经验 | 曾任SSW中国研发中心总经理

高级ALM/DevOps顾问, 中国农业银行,互联网金融项目敏捷教练, 兴业银行,海外网银敏捷试点项目高级管理顾问,中国移动南方基地,互联网研发基地外包管理改进高级ALM/DevOps顾问,上海通用汽车有限公司,软件研发过程改进 高级ALM/DevOps顾问,上海汇众汽车,软件研发过程改进和ALM平台落地 高级ALM/DevOps顾问,中国人民保险公司软件研发中心,软件研发过程改进和ALM平台落地 高级ALM/DevOps顾问,斯伦贝谢中国研发中心,敏捷开发与ALM落地高级ALM/DevOps顾问,京东商城,PMO管理系统与ALM系统集成 高级ALM/DevOps顾问 华为2012实验室(深圳),rDelta系统选型高级ALM/DevOps顾问,百威英博,软件外包管理系统ALM落地实施

项目经验

教练简介

Page 3: 基于Docker的DevOps实战培训 - buzzsource.buzz.cn/14999318367291.pdf · 【基于Docker的DevOps培训】课程是由msup麦思博推出的系列课程之一。本课程融合了敏捷最佳实践和方法,是

1Coach

02

www.msup.com.cn

《基于Docker的DevOps实战培训》研发战略手册

李强

曾任微软Visual Studio产品资深解决方案专家 | 曾任IBM Rational产品资深解决方案专家 | 曾任HSBC中国区开发中心软件开发过程顾问 | Scrum Master/SAFe/CMMI/P-MP/CSQA

高级ALM/DevOps顾问, OPPO敏捷开发及工具平台项目高级ALM/DevOps顾问,中兴通讯敏捷开发项目售前方案设计高级ALM/DevOps顾问,远光软件开发过程改进及工具平台项目高级ALM/DevOps顾问,广发银行ALM项目高级ALM/DevOps顾问,广州农商行ALM项目高级ALM/DevOps顾问,四川农信ALM项目高级ALM/DevOps顾问,PICC ALM项目

项目经验

教练简介

教练简介

Coach 教练简介

Certified ScrumMaster

msup咨询顾问资深解决方案专家

SAFe Agilist

Page 4: 基于Docker的DevOps实战培训 - buzzsource.buzz.cn/14999318367291.pdf · 【基于Docker的DevOps培训】课程是由msup麦思博推出的系列课程之一。本课程融合了敏捷最佳实践和方法,是

【基于Docker的DevOps培训】课程是由msup麦思博推出的系列课程之一。本课程融合了敏捷最佳实践和方法,是教练多年来在DevOps上的实践经验的总结,为参训者提供体验式的DevOps实施指导。

本课程采用【UDAD 用户故事驱动的敏捷开发实施框架】和 【持续交付实施框架】作为方法论指导,【基于Docker的DevOps流水线】作为动手实验场景,从理论,方法和实践三个层次上,为团队提供建议,让希望引入DevOps的团队能够有一个整体的方法论指导。配合GitLab, Jenkins,Azure云计算平台和Docker提供的容器化工具支撑,为您提供端到端的可落地的DevOps实施方案指导。

此前msup麦思博曾推出过一系列广受开发人员欢迎的培训,包括《构建高效DevOps团队》,《基于Azure的容器化DevOps数据中心》和《Docker基础培训》。从这些培训的反馈,也看到大家对使用Docker来支持DevOps的场景有非常浓厚的兴趣,也觉得1-2天的培训不够过瘾,希望能有更加深入的学习机会。

2017年,我们将这些培训中的精华加以提炼推出全新的系列培训,此次的《基于Docker的DevOps实战培训》将包括以下内容:• 基于GitLab,Jenkins和Docker Swarm的DevOps流水线工具链• docker跨主机网络• 基于ELK+Logstash+Kibana的日志和监控解决方案

本培训采用3天封闭式培训,提供全套预配置的在线实验环境,确保参训学员可以在真实的环境中获取实操经验,为希望在生产环境中应用Docker技术的团队提供可落地的解决方案。

培训主线

2About The Course课程简介

03 About The Course 课程简介

www.msup.com.cn

《基于Docker的DevOps实战培训》研发战略手册

形式

Page 5: 基于Docker的DevOps实战培训 - buzzsource.buzz.cn/14999318367291.pdf · 【基于Docker的DevOps培训】课程是由msup麦思博推出的系列课程之一。本课程融合了敏捷最佳实践和方法,是

源自实践&可落地 : 总结自真实项目的实践经验,提供可操作可落地的流程指导。可裁剪&可定制 : 你的产品,你的团队,你的流程,你的方法宏观&细节 : 策略性规划,成功案例分析,实战操作和工具支撑源自社区&回馈社区 : 全套教材和动手实验文档免费提供给社区使用

培训主线

1个场景(基于Docker的持续交付流水线),2套方法论(UDAD用户故事驱动的敏捷开发,持续交付实施框架)

培训特点:为希望实施DevOps改进研发效率的企业和开发者提供可以落地的方案指导。

1个场景:基于Docker的DevOps流水线

现代软件开发和计算机技术的快速发展造成了大量异构系统的出现,这给应用开发,测试和部署都带来了巨大的复杂度。

容器化技术在主机时代已经被证明是非常有效的应用隔离技术,可以帮助企业有效的利用计算资源和敏捷特性。随着虚拟化的广泛使用和云计算的兴起,Docker这一围绕容器技术构建的工具/生态系统被广泛接受,成为解决异构系统上应用开发和运维问题的最佳选择,同时也为企业构建混合云数据中心提供了更佳的选择。

04

www.msup.com.cn

《基于Docker的DevOps实战培训》研发战略手册 About The Course 课程简介

Page 6: 基于Docker的DevOps实战培训 - buzzsource.buzz.cn/14999318367291.pdf · 【基于Docker的DevOps培训】课程是由msup麦思博推出的系列课程之一。本课程融合了敏捷最佳实践和方法,是

文档发布地址:http://docs.devopshub.cn/GitHub文档源码地址:https://github.com/lean-soft关于文档持续交付最佳实践的分享:http://devopshub.cn/2017/01/06/markdown-rest-release-pipeline/

05

www.msup.com.cn

《基于Docker的DevOps实战培训》研发战略手册 About The Course 课程简介

UDAD ‒用户故事驱动的DevOps实施框架

我们的培训一直以方法论+案例+实战相结合的方式,让参训者不仅仅可以了解业界最先进的技术,而且可以亲自动手实战体验这些技术的实际操作,在培训之后可以立即将所学内容应用于实际工作。这种培训方式我们从2008年开始实践,当时我们组织了来自20多家软件开发企业的优秀开发人员,使用敏捷开发模式和微软TFS全生命周期管理平台在5天内完成了“汶川孤儿领养系统”的开发。

后续此培训一直跟随软件工程界的最新趋势进行持续改进,先后吸收了很多方法论,最佳实践和工具,最终演化为今天的系列课程。到2016年,此系列培训已经连续运作近百场,参数人员超过千人,地点包括:北京,上海,深圳,广州,成都,济南,大连和台北。同时,培训也扩展为支持开源的DevOps工具链。

此外,我们将所有培训资料在线免费提供给社区使用,并通过持续交付的方式不停的改进和更新,至今已经积累5套培训教材,涉及敏捷开发,DevOps,微软DevOps工具链,开源DevOps工具链和Docker等内容。大家可以通过以下链接获取这些资料,本次培训的资料也将通过这种方式发布:

2套方法论:

相关链接

100-to-100 持续交付实施框架

持续集成

编码+ 单元测试

执行测试 + 自动化测试

编写测试用例+ 自动化脚本

集成/自动化

测试环境

开发测试环境

UAT测试环

自动化部署

自动化部署

生产环境

看板 + 每日立会

影响地图 用户故事地图

UAT测试

故事看板

产品backlog- 条目化用户故事和技术故事- 优先级排序- 按照业务故事来组织开发和进

行交付

看板+每日立会- 可视化流程- 限制WIP,加快任务流速- 鼓励团队沟通和自组织- 由团队成员轮换组织

评审会议- PO主持- 验收用户故事

开发分支

UAT分支

生产分支

自动化部署

+审批

持续集成- 自动化编译- 自动化代码静态检查- 自动执行单元测试- 自动化部署- 每日构建

需求讨论会- PO和ScrumMaster轮流主持- 使用影响地图讲出用户故事WHY – WHO – HOW/WHAT- 使用用户故事地图进行技术分析,梳理出功能点,放入功能

区域/模块- 针对特定功能点进行进一步设计,整理出流程图,输入输入

出,原型图等需求规格- 导入到Team Foundation Server形成产品backlog

Sprint Backlog- 经过任务分解和估算的技术故

事- 经过设计的测试用例

回顾会议(吐槽大会)- 只有团队成员参与- 那些做的好- 那些需要改进- 如何改进

集成/自动化测试

领取任务 代码签入任务更新

版本发布

缺陷反馈

组织UAT测试并反馈问题

Scrum团队模型

干系人 PO ScrumMaster 团队(跨职能:开发测试等)

用户(业务方) 开发团队(技术方)

应用上线

计划会议- PO主持- 创建sprint

backlog

迭代开发阶段

采用瀑布式开发的职能型矩阵结构采用迭代式开发的职能型矩阵结构

采用迭代式开发的跨职能混合团队结构

按照职能划分分支结构主干开发,分支发布

主干开发,主干发布特性分支,主干发布

独立测试部门承担功能性测试和自动化测试

开发与测试的混合团队,共同承担功能性测试和自动化测试在流水线中自动运行的大量的单元测试,自动化功能测试和性能测试

整体全量部署的单体应用 可独立/增量部署的单独产品

遵循SOA规范,并提供向后兼容性的微服务架构

严格控制的发布周期和部署窗口 灰度上线,AB测试,功能开关等允许代码直接上线的实践

按需上线,开发人员直接推送代码进入生产环境

独立运维部门严格管控的基础设施

使用脚本自动创建生产环境一致的基础设施

自助化弹性扩展的Paas或IaaS平台支持的Infra as Code服务

手工完成数据结构迁移

差异化增量脚本完成数据迁移

提供数据结构的向前/向后兼容性

Page 7: 基于Docker的DevOps实战培训 - buzzsource.buzz.cn/14999318367291.pdf · 【基于Docker的DevOps培训】课程是由msup麦思博推出的系列课程之一。本课程融合了敏捷最佳实践和方法,是

本培训适合各个层级的人员参与,无论你是企业的管理者,产品经理,项目经理或者开发人员,QA人员还是DevOps工程师,都可以在培训中找到自己的位置。我们一直坚持采用体验代入式的方式,让参训者组成一个团队参与其中。曾经有学员反馈说参加我们的培训比上班还累,甚至还要加班到晚上8点的情况都有。

3

06

www.msup.com.cn

《基于Docker的DevOps实战培训》研发战略手册

Target audience目标人群

Target audience 目标人群

Put you into a real team

C

Q

P D

EC-level Managers

Engineering

QualityAssurance

Developers

Product & Project

Developers 开发人员提升研发效率 & 掌握最前沿技术

QA 质量管控理解软件质量内涵 & 成为产品质量看护神

DevOps Engineer 工程师获取业界先进实践 & 掌握DevOps落地操作实务

Product Manager 产品经理优化产品设计 & 获取最佳投入产出比(ROI)

Project Managers 项目经理构建高效DevOps团队 & 改进项目透明度和

可控性

C-Level Managers 管理者企业数字化转型落地策略 & 业界先进经验

分享

Page 8: 基于Docker的DevOps实战培训 - buzzsource.buzz.cn/14999318367291.pdf · 【基于Docker的DevOps培训】课程是由msup麦思博推出的系列课程之一。本课程融合了敏捷最佳实践和方法,是

我们采用讲解+演示+小组讨论+动手实验的方式,让学员更有参与感,不仅仅是吸收各种知识,还可以通过讨论与其他参训者交流并实际动手上机操作所学的知识点。

4

《基于Docker的DevOps实战培训》研发战略手册07

www.msup.com.cn

Training form培训形式

Training form 培训形式

5

P

HD

Presentation

讲解 Presentation & 演示 Demo由讲师对课程内容进行讲解,配合文字和图表展示主要概念,原理和应用场景,配合课程内的小组讨论和答疑

构成课程主体结构。

动手实验 Hands on Labs由参训者组成实验小组在讲师所提供的实验环境中进行实际操作,配合讲师所提供的动手实验手册对主要应用场景进行操作,获得更加感性的认识和初步实践经验。

Team Discussion 小组讨论由讲师提出讨论议题,学员分组讨论并形成观点,

然后按组提出自己的观点供全体讨论。分组讨论可以大大提高学员的参与度,并可以帮助学员更

好的理解所学知识点。

Page 9: 基于Docker的DevOps实战培训 - buzzsource.buzz.cn/14999318367291.pdf · 【基于Docker的DevOps培训】课程是由msup麦思博推出的系列课程之一。本课程融合了敏捷最佳实践和方法,是

此系列培训已经连续运作近百场,参训人员已经超过千人,来自几百家不同规模不同行业的企业,地点包括:北京,上海,深圳,广州,成都,济南,大连和台北等。同时,培训也从单一的微软DevOps工具链扩展为支持开源的DevOps工具链。

5Feedbacks学员反馈

Feedbacks 学员反馈 08

www.msup.com.cn

《基于Docker的DevOps实战培训》研发战略手册

世纪互联技术支持工程师

非常感谢徐磊老师分享的docker课程。对于新技术如何更好的应用到工作中,有了更深入的了解。再次

感谢。

往期学员

在微软大会听了你的讲座,真的很棒,有内容很实在!

往期学员

这是我听过的培训中干货最多的一场!

往期学员

微软的培训我参加了很多,但是徐老师的培训是内容最实在的。

往期学员

敏捷培训参加了不少,但是很少有老师能够帮助团队把方法,流程和工具真正结合起来。谢谢徐老师。

培训内容非常实用,一步步跟随精心设计的课程学习,完全能够很好的掌握使用Team Foundation Server搭建自己的持续集成甚至持续发布环境的精髓。

-- 某外企项目经理

Page 10: 基于Docker的DevOps实战培训 - buzzsource.buzz.cn/14999318367291.pdf · 【基于Docker的DevOps培训】课程是由msup麦思博推出的系列课程之一。本课程融合了敏捷最佳实践和方法,是

6Course Arrangement课程安排

09 《基于Docker的DevOps实战培训》研发战略手册

DAY1

Course Arrangement 课程安排

www.msup.com.cn

1.1 破冰,培训整体介绍,团队

分组 参训人员互相熟悉,并分成 4 个小组。教练对培训进行

整体介绍。

1.2

DevOps 和 UDAD 概述

DevOps 的价值,知识体系;通过案例分享了解实现

DevOps 的过程和收益。

UDAD 框架整体介绍,了解软件开发的本质和 UDAD 所

解决的问题领域。

1.3 Docker 技术概述 Docker 技术的背景和对 DevOps 的价值

1.4

基于容器的 DevOps 发布流

水线

使用Docker和容器技术构建持续交付流水线场景演示:

容器化本地开发环境,容器化主机,容器编排平台

Docker Swarm,私有镜像仓库,GitLab + Jenkins 搭建

持续交付流水线

下午

1.5

动手练习:搭建基础环境并

发布至测试环境

上午 内容 目标

各学员按照讲师提供的操作手册对docker基本操作进行

熟悉。

同时使用docker搭建gitlab, jenkins和registry基础环境,完

成项目代码初始化,jenkins节点配置和测试环境的自动

化部署。

Page 11: 基于Docker的DevOps实战培训 - buzzsource.buzz.cn/14999318367291.pdf · 【基于Docker的DevOps培训】课程是由msup麦思博推出的系列课程之一。本课程融合了敏捷最佳实践和方法,是

6Course Arrangement课程安排

10

www.msup.com.cn

《基于Docker的DevOps实战培训》研发战略手册

DAY2

Course Arrangement 课程安排

Page 12: 基于Docker的DevOps实战培训 - buzzsource.buzz.cn/14999318367291.pdf · 【基于Docker的DevOps培训】课程是由msup麦思博推出的系列课程之一。本课程融合了敏捷最佳实践和方法,是

6Course Arrangement课程安排

11

www.msup.com.cn

《基于Docker的DevOps实战培训》研发战略手册

DAY3

Course Arrangement 课程安排

3.1

容器 CoW 机制和数据持久化方案

深入了解容器 Copy on Write 机制及其影响

解决方案:使用数据卷和云平台持续久化容器数

3.2

容器网络机制和多主机网络解决方

深入了解 docker 网络机制及其影响

解决方案:使用 bridge/overlay 网络及云平台网

络驱动实现多主机网络解决方案

3.3

容器日志机制和监控解决方案

深入了解容器日志机制及其影响

解决方案:使用 ELK/logstash/Kabana 搭建企业

级容器集群监控平台

下午

3.4

内容上午 目标

动手实验:改进DevOps流水线,

实现数据持久化(容器迁移),

跨主机网络(微服务集群),多

主机监控和Pipeline as Code.

各学院在讲师的指导下,按照操作手册在环

境中添加数据持续久化,跨主机网络和监控

系统。掌握在生产环境中使用Docker作为容

器化DevOps解决方案的能力。同时改造当前

流水线使用Pipeline as Code方式。

Page 13: 基于Docker的DevOps实战培训 - buzzsource.buzz.cn/14999318367291.pdf · 【基于Docker的DevOps培训】课程是由msup麦思博推出的系列课程之一。本课程融合了敏捷最佳实践和方法,是

扫描二维码获得培训咨询协助