在以AWS、Google、阿里等为代表的公有云发展的同时,很多大型企业出于数据安全性、系统稳定性、软硬件自主权、对自主可控以及TCO低的考虑,更加倾向于建设企业私有云来承载内部业务信息系统的运行。
构建企业私有云并非是一蹴而就的,正如Gartner的副总裁Tom Bittman所述“部署私有云并不是简单地对硬件进行采购,而是一场革新”。对于企业私有云而言,其建设同样应遵循信息系统建设的通用方法,即事先分析 规划、事中落地实现以及事后运维管理.本文从企业私有云建设需求分析,企业私有云建设要点以及企业私有云的运维与管理等三个方面对大型企业私有云建设思路 进行分析。
一、企业私有云建设需求分析
在建设企业私有云前,首先需要回答和解决的问题是企业是否真的需要私有云,需要什么样的私有云?企业私有云的建设是一个长期的系统工程,初始成本的投入也较为高昂.因此企业在建设私有云之前,应从以下几方面对需求和现状进行评估。
1、需求和资源使用特点
某大型企业的IT系统现状:
系统利用率低:烟囱式的系统建设部署方式,导致系统资源无法共享,系统负载不均衡,整体资源利用率和能耗效率低。
建设扩容成本高:IT系统中原有的UNIX服务器、数据库和存储阵列占比较高,标准化程度低,通用性差,导致建设扩容成本难以控制,给系统统一维护带来困难。
扩展能力有限:系统的Scale-Up能力和Scale-out能力不足,难以应对越来越大的系统处理和存储压力。
那么针对以上的现状,如何去通过云计算来改变呢?首先我们需要的是:
A、动态部署架构:构建基于标准化硬件设备和虚拟化架构之上的云计算基础设施资源池可对上层应用按需提供弹性资源,实现多系统有效共享,有效提高IT系统资源利用率和能耗效率。
B、标准硬件单元:云计算采用标准的运算和存储处理单元,有效降低系统建设和扩容成本。
C、高可扩展性:云计算硬件集群技术和软件并行处理能力能够提供出色的Scale-out能力,几乎无限扩展IT系统的处理和存储能力。
通过引入云计算技术,去改变传统信息系统竖井式的建设模式,通过底层资源的共享与灵活调度提升资源利用率,降低整体信息系统建设成本,缩短信息 系统的建设周期.这些实现都是以资源使用特点为前提的,如果一个信息系统本身无资源调度需求(例如资源使用曲线较为平稳);或计划由云计算承载的信息系统 整体资源规模较小,资源共享和调度的空间有限;再或特定的应用系统不支持分布式部署,无法进行横向扩展甚至纵向扩展.对于类似的信息系统建设需求,则无法 充分利用云计算的优势.因此对本企业的需求和现状进行合理评估是非常必要的。
2、信息系统的标准化程度
在云计算环境中,信息系统所具有的标准化程度往往是决定私有云形态的重要因素.对信息系统的标准化评估存在多个维度,包括基础架构环境标准化 (例如所需支撑的硬件是专用硬件还是通用硬件)、平台环境标准化(例如对于开发环境、中间件环境以及数据库环境的通用需求和租户限制)、以及应用系统的标准化(例如应用系统的运行环境、封闭系统亦或是开发系统、商用套装软件或是自开发系统、是否支持分布式等).不同维度的标准化实现决定了企业私有云应该建 设为IaaS云、PaaS云亦或是SaaS云。
3、云化建设/迁移的难度
将新的应用系统直接部署在云计算环境中或将原有系统迁移到云计算环境中是两种主要信息系统的云化改造路径,对其实现难度的评估是对应用系统进行 云化改造风险与收益评估的重要手段.整个业务系统的云化分析过程需要从包括硬件支撑环境改造、操作系统平台变更、平台软件绑定分析、IP地址依赖性消除、 API重构、模块化改造、标准化改造、外部依赖条件等在内的多个层面和维度进行,准确评估业务信息系统云化改造的相关难点与痛点,才能对信息系统云化改造有充分的认识和准备。
4、关于成本的评估与考虑
大型企业建设私有云往往会考虑定制化和一些业务特定的需求,其标准化程度往往低于公有云,由此所带来的自动化、运维、管理开销会更高;最后,培养大量开发人才在传统企业环境要求则更高,工作技能、职能的转变同样需要成本的投入。
二、企业私有云技术路线选择
在大型企业建设私有云时,一个重要的问题就是技术路线的选择和成本价值产出. 一般在进行私有云技术路线选择时,大型企业往往会把稳定性、成熟度、服务满意达成度放在首位,那么成熟的稳定的商业解决方案就会被优先考虑,而开源的往往技术不够成熟和稳定,因此不被优先考虑。下面拿VMWARE和OPENSTACK来做比较。
1、 从产品设计上看。VMware软件套件是自底向上的架构,下端边界为虚拟机管理器。VMware的vSphere和vCloud director产品都是依赖于ESX(i) 虚拟机管理器。VMware的产品由于其架构的健壮性,很多高规格用户在多数据中心规模的环境中都有使用。但是VMware的软件系统是封闭的,并且软件 的发展路线是完全遵循VMware自己的发展目标,用户或消费者在此方面没有任何控制权。而OpenStack作为一个开源系统,没有任何一家单独的公司 在控制OpenStack的发展路线。另外很多大公司都在支持OpenStack发展,有了如此多公司的资源投入,OpenStack的发展是多元化的。然而这也带来了问题,就是OpenStack部署和架构的实施和维护成本较比VMware有了陡然提高,与此同时,由于相对快速的版本更新速度,技术支持文档不能跟上产品的脚步。
2、 从高可用和容错、资源平衡功能上看。在vSphere中,虚拟机级别的高可用性是允许在虚拟机或者ESX(i)主机出错时,在不同宿主机部署相同的虚拟 机。高可用是在硬件出问题的时候保证虚拟机的正常工作,当然如果真的出错了,那么只能在不同的ESX(i)主机上启动虚拟机,这也可能造成服务的中断。 FT的容错其主要功能就是保证出现故障时用户的应用不会出现中断。其原理就是在两台主机上创建一模一样两台虚拟机vm(主)与vm(辅助),vm(辅助) 完全同步vm(主)的操作,当vm(主)故障时,vm(辅助)自动切换变为vm(主)。FT可使应用程序实现零停机、零数据丢失,同时消除了传统硬件或软件集群解决方案的成本和复杂性。另外还有VMware vSphere 的分布式资源调度(DRS)可以聚合群集中ESXi主机资源,通过监控利用率,自动分配这些资源给虚拟机,并能够跨ESXi主机不断进行虚拟机资源优化和 平衡。
我们再看一下OpenStack 的高可用。目前并没有官方声明OpenStack支持虚拟机级别的高可用性,这个特性在Folsom版本被提出,但是后续又被放弃了。目前 OpenStack有一个孵化项目Evacuate, 其作用是为OpenStack提供虚拟机级别高可用支持。再看OpenStack 的容错,在OpenStack中没有针对于容错的功能,并且截至目前也没有计划去完成这些功能。OPENSTACK也还没有良好的资源自动平衡机制,截止 到目前openstack并未提供DRS、的功能,这属于openstack功能缺失的一部分。我们可以看到,在功能的支持方面和功能细节,OpenStack与VMware还是有差距的,仍然需要不断进步才能做的更好。
3、 从成本和价值来看。VMWARE是商业软件,其成熟度和稳定性经受了大量实际环境的考验,但使用成本高,体现在其授权费用和服务费用上。相对VMware 的昂贵价格,OpenStack免费、开放的优势还是很明显的。VMware高投入带来的功能,OpenStack大部分可以免费提供给客户。那么是 OpenStack还是VMware更有价值,这个问题并没有很清晰的答案,并且答案也取决于企业实际部署的规模。虽然OpenStack是免费使用的, 但是它需要有专业的开发人员和此领域的专家才行,并且需要很多架构和搭建方面的工作,因为它支持很多部署场景,并且安装过程都不尽相同。VMware则需 要花费一些经费购买授权和服务,并且相对来说更加容易安装和运行,另外Vmware的学习成本更低一些。
总得来说,基于以上的分析,大型企业使用VMWARE则更稳定和可靠。而OpenStack则入门门槛较高,如果企业没有足够的技术能力储备则无法解决大面积部署OPENSTACK所遇到的问题和坑。
三、企业私有云建设要点分析
构建私有云始于企业对自身信息系统建设需求的解析与明确,企业之所以选择私有云的初衷大多基于自身信息化建设的考虑,主要驱动力包括降低软硬件 成本、实现应用系统快速部署、应对业务负载突发性增长需求、构建安全可靠自主可控的基础架构环境等.而私有云对以上需求的支持并非是天然的,在架构设计需 要明确设计要点和建设思路,一般说来,在设计企业私有云过程中需要对以下重点关注。
1、资源池
云计算要进行软硬件资源的统一管控和灵活调度,首先需要做到的就是对资源的纳管,即构建资源池.而需要注意的是资源池的意义并非仅仅是通过平台使软硬件资源的可知可控成为可能,更为重要的是明确与之相匹配的管控手段和策略,使其涵盖资源的全生命周期管理.资源池建设重点可以归纳为资源可达、规模可控与能力可知:
1)资源可达
资源池是在技术层面打破旧有的竖井式信息系统建设模式的关键,是软硬件资源实现统一管控、灵活调度的基础.在资源池中,需要利用服务器虚拟化、存储虚拟化和网络虚拟化技术,使任意资源在技术上都可以通过网络(IP网络或存储网络)以服务的形式被无障碍、无区别的供给,应用可以以多种方式访问和使 用既定规则允许范围内的任意资源.因此,在资源池设计中,对各类型资源的打通和连接是其实现重点。
2)规模可控
我们在谈及云计算时,往往会说云计算提供了几乎无限的可能性,这主要是在指云计算的弹性.云计算由于在架构设计上避免了底层硬件资源孤岛,对资源的共享访问方式将放大资源池的弹性效果.规模可控的实现最为重要的是制定资源池扩展和收缩的规则,通过使用时间、使用量、持续时间、优先级等一系列量化阈值触发规则在资源池体量不足时可以灵活的向资源池中添加各种资源,在资源池空闲时,也可以释放部分资源给其他资源池使用。
3)能力可知
在资源池投入使用后,应实时/准实时的对资源池的承载能力进行分析.以监控数据为基础,通过具备科学完备的统计方法和计算规则,评估可供给的服务能力,对应用需求的满足度进行分析.要实现资源池的能力可知,必须具备完善的资源监控手段、实时/准实时更新CMDB,采用合理的感知方式并制定合理的 资源能力计算规则,同时,由于应用需求各不相同,要准确评估对应用的满足度,还需要梳理出典型业务模型,据此评估不同应用模型对资源的需求与消耗。
2、 云管理平台
云服务设计、发布和管理是云计算的核心,体现了云计算的运营形态,而云管理平台是实现云服务全生命周期管理的基础,是实现云计算运营模式的载 体.按照ISO/IEC最新发布的云计算参考架构,其中功能层中的用户功能层、访问功能层和服务功能层都应该在云管理平台中进行实现.对于云管理平台而 言,其建设重点可以归纳为状态可视、分配可控和服务可用:
1)状态可视
对于云平台而言,可视并不仅仅代表图形化的访问和管控,企业建设私有云更为重要的是从云服务供应商的视角通过云管理平台实现对资源的集中管控。 因此在云计算环境中,监控的重要性将上升到前所未有的高度,同时相比于传统信息系统架构,监控的含义和涵盖的范围也有了很大的变化,一般说来,在企业私有云平台中,必须具备对包括基础架构资源、服务、安全审计在内的监控能力:
①对包括物理和虚拟化计算资源、存储资源、网络资源等基础架构资源的资产管理、使用情况和设备状态的监控,并及时发现、处理和上报问题。
②面向服务的监控主要集中在两个方面.一方面监控上线服务的运行状态,确保其运转正常,及时发现事件与问题;另一方面是对SLA服务等级的达成度监控。
③安全和审计的监控包括根据在云计算环境中依照业务需求制定的安全规范,面向用户访问、租户数据/资源隔离、日志采集和分析等进行安全和合规性检查和监控.做到风险可识别、问题可发现、访问可控制、操作可追溯,达成SLA对安全的要求与约定。
2)分配可控
基础架构资源的管控是云计算运营最重要的基础和最核心的资源.对基础架构资源的合理管控是企业建设自己的私有云的重要出发点,而对资源管控的实现需要通过云管理平台完成.对于云计算环境中的基础架构资源,从初始建设、分配使用在到回收等一系列动作都应该根据服务设计和相关SLA规定制定详细、规 范的流程以及科学合理的处理手段,使云管理平台对资源的管控涵盖资源的全生命周期,做到初始建设合理、管控过程合规、资源分配合适、管控操作可回溯、已分配资源可回收。
3)服务可用
服务是云计算环境的核心.在构建私有云时企业往往会从自身的应用特点和需求出发进行服务的设计和实现,因此很难针对私有云制定通用的服务模板,依据云计算建设的通用方法,对于云服务的建设,一般说来会关注以下四个方面:
① 云服务的识别:云服务的识别是云服务实现的第一步,决定了在云计算环境中将供给的服务内容.云服务的识别是以需求调研为基础的,从必要性、可复用性、实现成本等多个角度出发,分析服务实现的难点和收益,制定服务分阶段实现的计划与路线图。
②云服务的设计:在云计算环境中对云服务的使用模式决定了云服务的设计要点,一般说来,对于云服务的设计内容包括服务的底层架构、服务的运行流程、服务安全与监控、服务的审计与合规性检查、评价服务能力的关键指标(KPI)、服务的高可用、服务的SLA等几个方面。
③云服务的实现:云服务的实现一般说来有四种方式:一是从业务需求分析出发进行云服务的定制开发;二是利用第三方软硬件产品进行服务封装;三是从其他云计算运营商购买,合作实现;四是基于已有服务进行服务组合,形成新的服务。
④云服务的维护:在云服务上线后,对云服务的运维是企业私有云成败的关键.对于云服务的维护包括两个方面.一是针对云服务自身的维护,包括对服 务能力和状态的监控、对服务性能和规模的趋势分析、服务的修正与升级、服务底层架构的维护等;二是服务的SLA达成度保障,包括实时监控服务的KPI并与 SLA所规定的服务目标进行比较,在不符合SLA时及时干预使其符合要求,同时,确保满足SLA所规定的安全、隔离等相关条款。
3、自动化与标准化
在云计算环境中,自动化对象往往是哪些经常使用、手工发起的复杂操作,这就要求自动化的对象应符合通用设计,遵循相同的技术规范,具备一致的处理流程,动作行为可参数化,即自动化的目标应该是标准化的。
标准化实现的层次决定了可以实现自动化操作的对象,而这往往决定了云计算的建设模式.例如,在基础架构资源在资源分配方式、资源分配粒度、资源分配方法等符合标准化时,可以考虑构建基于基础架构资源的IaaS云,在包括开发环境、数据库、中间件在内的平台软件在符合标准架构和流程、具备标准化运行环境等条件时,可以考虑构建基于平台的PaaS云,而在应用部署模式相类、服务模式统一、支持分布式、基于SOA架构等的应用系统等,可以考虑构建基于 软件SaaS云.需要注意的是并非所有的基础架构、平台软件和应用软件都具备标准化的条件,而标准化的代价同样高昂,包括硬件重构、SOA改造等标准化过 程需要投入大量的资金和人力成本,一般说来,封闭的系统环境和商用套装软件的标准化改造难度较大。
另外一点在自动化过程中特别需要考虑的是,自动化在带来便捷、高效的同时,不合理的自动化流程设计将可能会导致错误的蔓延和环境的失控.因此,在进行自动化设计过程中,尤其需要注意规则的设定和异常处理。
4、云安全
企业不使用公有云而选择自建私有云最大的考虑就在于安全.数据表明,安全已经成为阻碍云计算发展的最主要原因之一.根据CDA数据分析师协会统计,32%已经使用云计算的组织和45%尚未使用云计算的组织将云安全作为进一步部署云的最大障碍。
在云计算体系中,安全涉及到很多层面,一般说来,在云计算环境中应主要考虑网络安全、存储安全、物理机安全、虚拟化安全、虚拟化管理安全、交付层安全、数据安全、安全服务和运维安全等9个层面和领域。
同样需要注意的是,并非所有的应用安全问题都应该依赖云计算环境的安全架构来解决.云计算基础架构环境支持的系统种类众多、业务要求和安全基线各有不同,在对用户进行服务供给时应根据服务种类以及SLA对安全服务内容进行严格的规范,划分清晰的分工和责任界面。
四、企业私有云建设的思考
企业私有云的建设并非只是新技术的变革与引入,而是颠覆传统信息系统建设模式的系统工程.结合企业的特定需求,企业私有云的建设思路大可不尽相同,建设方法也不会千篇一律。
是选择商用云平台还是选择开源云平台来创建企业的私有云,这需要企业综合考虑,权衡利弊,依据企业自身技术能力,资金投入总量,实现业务效果等 等各个方面去考虑云平台技术选型。所以没有好与不好,只是能否适用和用的好。建设企业私有云不是一蹴而就的,而且这将是持续不断的投入过程,需要在实践中不断摸索前进。
本文转自d1net(转载)