再见了,我的散装研发管理平台;再见了,4台ECS!

简介: 目前云效全家桶的功能相对来说比较适合个人开发或者中小团队的群体,如果你此时正在为搭建这类管理平台做选型,同时预算和人力都捉襟见肘,那么不妨试试云效这个产品!一起白嫖一起爽!尤其服务器资源在阿里云的小伙伴们,真得不能错过!

作者|翟永超

周末的时候,收到好几个云服务器临近过期的通知短信,准备续个费,居然都要大几千!因为这几个都是以前低价抢购的,掐指一算,如果都续费的话,要蚕食好多利润!

作为一名自己养活自己的独立开发者,节省成本是必备技能,不然哪来可观的利润?于是,就开始琢磨着做一些架构上的调整,看看能否在这次服务器资源减少的情况下,继续低成本的运行目前还在跑的业务。

因为业务产品是最重要的,所以这块基本不能动。那么能动的就是一些周边设施了,比如:做任务管理、文档管理或持续交付的工具。在调研了诸多 SaaS 产品和云服务之后,最后选择了阿里云的云效全家桶。为什么最终选择了云效全家桶呢?核心原因还是“全家桶”三个字,基本上我想要的研发管理功能都能否覆盖了。那么这个全家桶具体能做什么呢?下面给大家分享下我改造前和改造后的平台结构,给大家一个直观的认识。

老架构:散装集成

老架构的建立基本上借鉴了以前在公司里搭建基础平台时候所用的常用开源产品和商业产品,按功能来分,主要有以下这几个:

  • 代码仓库:GitLab
  • 持续集成:Jenkins
  • 任务管理:JIRA
  • 文档管理:Confluence

Gitlab 和 Jenkins 都是开源产品,免费且应用广泛,是大部分公司的散装方案中会囊括的。JIRA 和 Confluence 虽然是商业产品,但初级版本的认证只需要 9.9 美元,对个人和 10 人以下小团队还是非常友好的,由于 JIRA 强大的流程配置功能,可以将其作为整个研发管理平台的门户。

补充:有很多开发者对于 JIRA 只认为是一个任务管理的工具,不太了解 JIRA 的工作流功能,这里简单说明一下。JIRA 之所以强大,有很大一点就是得益于其强大的工作流配置功能。由于 GitLab、Jenkins 等这些工具都有 WebHook 或 JIRA 市场下的插件支持,我们就可以很方便的把这些工具的使用步骤串联起来。这样我们在软件研发过程中的业务需求、任务拆解、代码版本、构建部署等一体化过程都可以 JIRA 这样一个单一入口中来完成。

所用资源:由于之前抢购的各个服务器配置都不高,大多是 1C2G、2C4G 的。为了稳定运行就都做了分开部署,一共消耗了 4 台 ECS。

方案优点:

  • 学习成本低:这些产品都是互联网公司中非常常见的,大部分开发都不会太陌生。同时这些软件的生态都非常健全,都有很丰富的插件市场来适应用户的各种需求。
  • 产品成本低:这里用到的产品不是免费就是很便宜,所以成本的基础成本不高

方案缺点:

  • 部署成本高:因为需要安装的软件产品多,部署成本较高

新架构:云效全家桶

在决定使用云效全家桶之后,接下来要做的就是对老架构中用到的各个产品找到替代的解决方案。下面跟着我的调研使用步骤,来看看这一个个产品的对应关系吧!

代码仓库

代码仓库在云效的解决方案中是一个名为云效Codeup 的产品,产品地址:https://codeup.aliyun.com/ 。如果你跟我一样,是要做仓库迁移的话,非常简单。如下图所示,Codeup 为各种常用平台都提供了专用的导入方式,对 Git 管理不是特别熟悉的小伙伴也可以根据提示轻松的完成代码仓库的迁移。

image.png

在点击“导入代码库”之后,我们可以看到下图界面,基本上常用的一些 Git 管理平台都已经支持,选择你要迁移的源平台,然后根据官网文档,找到对应平台需要获取的认证方式做好配置即可。

image.png

在完成认证信息配置好之后,Codeup 就会从对应的平台获取所有项目仓库,接下来只需要逐个选择你要导入的仓库点击“导入”按钮,就能轻松完成代码的迁移。

