热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

我的一点企业上云经验

作者按:日前,工信部印发《推动企业上云实施指南(2018—2020年)》,其中指出:到2020年,力争实现企业上云环境进一步优化,行业企业上云意识和积极性明显提高,上云比例和应用深度显著提升,云计算在

作者按:日前,工信部印发《推动企业上云实施指南(2018—2020年)》,其中指出:到2020年,力争实现企业上云环境进一步优化,行业企业上云意识和积极性明显提高,上云比例和应用深度显著提升,云计算在企业生产、经营、管理中的应用广泛普及,全国新增上云企业100万家,形成典型标杆应用案例100个以上,形成一批有影响力、带动力的云平台和企业上云体验中心。统计数字表明,当前传统企业用户“上云”的比例仅为20%,仍有高达70%以上的传统企业没有“上云”。本文是作者在HH集团作为企业上云项目技术负责人在项目完成后,对这次企业上云历程的一些总结以及思考。

当下,一场以IT技术为主角的科技革命浪潮正风起云涌。云计算、大数据、人工智能、物联网、区块链等新技术正加速应用落地。在这些新技术当中,云计算作为基础设施,它是这场科技革命的承载平台,全面支撑着各类新技术和新应用。伴随着这波浪潮的发展,数字经济已经成为发展趋势,各企业都在进行或准备进行数字化转型,而上云则是企业数字化转型的起点。 

什么是企业上云?

简而言之,『企业上云』就是把企业的一切迁到云上,其主要内容包括下图中的四大类:

 

  • 基础设施上云是指将企业原有IT基础设施转变或迁移到云基础设施上,主要是把计算、存储、网络、安全防护、办公桌面等资源池放到云基础设施之中。
  • 业务应用上云 是指推动企业办公、管理、服务等应用上云,快速提升企业数字化、网络化水平。
  • 平台系统上云是指推动企业加快数据驱动进程,利用各种云平台系统,比如云数据库系统、物联网平台、区块链平台、大数据平台等,全面提升企业数字化、网络化、智能化能力和水平。
  • 数据协同创新是指推动企业内部、企业之间业务数据在云上流动与共享,通过大数据挖掘、AI技术,实现企业运营管理的优化、企业之间的协同创新、商业模式创新等。 

“企业上云”是一个系统工程,它的步骤主要分为上云前的规划、设计,上云的实施以及上云后的验证和维护。具体“企业上云”流程如下:

 

总而言之,企业上云,是企业顺应数字经济发展潮流,加快数字化、网络化、智能化转型,提高创新能力、业务实力和发展水平的重要路径。

企业为什么要上云?

企业上云是企业实现数字化转型的第一步,它会给企业带来多种好处,主要提现在以下几个方面:

  • 加速企业IT设施发展。企业上云有利于更好地促进各类信息技术在企业中的普及应用,从而加速企业IT基础设施更新发展。
  • 降低总体IT成本。企业无需投入购买大量硬件和软件费用,减少人员成本,降低运维费用。
  • 提升系统稳定性。应用系统不需要关注底层基础设施运维,云平台提供专业的运维能力。
  • 以云平台为基础,通过信息流带动技术流、资金流、人才流、物资流,可以有效整合优化设计、生产和市场资源,实现产业链上下游的高效对接与协同创新,重塑生产组织方式和创新机制。云平台有助于实现数据集中,企业可以存储更多数据,方便数据共享,让沉积的数据产生价值。
  • 提升应用开发部署敏捷性。云平台能促进软件架构复用,架构和开发技术栈统一,提高研发效率,加快应用部署,缩短业务开发周期。帮助企业减少了时间与成本,方便他们更加专注于自身业务的拓展。 

HH集团上云之旅

搭建两地三中心基础云平台

YJ云团队利用一年左右时间,在HH集团分布在BJ和HK的三个数据中心内从零上线了一套新基础云平台。它具有以下几个特点:

  • 在多种开源技术基础之上进行二次开发,包括OpenStack,Kubernetes,Ceph等,稳定,安全,自主可控。
  • 满足双态IT需求,支持云物理机、云虚拟机、容器。
  • 满足数据库应用需求,支持KVM和ESXi虚拟化技术。
  • 采用分布式存储和集中式存储混合技术,充分满足各种不同存储需求。
  • 利用统一云管理平台管理多个云环境,与集团IAM对接,单点登录,对用户友好。

 

