下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
主讲人介绍JFrog中国首席架构师(11年研发老兵,曾就职IBM、HPE、爱奇艺)◦主导了J
F
r
o
g国内大型客户的包管理平台主导HPE
Cloud云平台的架构和研发主导
Rational
生命周期管理平台的开发Info
Q
特约社区编辑,文章多次
在InfoQ,DBAPlus,高效运维,Docker社区等技术社区GIAC全球架构师大会金牌讲师Dev
Ops
国际
金牌讲师日程DevOps?方法为什么要DevOpsQ&A强依赖
IT系统的非IT企业非互联网企业遇到的发布频率低巨石应用的更新速度无法跟上市场变化发布难依赖手工发布,错误质量差•CICD流程不标准,导致质量不可控信息孤岛烟囱式CICD工具链D
e
v
O
p
s从何而来Patrick
Debois
2009
年DevOpsDays
大会中形成:DevOps集文化理念、实践和工具于一身,可以提高企业高速交付应用程序和服务的能力,与使用传统
开发和基础设施管理流程相比,能够帮助企业更快地发展和改进产品。D
e
v
O
p
s的发展趋势D
e
v
O
p
s的收益D
e
v
O
p
s会得到什么收益?实现100%自动化发布部署频率加快6倍部署时间缩短63%部署成本降低每年节省40日程DevOps?方法为什么要DevOpsQ&A持续交付过程中浪费的时间需求拆分应用架构…准备/测试环境…制品管理部署文档…配置环境人工部署…持续安全
安全需求设计:n
TFS
/
ALM
Octane安全静态扫描分析n
Sonarcube
&
Fortify扫描分析n
JFrog
Xray
&
BlackDuck
&
WebInspect
&
AppScan扫描分析n
AppDefender&
JFrog
Xray持续协作Software
Tools:n
UFTn
AppScann
JFrog
Xraynn
Jmeter
/
LoadRunner
n
Selenium
/
Appnium
n
TestLink持续计划&定义需求管理项目管理发布管理资源管理消耗管理缺陷管理敏捷过程管理架构设计安全设计测试计划项目经理持续集成前后端开发需求和代码关联缺陷和代码关联代码单元测试覆盖率代码静态扫描构建/打包自动化测试代码评审容器镜像构建制品库管理质量元数据收集持续发布虚拟机发布容器发布CMDB自动化发布工具Software
Tools:OpenStackDocker
/
Kubernetes
/
OpenshiftDevice42JenkinsAnsible
/
Chef
/Puppet持续运维自动扩容/缩容故障自愈•服务治理蓝绿发布日志分析告警Software
Tools:Kubernetes
/
OpenshiftZabbixSpring
CloudELKSpinnakerPrometheusGrafanaIstio持续测试测试功能性测试安全
测试开源组件接口测试集成测试性能测试UI自动化测试Software
Tools:In
liJ,
Eclipse,
VSGitlab
/
SVNSonarCube/FortifyJenkinsArtifactoryGerritJunit
/
TestNGSoftware
Tools:Jira/禅道ConfluenceVisoAxureTFS/RTC/PolarionJira
Zephyr
/
TestLink发布速度KPI发布质量KPI研发生产力KPI安全KPISoftware
Toolsn
Grafana/
Hygieia
/
Artifactory
metadata持续评估项目管理协作工具故障告警机器人代码提交机器人自动化部署机器人Software
Toolsn
DialogFlow
/
Slack
/
HipChat企业级DevOps知识体系产品经理业务部门架构师测试团队开发测试运维Dev
EnvFTSITUATProd运维需求设计发布项目管理GitlabConfluenceJira微服务服注务册组与件发化现Restful熔断器FlywayDbSpring
Cloud
ConfigConsulSpring
BootSpring
Cloud持续集成精
益
思
想构建
测试持续部署持续运维策略需变缺迭方法求更陷代技术管管管管理
理
理
理工具过程管理持续反馈服配版自单功仓自容配监日容故运漏务置本动元能库动器置控志量障营洞治管控构测测管部集编安分规恢反法理
理制建试试理署群排全析划复馈务协作通知Service
MeshGrafanaPrometheusELKHygieiaSlackXRayDevOps 门户&可视化一期计划两期计划DevOps建设的目标(示例)ApolloAnsibleKubernetesArtifactoryOpenshiftJenkinsSeleniumJUnitTestLinkTestNG项目管理–敏捷至精益敏捷模式->项目开发从瀑布式开发(项目开发模式->产品开发模式)需求管理开发持续集成制品管理自动化测试发布管理容器化需求管理–Jira/禅道需求条目化管理需求管理开发持续集成制品管理自动化测试发布管理容器化架构管理
–巨石应用
微服务巨石应用痛点:项目变大后部署,
难即使细微的变更也需要全量发布模块紧耦合,无法独立上线开发框架,语言单一,难以接触新的技术栈和框架需求管理开发持续集成制品管理自动化测试发布管理容器化架构管理
–巨石应用
微服务Martin
Fowler:Strangler绞杀者模式
/bliki/StranglerApplication.html需求管理开发持续集成制品管理自动化测试发布管理容器化架构管理
–巨石应用
微服务数据库拆分Source
from:Thoughtworks’s
blog需求管理开发持续集成制品管理自动化测试发布管理容器化组织架构管理(Netflix)扁平化敏捷团队(2Pizza)自运维区分关注点架构管理–功能开关原理https:/bliki/FeatureToggle.html种类需求管理开发持续集成制品管理自动化测试发布管理容器化持续交付流水线元数据管理需求管理开发持续集成制品管理自动化测试发布管理容器化持续交付流水线管理-Jira和Jenkins集成Jira创建任务Git–Git
commit
–m
“#JIRA-101
add
fix
for
login
form”ChangeSets
in
Jenkins需求管理开发持续集成制品管理自动化测试发布管理容器化持续交付流水线管理–集中管理流水线分散式管理集中式管理ING荷兰国际需求管理开发持续集成制品管理自动化测试发布管理容器化持续交付流水线管理–ING荷兰国际需求管理开发持续集成制品管理自动化测试发布管理容器化支持了500种应用交付TTM
小于6周减少50%的线上发布事故发布次数12,000次/月持续交付流水线管理–管理流水收益需求管理开发持续集成制品管理自动化测试发布管理容器化制品管理问题:不同团队各自或FTP,不能,没有接口开发团队GitlabJenkinsMaven库Nexus开发团队GitlabJenkins开发团队GitlabJenkins开发团队SVNJenkins开发团队GitlabJenkins开发团队SVNJenkins开发团队GitlabJenkins开发团队SVNBambooDocker库DockerRegistryNPM库NPMC#,.Net库Nuget开发团队SVNMSbuild开发团队GitlabJenkinsFTP/SVNAnsibleKubernetesS发布流程制品库管理容易宕机不支持高可用工具碎片化不支持多地不支持容灾需求管理开发持续集成制品管理自动化测试发布管理容器化制品管理–管理需求管理开发持续集成制品管理自动化测试发布管理容器化开发团队Gitlab开发团队Gitlab开发团队Gitlab开发团队SVN开发团队Gitlab开发团队SVN开发团队Gitlab开发团队SVN开发团队SVN开发团队GitlabS制品库管理管理发布流程0宕机高可用工具异地一键容灾持续集成,自动化测试制品管理需求管理开发持续集成制品管理自动化测试发布管理容器化制品管理-记录发布元数据需求管理开发持续集成制品管理自动化测试发布管理容器化测试管理
– 质量关卡第
开源组件扫描通过率静态代码覆盖率部署频率发布时长QA验证时长部署成功率需求覆盖率功能的使用频率反馈故障修复时间部署机器信息配置信息CapitalOne
银行需求管理开发持续集成制品管理自动化测试发布管理容器化发布管理-基于元数据的部署将部署信息可视化我要部署的
如何实现?含了什么需求?从Ar
t
i
f
a
c
t
o
r
y获取所有的关联文件的元数据遍历每个文件元数据的信息聚合,并生成可视化文件关联图
谱。12345需求管理开发持续集成制品管理自动化测试发布管理容器化配置管理
–
复杂配置管理
Artifactory
+
Ivy应用配置文件描述依赖信息Ivy
描述C++依赖进行
部署需求管理开发持续集成制品管理自动化测试发布管理容器化Dev
Repo
1PreFlightDev
Repo
nSynchronous
Dev
InitiatedPromotion
–
TaggingSynchronous
Dev
InitiatedPromotion
–
TaggingAsynchronous
RM
Initiated
Promotion
–
StagesMultiple
Times
a
DayMultiple
Times
a
DayBuildPublish
to
ArtifactoryCheckinCodeBuildPublish
to
ArtifactoryCheckin
CodeContinuous
Builds
in
HudsonSCMPreProdSCM发布管理–多团队协作模型需求管理开发持续集成制品管理自动化测试发布管理容器化发布管理-让机器自动化找到部署包Art
i
f
a
ct
or
y
AQL/
C
LIAn
sible
Pla
ybook需求管理开发持续集成制品管理自动化测试发布管理容器化发布管理
-
网络
下发布国内某商业银行案例对接
系统自动化推送到生产环境,无需人工拷贝权限可控扫描需求管理开发持续集成制品管理自动化测试发布管理容器化交付管理•多地二进制仓库高可用容灾备份发布管理-某商业银行发布管理案例需求管理开发持续集成制品管理自动化测试发布管理容器化发布管理–腾讯的流水线需求管理开发持续集成制品管理自动化测试发布管理容器化Dynamic
control
over
your
application’s
deployment●Helmis
the
package
manager
for
Kubernetes.Like
‘yum’
for
CentOS/RedHatYour
whole
application
described
in
a
singlepackage
-
helm
chart
(template
yamls)Default
configuration
values
(values.yaml)Single
version
fo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汽车合格证承诺书协议书范文范本
- 独一无二的闺蜜协议书范文
- 小学生5分钟宪法演讲稿
- 课堂教学的五个境界
- 镀膜机买卖合同(3篇)
- 提高消防安全意识倡议书(32篇)
- 幼儿园兴趣活动方案5篇
- 英语教师教学总结
- 孙犁藏读后感7篇
- 化学专业暑假实习报告(3篇)
- PEP版五年级英语上册教案Unit 1 单元教案 5
- 智能小区弱电室外管网施工方案(实用资料)
- 中医内科学 消渴课件
- 小学数学三年级上册五 四则混合运算教案
- 体检中心理论知识考核试题与答案
- 燃气安全知识与应急管理培训课件
- 国家社科基金申报经验课件
- 游标卡尺螺旋测微器读数例题
- tc官网软件资源中文产品手册
- 贺州市大岭古大理岩详查报告
- 企业经营管理尽职合规免责事项清单
评论
0/150
提交评论