image.png

这块比较简单,基本所有的 Git 管理平台都可以支持类似的迁移操作。也不算特别的亮点吧,光从代码管理上来说,主要贡献就是为这次的改造计划节省了一台 ECS。

持续集成

完成了代码迁移之后,接下来开整持续集成部分,对应的产品是云效 Flow,产品地址是:阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台。

image.png

在云效 Flow中创建 CI/CD 的流水线非常简单,因为它提供了各个主流开发语言的多种持续集成案例的配置模版。

image.png

这里我尝试了配置一个 Spring Boot 后端应用部署到 ECS 上,只需要选择上图中的第一个推荐模版。就会出现如下图的流水线配置界面,点击每个步骤都可以进行细节配置

image.png

点击每个步骤都可以进行细节配置,比如:如何用 maven 命令构建,如何上传制品

image.png

在部署操作上,因为与阿里云的结合,可以很方便的关联到账号下的资源来选择部署,所以你就不用自己维护服务器清单了,特别方便!

image.png

那么这个流水线功能是否能满足云原生应用一次构建多处部署的特性呢?下面我也尝试做了一下,大致流程就是:在 test 环境,做构建、上传制品、部署;在 pre 环境,做选择制品、部署;在 pro 环境,做选址执行、部署。模拟了一下这种比较常见的 CI/CD 管理流程。

image.png

如上图所示,是可以满足的。这也已经满足了我这边的持续集成要求。不过这里在流水线串联,想要实现选择制品这一步上,支持的用户体验还不是特别好,花了我一些配置和咨询的时间才完成。据悉这部分体验优化马上在 9 月 15 日版本也会优化!迭代很快,非常给力!

这里值得一提的是,在云效 Flow 中所提供的各种操作模版是非常适应于我们国内用户的,比如:可以看看我在 test 环境的流程细节,这里增加了代码扫描,里面就涵盖了阿里巴巴代码规约的检查报告等。

image.png

而对于通知提醒也是非常符合国内开发团队的管理特点,提供了钉钉、企业微信、飞书这些国内才常用的软件支持。

image.png

好了,通过云效 Flow,又帮我节省了一台 Jenkins 的 ECS。

管理门户

在讲老架构的时候,我提到了使用 JIRA 的重要原因是要将其作为整个研发管理的门户,因为他可以整合其他所有周边设施。比如:任务的管理、持续集成的触发等等。那么在云效全家桶中,是否有扮演这样角色的产品呢?作为一站式的解决方案,必须得安排上,对应的产品就是 云效DevOps,产品地址:阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台 。

到这里可能你要问了,任务管理和文档管理这两个不替换了吗?必须替换!只是,因为作为门户的云效 DevOps 其实就涵盖了这两块内容。所以,接下来就一起看看云效 DevOps 的强大功能吧!

这款产品的上手非常快,因为它提供了一些常用模版。我这边就直接给予 DevOps 研发模版来创建。

image.png

完成创建后,不难发现菜单中的需求、迭代、任务、缺陷、测试计划、版本管理不就是JIRA的替代品么?而知识库不就是 Confluence 的替代品嘛!

image.png

这里还很贴心的提供了 Excel 导入的功能,所以我只需要从 JIRA 里导出 Issue ,然后在这里导入,就可以继续做之前的任务管理啦!

image.png

同时,作为管理门户,对于之前介绍的云效 Codeup、云效 Flow 自然也可以联系起来。只需要通过点击菜单中的代码、流水线(刚创建的时候,需要点击关联选择同账号下配置的代码仓库和流水线),就能进行查看和实现日常操作!

image.png

image.png

到这里,云效 DevOps 基本就完成在散装方案中 JIRA 和 Confluence 的角色,妥妥的继续释放出两台 ECS!

总结

最后,盘点下这次从自己做的散装方案到使用云效全家桶之后,我认为比较大的几个收益点:

  1. 成本降低了:节约了4台 ECS。对于我们这种个人开发或小团队来说,云效基本就是免费的,白嫖能不爽么?
  2. 运维容易了:跟阿里云的高度整合,对于资源的维护以及关联操作更加方便!