制定企业上云总体目标

2017年下半年,HH集团下发了集团全部企业云化总体目标,即到2018年6月30日前,实现HH集团两地三中心运营的系统全面云化。除明确无法云化系统外,其余系统必须全部云化。总体云化比率不低于80%。

 

建立专门组织机构

YJ科技股份有限公司(以下简称『YJ科技』)是HH集团旗下的数字化基础设施运营和智慧型信息服务商,它是HH集团上云任务的组织和实施单位。为了实施企业上云项目,YJ科技建立了专门的组织机构,如下图所示:

 

  • 领导组:领导并负责整个项目,包括一名业务负责人和一名技术负责人。我作为技术负责人参与到领导组。
  • 系统摸排组:负责全部待迁移系统的摸排,包括信息收集、整理、统计等。
  • 工具研发组:负责迁移工具研发、方案验证、方案文档写作等。
  • 应用迁移组:负责应用环境的迁移,从方案沟通、确定、实际迁移、测试、交付等所有环节。
  • 数据库迁移组:负责数据库环境的迁移,从方案沟通、确定、实际迁移、测试、交付等所有环节。

『自顶向下』跨集团成员单位沟通协调

因涉及到众多集团成员单位,因此充分的沟通至关重要,这甚至决定项目成败。总体上,我们采用了『自顶向下』沟通策略。在集团文件的指引下,公司领导亲自与各业务单位IT负责人直接沟通,在达成原则一致后,再由具体工作组负责实际工作。

摸排业务系统

对当前不在云上的所有业务系统进行摸排梳理,分类归纳整理。部分系统示例如下表:

每个业务系统需收集的重点信息包括:系统名称、业务单位、托管方式、机器类型(虚拟机|物理机)、系统IP、机器IP、系统级别、操作系统、应用类型、IP能否变更、是否有开发商支持、当前所用资源、建议的云上所需资源、变更窗口、是否依赖特定外部设备等。

待迁移业务系统云化评估

针对所有收集到的业务系统,进行云化评估,主要包括:

  • 能否云化:我们列出了常用的不可云化情形。主要包括:
    • 应用方面:应用厂商或业务单位明确表示其应用系统不支持虚拟化发布的; 
    • 硬件方面:非X86平台系统(如小型机),或依赖特殊的外设(EVDO卡,特殊的语音板卡、专业图形显卡、加密卡等)或专用设备(排队机、LNS设备、工控机、图形工作站等)的硬件系统;
    • 网络方面:独立于集团三大数据中心及云平台网络环境架构的需求;
    • 技术方面:对性能有特殊要求的应用、并与云平台沟通确认无法满足的;
    • 操作系统方面:操作系统不支持虚拟化(如UNIX系统);
    • 监管方面:根据相关监管制度要求,不适用集团提供的虚拟化发布服务的应用;
    • 专用系统:比如集团Active Directory 系统、邮件系统、视频会议系统等,因为牵扯面非常广,因此暂缓上云。
    • 其它特定情况
  • 云化方式评估:根据系统情况,初步确定云化迁移方式,在新建迁移、克隆迁移、双活迁移三种迁移方案中选择最合适的一种。其主要目的是为了和业务系统用户进行沟通,并且评估迁移工作量。
  • 云化所需资源评估:包括CPU、内存、网络、存储等资源。其主要目的是评估迁移所需资源,做好设备补充计划。

制定项目计划

综合考虑总体目标、系统摸排结果、云化评估结果,与成员单位沟通结果、研发对迁移工作量的评估结果、能投入的人力资源、可用的云资源、设备采购周期等多种因素,制定总体项目计划。

 

研发迁移方案

针对待迁移应用系统情况,我们制定了三种云化迁移方案,分别是新建迁移、克隆迁移和双活迁移。

  • 新建迁移:对能够重新搭建的业务系统,采用新建迁移方式,在云平台上重新搭建一套业务系统。在新系统运行后,将原有系统下线。

 

  • 克隆迁移:该方案首先将业务系统所在的原有物理机或虚拟机的系统,通过P2V V2V 工具转换为云镜像,转换完成后拷贝至云平台,然后再基于该镜像创建新虚拟机。

 

  • 双活迁移:针对无法停机的业务系统,我们知道制定了双活迁移方案。业务系统流量在迁移期间由新旧两套系统支撑,并逐步切换到新系统上,最后在将老系统下线。

 

