草庐IT

【迁移上云】迁移上云基本流程

第十个灵魂 2024-07-12 原文

随着全球数字化转型的脚步加快,企业上云已是企业加速数字化转型的首选。企业可以通过上云推动业务创新,实现敏捷、灵活管理,降低运维成本,最终提高企业的发展动力和竞争力。

那么什么是“企业上云”?

企业上云是指企业通过网络,将企业的基础设施、管理及业务部署到云端,利用网络便捷地获取云服务商提供的计算、存储、软件、数据服务,以此提高资源配置效率、降低信息化建设成本、促进共享经济发展、加快新旧动能转换,构建互联网创新发展生态。

然而,迁移上云并非易事,这就需要有好的方法论和流程来规避迁移过程中可能产生的风险,保障迁移工作的质量,今天我们就来介绍一下企业迁移上云的基本流程。

阶段一:调研评估


1、上云咨询(可选项)
建议向云供应商或专业的迁移上云服务机构咨询。咨询内容包含(但不限于):云资源选型、云产品功能特性、问题/需求解决方案以及迁移服务流程等。

2、信息/需求梳理和收集
对迁移目标应用/服务现状信息进行全方面收集。包含(但不限于):服务器信息、技术选型版本、企业四大架构、部署拓扑等。以及借助迁移期望达成的其他目标。

3、整体分析
对梳理收集上来的信息进行整体分析评估,包含(但不限于):业务分析、应用分析、技术分析、数据分析、项目分析、调用关系、集成关系、技术提升改造需求、成本分析等。

4、风险问题评估
对迁移可能碰到的问题和风险进行评估。包含(但不限于):IP地址变更、特殊性依赖、网络环境、迁移时间成本及人工成本等。

5、迁移策略评估
根据各平台/服务/组件特点和实际需要综合评估分析选择上云策略。常见的策略有:重构应用、重新购买、重构平台、重新托管、保留不动、退役淘汰。

阶段二:规划设计


6、云上方案设计
方案设计包含:云产品选型及架构、组网、安全合规、高可用、伸缩、CICD、监控、灾备。

7、迁移方案设计
选择迁移工具、传输网络选型、迁移方案验证、迁移割接时序、迁移应急方案。

8、方案验证
针对问题场景,最小化部署应用,验证方案可行性,打消疑虑。

9、制定实施计划
针根据调研和规划的结果,与客户一起制定迁移实施计划。

10、制作操作手册
制作迁移操作手册。包含:操作步骤、注意事项、验证方法等。

阶段三:迁移实施


0、项目管理
进度/问题/风险管理,沟通、协调、推进、定期汇报。(也可贯穿迁移全过程始终)

11、实施研讨
正式实施前,对整体迁移方案、操作、计划时间表以及可能遇到的风险及应急预案的研讨。

12、云架构搭建
根据云上方案设计的云资源规格和数量,购买相应的云产品,并做安全及规范性的配置。

13、应用/服务迁移
按照规划设计阶段的云上方案及迁移方案,对应用或中间件进行迁移部署。

14、全方位验证
包含(单不限于):全部服务功能、安全配置、性能、业务验证及技术验证等。

15、数据迁移
根据规划阶段选择的迁移工具对结构化、非结构化、半结构化数据进行迁移同步。

16、流量割接
按照迁移计划,进行流量割接。

阶段四:迁移收尾


17、持续监控
对云资源负载情况以及系统运行稳定性进行持续监控。

18、清理收尾
清理过程配置信息、临时文件,释放临时资源。根据监控的结果进行优化调整。

19、知识收割
对迁移过程进行复盘,沉淀整理总结经验,团队分享,并将必要的文档进行编写沉淀。

20、持续优化
PDCA方法论,对云上环境持续监控,持续优化、持续改进。

本文迁移流程简称:4阶20步,是基于华为云4阶17步骤,结合实践经验改进而来。

