当前位置: 首页 > news >正文

应用上云指导

应用上云指导方法论。
应用上云指传统应用迁移到云上,云上应用采用K8S部署。

本文旨在提供一种方法、流程,指导应用上云,以求优化上云工作,提供应用上云效率。

主要包含以下内容:

  1. 应用上云工作角色、分工

  1. 应用上云标准流程及每一阶段交付物

  1. 迁移上云重点说明

上云工作有以下几点基本思想:

  1. 划分角色,明确分工。确认工作边界,清晰每一块工作的负责人

  1. 结合标准流程每个阶段,输出高质量交付物。以共享传递资源与信息

  1. 尽可能减少各阶段各角色交互。通过标准交付物、工具进行有序的协作。

  1. 实行DevOps:

  1. 建立持续集成与持续交付

  1. 建立资源自助服务平台

  1. 自动化几乎所有操作,尽可能减少手动操作

  1. 开发、测试、生产环境尽可能相同。

角色与分工

上云工作主要角色可分为开发、测试、运维。

具体分工职责如下:

  1. 开发:主要负责应用相关,应用架构、改造,应用数据同步等。

  1. 测试:主要负责测试相关,功能测试、性能测试。

  1. 运维:主要负责基础支撑平台与资源相关,CICD平台、服务治理平台、资源服务平台、容量规划、资源交付。

  1. 应用架构需要开发与运维沟通协作,设计云上的应用架构与部署架构,使用合适的云组件与云产品。

  1. 应用上线需要开发与运维沟通协作,前期设计上上线方案,包括数据同步,灰度上线,全量切换等。

标准流程

  1. 应用调研

应用调研主要工作是调研应用现状。开发与运维主要参与。

主要工作与交付物:

  • 应用架构

  • 技术组件

  • 服务依赖

  • 资源容量

  1. 上云设计

上云设计主要工作是设计应用上云相关内容包括设计云上应用架构,设计改造方案,设计上线方案,规划云上资源容量。

主要工作与交付物:

  • 云上应用架构、组件架构、部署架构

  • 应用改造内容

  • 应用上线方案

  • 数据同步方案

  • 应用灰度方案

  • 应用切换方案

  • 云资源容量

  1. 上云实施

上云实施包含以下几部分

  • 实施计划

  • 应用改造

  • 资源交付

  • 应用测试

实施计划

制定详细的实施计划,细化到每部分的每一重要阶段。

应用改造

按照上云设计步骤中应用改造方案,对应用进行改造。

资源交付

资源交付需要分阶段,快速进行资源交付,包括资源本身,网络权限、白名单权限、访问权限、管理权限。

资源交付的同时提供 服务治理平台、资源服务平台等访问入口与权限。方便开发人员自助使用。

  • 开发环境资源交付

  • 测试环境资源交付

  • 生产环境资源交付

除了以上环境还有压测环境、预发布环境环境。考虑到资源限制与环境过多配置复杂,建议:

  1. 初始化三套环境 开发、测试、生产

  1. 开发环境有开发使用

  1. 测试环境由测试使用,完成功能测试

  1. 生产环境前期做为压测环境,进行性能测试,后期转为生产环境,同时可预留实例,作为预发布环境使用。

应用测试

应用功能测试主要包括功能测试与性能测试。

应用改造完成后,在云上测试环境进行功能测试。同时在上线前,在准生产环境进行性能测试,了解其性能水准,以及确认资源容量是否足够。

  1. 应用上线

依照上云设计中应用上线设计:

  • 应用数据同步

  • 应用灰度发布

  • 应用全量切换

数据同步可由开发执行,执行后收回对应权限。

灰度发布与全量切换,需开发与运维相互配合,安全的进行应用上线操作。尽可能做到无损切换。同时需做好回滚方案。

重点说明

以下迁移上云过程中遇到的重点与难点:

  1. 网络访问权限开通与资源访问白名单开通

提前整理好网络访问权限、资源访问白名单需求,使用云服务提供商的工具或服务来自动化交付该需求。

  1. 性能压测与性能优化

结合场景需求、历史经验与性能压测,调优应用当前重要参数,以达到性能最优状态。

  1. 应用构建与配置

采用标准的方式管理应用依赖,对应用进行编译、构建,形成不可变基础设施。

区别不同环境的配置,统一集中管理,避免配置管理的复杂性。

  1. 应用发布管理与应用跨云平台管理

在持续集成的基础上,使用应用发布工具,标准化应用发布,提高应用交付效率与质量。

同时统一采用容器编排与容器标准,以实现应用跨云平台管理。

  1. 迁移过程中保证数据完整性与业务连续性

在上云设计中,详细设计应用数据同步方案与应用灰度发布、全量切换方案,以保证数据完整性与业务连续性。

灰度发布与全量切换方案应尽可能做到对服务无损。

以上说明仅为指导性说明,涉及工作、资源、平台较多,实践中通过不断建设与完善标准、流程、工具以达到高效率高质量迁移上云。

总结

应用迁移上云围绕:

  1. 应用调研

  1. 上云设计

  1. 上云实施

  1. 应用上线

四个流程展开。

开发、运维与测试分别主要负责应用、资源、测试等工作。

在上云迁移过程中遇到很多难点重点问题,通过不断的实践,改进方法、流程和工具,从而提升迁移的效率与质量。

参考

云采用框架 CAF

http://www.lryc.cn/news/31006.html

相关文章:

  • 进程概念~
  • 三天吃透Java基础八股文
  • YOLOv8训练自己的数据集(超详细)
  • 【洛谷 P1088】[NOIP2004 普及组] 火星人 题解(全排列+向量)
  • 基于混合蛙跳算法优化SVM的滚动轴承故障诊断python实现
  • 如何让AI帮你干活-娱乐(2)
  • 文件异步多备常用方案
  • java面试八股文之------Redis夺命连环25问
  • 【数据结构】AVL平衡二叉树底层原理以及二叉树的演进之多叉树
  • K8S篇-安装nfs插件
  • xmu 离散数学 卢杨班作业详解【4-7章】
  • 多重背包问题中的二进制状态压缩
  • 汇编语言程序设计(四)之汇编指令
  • Vant2 源码分析之 vant-sticky
  • 【自然语言处理】【大模型】大语言模型BLOOM推理工具测试
  • 云桌面技术初识:VDI,IDV,VOI,RDS
  • 基于本地centos构建gdal2.4.4镜像
  • 生产环境线程问题排查
  • Day908.joinsnljdist和group问题和备库自增主键问题 -MySQL实战
  • 算法 - 剑指Offer 丑数
  • 【ONE·C || 文件操作】
  • cmd窗口中java命令报错。错误:找不到或无法加载主类 java的jdk安装过程中踩过的坑
  • Breathwork(呼吸练习)
  • taobao.itemprops.get( 获取标准商品类目属性 )
  • QT配置安卓环境(保姆级教程)
  • 【uni-app教程】八、UniAPP Vuex 状态管理
  • 同花顺测试面经(30min)
  • C++-简述#ifdef、#else、#endif和#ifndef的作用
  • VictoriaMetrics 集群部署
  • 【基于感知损失的无监督泛锐化】