共计 3025 个字符,预计需要花费 8 分钟才能阅读完成。
简介:云效团队多年来为阿里巴巴外部(Aone)和云上企业用户(云效)别离提供研发运维工具,并致力于打造企业级一站式的 DevOps 平台,更多关注不同类型的企业用户在应用过程中的治理与合作场景,本文将重点介绍高效平安治理云效流水线的 7 招。
概述
传统流水线 Pipeline 工具,包含 Jenkins、Teamcity、Travis CI 等产品,作为企业 DevOps 中继续集成 / 继续交付的外围工具,从外围性能上来说通常能够概括为以下 4 点:
1、自动化测试:提供代码扫描、平安扫描、单元测试等自动化测试工具,确保代码在集成前曾经通过充沛测试验证。
2、集成构建:提供各种语言、框架的利用编译打包性能,将源码自动化转化为能够运行的理论代码,比方装置依赖、配置资源等。
3、公布部署:反对多种资源(虚拟主机、K8S 等)的公布形式,反对通过灰度公布、分批公布等各种策略,保障业务交付的稳固。随着各种云计算的逐步遍及,呈现各种各样的 Iaas/Paas 产品,CI/CD 工具如何反对各种模式的公布场景成为了一大外围价值。
4、流程编排:通过对不同工具和工作的流程编排能力,实现不同 CI/CD 流程把控。通常来说,流水线工具岂但反对串联本身提供的测试、构建、部署性能,还会反对企业买通自有的其余工具(比方 git 仓库、自动化测试零碎等)。
以上几点,作为 CI/CD 提供的根底性能,本文不做赘述。
云效团队多年来为阿里巴巴外部(Aone)和云上企业用户(云效)别离提供研发运维工具,并致力于打造企业级一站式的 DevOps 平台,更多关注不同类型的企业用户在应用过程中的治理与合作场景,本文将重点介绍高效平安治理云效流水线的 7 招。
第 1 招:基于业务个性分组治理流水线
第 2 招:预置流水线模板 / 工作组 / 步骤
第 3 招:一键批量降级流水线
第 4 招:设置通用变量组,随调随用
第 5 招:精密治理主机 / 集群资源
第 6 招:灵便治理公有构建集群
第 7 招:自定义企业 maven 配置
第 1 招:基于业务个性分组治理流水线
随着企业业务规模和团队规模的逐渐倒退,流水线和企业成员的数量越来越多。如何让成员疾速定位到本人的流水线,防止成员吞没在一堆与本人无关的内容中,同时保障业务倒退的安全性,成为了企业的独特诉求。
云效反对企业管理员能够在单条流水线上设置不同成员的查看、运行、编辑等流水线权限。同时也反对对流水线进行分组,并基于分组对多条流水线批量受权。
在云效上进行流水线分组操作
分组反对间接依照部门设置权限,这样的益处是部门成员产生变动后,流水线权限也主动发生变化。企业成员入职、到职的变动导致的权限变更能够做到自动化解决。
基于分组批量设置权限
第 2 招:预置流水线模板 / 工作组 / 步骤
在云效流水线 Flow 中,流水线是依照 流水线 -> 工作组 -> 步骤组成的,流水线能够由多个工作组编排组成,而每个工作组能够由多个步骤编排而成。
为了不便用户疾速创立流水线,云效流水线 Flow 预置了局部流水线模板、工作组、步骤。
预置的模板能够间接调用
为了反对企业用户更加个性化地配置本人的流水线,云效流水线 Flow 中的流水线模板、工作组、步骤均反对企业自定义创立。可在企业设置中的流水线模板治理 - 工作组治理 - 步骤治理中,创立属于企业个性化的内容,企业成员能够在编辑流水线的过程中应用此局部自定义内容。
此外,在流水线模板治理 - 工作组治理 - 步骤治理中,企业管理员能够敞开企业不须要的内容以防止造成烦扰。
可在工作组设置中敞开不须要的步骤
第 3 招:一键批量降级流水线
尽管随着业务规模的增长,企业外部流水线工作越来越多,但因为企业内技术栈根本对立,会呈现不同流水线之间只有局部配置(如代码源、虚拟主机组等)存在差别,而大部分配置基本相同的状况。
当企业流水线的某些配置(比方构建脚本、人工卡点的审核人员)须要更改时,批改流水线会导致大量的反复工作。
因而,云效提供了通过工作组实现流水线批量降级的性能。
反对在企业设置中增加工作组时,开启“反对批量降级”性能。
在工作组中开启「反对批量降级」
企业成员在配置流水线过程中,能够抉择曾经创立的工作组。尔后,企业管理员编辑批改工作组后,会对关联流水线中的工作节点进行降级。
批改能够同步降级关联流水线
第 4 招:设置通用变量组,随调随用
定义环境变量是实现流水线过程定制化的一种常见办法,能够在执行过程的任何阶段应用这些变量,云效流水线反对在每条流水线中设置其独有的环境变量。
在云效流水线中设置环境变量
然而有些变量其实是十分通用的变量,企业内大部分流水线都会用到,这时如果独自在流水线中进行设置,可导致大量反复工作。因而,云效提供了企业级治理变量的通用变量组性能。
反对在企业设置中增加变量组,每个变量组可设置多个变量,且变量均可设置为私密变量,局部敏感参数,如 username、password 等,设置成私密变量后,能够大幅升高平安危险。
在企业设置中设置通用变量
流水线管理者,只须要在流水线中关联变量组,就可在流水线工作中应用该变量。
在独自流水线中能够间接配置通用变量
第 5 招:精密治理主机 / 集群资源
云效流水线 Flow 反对将你的利用构建公布至虚拟主机或 Kubernetes 集群,同时云效的公布能力并不局限于阿里云服务器(ECS)和阿里云容器服务 Kubernetes(ACK),其余云厂商或者企业自建的虚拟主机或 Kubernetes 集群也能够通过云效实现部署。
在理论生产利用过程中,主机和集群资源作为企业的基础设施,其应用权限须要严格把控,以确保线上业务的安全性。
因而,云效提供了主机组 /Kubernetes 集群治理性能,并反对在主机组和集群设置权限。
反对在企业设置中增加主机组,主机组可抉择阿里云 ECS 和自有主机两种类型。每个主机组下均可增加多台主机资源,同时可将企业成员设置为主机组成员,领有权限的成员才能够在流水线中抉择该主机组资源。
在主机组中增加主机资源
同样,反对在企业设置中增加 Kubernetes 集群,主机组可抉择阿里云容器服务 Kubernetes(ACK)和自定义集群两种类型。可将企业成员设置为集群成员,领有权限的成员才能够在流水线中抉择该集群资源。
自定义 Kubernetes 集群
第 6 招:灵便治理公有构建集群
云效流水线 Flow 为企业提供了稳固、牢靠的构建资源,并提供了北京和香港两个 region 构建集群,企业用户无需再自行创立并保护构建机,升高了企业整体的上云老本。
然而,云效提供的构建对立的免费资源并无奈解决局部企业个性问题:
- 非凡的网络环境,无奈间接从公网和云效买通。
- 非凡的构建机环境,云效无奈间接提供。
因而,云效提供了构建集群治理性能,如果有非凡的构建环境需要,用户可在 Flow 中创立并应用公有的构建集群。
云效流水线 Flow 反对应用阿里云 ECS 或者自有主机作为构建集群。
在流水线的工作节点中,能够抉择企业自定义的构建集群执行构建工作。
第 7 招:自定义企业 maven 配置
在云效流水线 Flow 中应用 Java 构建工作,云效流水线 Flow 会主动帮你代理阿里云 Maven 公库和云效企业私库 Packages,企业用户能够将企业依赖文件上传至 Packages 仓库,实现构建依赖下载的买通。
然而,对于应用 Java 技术栈的企业,通常都会有属于企业外部特有的 Maven 配置。
因而,云效提供了企业 Maven 配置性能,反对在企业设置中上传自定义 settings.xml 文件,Flow 会依据你的配置执行 Java 构建工作。
原文链接
本文为阿里云原创内容,未经容许不得转载。