针对数据库系统迁移,需要考虑到Oracle、SQLServer 和 MySQL 等数据库类型及其版本。以Oracle 为例,数据库迁移小组准备了以下迁移方案:

 

针对集团存储现状,制定了存储优化方案,以构建『分布式存储+集中式存储』混合存储方案为目标。如下图所示:

 

研发迁移工具

我们针对各种系统需求,研发了多种迁移工具。例如,基于 VMware Converter 研发物理机系统到虚拟机镜像转换工具。 

 

实施系统上云

应用迁移组和数据库迁移组负责系统上云迁移实施。以某重要OA系统为例,它是集团所有员工日常使用的办公系统,使用人数多,重要性高,不可停机。下图是其迁移过程示意图:

 

这里面有很关键的几点:

  • 做实施的同学得给力,既要有技术能力,还要有沟通能力。有些业务系统的迁移只能在半夜进行,所以过程往往很辛苦。 
  • 要主动解决发现的任何问题,必要的时候需要寻求研发团队支持。
  • 沟通协调很关键,包括应用迁移组和数据库迁移组之间的沟通,与业务单位之间的沟通,与研发组之间的沟通等。

经验总结

需要一个合适的云平台

要根据企业现状、需求以及将来发展要求,选择一个合适的云平台。至少需要考虑如下几点:

  • 在公有云、私有云还是混合云等多种云部署模式之间做出合理选择。
  • 确定云平台地域分布,是单区域、国内多区域,还是全球分布。
  • 技术选型。私有云的话,最好基于开源技术,做到自主可控。在计算、存储、网络、中间件服务等主要方向,要经过充分认证和测试。
  • 支持双态IT需求。既要满足传统稳态业务需求,又能满足新型敏态业务需求。
  • 可操作性和可维护性好,简单易用,安全性高。 

一个参考的云平台架构如下图所示:

 

需要一个合适的云服务商

一个有技术、有产品、懂业务、有经验的云服务商,能使企业的上云之路更加平坦。企业在选择云服务供应商时从以下几个方面考量:

  • 客户至上:将客户利益放在第一位。
  • 懂业务:既了解企业/行业的业务诉求,又懂企业传统IT应用,能帮助企业实现面向未来的升级。
  • 有能力:有足够的能力来确保企业的业务能够在云端安全运行。有强大的本地服务能力和线下支持团队,能够在漫长的云化过程中时刻快速响应企业的各项需求,以及提供应用上云评估、方案和工具研发与测试、迁移、运营维护等全流程服务。
  • 有经验:具有企业上云规划、实施、后期维护等方面的丰富经验。

需多个相关技术团队参与

企业上云不只是运维团队和迁移团队的事情。

  • 需要研发团队参与,负责研发上云方案和所需工具。需要综合考虑企业上云需求、成本、商务、团队、风险等多种因素,制定最合适的迁移方案,以及高效易用的迁移工具。研发成果要系统化、文档化、自动化。
  • 还需要业务系统运维甚至研发团队的充分参与。要利用业务迁移过程,充分利用云上各种服务和其它资源,在云上构建优化了的部署架构,根据需求实现不同级别的高可用架构。

需充分评估上云方案和工具研发

企业上云需要全面的解决方案和各种工具。要根据业务系统需求,选择最合理的迁移方案,比如新建迁移、克隆迁移、双活迁移等。要有完整的迁移工具,包括应用迁移工具、数据库迁移工具、存储迁移工具等。这些工具还需满足诸如操作系统(包括操作系统和版本)、系统配置(比如支持LVM 卷)、系统启动方式(比如BIOS 和 UEFI)等需求。

要在开始系统迁移之前,对方案和工具进行充分测试。开始正式迁移后,还要首先进行低优先级系统迁移,对这些方案和工具进行再次验证,然后再按需优化。

需稳妥有序推进

