AppStack 高效管理微服务应用

云效 AppStack 通过应用中心化管理、应用模板支持和批量升级功能,简化微服务应用的配置管理,提升效率,减少错误,实现对上百个应用和上千条流水线的高效管理和批量授权。

1. 使用模板一键创建应用

组织应用研发通常采用相同的技术栈和流程。通过定义应用模板,可以快速初始化配置,节省时间。

从示例应用模板快速配置应用

云效提供两套示例应用模板,您可以一键初始化应用配置,体验完整部署流程,并按需修改。

  • Java K8s 应用示例模板:预置测试(镜像构建+测试环境部署)、预发(镜像构建+预发环境部署)、生产(镜像构建+人工卡点+生产环境部署)三条流水线,预置K8s Deployment 部署 YAML,预置开发、测试、预发、生产四套环境。

  • Java 主机应用示例模板:预置测试、预发、生产三条流水线,预置 Linux 主机部署 Shell 脚本,预置开发、测试、预发、生产四套环境。

莫小@1x

莫小@1x

莫小@1x

组织自定义应用模板一键创建应用

示例模板用于快速体验配置流程。在实际业务中,您可以自定义应用模板,按需配置环境、流水线和部署。少量不同的配置可抽取成变量,关联全局或应用内变量组。

  1. 配置模板。

  • 如:Java 构建命令中,某些应用跳过 Maven 测试。定义skipMvnTest为流水线变量,流水线关联应用变量组,由变量组取值决定是否跳过。

    莫小@1x

  • 如:部署 K8s YAML 中,某些应用 Deployment 开启 xx 特殊配置。定义pilotAutoEnable为编排配置变量,环境关联变量组,应用环境部署时由变量组取值决定是否开启。

    莫小@1x

  1. 新建应用时,选择上述配置好的模板,即可一键初始化应用配置,省去多应用逐个重复配置成本,“解放”双手。

    莫小@1x

  2. 应用创建成功后,可以批量为应用添加成员并赋予相应角色,以角色权限方式统一为应用的多套环境、多条流水线授权。组织可按需配置开发、测试等各角色的权限点。

    莫小@1x

    莫小@1x

2. 模板修改批量升级到应用

应用架构升级或研发规范调整时,应用配置也需升级。通常先选取试点应用测试,验证通过后再批量推广。以下是典型升级场景:

场景1:批量修改应用部署配置,增加 sidecar 容器,统一接入监控日志

应用稳定性升级项目要求统一接入监控日志,需在应用部署中增加 skywalking sidecar 容器。批量升级步骤如下:

  • 进入应用模板 > 编排配置,开启同步功能。

    莫小@1x

  • 修改模板编排 YAML Deployment 文件,增加 SkyWalking 容器配置。

    莫小@1x

  • 选择试点应用,进行配置同步,重新部署试点应用进行测试验证。

  • 试点应用测试验证 OK 后,再批量选择应用同步,批量推广。同步后,应用下次部署使用最新同步的 YAML 即可生效 skywalking sidecar 容器,进行应用日志采集。

    莫小@1x

  • 单击应用模板 > 版本记录,可以实时查看各应用同步状态和同步版本,整体控制升级进度和风险,避免错改、避免漏改。

    莫小@1x

场景2:应用研发流程统一增加安全扫描卡点

组织内引入安全扫描能力,安全同学要求将安全扫描结果作为发布流程卡点,没有通过安全扫描的应用不允许发布。应用批量接入步骤如下:

  • 进入应用模板 > 研发流程配置,开启同步功能。

  • 编辑生产发布阶段流水线,增加安全扫描卡点组件。

    莫小@1x

  • 选择试点应用,进行配置同步,重新运行试点应用生产阶段发布流程,进行流程验证。

  • 试点应用流程验证 OK 后,再批量选择应用同步,批量推广。同步后,应用下次发布时,生产发布流程将经过「安全扫描卡点」,作为发布卡点。

    莫小@1x

以上介绍了如何通过应用模板管理和批量同步配置,实现高效的企业级管控。