应用多、交付快,研发运维怎么管?看云效+SAE 如何一站式破局

作者:天彤

背景

对于研发团队来说,应用程序(Application)的开发运维的成本、质量、效率,永远是比较难均衡的三个核心要素,特别是对于应用程序较多、团队规模较大、研发交付节奏较快的研发团队,面临的挑战就会更大。为了保证应用的发布质量,一般需要专门部署运维团队投入,而管理常规的 K8s 集群的成本通常较高,当人手不足时运维团队又会成为瓶颈,限制研发交付的速率。通过云效+Serverless 应用引擎(SAE)的集成方案,可以有效的解决这个问题,帮助企业研发团队统一管理应用程序的研发、部署、运维过程,实现研发团队的自运维。

成本

SAE 是自适应弹性的应用托管平台,可以免运维管理 K8s 集群,相较于普通容器服务,支持自动弹性伸缩和按量计费,用户无需自行管理集群节点,有效的控制资源成本和维护成本。云效 AppStack 提供的是应用的开发/部署/运维,完整的应用生命周期管理,云效与 SAE 集成之后,可以在云效中配置应用不同环境的部署参数,并且直接部署 SAE 资源,将研发态和运维态统一管理。

质量

云效 AppStack 的应用模板和研发流程管理,可以比较好的规范研发流程,运维团队可以统一制定规范,在不同的应用环境可以使用不同等级的质量控制标准,并且可以对部署生产环境的准入规则进行约束,对于没有经过测试环境验证的代码提交,防止部署到生产环境,同时通过精细的环境权限管控,保证生产环境的发布质量。

效率

云效 AppStack 的应用模板可以大大节省研发流程的配置成本,如果需要整体调整流水线只需修改模板即可。在应用的部署编排上也是采用相似的设计,并且不同的环境共享一个编排配置,通过参数化适配不同环境。研发团队只需专注在日常研发工作中,从繁杂的部署运维工作解放出来,非常方便研发团队自运维。在研发过程中也可以选择 AppStack 的变更集成模式,在多人协同开发场景效率提升明显。

方案介绍

基于应用的研发运维管理

云效 AppStack 提供了基于应用维度的管理模式。一般产品团队专注于围绕"产品"进行规划设计,而研发团队则聚焦于"应用"的开发与实现。应用作为可独立部署的最小单元,通常一个完整的产品由多个应用构成。通过将大型产品拆解为独立的应用,不仅有助于优化产品结构,提高模块间的独立性和灵活性,还能更迅速地响应业务需求变化。此外,这种架构上的优化也提升了持续集成和持续部署(CI/CD)流程的可行性和效率,从而加速产品的迭代周期并增强市场竞争力。

配置应用各环境的研发流程

云效 AppStack 集成了云效 Flow 的强大流程设置功能,实现了软件开发过程的规范化管理。AppStack 提供了标准化的应用模板,确保所有应用的研发过程保持一致,便于团队成员快速上手并统一开发标准。

一般每个应用都会包含多个「环境」(如开发环境、测试环境、生产环境),在应用模板中可以对各个环境的流水线进行设置。通过模板创建的应用,也将会自动继承预置的研发流程,并且与模板的设置持续保持同步。

将应用部署到 SAE

云效 AppStack 的应用环境可以关联多种部署资源,包括:主机部署、K8s 部署、SAE 部署。一般最常见的主机部署和 K8s 部署。而当云效 AppStack 支持 SAE 之后,资源配置和部署方式将大大简化,将 SAE 资源作为集群导入 AppStack 以后,就可以直接将应用部署到 SAE。

方案操作流程

SAE 新增角色授权

要实现 SAE 与云效 AppStack 的集成,首先需要在 RAM 控制台为账号创建名为 sae-${accountId} 的 RAM 角色,并且为角色授权 AliyunSAEFullAccess。

然后在这个角色中修改信任策略:

json 复制代码
{
  "Statement": [
    {
      "Action": "sts:AssumeRole",
      "Effect": "Allow",
      "Principal": {
        "Service": [
          "sae.aliyuncs.com"
        ]
      }
    }
  ],
  "Version": "1"
}