企业上云不能一撮而就,而应该有序稳妥推进。

  • 有序推进上云流程各环节。该流程包括需求分析、可行性评估、选择确定云平台服务商、上云方案设计、测试和部署、验证和总结、运维保障、效果评估等步骤。企业可结合自身实际选择合适步骤,适当简化流程,有序实施上云。
  • 合理规划业务系统上云顺序。优先级较低、影响面较小、架构较简单的系统第一批上云;优先级高、影响面大、架构复杂的系统最后一批上云。
  • 采用敏捷项目流程。以每个阶段为一个迭代周期,在每个周期完成后及时总结经验教训,为后续周期的工作提供指导。要根据情况,不断优化方案和工具,培养和锻炼队伍,确保云上系统良好地运行。

需充分考量安全要求

企业上云必须有充分的安全考量。将业务迁移至云端,企业可能会面临安全问题。云服务商需根据企业用户业务及系统数据特点,对整体系统的安全架构进行设计,将 DDoS 攻击、安全入侵、数据泄漏等安全风险降至最低。业务系统在云上的部署架构,要经过安全团队的检视,上线后要加强安全监控,及时发现和处理可能出现的各种问题。

需综合考虑技术、成本、团队、商务等多种因素

企业上云不能单单考虑技术因素。企业上云涉及面广,需要考虑多种因素,其中很多是非技术因素。

  • 技术因素:要根据企业各业务系统的现状和需求,进行合理的技术选型。要充分利用开源或免费的现存工具,然后进行充分测试,按需二次开发。方案和工具要做到自动化、使用文档化、功能覆盖全面、操作简单高效。
  • 团队因素:很多系统迁移只能在晚上进行,因此合理迁移实施安全团队资源非常关键。需要协调好迁移研发、应用迁移、数据库迁移、业务系统运维、业务系统研发等团队的资源。
  • 商务因素:企业上云涉及多种商务因素。比如原有老旧物理服务器、虚拟化平台、云平台的资产如何处置;新云平台上针对迁移过来的系统如何收费,如何控制用户费用没有明显增长;如果需要购买新资源的话,如何说服用户进行投入等。
  • 成本因素:要严格控制迁移成本和业务系统运行成本。云平台团队要做好资源需求预估,提前开始采购流程,确保按时扩容云平台。

企业上云和云团队培养相结合

对很多企业特别是传统企业来说,要在短事件内打造一只成熟的功能完整的云团队往往非常困难。但是,对云平台和业务上云做到自主可控,又是很多企业的重要需求之一。因此,可以把两者充分结合。

  • 在初期,可充分利用外部云服务商的技术、产品和服务,快速构建云IT架构。同时,开始组件企业自己的云团队,让团队成员与外部云服务商人员一起工作,接受培训,参与实战,得到学习和锻炼。因此,选择开放开源的云产品,往往是一个通常的选择。这些产品技术资料丰富,代码可直接获取,而且人员招聘相对容易,学习门槛不是非常高。
  • 在中期,企业自己的云团队可介入日常运维,甚至部分新功能研发。通过实战,继续锻炼队伍;同时查缺补漏,继续补充队伍。
  • 在后期,企业自己的云团队可以自行开展云相关工作,必要时再从外部获取资源。此时,基本上可以实现自主可控了。

上云只是起点,不是终点

上云只是起点,而不是终点。企业实现云转型通常需要经过云IT(信息技术)、云 DT(数据技术) 和云 DI(数据智能) 三个阶段。

  • 在云IT创建期,如水电煤一样,云即新商业基础设施,在企业内部用云计算替换传统 IT 资源。
  • DT 运营期:在原有产业链范围内利用云 DT技术运营数据中台。
  • DI 创新期:在多个产业范围内利用云DI数据智能技术开发智能商业,有多个智能产业平台组成跨行业的数字经济体。

 

上云助力传统企业数字化转型

企业数字化转型是一个系统性工程。如下图所示,从底往上,分别是IT模式转型、应用模式转型和迁移、组织模式转型和业务模式转型。该层次也往往是发生的先后顺序,同时也互为依赖条件。

作为第一步,企业传统IT模式需要转型到基础云模式,这也是企业上云的第一阶段。传统IT模式往往采用虚拟化技术,以物理机和商业虚拟机提供计算资源;以商业SAN存储提供存储资源。在虚拟化平台之上,运行着各种单体应用,这些应用往往采用Oracle、SQL Server 等大型商业数据库。相对地,新型基础云IT模式,采用基础云平台和大数据平台,以开源虚拟机为主,辅以商业虚拟机;以分布式存储为主,辅以SAN存储;开源数据库与商业数据库相结合;传统单体应用和新的云应用并存。进一步发展到的云原生IT模式中,以容器云平台、AI平台、大数据平台为支撑平台,以容器为应用载体,以DevOps为应用开发模式。

