专栏首页海云捷迅的专栏AWCMP实现云应用全生命周期管理
原创

AWCMP实现云应用全生命周期管理

云应用生命周期管理是整个云平台的核心业务,以“应用商店”为核心,实现快速的应用开发和应用分发,实现整个云应用生命周期的管理和运营。通过对虚拟机、容器和物理机以预先定义好的脚本进行编排管理,云应用可以以多实例的方式交付,每个云应用的租户单独使用一套完整的云应用。虚拟机支持KVM、Hyper-V等异构虚拟化技术。

云应用生命周期管理主要包含如下模块:

  • 云应用模板定义:应用模板语言来编写整个应用的部署架构、各组件及虚拟机之前的编排关系等信息。
  • 云应用产品定义与发布:将开发好的云应用上传到应用商店,进行定价和发布。
  • 云应用交付:用户购买云应用后,使用编排的方式快速交付应用。
  • 云应用监控:可以监控云应用的使用情况和图形展示。

根据我们的业务规划,整个云应用生命周期管理其实为了解决三个问题:

  • 如何构建适应云平台应用开发的DevOps流程。
  • 在应用开发的各个阶段如何与云平台进行整合对接。
  • 开发测试完成的交付物如何由云平台统一管理使用。

下面我们试着说明AWCMP是如何解决这几个问题的。

上面提到的三个问题完整的涵盖了云应用的全生命周期。AWCMP的多个服务门户和平台也正是为云应用生命周期服务的。概括起来就是两个平台、两个门户、四类角色。

开发者:应用的生产者,申请IAAS资源、申请PAAS资源,进行应用开发,CI/CD,最终将正式应用打包提交给运维管理员审核。

运维管理员:对开发者发布的应用进行审核、对运营退回的应用进行进一步的退回。

产品经理:对产品进行封装、定价。提交上架审核。

运营管理员:对商品进行审核上架、下架。

图 1-1

通过使用GitLab、Jenkins、NPM、maven、packer、Murano等开源技术实现整个云平台的DevOps流程。整个流程分为源码拉取、源码构建、构建镜像、部署环境、自动化测试、环境清理等任务,利用Jenkins将这些任务串联成pipeline。Jenkins赋予了任务编排的能力,通过自定义不同的任务可以完成整个DevOps流程,通过Jenkins抓取任务的执行日志,可以查看每个任务的执行情况。图1-2所示是一个典型的DevOps流程。

开发人员提交代码到GitLab后,自动触发代码的拉取任务,源码拉取后继续利用Maven进行后端程序构建输出后端程序包,利用NPM进行前端构建输出前端程序包,源码构建完毕后将程序包上传到下载服务器。

packer使用预定义脚本拉取程序包后进行镜像构建,构建完毕后输出镜像到指定位置。

Murano使用PL语言自定义脚本并结合上一个任务中输出的镜像进行环境部署,环境部署完毕后结合自动化测试工具对应用进行自动化测试。

最后,可以选择清理以上环境。有时仅仅为了验证整个DevOps流程,并不实际使用环境,此时可以选择在上述过程成功后清理环境。

图 1-2

AWCMP通过结合Jenkins的pipeline,解决了“如何构建适应云平台应用开发的DevOps流程”的问题。通过开发者门户的资源管理模块,开发前申请资源;通过开发者门户的持续集成模块,在开发过程中CI/CD;通过开发者门户的应用包管理在开发、测试完成后将应用打包发布,从而解决了“在应用开发的各个阶段如何与云平台进行整合对接”的问题。通过贯穿两平台、两门户的完整流程,解决了“开发测试完成的交付物如何由云平台统一管理使用”的问题。进一步来说,AWCMP真正的实现了云应用的全生命周期管理。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • CNTV 媒体融合云 创业界新生态

    时至今日,技术创新也成为媒体发展的核心动力,并促使着媒体行业向泛媒体时代变革。CNTV 作为行业中的佼佼者,与时俱进,其第二批媒体融合云项目正式开启!

    海云捷迅
  • 分布式存储系统纠删码技术分享

    海云捷迅云课堂专题,旨在秉承开源理念,为大家提供OpenStack技术原理与实践经验,该专题文章均由海云捷迅工程师理论与实践相结合总结而成,如大家有其他想要了解...

    海云捷迅
  • AWCloud自主可控云平台 加速IT基础设施国产化进程

    全球掀起信息化浪潮,世界各国都将推进经济数字化作为实现创新发展的新动能。在复杂多变的时代环境下,随着中国国家政策与全球技术变革带来新的历史性机遇,让第三波国产化...

    海云捷迅
  • 运营app,第一步要做什么?【从0开始运营APP之①】

    无论是大公司还是小企业,从0开始推广一个APP,都要经历一个创业过程——时刻面临人少、缺资源,“无推广预算”的窘境。腾讯云分析从这个月开始,将推出【从0开始运...

    腾讯大数据
  • 可能是你见过的最完善的微前端解决方案

    技术栈无关:主框架不限制接入应用的技术栈,子应用具备完全自主权 独立开发、独立部署:子应用仓库独立,前后端可独立开发,部署完成后主框架自动完成同步更新 独立运行...

    用户4962466
  • 全网首发:逐一解读云原生应用开发“12-Factors”

    作者自序: 12原则的提出已有五年之久,可惜业界一直缺乏一篇对其进行简明解读的指导性文章,所以我决定写这样一篇文章。在微服务模式的大背景下,力求对12原则的来龙...

    yuanyi928
  • 谷歌更新 Play 应用市场开发者审查政策 明确禁止挖矿应用上架

    谷歌今日对旗下 Play Store 应用市场的开发者政策进行了更新,禁止了更多种类的应用发行上架,包括进行加密币挖矿、包含“破坏性”广告等应用,但通过远程控制...

    周俊辉
  • 通过Rainbond实现企业应用远程安装和升级

    在企业选定Rainbond作为生产交付平台后,如何将开发好的应用交付到最终用户的生产环境中去,就变成了一个非常重要的课题。本文通过实际的测试流程,讲解了如何通过...

    Rainbond开源
  • 2017年度盘点丨基础架构演化:从“以资源为中心”到“以应用为中心”的迁移...

    谈到基础架构,不同的人有不同的理解。一般说来,我们将支撑应用研发部署的底层软硬件的集合叫做基础架构。它不仅涉及到IDC、机房、机架、网络、主机、存储等硬件资源,...

    钱曙光
  • 2017年度盘点丨基础架构演化:从“以资源为中心”到“以应用为中心”的迁移

    作者:刘建,搜狗架构师,商业平台基础平台负责人,十多年Java相关研发经验,在互联网软件体系结构、分布式计算、面向服务体系结构、用户身份安全等方面有浓厚的兴趣及...

    CSDN技术头条

扫码关注云+社区

领取腾讯云代金券