商派DevOps自动化平台在公有云项目部署中的实践

简介: 本篇内容我们主要介绍DevOps自动化平台在我们客户公有云部署项目中的一些实践。后续会继续介绍我们是怎么和项目管理工具结合、我们自有SAAS产品的一些实践。

文:商派DevOps团队


  • 前言
    在最初我们使用使用开源工具自建 DevOps,项目管理、代码管理、持续集成、代码扫描等都是各自系统,账号数据都是独立,维护和使用过程复杂,所以我们自己建设了DevOps自动化平台来统一管理使用。
    并且我们通过页面化的配置过程,来降低开发人员对容器和Kubernetes的技能要求,让所有人都可以通过我们的平台来快速的部署上线一个项目。
    本次我们主要介绍DevOps自动化平台在我们公司公有部署项目中的一些实践。后续会继续介绍我们是怎么和项目管理工具结合、我们自有SAAS产品的一些实践。


1. 提高部署效率,规范部署流程


flow.png


  • 资源申请
    DevOps自动化平台提供在线的资源申请,免去了过去种种申请资源的复杂流程。
    在线即可申请 Kubernetes资源、域名资源、RDS、Redis等云服务资源。
  • 可视化的发布配置
    如果我们直接使用Kubernetes进行部署,那么需要我们研发人员配置复杂的Yaml文件。
    现在提供可视化的配置,包括部署的应用、版本、所需资源、副本数量、配置文件等,都可以在DevOps自动化平台上配置。
    而像Kubernetes服务的存活检查、健康检查、优雅上下线、扩所容策略等,也都可以通过可视化配置,并且提供默认模版。研发人员无需再去研究复杂的配置项,即可完成服务的配置。
    完成配置后,即可一键触发构建流程,进行完整的持续集成、发布过程。
  • 审批流程
    通过设置上线审批流程来代替之前的邮件确认or口头确认,真正做到上线过程管控:谁负责,谁审批。审批通知通过钉钉推送消息至对应节点负责人,依次审批通过后开始构建部署流程。

sp.jpg

  • 过程同步
    构建部署过程实时同步。通过钉钉机器人发送通知,让所有团队成员同步知晓上线状态。避免出现信息差。

notice.jpg


2. 便捷的服务管理


  • 更方便的扩容
    在传统部署场景,面对突发流量时的扩容,是非常困难且不可靠的。得益于容器化和Kubernetes本身对于自动化扩缩容的支持,我们可以方便的配置自动化扩容策略,实现自动化扩容。而对于不适用自动化扩容的场景或者客户,我们也可以在DevOps自动化平台一键式扩容,大大提高了应对突发流量的效率和能力。

auto.jpg

  • 快速回滚
    通过DevOps自动化平台部署的应用,会保留最近几次的版本记录,可以做到一键回滚代码和配置。方便出现问题后快速恢复。

version.jpg

  • 日志
    对于公有云部署的应用,我们通过Filebeat把应用日志实时收集到Elasticsearch中,,同时在DevOps自动化平台也集成了日志查询权限管控,应用对应的研发人员可以很方便的查找日志,排查定位问题。


3. 总结


diff.png


  • 提高效率降低成本
    使用DevOps自动化平台后,我们将上线发布的人员从运维转移到研发,研发人员独立完成项目上线部署.
    同时不用多个作业系统来回切换操作,在同一平台即可完成所有上线过程。
  • 规范化作业流程
    统一了资源申请流程,简化了资源申请操作过程
    增加了审批流操作,避免无授权的上线操作
相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
12月前
|
弹性计算 Devops Shell
用阿里云 DevOps Flow 实现 ECS 部署自动化:从准备到落地的完整指南
阿里云 DevOps Flow 是一款助力开发者实现自动化部署的高效工具,支持代码流水线构建、测试与部署至ECS实例,显著提升交付效率与稳定性。本文详解如何通过 Flow 自动部署 Bash 脚本至 ECS,涵盖环境准备、流水线搭建、源码接入、部署流程设计及结果验证,助你快速上手云上自动化运维。
935 0
|
传感器 人工智能 监控
通义灵码智能体模式在企业级开发中的应用:以云效DevOps自动化流程为例
通义灵码智能体模式具备语义理解、任务闭环与环境感知能力,结合云效DevOps实现CI/CD异常修复、测试覆盖与配置合规检查,大幅提升研发效率与质量。
579 0
|
11月前
|
API 调度 虚拟化
VMware Cloud Foundation Automation 9.0.1.0 发布 - 私有云自动化平台
VMware Cloud Foundation Automation 9.0.1.0 发布 - 私有云自动化平台
446 3
VMware Cloud Foundation Automation 9.0.1.0 发布 - 私有云自动化平台
|
12月前
|
人工智能 安全 Devops
AI 驱动的 DevOps:通过智能命令执行实现基础设施自动化
本文探讨了如何利用能够根据自然语言提示执行命令、管理基础设施和自动部署的 AI 技术,来革新 DevOps 流程。通过模型上下文协议(MCP),AI 助手不仅能回答问题,还能直接操作终端、编辑文件并管理开发环境,从而简化复杂的 DevOps 任务,提高效率并降低错误率。
842 3
|
人工智能 搜索推荐 测试技术
通义灵码 Agent+MCP:打造自动化菜品推荐平台,从需求到部署实现全流程创新
通过通义灵码编程智能体模式和 MCP 的集成,开发者可以高效构建在线菜品推荐网站。智能体模式大幅提升了开发效率,MCP 服务则为功能扩展提供了无限可能。
|
存储 人工智能 Kubernetes
VMware Cloud Foundation Automation 9.0 发布 - 私有云自动化平台
VMware Cloud Foundation Automation 9.0 发布 - 私有云自动化平台
252 0
|
敏捷开发 缓存 前端开发
阿里云云效产品使用合集之前端打包时npm安装卡住一般是什么导致的
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
敏捷开发 弹性计算 持续交付
阿里云云效产品使用合集之同一个主机部署是否支持下载多个制品
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
敏捷开发 监控 Java
阿里云云效产品使用合集之Codeup WebIDE环境下,如何使用通义灵码
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
敏捷开发 测试技术 持续交付
阿里云云效产品使用合集之如何进行大文件的迁移
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。