对于云效 DevOps 这个产品,从我的场景来说非常好用,核心原因是已经够用。但如果要做非常复杂的管理可能还有一些困难,比如:在目前版本中,我并没有找到类似 JIRA 那样强大的工作流支持,这样的话如果团队有一些复杂流程管理,例如多人参与的审核流程,还有与其他系统的联动,还没有比较好的支持(不过,在与云效的小伙伴咨询这类功能的时候,得知这类功能已经在内测,那么具体功能支持如何,等后面公测了我们一起拭目以待吧)。

就目前整个云效全家桶的功能来说,我觉得最主要的适用群体还是我这种个人开发或者中小团队!如果你此时正在为搭建这类管理平台做选型,同时跟我一样,预算和人力都捉襟见肘,那么不妨试试云效这个产品!一起白嫖一起爽!尤其服务器资源在阿里云的小伙伴们,真得不能错过!

原文链接
本文为阿里云原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/512387.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

15拆分成3个不同的自然数_17个数学重点知识点汇总,一篇搞定小升初

更多电子版学习资料请关注公众号:小学资源园地1体积和表面积三角形的面积底高2。公式 S ah2正方形的面积边长边长 公式 S a2长方形的面积长宽 公式 S ab平行四边形的面积底高 公式 S ah梯形的面积(上底下底)高2 公式 S(ab)h2内角和:三角形的内角和180度。…

走进统信软件,读懂国产操作系统新生态建设

回顾国际 2021 操作系统领域发展,有起伏有波澜:开源操作系统 Linux 迎来 30 岁,全球超级计算机 500 强和超过 70% 的智能手机都运行其上;CentOS 突然宣布 CentOS 8 停止维护,不少企业不得不面临迁移难题…… 反观国产…

Serverless 工程实践 | Serverless 应用开发观念的转变

简介: Serverless 架构带来的除了一种新的架构、一种新的编程范式,还包括思路上的转变,尤其是开发过程中的一些思路转变。有人说要把 Serverless 架构看成一种天然的分布式架构,需要用分布式架构的思路去开发 Serverless 应用。诚…

中科院计算机所硕士导师,中科院计算技术研究所研究生导师介绍:毕经平

中科院计算技术研究所研究生导师介绍:毕经平简历:2002年7月于中国科学院计算所获得博士学位,同年9月被破格提拔为计算所副研究员,2008年3月被任命为博士生导师,2009年1月获得卢嘉锡青年人才奖作者佚名次阅读2014-05-15代表论著:1)…