有关【迁移上云】迁移上云基本流程的更多相关文章

  1. ruby-on-rails - Ruby on Rails 迁移,将表更改为 MyISAM - 2

    如何正确创建Rails迁移,以便将表更改为MySQL中的MyISAM?目前是InnoDB。运行原始执行语句会更改表,但它不会更新db/schema.rb,因此当在测试环境中重新创建表时,它会返回到InnoDB并且我的全文搜索失败。我如何着手更改/添加迁移,以便将现有表修改为MyISAM并更新schema.rb,以便我的数据库和相应的测试数据库得到相应更新? 最佳答案 我没有找到执行此操作的好方法。您可以像有人建议的那样更改您的schema.rb,然后运行:rakedb:schema:load,但是,这将覆盖您的数据。我的做法是(假设

  2. ruby - 使用 Vim Rails,您可以创建一个新的迁移文件并一次性打开它吗? - 2

    使用带有Rails插件的vim,您可以创建一个迁移文件,然后一次性打开该文件吗?textmate也可以这样吗? 最佳答案 你可以使用rails.vim然后做类似的事情::Rgeneratemigratonadd_foo_to_bar插件将打开迁移生成的文件,这正是您想要的。我不能代表textmate。 关于ruby-使用VimRails,您可以创建一个新的迁移文件并一次性打开它吗?,我们在StackOverflow上找到一个类似的问题: https://sta

  3. Unity 热更新技术 | (三) Lua语言基本介绍及下载安装 - 2

    ?博客主页:https://xiaoy.blog.csdn.net?本文由呆呆敲代码的小Y原创,首发于CSDN??学习专栏推荐:Unity系统学习专栏?游戏制作专栏推荐:游戏制作?Unity实战100例专栏推荐:Unity实战100例教程?欢迎点赞?收藏⭐留言?如有错误敬请指正!?未来很长,值得我们全力奔赴更美好的生活✨------------------❤️分割线❤️-------------------------

  4. 计算机毕业设计ssm+vue基本微信小程序的小学生兴趣延时班预约小程序 - 2

    项目介绍随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱小学生兴趣延时班预约小程序的设计与开发被用户普遍使用,为方便用户能够可以随时进行小学生兴趣延时班预约小程序的设计与开发的数据信息管理,特开发了小程序的设计与开发的管理系统。小学生兴趣延时班预约小程序的设计与开发的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与小学生兴趣延时班预约小程序的设计与开发的实际需求相结合,讨论了小学生兴趣延时班预约小程序的设计与开发的使用。开发环境开发说明:前端使用微信微信小程序开发工具:后端使用ssm:VU

  5. ruby-on-rails - 使用 HTTParty 的非常基本的 Rails 4.1 API 调用 - 2

    Rails相对较新。我正在尝试调用一个API,它应该向我返回一个唯一的URL。我的应用程序中捆绑了HTTParty。我已经创建了一个UniqueNumberController,并且我已经阅读了几个HTTParty指南,直到我想要什么,但也许我只是有点迷路,真的不知道该怎么做。基本上,我需要做的就是调用API,获取它返回的URL,然后将该URL插入到用户的数据库中。谁能给我指出正确的方向或与我分享一些代码? 最佳答案 假设API为JSON格式并返回如下数据:{"url":"http://example.com/unique-url"

  6. ruby-on-rails - 在现有数据库上进行 Rails 迁移 - 2

    我正在创建一个新的Rails3.1应用程序。我希望这个新应用程序重用现有数据库(由以前的Rails2应用程序创建)。我创建了新的应用程序定义模型,它重用了数据库中的一些现有数据。在开发和测试阶段,一切正常,因为它在干净的表数据库上运行,但是当尝试部署到生产环境时,我收到如下消息:PGError:ERROR:column"email"ofrelation"users"alreadyexists***[err::localhost]:ALTERTABLE"users"ADDCOLUMN"email"charactervarying(255)DEFAULT''NOTNULL但是我在迁移中有这

  7. ruby-on-rails - Rails 基本 Base64 身份验证 - 2

    我正在尝试复制此GETcurl请求:curl-D--XGET-H"Authorization:BasicdGVzdEB0YXByZXNlYXJjaC5jb206NGMzMTg2Mjg4YWUyM2ZkOTY2MWNiNWRmY2NlMTkzMGU="-H"Content-Type:application/json"http://staging.example.com/api/v1/campaigns在Ruby中,通过电子邮件+apikey生成身份验证:auth="Basic"+Base64::encode64("test@example.com:4c3186288ae23fd9661c

  8. ruby-on-rails - Rails 迁移中的 PostgreSQL 点类型 - 2

    我想使用PostgreSQL中的point类型。我已经完成了:railsgmodelTestpoint:point最终的迁移是:classCreateTests当我运行时:rakedb:migrate结果是:==CreateTests:migrating====================================================--create_table(:tests)rakeaborted!Anerrorhasoccurred,thisandalllatermigrationscanceled:undefinedmethod`point'for#/hom

  9. ruby-on-rails - Rails 3 : belongs_to, has_one 和迁移 - 2

    我是Rails的新手,我是从Django背景开始接触它的。我已经接受了这样一个事实,即模型和数据库模式在Rails和在线Django中是分开的。但是,我仍在努力处理迁移。我的问题很简单-如何使用迁移向模型添加关系?例如,我现在有Artist和Song作为ActiveRecord::Base子类的空模型,没有任何关系。我需要开始做这件事:classArtist但是我如何使用railsgmigrate更改架构以反射(reflect)这一点?我正在使用Rails3.1.3。 最佳答案 现在,在Rails4中,您可以:classAddPro

  10. ruby-on-rails - Rails 4 从迁移索引中删除迁移 ID - 2

    如何在rakedb:migrate:status中删除带有“**NOFILE**”的迁移ID列表?例如:StatusMigrationIDMigrationName--------------------------------------------------up20131017204224Createusersup20131218005823**********NOFILE**********up20131218011334**********NOFILE**********我不明白为什么当我自己手动删除它时它仍然保留旧的迁移文件,因为我正在研究迁移的工作原理。这是为了记录吗?但

随机推荐