伴随着IT模式和应用模式的演进,企业会需要进行应用迁移和数据迁移,以及应用开发模式的革新。与此同时,企业的组织模式也需从传统多层次打团队模式,向互联网扁平化模式转型。

通过这一系列深层次的IT和组织架构转型,企业的业务就具备了从传统业务模式向数字化业务模式转型的基础。

 

 

谢谢阅读,欢迎关注我的个人公众号:

 


推荐阅读
  • 华硕TUF B360M-PLUS主板兼容Win7及安装指南
    本文详细介绍了如何在华硕TUF B360M-PLUS主板上安装Windows 7操作系统,包括必要的准备工作和具体的操作步骤。 ... [详细]
  • 本周三大青年学术分享会即将开启
    由雷锋网旗下的AI研习社主办,旨在促进AI领域的知识共享和技术交流。通过邀请来自学术界和工业界的专家进行在线分享,活动致力于搭建一个连接理论与实践的平台。 ... [详细]
  • 本文将深入探讨 Unreal Engine 4 (UE4) 中的距离场技术,包括其原理、实现细节以及在渲染中的应用。距离场技术在现代游戏引擎中用于提高光照和阴影的效果,尤其是在处理复杂几何形状时。文章将结合具体代码示例,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 默认情况下,Java 的克隆机制是浅克隆,即仅复制对象本身而不复制其内部引用的对象。本文将详细介绍如何通过深度克隆来确保对象及其内部引用的对象都能被正确复制。 ... [详细]
  • 微软等企业捐赠首批AI有声读物,助力视障人士
    12月2日,微软联合鹿音苑文化传播公司及150多名志愿者,共同捐赠了首批由人工智能生成的有声内容,旨在为视障人士提供更多文化资源。 ... [详细]
  • 为了帮助商家更好地应对双十一高峰,阿里店小蜜推出了一系列智能辅助功能,助力提升客服效率。 ... [详细]
  • 深入解析RelativeLayout、LinearLayout与FrameLayout的性能差异
    本文详细分析了FrameLayout和LinearLayout的性能对比,通过具体的测量数据和源码解析,探讨了不同布局在不同场景下的性能表现。 ... [详细]
  • PHP函数的工作原理与性能分析
    在编程语言中,函数是最基本的组成单元。本文将探讨PHP函数的特点、调用机制以及性能表现,并通过实际测试给出优化建议。 ... [详细]
  • Redis 是一个高性能的开源键值存储系统,支持多种数据结构。本文将详细介绍 Redis 中的六种底层数据结构及其在对象系统中的应用,包括字符串对象、列表对象、哈希对象、集合对象和有序集合对象。通过12张图解,帮助读者全面理解 Redis 的数据结构和对象系统。 ... [详细]
  • 开发笔记:树的浅析与实现 ... [详细]
  • 自动驾驶中的9种传感器融合算法
    来源丨AI修炼之路在自动驾驶汽车中,传感器融合是融合来自多个传感器数据的过程。该步骤在机器人技术中是强制性的,因为它提供了更高的可靠性、冗余性以及最终的 ... [详细]
  • LeetCode 实战:寻找三数之和为零的组合
    给定一个包含 n 个整数的数组,判断该数组中是否存在三个元素 a、b、c,使得 a + b + c = 0。找出所有满足条件且不重复的三元组。 ... [详细]
  • 本文详细介绍了 Java 网站开发的相关资源和步骤,包括常用网站、开发环境和框架选择。 ... [详细]
  • Visual Studio 2019 安装指南
    作为一名拥有三年经验的程序员,由于长期专注于C语言,我意识到自己的技术栈过于单一。在转型为Android驱动开发工程师后,这种局限性更加明显。本文将介绍如何安装Visual Studio 2019,并配置C++开发环境,以帮助读者拓宽技术视野。 ... [详细]
  • 兆芯X86 CPU架构的演进与现状(国产CPU系列)
    本文详细介绍了兆芯X86 CPU架构的发展历程,从公司成立背景到关键技术授权,再到具体芯片架构的演进,全面解析了兆芯在国产CPU领域的贡献与挑战。 ... [详细]
author-avatar
bakurei_492
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有