AI love Container - download.anruichina.comdownload.anruichina.com/arc/techsummit/APP204.pdf ·...
Transcript of AI love Container - download.anruichina.comdownload.anruichina.com/arc/techsummit/APP204.pdf ·...
AI love Container
人工智能化的DevOps实践
许豪微软解决方案专家
徐磊LEANSOFT 首席架构师
STU 204
Microsoft Tech Summit 2017
微软技术暨生态大会
个人简介 3
徐磊
首席架构师
微软最有价值专家 MVP
Microsoft RegionalDirector
Certified ScrumMaster
Certified DevOps Master
徐磊
首席架构师 | 资深ALM顾问和解决方案专家 | 微软最有价值专家 | 大中华区域社区技术总监 | 认证
Scrum Master | 敏捷教练 | 超过10年的软件研发项目管理经验 | 曾任SSW中国研发中心总经理 | 认证
的 DevOps Master Trainer
项目经验
• 高级ALM/DevOps顾问, 中国农业银行,互联网金融项目
• 敏捷教练, 兴业银行,海外网银敏捷试点项目
• 高级管理顾问,中国移动南方基地,互联网研发基地外包管理改进
• 高级ALM/DevOps顾问,上海通用汽车有限公司,软件研发过程改进
• 高级ALM/DevOps顾问,上海汇众汽车,软件研发过程改进和ALM平台落地
• 高级ALM/DevOps顾问,中国人民保险公司软件研发中心,软件研发过程改进和ALM平台落地
• 高级ALM/DevOps顾问,斯伦贝谢中国研发中心,敏捷开发与ALM落地
• 高级ALM/DevOps顾问,京东商城,PMO管理系统与ALM系统集成高级ALM/DevOps顾问,
• 华为2012实验室(深圳),rDelta系统选型
• 高级ALM/DevOps顾问,百威英博,软件外包管理系统ALM落地实施
Speaker Introduction
内容
案例:DevOps实验室的持续交付流水线实践DevOps实验室简介
基于Azure, Team Foundation Server 和 Docker 的持续交付流水线
基于LUIS的自然语言识别在DevOps中的应用介绍一个新朋友给你:小维 @Viki
自然语言识别在DevOps中的应用价值
小维的技术实现
为什么要开发【DevOps实验室】
• 2008 年第一期实操课程
• 至今已经运作上百期,学员近千人
• 挑战
• 环境复杂,维护困难
• 目标
• 降低培训交付成本
• 原来需要3个人交付,现在1个人
自助化环境生命周期管理
• 实验是一种探索性行为,需要经常重新开始;
• 按需新建/重置/删除环境,随用随开,不用即可关闭;
• 节省云资源,随用随计费;
• 图1: 3月24日公开课 24人(准备时间1周,4套环境,5个工程师)
• 图2: 6月17日公开课 30人(准备时间3天,30套环境,2个工程师)
• 图3: 10月17日微软公开课 60人• 65套实验环境• 130台虚拟机(260个cpu core, 130个虚拟网络)• 50分钟内创建完毕• 1人完成培训交付
易用性
• 用户桌面是日常工作空间,不可能为了实验随意变动;
• 本地计算能力有限,无法满足大数据,AI,区块链等需要大规模计算的场景;
• 通过浏览器访问是任何用户都最熟悉的方式。
• 跨平台:满足Windows/Mac/Linux不同用户一致性的访问体验
浏览器
操作手册
SSH 远程
RDP 远程
VNC 远程
Viki 小维
Docker 环境
Docs 容器 (markdown)
Xterm 容器(JavaScript)
Guac 容器(C++/Java)
Hubot 容器(JavaScript)
TFS git
Markdown
Infra As Code
Coffee Script
TFS CI/CD
Docs Jobs
Env Jobs
Azure云平台
Ops Jobs
Labs Env (独立虚拟网络)
Machine Machine
Paas Object
【DevOps实验室】技术架构
Labs 容器(asp.net core)业务系统
调度
DevOps实验室的持续交付实践
• TFS 精益看板• 用户故事
• Bug
• 测试
• TFS 持续集成• 自动完成docker镜像生成,推送至私有镜像仓库(Harbor)
• 自动生成部署配置文件 docker-compose-template.yml
• TFS 持续部署• 测试环境:Azure 香港数据中心(全球版)
• 生产环境:Azure 背景数据中心(世纪互联版)
讲师工作流
讲师
编辑实验手册• reST/Markdown 格式• Visual Studio Code• Edit Plus• Notepad ++• 记事本• 任何编辑器
Git库 –文档
版本化的文档管理
编辑环境编排文件• Azure – Resource Manager• 其他云
• Chef• Puppet• DSL
Git库 –环境编排
版本化的环境管理
自动化引擎TFS Build / Jenkins异步事务队列
Docs Jobs
Env Jobs
HTML
云环境
学员工作流
学员
课程列表
• 大数据入门课程• Ai入门课程• 区块链进阶课程
文档库
• 大数据实验手册• Ai实验手册• 区块链试验后手册
云环境库
• 单服务器环境• 多服务器环境• Hadoop集群• 机器学习集群
启动实验选择课程
运营支持团队
• 通过聊天室提供实时技术支持
“小维”
• 通过聊天室提供云环境自动化操作支持
内容
案例:DevOps实验室的持续交付流水线实践DevOps实验室简介
基于Azure, Team Foundation Server 和 Docker 的持续交付流水线
基于LUIS的自然语言识别在DevOps中的应用介绍一个新朋友给你:小维 @Viki
自然语言识别在DevOps中的应用价值
小维的技术实现
微软认知服务
From faces to feelings, allow your apps to understand images and video
Hear and speak to your users by filtering noise, identifying speakers, and understanding intent
Process text and learn how to recognize what users want
Tap into rich knowledge amassed from the web, academia, or your own data
Access billions of web pages, images, videos, and news with the power of Bing APIs
2代小维
executeLUIS = function(msg, input, adapter, robot) {var inputCommand, url;inputCommand = input.text.split(" ").slice(1);if (!inputCommand) {
return;}url = "https://southeastasia.api.cognitive.microsoft.com/luis/v2.0/apps/q=";url = url + encodeURI(inputCommand);robot.http(url).get()(function(err, res, body) {
var intention, json, query, result, score, sender, target;if (err) {
console.log(err);}json = JSON.parse(body);query = json.query;
intention = json.topScoringIntent.intent;score = json.topScoringIntent.score;
}
POST
Intent
score
更多信息和资源
Azure 中国官网站: https://www.azure.cn 最新产品与解决方案信息
中国区 Azure 官方文档: https://docs.azure.cn 提供产品服务文档,开发人员指南,代码样例和 SDK 下载
Azure 在线培训: https://school.azure.cn 提供面向场景的项目搭建教程,Azure 专家大咖专栏,和网络直播课程
Microsoft 云科技公众号 (ID: MS_CEChina) - 最新行业资讯、产品介绍、案例分享
Azure 云技术支持公众号 (ID: VNET_AzureSupport) - 由世纪互联运营的 Microsoft Azure 公有云平台技术支持
Microsoft 云科技公众号 Azure 云技术支持公众号
中国区 Azure 官方文档 Azure 在线培训
DevOps 公众号,中国最大的DevOps公众号 (ID: devopshub)