阿里云代码持续集成rdc思路
因为是小成本公司,服务器的采购也都是在阿里云上采购的,所以整个项目的集成环境也是在阿里云上完成。代码上线有很多种,有直接在服务器上拉代码的,有ftp上传的,也有scp推的。当然,不管走什么协议,这些办法都能达到上线代码的目的,但是上线流程就会变得复杂,出现问题的风险变大。持续集成主要解决的问题,也就是让这个过程变得简单,可控,降低人为风险,当产生问题可以及时回滚到没问题的版本。现在各个头部大厂都有
因为是小成本公司,服务器的采购也都是在阿里云上采购的,所以整个项目的集成环境也是在阿里云上完成。
代码上线有很多种,有直接在服务器上拉代码的,有ftp上传的,也有scp推的。当然,不管走什么协议,这些办法都能达到上线代码的目的,但是上线流程就会变得复杂,出现问题的风险变大。
持续集成主要解决的问题,也就是让这个过程变得简单,可控,降低人为风险,当产生问题可以及时回滚到没问题的版本。现在各个头部大厂都有专业的devops,他们基本都会自己开发一套持续集成方案。不过大部分也是基于 hudson,jenkins,或者k8s这些基础应用。
阿里云的持续集成也是在基础思想上打包了一套自己的服务。目前支持的类型,有rdc和k8s两种。
这里先讲一下持续集成这个服务的基本思路,这个服务的作用,主要是把代码先从你的代码仓库拉过来存到他的工作空间,然后在进行一个简单的版本约定,来索引到你当前的代码。然后在从工作空间推送到你的目标服务器,也就是你要上线的那台服务器。这里面牵扯到的资源,有你的代码仓库服务器,持续集成服务器,还有线上应用服务器。所以要完成这个推送过程的前提是要把相关的用户权限打通。
阿里云的持续集成服务在他的云效服务上,整个服务由项目,应用,环境,流水线组成。创建好具体应用后,可以创建对应的线上环境。我们因为设了预发布流程,所以有存在测试和生产两个环境
这两个环境同时存在部署策略,资源管理,部署历史和部署策略,这里面比较关键的就是部署配置和资源和策略。
部署配置是提供了一个钩子服务,他可以解决持续集成过程中你的一些指定操作,类似于插件,支持shell等基础操作。
资源管理是你上线的这些代码要发布的服务器
首先你要把你采买的服务器引入到项目中,才能进行关联。
部署策略主要是分步上线的配置,主要解决的问题是先小范围上线,这样你可以先线上回归,没有问题后在进行全量上线,降低上线风险和影响范围。
这些准备完之后,就可以通过流水线,把你的代码仓库和构建逻辑,还有主机部署关联起来,最终完成一键发布。
祝大家工作开心。
更多推荐
所有评论(0)