bash: 未预期的符号 `( 附近有语法错误_安规群中关于泄漏电流测试、接地符号等相关的6个问题,快来围观大神的回答吧!...

【本文属"世界认证地图"原创,未经允许,请勿转载哦~~~】问题一群员提问:接地这样符合GB4706.1-2005的标准要求吗?图片由群友提供群友解答:接地符号标错地方,应该如下图图片由群友提供专家解答&…

多项“首次”落地 腾讯云数据库助力金融机构国产化

日前,IDC发布了《2021年上半年中国关系型数据库软件市场跟踪报告》,数据显示,我国关系型数据库市场规模迅速增长。2021上半年,中国关系型数据库软件市场规模为11.9亿美元,整体市场同比增长37.2%。IDC预测,2…

庖丁解牛-图解MySQL 8.0优化器查询转换篇

简介: 在《庖丁解牛-图解MySQL 8.0优化器查询解析篇》一文中我们重点介绍了MySQL最新版本8.0.25关于SQL基本元素表、列、函数、聚合、分组、排序等元素的解析、设置和转换过程,本篇我们继续来介绍更为复杂的子查询、分区表和JOIN的复杂转换过程。 作者 |…

hivesql修改字段类型_Hive SQL语法总结

Hive是一个数据仓库基础的应用工具,在Hadoop中用来处理结构化数据,它架构在Hadoop之上,通过SQL来对数据进行操作,了解SQL的人,学起来毫不费力。Hive 查询操作过程严格遵守Hadoop MapReduce 的作业执行模型,…

Cube 技术解读 | 支付宝新一代动态化技术架构与选型综述

简介: 支付宝客户端的动态化技术经历三个阶段:现阶段也就是第三阶段是实体组件部分光栅化的hybrid模式,Cube 就是该模式下的产物。 如标题所述,笔者将持续更新《Cube 技术解读》系列文章。本文为Cube系列首篇文章,后续…

阿里云数字巡展:“云上峰会”背后的秘密武器

简介: 近日,阿里云官网上线了叫做“数字巡展”的新产品,专为各行业在数字化创新提供解决方案。数字巡展,立足于设计创新,融合定制化虚拟空间、沉浸化技术体验、数字化企业营销三大核心能力,通过创意和技术优…

把所有圆圈连接起来的游戏_20个幼儿园体育小游戏教程

1、游戏《木头人》游戏规则:幼儿手拉手围成一个圆圈,边走边念儿歌"我是一个木头人,不会说话不会动,看谁坚持一分钟"念到最后一个字时所有幼儿摆出造型不动。老 师说时间到才能动,游戏反复进行。2、游戏《粘泡…

拒绝双写:巧用Lindorm数据订阅

简介: 本文介绍了双写场景的一致性问题,详细介绍了三种解决方案,并针对DB->Binlog->Kafka方案给出了Lindorm数据订阅的最佳实践 双写问题介绍 双写问题(Dual Write Problem)是指:需要同时修改两个独…

春节快到了,来写个烟花动效吧

作者 | Eason来源 | 程序员巴士2022虎年大吉,预祝各位小伙伴们新年快乐,这篇文章教大家如何在 Canvas 中实现高性能的烟花粒子特效,通过使用 Canvas BitmapShader GestureDetector技术栈,实现趣味 2D 春节烟花特效页面&#xff…

商用服务器系统比较好,商用服务器操作系统都用哪种

商用服务器操作系统都用哪种 内容精选换一换切换弹性云服务器操作系统。支持弹性云服务器数据盘不变的情况下,使用新镜像重装系统盘。调用该接口后,系统将卸载系统盘,然后使用新镜像重新创建系统盘,并挂载至弹性云服务器&#xff…

边缘使用 K8s 门槛太高?OpenYurt 这个功能帮你快速搭建集群!

简介: 为了降低 OpenYurt 的使用门槛,帮助更多地开发者快速上手 OpenYurt,社区提供了 OpenYurt 易用性工具 yurtctl。该工具致力于屏蔽 OpenYurt 集群创建的复杂性,帮助开发者在本地快速地搭建 OpenYurt 开发测试集群。 OpenYurt…

Effective Java 在工作中的应用总结

简介: 《Effective Java》是一本经典的 Java 学习宝典,值得每位 Java 开发者阅读。笔者将书中和平日工作较密切的知识点做了部分总结。 作者 | 宜秋 来源 | 阿里技术公众号 《Effective Java》是一本经典的 Java 学习宝典,值得每位 Java 开发…

harfbuzz安装位置 linux_最新Ubuntu 20.04 LTS已发布,在Win10中该如何进行安装和使用?...

最近Ubuntu发布最新的20.04 LTS长期支持版本,官方提供为期5年的更新升级、安全修复等服务。国内的优麒麟团队也同步放出了优麒麟20.04 LTS,加入了全新的UKUI 3.0桌面环境。那么如何在微软的Windows系统中安装体验最新的Ubuntu系统呢?实际上相…

如何查看华为服务器配置信息,查看服务器网络配置信息

查看服务器网络配置信息 内容精选换一换ECS的网卡绑定虚拟IP地址后,该虚拟IP地址无法ping通。以下排查思路根据原因的出现概率进行排序,建议您从高频率原因往低频率原因排查,从而帮助您快速找到问题的原因。如果解决完某个可能原因仍未解决问…

通过Kubernetes监控探索应用架构,发现预期外的流量

简介: Kubernetes 监控立足于应用监控之下的 Kubernetes 容器界面和底层操作系统,是 Kubernetes 集群软件栈端到端可观测性的一体化解决方案,在 Kubernetes 监控中可以同时看到关联的所有层的观测数据。我们希望通过 Kubernetes 监控的一系列…

追踪 Kubernetes 中的网络流量

作者 | Addo Zhang来源 | 云原生指北译者注:这篇文章很全面的罗列出了 Kubernetes 中涉及的网络知识,从 Linux 内核的网络内容,到容器、Kubernetes,一一进行了详细的说明。文章篇幅有点长,不得不说,网络是很…