《架构世界》2020DevOps刊:DevOps实践指南
上QQ阅读APP看书,第一时间看更新

1DevOps平台第三方服务集成概览

说明:DevOps平台所有集成的第三方服务信息都保存在平台管理的服务集成页面,如下图展示:

介质服务器

DevOps平台采用的介质服务器类型为NEXUSNEXUS是一个强大的maven仓库管理器,它极大的简化了本地内部仓库的维护和外部仓库的访问。

构建引擎

DevOps平台采用的构建引擎类型为JenkinsJenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

JenkinsDevOps平台很重要的一个组成部分,CICD就靠Jenkins来实现,用户可以在DevOps平台创建一个构建定义、配置好需要的任务如maven构建,还可配置定期执行或触发执行该构建任务,将用户从繁琐的构建工作中解脱出来。

部署引擎

DevOps平台采用的部署引擎类型与构建引擎同为Jenkins

质量分析服务器

DevOps平台采用的质量分析服务器为SonarQubeSonarQube是一个用于代码质量管理的开源平台,用于管理源代码的质量。通过插件形式,可以支持包括java, C#, C/C++, PL/SQL, Cobol, JavaScrip, Groovy等等二十几种编程语言的代码质量管理与检测。

项目管理服务器

DevOps平台的项目管理我们采用的是JiraZentao这两个专业化的工具,依靠这两个工具支持起了DevOps平台的项目管理、概览和任务三大模块,用户可以很便捷的在DevOps平台查看编辑项目的基本信息、新建一个迭代和查找指派给自己的需求任务bug,提高工作效率。

JIRAAtlassian公司出品的项目与事务跟踪工具,被广泛应用于缺陷跟踪、客户服务、需求收集、流程审批、任务跟踪、项目跟踪和敏捷管理等工作领域。

Zentao是国产的开源项目管理软件,专注研发项目管理,内置需求管理、任务管理、bug管理、缺陷管理、用例管理、计划发布等功能,实现了软件的完整生命周期管理。

容器云服务器

DevOps平台集成的容器云服务器类型为k8s

容器云以容器为资源分割和调度的基本单位,封装整个软件运行时环境,为开发者和系统管理员提供用于构建,发布和运行分布式应用的平台。

镜像服务器

DevOps集成的镜像服务器类型为Harbor

Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全、标识和管理等,扩展了开源Docker Distribution。作为一个企业级私有Registry服务器,Harbor提供了更好的性能和安全。提升用户使用Registry构建和运行环境传输镜像的效率。Harbor支持安装在多个Registry节点的镜像资源复制,镜像全部保存在私有Registry中,确保数据和知识产权在公司内部网络中管控。另外,Harbor也提供了高级的安全特性,诸如用户管理,访问控制和活动审计等。

代码服务器

DevOps采用了GitlabGithubSvn作为代码的管理工具,支撑起了平台的代码模块,用户的项目相关代码都可以存储在以上三种工具中并关连到DevOps平台的相应项目里,方便用户查看对比代码,也为后续的CICD提供了便利。

GitLab是由GitLabInc.开发,使用MIT许可证的基于网络的Git仓库管理工具,且具有wikiissue跟踪功能。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。

GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git作为唯一的版本库格式进行托管,故名GitHub

SVNsubversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。

文档服务器

Confluence服务器的存在使得整个项目生产过程中的文档有了一个集中存储的地方,方便管理。

Confluence为团队提供一个协作环境。在这里,团队成员齐心协力,各擅其能,协同地编写文档和管理项目。从此打破不同团队、不同部门以及个人之间信息孤岛的僵局,Confluence真正实现了组织资源共享。