云效 AppStack 连接 SAE

进入云效 Flow 的全局设置------服务连接管理,新建一个 SAE 的服务连接。

再进入云效 AppStack------资源池,添加新的 SAE 集群,这个集群对应的是 SAE 的某个地域。

应用环境关联 SAE 集群

在 AppStack 创建一个新的应用,关联代码源之后,直接在「环境」中添加 SAE 环境,这里需要设置环境的标签(开发/测试/生产),部署方式选择 SAE 部署,并且选择刚创建的 SAE 集群。

设置应用的部署编排

进入应用设置------部署编排配置------编辑,在这里可以对资源 yaml 进行设置,由于 SAE 本身也会进行资源设置,在云效 AppStack 的设置中请遵循"尽量少"的原则,在这里配置的参数会直接应用在 SAE 部署 AppStack 的配置项会与 SAE 的设置进行合并。

设置研发流程的部署步骤

进入应用研发流程的流水线编辑界面,设置 SAE 的部署任务,这里必须使用「AppStack 部署」的任务,这样才能与刚刚配置好的部署编排 yaml 和 SAE 环境进行关联。在「环境」中选择对应的 SAE 环境,在「制品」中选择镜像构建任务所产生的镜像文件。

运行研发流程部署 SAE!

一切配置完成后,直接运行研发流程,就可以完成镜像的构建和部署,AppStack 部署任务会专门创建「部署单」,通过部署单可以查看部署过程的进度和问题。部署成功以后,在 SAE 就可以看到成功创建了应用,SAE 应用的名称和 AppStack 配置的 deployment 的名称完全对应,一个 AppStack 应用会根据不同的环境,创建多个 SAE 应用。

小结

云效 AppStack 与阿里云 Serverless 应用引擎(SAE)的集成方案,为企业研发团队提供了一套高效、低成本、高质量的研运一体化解决方案。

  • 在成本方面,SAE 作为自适应弹性的免运维应用托管平台,支持自动伸缩与按量计费,用户无需管理底层 K8s 集群,显著降低了资源开销和维护成本。
  • 在效率方面,云效 AppStack 通过可复用的应用模板和参数化的部署编排,统一管理开发、测试、生产等多环境配置,研发人员只需专注业务代码,大幅减少了重复的运维配置工作。
  • 在质量方面,方案通过标准化的研发流程、严格的环境权限管控以及生产环境准入规则,有效保障了发布质量与系统稳定性。

通过在云效中创建 SAE 服务连接并关联集群,团队可将应用环境直接部署到 SAE,实现从代码提交、镜像构建到 SAE 部署的自动化流水线。该集成打通了研发与运维的壁垒,特别适用于应用数量多、团队规模大、交付节奏快的组织,助力企业实现敏捷、可靠的持续交付。

相关推荐
阿里云云原生3 天前
重塑云上 AI 应用“运行时”,函数计算进化之路
serverless
阿里云云原生3 天前
企业级 AI Agent 开发指南:基于函数计算 FC Sandbox 方案实现类 Chat Coding AI Agent
serverless
Serverless社区3 天前
函数计算进化之路:AI Sandbox 新基座
阿里云·云原生·serverless
阿里云云原生3 天前
AI 玩转网页自动化无压力:基于函数计算 FC 构建 Browser Tool Sandbox
serverless
AI云原生5 天前
如何使用Docker快速运行Firefox并实现远程访问本地火狐浏览器的教程
运维·docker·云原生·容器·serverless·firefox·kubeless
Clownseven5 天前
2025云计算趋势:Serverless与AI大模型如何赋能中小企业
人工智能·serverless·云计算
thinktik6 天前
还在手把手教AI写代码么? 让你的AWS Kiro AI IDE直接读飞书需求文档给你打工吧!
后端·serverless·aws
jzzy_hony7 天前
云原生:微服务与Serverless指南
微服务·云原生·serverless
Serverless社区7 天前
重塑云上 AI 应用“运行时”,函数计算进化之路
阿里云·云原生·serverless