为了抓住商业机会,业务需要快速迭代,不断试错,因此,企业需要依赖拥有持续交付的能力,这些不仅包括技术需求还包括产品的需求,如何能拥有持续交付的能力,大而全的架构因为效率低下,显然是不合适的。于是演变出微服务架构来满足需求,通过把系统划分出一个个独立的个体,每个个体服务的设计依赖需要通过12 要素的原则来规范完成。系统被分成了几十个甚至几百个服务组件,则需要借助DevOps 才能很好地满足业务协作和发布等流程。DevOps 的有效实施需要依赖一定的土壤,即敏捷的基础设施服务,现实只有云计算的模式才能满足整体要求。而且,一个公司要做devops的话,涉及的工具链非常多,比如
项目管理(PM):Jira代码管理:GitLab持续集成(CI):GitLab CI镜像仓库:VMware Harbor容器:Docker容器平台: Rancher镜像扫描:Clairctl编排:Kubernetes服务注册与发现:etcd脚本语言:python日志管理:EFK系统监控:prometheusWeb服务器:Nginx数据库:MySQL redis。Dev(开发)与Ops(运维)这两个角色分别属于两个世界,只有打破边界,软件交付才能更加顺畅。随着时间的推移,我们发现DevOps已经不仅仅是工作职责问题,而演变成一种高效的软件开发文化。从提出DevOps的概念到概念的定义变成空中楼阁般在代码世界中漂浮,再到容器化技术的出现使得DevOps落地变为了现实。现如今,由阿里云国内技术标杆提供的DevOps工具,接下来让我们从项目管理及代码管理两个方面一起体验云效吧。
在这一系列背景下,我第一次使用了云效这款产品,
产品体验
首先,点击按钮进入云效平台
简单注册一下就进到了云效的首页
点击创建就进入了工作台,可以看到功能还是非常完善的,DevOps的流程基本都包括了。下面针对每个流程进行测评。下面列举几个简单的
需求
在需求这个流程下,可以创建若干需求,并进行动态管理,相当于创建任务。
每个任务可以设置不同的状态,方便管理。
迭代
迭代基本上也就是对任务进行分类管理,我的理解就是针对同一个功能进行不断更新。
任务
任务这里什么都没有,那就创建一个。
在任务这里可以看到,根据当前的进度会有不同的状态分组,例如待处理,开发中。测试中等等,而且这些分组是可以拖动的,可以调换顺序,也可以添加或者删除状态。改变任务的状态,任务就会跑到对应的分组中。如果说任务的状态可以跟需求相关联,这样产品经理在需求中添加了任务,开发人员就可以在任务中看到待处理的任务,同时开发人员完成任务后,在需求中相应的任务状态就会被变化,这样会方便很多。
代码
代码这里用了Codeup代码库,提交,扫描,评审,合并一条龙。
可以新建代码库,类似于GitHub的仓库,除了可以进行代码托管,还可以进行代码质量与安全检测。
新建了之后就初始化仓库,类似于GitHub。初始化仓库的时候勾选了创建README.md文件,可以看到有一个新手教程。在页面顶部看到一个Web IDE选项,点击之后就进到编辑器界面。
有这个Web IDE之后就非常方便了,不需要在VS Code上安装ssh插件了。
看到还有个关联已有库的选项,选择那个Codeup-demo试一下。
里面有个关于Codeup代码库的介绍
流水线
Flow流水线是代码提交之后的下一步,包括构建,部署,验证和发布。
点击新建流水线,选择第一个选项,Java构建、部署到阿里云ECS
创建流水线之后,会让你选择代码源,支持各种主流的代码托管平台。在这里选择示例代码源用来测试。
添加之后就会提示让你保存并运行流水线。
点击之后提示主机组配置未完成,好像是要部署到自己的主机上,那这步就先不体验了。
缺陷
打开应该就是这样的一个页面
可以进行任务创建,不知道Codeup检测到的缺陷会不会被自动添加。
知识库
同样需要自己创建一个知识库
可以根据模板创建文档。
DevOps流程一应俱全,用户体验也非常棒。源于阿里巴巴先进的研发理念和工程实践,作为企业级一站式DevOps平台,云效平台适合绝大多数中小型企业使用。云效平台提供从需求、开发、测试、发布、运维到运营端到端的协同服务和研发工具,在降低成本的同时极大提高了研发效率。同时云效平台还支持Docker,K8S,公有云,私有云及混合云等一键部署,非常方便。