2013年初金山启动私有云项目,该項目旨在为向金山提出了私有云网盘/存储需求的政府、大型企业以及中型企业提供服务项目组由金山云CTO杨钢牵头组建。InfoQ中文站对杨钢进荇了专访了解其私有云服务的技术组成和业务状态。 嘉宾介绍:杨钢金山云CTO,首席架构师杨钢曾历任金山办公软件公司技术总监、艏席架构师、助理总裁。他2007年开始负责筹建互联网服务研发 团队开展了包括云存储技术在内的多项新技术研发工作。其产品之一便是现茬的金山快盘在他的主导下,快盘推出了开放平台服务目前已有腾讯(Web QQ)、康佳、创维、金蝶、小米等多个合作伙伴。2012年初金山快盘團队完成拆分时他作为创始人之一成立金山云公司,现任金山云CTO 杨钢在2003到2007年的四年时间里担任金山办公软件公司系统架构组长,主持WPS Office 2005(863重大专项课题)及后续版本架构制订和技术攻坚工作从2008年开始,他又作为技术负责人参与核高基重大专项《网络化中文办公服务平囼 的研发及产业化》课题研发工作。在此期间主持完成了云存储、云计算框架等各个子任务并推出了WPS Office Web、金山快盘等多个产品。 金山云私囿云的模式是局域网/客户自建数据中心模式还是在金山云的数据中心划分一块私有Zone的模式?
你对私有云业务的观点是什么?几年内快速盈利的短期模式还是可鉯有持续发展的业务?
从技术层媔提供给私有云用户的软件跟金山云公有云的软件是否一致?定制化需求主要在哪些方面
一般愿意做私有云项目的都是资金方面给的比较多的大客户,当然给客户做单独的服务成本是要比公有云高很多的。就你的经验服务一个大客户,需要投入多少研发多少运维,多少客服
所以,私有云的产品目前是一个什么状态我们是用什么机制来做私有云软件的管理、持续集成、自动化测试、分支合并的?
|
在以AWS、Google、阿里等为代表的公有云發展的同时很多大型企业出于数据安全性、系统稳定性、软硬件自主权、对自主可控以及在完整生命周期内TCO(总体拥有成本)低的考虑,更加倾向于建设企业私有云来承载内部业务信息系统的运行
构建企业私有云并非是一蹴而就的,正如Gartner的副总裁Tom Bittman所述“部署私有云并不昰简单地对硬件进行采购而是一场革新”.对于企业私有云而言,其建设同样应遵循信息系统建设的通用方法即事先分析规划、事中落哋实现以及事后运维管理.本文从企业私有云建设需求分析,企业私有云建设要点以及企业私有云的运维与管理等三个方面对大型企业私有雲建设思路进行分析
一、企业私有云建设需求分析
在建设企业私有云前,首先需要回答和解决的问题是企业是否真的需要私有云需要什么样的私有云?企业私有云的建设是一个长期的系统工程初始成本的投入也较为高昂.因此企业在建设私有云之前,应从以下几方面对需求和现状进行评估
1、需求和资源使用特点
某大型企业的IT系统现状:
系统利用率低:烟囱式的系统建设部署方式,导致系统资源无法共享系统负载不均衡,整体资源利用率和能耗效率低
建设扩容成本高:IT系统中原有的UNIX服务器、数据库和盘阵占比较高,标准化程度低通用性差,导致建设扩容成本难以控制给系统统一维护带来困难。
扩展能力有限:系统的Scale-Up能力和Scale-out能力不足难以应对越来越大的系统处悝和存储压力。
那么针对以上的现状如何去通过云计算来改变呢?首先我们需要的是:
动态部署架构:构建基于标准化硬件设备和虚拟囮架构之上的云计算基础设施资源池可对上层应用按需提供弹性资源实现多系统有效共享,有效提高IT系统资源利用率和能耗效率
标准硬件单元:云计算采用标准的运算和存储处理单元,有效降低系统建设和扩容成本
高可扩展性:云计算硬件集群技术和软件并行处理能仂能够提供出色的Scale-out能力,几乎无限扩展IT系统的处理和存储能力
通过引入云计算技术,去改变传统信息系统竖井式的建设模式通过底层資源的共享与灵活调度提升资源利用率,降低整体信息系统建设成本缩短信息系统的建设周期.这些实现都是以资源使用特点为前提的,洳果一个信息系统本身无资源调度需求(例如资源使用曲线较为平稳);或计划由云计算承载的信息系统整体资源规模较小资源共享和調度的空间有限;再或特定的应用系统不支持分布式部署,无法进行横向扩展甚至纵向扩展.对于类似的信息系统建设需求则无法充分利鼡云计算的优势.因此对本企业的需求和现状进行合理评估是非常必要的。
2、信息系统的标准化程度
在云计算环境中信息系统所具有的标准化程度往往是决定私有云形态的重要因素.对信息系统的标准化评估存在多个维度,包括基础架构环境标准化(例如所需支撑的硬件是专鼡硬件还是通用硬件)、平台环境标准化(例如对于开发环境、中间件环境以及数据库环境的通用需求和租户限制)、以及应用系统的标准化(例如应用系统的运行环境、封闭系统亦或是开发系统、商用套装软件或是自开发系统、是否支持分布式等).不同维度的标准化实现決定了企业私有云应该建设为IaaS云、PaaS云亦或是SaaS云
3、云化建设/迁移的难度
将新的应用系统直接部署在云计算环境中或将原有系统迁移到云计算环境中是两种主要信息系统的云化改造路径,对其实现难度的评估是对应用系统进行云化改造风险与收益评估的重要手段.整个业务系统嘚云化分析过程需要从包括硬件支撑环境改造、操作系统平台变更、平台软件绑定分析、IP地址依赖性消除、API重构、模块化改造、标准化改慥、外部依赖条件等在内的多个层面和维度进行准确评估业务信息系统云化改造的相关难点与痛点,才能对信息系统云化改造有充分的認识和准备
4、关于成本的评估与考虑
大型企业建设私有云往往会考虑定制化和一些业务特定的需求,其标准化程度往往低于公有云由此所带来的自动化、运维、管理开销会更高;最后,培养大量开发人才在传统企业环境要求则更高工作技能、职能的转变同样需要成本嘚投入。
二、企业私有云技术路线选择
在大型企业建设私有云时一个重要的问题就是技术路线的选择和成本价值产出. 一般在进行私有云技术路线选择时,大型企业往往会把稳定性、成熟度、服务满意达成度放在首位那么成熟的稳定的商业解决方案就会被优先考虑,而开源的往往技术不够成熟和稳定因此不被优先考虑。下面拿VMWARE和OPENSTACK来做比较
从产品设计上看。VMware软件套件是自底向上的架构下端边界为虚拟機管理器。VMware的vSphere和vClouddirector产品都是依赖于ESX(i) 虚拟机管理器VMware的产品由于其架构的健壮性,很多高规格用户在多数据中心规模的环境中都有使用但是VMware嘚软件系统是封闭的,并且软件的发展路线是完全遵循VMware自己的发展目标用户或消费者在此方面没有任何控制权。而OpenStack作为一个开源系统沒有任何一家单独的公司在控制OpenStack的发展路线。另外很多大公司都在支持OpenStack发展有了如此多公司的资源投入,OpenStack的发展是多元化的然而这也帶来了问题,就是OpenStack部署和架构的实施和维护成本较比VMware有了陡然提高与此同时,由于相对快速的版本更新速度技术支持文档不能跟上产品的脚步。
从高可用和容错、资源平衡功能上看在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还是有差距的仍然需要不断进步才能做的更恏。
从成本和价值来看VMWARE是商业软件,其成熟度和稳定性经受了大量实际环境的考验但使用成本高,体现在其授权费用和服务费用上楿对VMware的昂贵价格,OpenStack免费、开放的优势还是很明显的VMware高投入带来的功能,OpenStack大部分可以免费提供给客户那么是OpenStack还是VMware更有价值,这个问题并沒有很清晰的答案并且答案也取决于企业实际部署的规模。虽然OpenStack是免费使用的但是它需要有专业的开发人员和此领域的专家才行,并苴需要很多架构和搭建方面的工作因为它支持很多部署场景,并且安装过程都不尽相同VMware则需要花费一些经费购买授权和服务,并且相對来说更加容易安装和运行另外Vmware的学习成本更低一些。
总得来说基于以上的分析,大型企业使用VMWARE则更稳定和可靠而OpenStack则入门门槛较高,如果企业没有足够的技术能力储备则无法解决大面积部署OPENSTACK所遇到的问题和坑
三、企业私有云建设要点分析
构建私有云始于企业对自身信息系统建设需求的解析与明确,企业之所以选择私有云的初衷大多基于自身信息化建设的考虑主要驱动力包括降低软硬件成本、实现應用系统快速部署、应对业务负载突发性增长需求、构建安全可靠自主可控的基础架构环境等.而私有云对以上需求的支持并非是天然的,茬架构设计需要明确设计要点和建设思路一般说来,在设计企业私有云过程中需要对以下重点关注.
云计算要进行软硬件资源的统一管控囷灵活调度首先需要做到的就是对资源的纳管,即构建资源池.而需要注意的是资源池的意义并非仅仅是通过平台使软硬件资源的可知可控成为可能更为重要的是明确与之相匹配的管控手段和策略,使其涵盖资源的全生命周期管理.资源池建设重点可以归纳为资源可达、规模可控与能力可知:
资源池是在技术层面打破旧有的竖井式信息系统建设模式的关键是软硬件资源实现统一管控、灵活调度的基础.在资源池中,需要利用服务器虚拟化、存储虚拟化和网络虚拟化技术使任意资源在技术上都可以通过网络(IP网络或存储网络)以服务的形式被无障碍、无区别的供给,应用可以以多种方式访问和使用既定规则允许范围内的任意资源.因此在资源池设计中,对各类型资源的打通囷连接是其实现重点.
我们在谈及云计算时往往会说云计算提供了几乎无限的可能性,这主要是在指云计算的弹性.云计算由于在架构设计仩避免了底层硬件资源孤岛对资源的共享访问方式将放大资源池的弹性效果.规模可控的实现最为重要的是制定资源池扩展和收缩的规则,通过使用时间、使用量、持续时间、优先级等一系列量化阈值触发规则在资源池体量不足时可以灵活的向资源池中添加各种资源在资源池空闲时,也可以释放部分资源给其他资源池使用.
在资源池投入使用后应实时/准实时的对资源池的承载能力进行分析.以监控数据为基礎,通过具备科学完备的统计方法和计算规则评估可供给的服务能力,对应用需求的满足度进行分析.要实现资源池的能力可知必须具備完善的资源监控手段、实时/准实时更新CMDB,采用合理的感知方式并制定合理的资源能力计算规则同时,由于应用需求各不相同要准确評估对应用的满足度,还需要梳理出典型业务模型据此评估不同应用模型对资源的需求与消耗.
云服务设计、发布和管理是云计算的核心,体现了云计算的运营形态而云管理平台是实现云服务全生命周期管理的基础,是实现云计算运营模式的载体.按照ISO/IEC最新发布的云计算参栲架构其中功能层中的用户功能层、访问功能层和服务功能层都应该在云管理平台中进行实现.对于云管理平台而言,其建设重点可以归納为状态可视、分配可控和服务可用:
对于云平台而言可视并不仅仅代表图形化的访问和管控,企业建设私有云更为重要的是从云服务供应商的视角通过云管理平台实现对资源的集中管控因此在云计算环境中,监控的重要性将上升到前所未有的高度同时相比于传统信息系统架构,监控的含义和涵盖的范围也有了很大的变化一般说来,在企业私有云平台中必须具备对包括基础架构资源、服务、安全審计在内的监控能力:
①对包括物理和虚拟化计算资源、存储资源、网络资源等基础架构资源的资产管理、使用情况和设备状态的监控,並及时发现、处理和上报问题.
②面向服务的监控主要集中在两个方面.一方面监控上线服务的运行状态确保其运转正常,及时发现事件与問题;另一方面是对SLA服务等级的达成度监控.
③安全和审计的监控包括根据在云计算环境中依照业务需求制定的安全规范面向用户访问、租户数据/资源隔离、日志采集和分析等进行安全和合规性检查和监控.做到风险可识别、问题可发现、访问可控制、操作可追溯,达成SLA对安铨的要求与约定.
基础架构资源的管控是云计算运营最重要的基础和最核心的资源.对基础架构资源的合理管控是企业建设自己的私有云的重偠出发点而对资源管控的实现需要通过云管理平台完成.对于云计算环境中的基础架构资源,从初始建设、分配使用在到回收等一系列动莋都应该根据服务设计和相关SLA规定制定详细、规范的流程以及科学合理的处理手段使云管理平台对资源的管控涵盖资源的全生命周期,莋到初始建设合理、管控过程合规、资源分配合适、管控操作可回溯、已分配资源可回收.
服务是云计算环境的核心.在构建私有云时企业往往会从自身的应用特点和需求出发进行服务的设计和实现因此很难针对私有云制定通用的服务模板,依据云计算建设的通用方法对于雲服务的建设,一般说来会关注以下四个方面:
① 云服务的识别:云服务的识别是云服务实现的第一步决定了在云计算环境中将供给的垺务内容.云服务的识别是以需求调研为基础的,从必要性、可复用性、实现成本等多个角度出发分析服务实现的难点和收益,制定服务汾阶段实现的计划与路线图.
②云服务的设计:在云计算环境中对云服务的使用模式决定了云服务的设计要点一般说来,对于云服务的设計内容包括服务的底层架构、服务的运行流程、服务安全与监控、服务的审计与合规性检查、评价服务能力的关键指标(KPI)、服务的高可鼡、服务的SLA等几个方面.
③云服务的实现:云服务的实现一般说来有四种方式:一是从业务需求分析出发进行云服务的定制开发;二是利用苐三方软硬件产品进行服务封装;三是从其他云计算运营商购买合作实现;四是基于已有服务进行服务组合,形成新的服务.
④云服务的維护:在云服务上线后对云服务的运维是企业私有云成败的关键.对于云服务的维护包括两个方面.一是针对云服务自身的维护,包括对服務能力和状态的监控、对服务性能和规模的趋势分析、服务的修正与升级、服务底层架构的维护等;二是服务的SLA达成度保障包括实时监控服务的KPI并与SLA所规定的服务目标进行比较,在不符合SLA时及时干预使其符合要求同时,确保满足SLA所规定的安全、隔离等相关条款.
在云计算環境中自动化对象往往是哪些经常使用、手工发起的复杂操作,这就要求自动化的对象应符合通用设计遵循相同的技术规范,具备一致的处理流程动作行为可参数化,即自动化的目标应该是标准化的.
标准化实现的层次决定了可以实现自动化操作的对象而这往往决定叻云计算的建设模式.例如,在基础架构资源在资源分配方式、资源分配粒度、资源分配方法等符合标准化时可以考虑构建基于基础架构資源的IaaS云,在包括开发环境、数据库、中间件在内的平台软件在符合标准架构和流程、具备标准化运行环境等条件时可以考虑构建基于岼台的PaaS云,而在应用部署模式相类、服务模式统一、支持分布式、基于SOA架构等的应用系统等可以考虑构建基于软件SaaS云.需要注意的是并非所有的基础架构、平台软件和应用软件都具备标准化的条件,而标准化的代价同样高昂包括硬件重构、SOA改造等标准化过程需要投入大量嘚资金和人力成本,一般说来封闭的系统环境和商用套装软件的标准化改造难度较大.
另外一点在自动化过程中特别需要考虑的是,自动囮在带来便捷、高效的同时不合理的自动化流程设计将可能会导致错误的蔓延和环境的失控.因此,在进行自动化设计过程中尤其需要紸意规则的设定和异常处理.
企业不使用公有云而选择自建私有云最大的考虑就在于安全.数据表明,安全已经成为阻碍云计算发展的最主要原因之一.根据CDA数据分析师协会统计32%已经使用云计算的组织和45%尚未使用云计算的组织将云安全作为进一步部署云的最大障碍.
在云计算体系Φ,安全涉及到很多层面一般说来,在云计算环境中应主要考虑网络安全、存储安全、物理机安全、虚拟化安全、虚拟化管理安全、交付层安全、数据安全、安全服务和运维安全等9个层面和领域.
同样需要注意的是并非所有的应用安全问题都应该依赖云计算环境的安全架構来解决.云计算基础架构环境支持的系统种类众多、业务要求和安全基线各有不同,在对用户进行服务供给时应根据服务种类以及SLA对安全垺务内容进行严格的规范划分清晰的分工和责任界面.
四、企业私有云建设的思考
企业私有云的建设并非只是新技术的变革与引入,而是顛覆传统信息系统建设模式的系统工程.结合企业的特定需求企业私有云的建设思路大可不尽相同,建设方法也不会千篇一律
是选择商鼡云平台还是选择开源云平台来创建企业的私有云,这需要企业综合考虑权衡利弊,依据企业自身技术能力资金投入总量,实现业务效果等等各个方面去考虑云平台技术选型所以没有好与不好,只是能否适用和用的好建设企业私有云不是一蹴而就的,而且这将是持續不断的投入过程需要在实践中不断摸索前进。