2012年7月月 发布的文章

MD5校验码是什么意思?

MD5在论坛上、软件发布时经常用,是为了保证文件的正确性,防止一些人盗用程序,加些木马或者篡改版权,设计的一套验证系统。每个文件都可以用MD5验证程序算出一个固定的MD5码来。软件作者往往会事先计算出他的程序的MD5码并帖在网上。因此,在网上看到某个程序下载旁注明了MD5码时,可以把它记下来,下载了这个程序后用MD5验证程序计算你所下载的文件的MD5码,和你之前记下MD5码比较,就知道你下的是不是原版了,如果两者相同,那么你所下载的是原版。如果计算出来的和网上注明的不匹配,那么你下载的这个文件不完整,或是被别人动过手脚。
MD5的全称是Message-Digest Algorithm 5,在90年代初由MIT的计算机科学实验室和RSA Data Security Inc发明,经MD2、MD3和MD4发展而来。 Message-Digest泛指字节串(Message)的Hash变换,就是把一个任意长度的字节串变换成一定长的大整数。请注意我使用了“字节串”而不是“字符串”这个词,是因为这种变换只与字节的值有关,与字符集或编码方式无关。 MD5将任意长度的“字节串”变换成一个128bit的大整数,并且它是一个不可逆的字符串变换算法,换句话说就是,即使你看到源程序和算法描述,也无法将一个MD5的值变换回原始的字符串,从数学原理上说,是因为原始的字符串有无穷多个,这有点象不存在反函数的数学函数。 MD5的典型应用是对一段Message(字节串)产生fingerprint(指纹),以防止被“篡改”。举个例子,你将一段话写在一个叫 readme.txt文件中,并对这个readme.txt产生一个MD5的值并记录在案,然后你可以传播这个文件给别人,别人如果修改了文件中的任何内容,你对这个文件重新计算MD5时就会发现(两个MD5值不相同)。如果再有一个第三方的认证机构,用MD5还可以防止文件作者的“抵赖”,这就是所谓的数字签名应用。 MD5还广泛用于加密和解密技术上,在很多操作系统中,用户的密码是以MD5值(或类似的其它算法)的方式保存的, 用户Login的时候,系统是把用户输入的密码计算成MD5值,然后再去和系统中保存的MD5值进行比较,而系统并不“知道”用户的密码是什么。

运营商私有云聚焦IaaS/PaaS OSS系统应用重在内部服务

当前,国内各运营商在多个专业领域正不同程度、不同方向地进行云计算环境构建的尝试和实施工作。在这股热潮中,作为电信运营商中重要的支撑体系之一的OSS体系也在努力尝试和推进,以期紧随发展的步伐。
从当前运营商OSS体系来讲,基于客观的历史原因,每个省至少都存在着10余套支撑系统,而这些系统基本属于“烟囱型”的结构,即从服务器、存储、数据库、中间件、应用软件都是独立并完备的,系统间相互孤立分离,并在网络中通过VLAN的划分进行系统间网络隔离。
在这种背景下,业界对于“虚拟化”、“云计算”、“SOA”、“融合重组”的讨论非常热烈——运营商清晰地认识到过去由于受到历史客观原因的限制所采取的分散独立的建设模式已经无法满足未来的发展形势需要。在运营支撑系统不断完善改进的过程中,运营商也就不可避免地要搞清楚这些概念之间的关系,从而形成相对清晰的OSS体系云计算建设规划。
IaaS层亟待实现存储集中化
云计算基本分为IaaS、PaaS、SaaS三层架构,以此分析OSS体系,其要向云计算方向发展,也需要分层、分阶段地进行。IaaS主要包括网络、主机、存储几个方面,这部分实际上也是当前热度最高的环节,这与技术成熟度相关,更与硬件厂商的推动密不可分。
从当前技术发展角度来讲,实际上就是基于x86平台的虚拟化技术的成熟度最高,它在IT基础架构层面大规模地推动了“虚拟化”、“云计算”的实施。而其中的虚拟化可以认为是云计算的一个基础条件,无论是IT基础架构还是上层软件均需要考虑虚拟化技术所带来的变化。
按照以往经验,具体到OSS体系,运营商应当慎重审视如何推动IaaS的建设。按照当前的现状背景来讲,存储设备的集中化应当排在第一位——这部分分散建设的模式使得每套系统中均需要配置中低端的存储设备,而这些设备扩展能力又很有限,且存储对于系统相关性也是最差的,对于软件系统属于透明的存在,所以OSS体系的云计算环境构建,笔者认为,存储集中化应当排在第一位。
一个不争的现实是,OSS体系的核心模块绝大部分是基于UNIX小型机环境来研发,所以不能简单地将应用直接迁移到x86平台上的Windows环境或Linux环境,这其中需要解决非常多的技术问题。另外,对于中高端UNIX主机进行分区使用,从而规避部署大量的中低端UNIX主机,这与x86平台的物理服务器的配置部署原则是有区别的,这主要是由于技术区别而造成的。
当前的云计算环境构建不可避免地采取了“先集中化、再虚拟化”的建设模式,这样对系统运行安全性实际上构成了新的隐患。与传统的所谓“烟囱型”系统的区别在于它将所有的故障隐患也集中化,一旦某设备资源池出现问题,则将不再是影响一套系统,而是影响多套系统。而且OSS体系中存在大量的采用perl、awk等解释性语言编写的脚本程序,这些程序的典型特征就是高CPU负荷、高I/O负荷,这些程序能否适合部署在虚拟化环境中也还需要进一步的技术研究工作。
需要特别注意的就是,网络是云计算环境构建中不容忽视的重要环节。绝大部分的OSS系统均是按照每个系统一个独立VLAN进行建设的,那么在云计算环境中将大幅度增加网络设置的复杂性。而这部分恰恰是在推进虚拟化或云计算过程中最容易被忽视的环节。
PaaS层技术研究重点在ESB
对于PaaS层,当前OSS体系的技术研究的工作基本是集中在ESB方面,而对于如何构建平台层的研究却很少。从当前的发展方向来讲,对于PaaS这层,应当做到尽可能的“业务无关”——并不是与OSS无关,而是与故障监控、性能分析、业务流程等无关。除了ESB外,在PaaS层实际上还可以对数据库进行集中化,从而通过统一的安全策略和参数设置来形成统一的数据库支撑能力。
当前各个系统中数据库访问效率依然是一个非常典型和重要的瓶颈所在,主要原因在于当前各个系统开发商普遍缺乏代码研发人员与DBA密切互动。由此,数据库比较适宜进行适度的集中规划与部署,然后再“按需”分配能力来满足不同系统的使用需求,而这也恰恰符合云计算的理念。
OSS尚无对外服务打算
对于SaaS层来讲,当前运营商的OSS体系还不适用,因为OSS体系并不具备对外提供服务的能力。
OSS体系内的应用层系统和软件,现阶段的任务是追求如何去适应云计算环境,而不是盲目地追求提供对外服务。如果希望能力外暴,这实际上需要大幅加强软件的可配置性和快速响应能力。例如OSS中的监控系统是可以对外提供设备监控能力,但是在能力分离打包、资源模型调整、告警分析接入、监控规则适应等方面还存在反应速度慢的问题,这样实际上就基本无法达到SaaS的要求。而将内部服务作为系统应用则问题不大。这也是后续OSS应用软件需要重点关注的发展问题。
笔者认为,为了更好地可持续发展,OSS体系的应用程序层应当充分重视到SOA的发展,云计算与SOA是相辅相成的,只有软件符合SOA或者向SOA方向发展,才能逐步形成SaaS的能力,否则各个软件系统依然是孤立的系统。
总而言之,当前运营商OSS体系的建设模式决定了其服务对象是企业内部,甚至是部门内部。基于这种认知,我们需要非常慎重地看待“云”的需求,更应当学习“云计算”倡导的技术和理念,而不一定是过分地追求“对外服务”。

山西云计算中心

山西云计算中心由山西问天科技股份有限公司、北京蓝汛通信技术有限责任公司、中国联通山西分公司共同投资建设。山西云计算中心位于太原高新区,一期总投资30亿元,计划明年3月动工,年底投产。
山西云计算中心建成后,可以提供10万台机架、百万台服务器,可满足城市规划与城市管理、政务信息化服务、高性能计算、电子商务、物联网、数据挖掘、软件服务等多个领域的科技应用需求。 山西云计算中心建成后,将成为我国中部地区最大的云计算中心。云计算中心是指基于云计算系统,对外提供计算资源、存储资源等服务的机构或单位。当前,主要面向大规模科学计算及工程计算应用,并在商业计算、互联网、电子政务、电子商务等领域拥有巨大的发展潜力。云计算中心作为标志性的IT基础设施,在产业集聚、吸引企业、吸引高端人才、促进招商引资、打造产业链方面具有不可替代的作用,将显著提高城市综合竞争力。

负载测试、压力测试和性能测试的异同

负载测试(Load testing)、压力测试(Stress Test,应称为强度测试)和性能测试,这三个概念常常引起混淆,难以区分,从而造成不正确的理解和错误的使用。之前,也有不少讨论,比较有名的,应归为Grig Gheorghiu’s的两篇博客:
Performance vs. load vs. stress testing
More on performance vs. load testing
负载测试、压力测试和性能测试的测试目的不同,但其手段和方法在一定程度上比较相似,通常会使用相同的测试环境和测试工具,而且都会监控系统所占用资源的情况以及其它相应的性能指标,这也是造成人们容易产生概念混淆的主要原因。      我们知道,软件总是运行在一定的环境下,这种环境包括支撑软件运行的软硬件环境和影响软件运行的外部条件。为了让客户使用软件系统感到满意,必须确保系统运行良好,达到高安全、高可靠和高性能。其中,系统是否具有高性能的运行特征,不仅取决于系统本身的设计和程序算法,而且取决于系统的运行环境。系统的运行环境会依赖于一些关键因素,例如:

  • 系统架构,如分布式服务器集群还是集中式主机系统等。
  • 硬件配置,如服务器的配置,CPU、内存等配置越高,系统的性能会越好。
  • 网络带宽,随着带宽的提高,客户端访问服务器的速度会有较大的改善。
  • 支撑软件的选定,如选定不同的数据库管理系统(Oracle、MySQL等)和web应用服务器(Tomcat、GlassFish、Jboss、WebLogic等),对应用系统的性能都有影响。
  • 外部负载,同时有多少个用户连接、用户上载文件大小、数据库中的记录数等都会对系统的性能有影响。一般来说,系统负载越大,系统的性能会降低。

从上面可以看出,使系统的性能达到一个最好的状态,不仅通过对处在特定环境下的系统进行测试以完成相关的验证,而且往往要根据测试的结果,对系统的设计、代码和配置等进行调整,提高系统的性能。许多时候,系统性能的改善是测试、调整、再测试、再调整、……一个持续改进的过程,这就是我们经常说的性能调优(perormance tuning)。     在了解了这样一个背景之后,就比较容易理解为什么在性能测试中常常要谈负载测试。从测试的目的出发、从用户的需求出发,就比较容易区分性能测试、负载测试和压力测试。性能测试是为了获得系统在某种特定的条件下(包括特定的负载条件下)的性能指标数据,而负载测试、压力测试是为了发现软件系统中所存在的问题,包括性能瓶颈、内存泄漏等。通过负载测试,也是为了获得系统正常工作时所能承受的最大负载,这时负载测试就成为容量测试。通过压力测试,可以知道在什么极限情况下系统会崩溃、系统是否具有自我恢复性等,但更多的是为了确定系统的稳定性。      那么,如何给负载测试、压力测试下个定义呢?根据上述讨论,我们可以给出如下的定义:

  • 负载测试是模拟实际软件系统所承受的负载条件的系统负荷,通过不断加载(如逐渐增加模拟用户的数量)或其它加载方式来观察不同负载下系统的响应时间和数据吞吐量、系统占用的资源(如CPU、内存)等,以检验系统的行为和特性,以发现系统可能存在的性能瓶颈、内存泄漏、不能实时同步等问题。负载测试更多地体现了一种方法或一种技术。
  • 压力测试是在强负载(大数据量、大量并发用户等)下的测试,查看应用系统在峰值使用情况下操作行为,从而有效地发现系统的某项功能隐患、系统是否具有良好的容错能力和可恢复能力。压力测试分为高负载下的长时间(如24小时以上)的稳定性压力测试和极限负载情况下导致系统崩溃的破坏性压力测试。

压力测试可以被看作是负载测试的一种,即高负载下的负载测试,或者说压力测试采用负载测试技术。通过压力测试,可以更快地发现内存泄漏问题,还可以更快地发现影响系统稳定性的问题。例如,在正常负载情况下,某些功能不能正常使用或系统出错的概率比较低,可能一个月只出现一次,但在高负载(压力测试)下,可能一天就出现,从而发现有缺陷的功能或其它系统问题。通过负载测试,可以证明这一点,某个电子商务网站的订单提交功能,在10个并发用户时错误率是零,在50个并发用户时错误率是1%,而在200个并发用户时错误率是20%。     负载测试是为了发现系统的性能问题,负载测试需要通过系统性能特性或行为来发现问题,从而为性能改进提供帮助,从这个意义看,负载测试可以看作性能测试的一部分。但它们两者的目的是不一样的,负载测试是为了发现缺陷,而性能测试是为了获取性能指标。因为性能测试过程中,也可以不调整负载,而是在同样负载情况下改变系统的结构、改变算法、改变硬件配置等等来得到性能指标数据,从这个意义看,负载测试可以看作是性能测试所c的一种技术,即性能测试使用负载测试的技术、使用负载测试的工具。性能测试要获得在不同的负载情况下的性能指标数据。     通过负载测试和压力测试都可以获得系统正常工作时的极限负载或最大容量。容量测试,自然也是采用负载测试技术来实现,而在破坏性的压力测试中,容量的确定可以看作是一种副产品——间接结果。     综合所述,负载测试、压力测试和性能测试的概念可以概括如下:

  • 负载测试是通过改变系统负载方式、增加负载等来发现系统中所存在的性能问题。负载测试是一种测试方法,可以为性能测试、压力测试所采用。负载测试的加载方式也有很多种,可以根据测试需要来选择。
  • 性能测试是为获取或验证系统性能指标而进行测试。多数情况下,性能测试会在不同负载情况下进行。
  • 压力测试通常是在高负载情况下来对系统的稳定性进行测试,更有效地发现系统稳定性的隐患和系统在负载峰值的条件下功能隐患等。

云计算时代企业IT技术趋势综述

自上世纪60年代出现以来,计算机行业的发展依次经历了“主机时代”,“个人电脑时代”,“互联网时代”,直到今天步入了“云计算时代”。也许两年前人们还在质疑云计算的价值,但随着Amazon等云计算商业的成功,今天的人们早已经停止怀疑,而是积极拥抱这个新时代:业务人员思索如何转型其业务,从而使其更加适应云计算时代,或者如何借用云计算之力,转型其业务模式;技术人员也在探索,云计算时代IT技术如何顺应云计算发展之大势,或者借鉴云计算之理念,发展IT各领域的技术使其更好支撑业务发展,甚至是驱动业务的发展。
让我们审视一下这个时代的主要元素:除了云计算本身外,还有互联网、移动、大数据,社交网络,这五个元素密切交织在一起,互为背景又互为促进,各自延伸并相互结缘,共同编织了这个伟大时代。让我们看一组数据,了解一下云计算时代五个元素蕴含的巨大能量。
Gartner的研究指出,2012年云计算的预计增幅为19%,市场规模同比上一年910亿美元将扩展至1090亿美元;对于互联网而言,两项重要指标衡量它的规模:电商交易额和广告收入,2011年中国电商交易额达到6万亿,美 国互动广告局 近日联合普华永道发表了报告显示,2012年第一季度全球互联网广告收入达到84亿美 元!再观智能手机,IDC的报告指出2012年第二季度全球智能手机出货量达到了4.06亿台;大数据到底有多大?今天全球互联网数据已达180万PB,90%是非结构化的,还在以每年50%的速度高速增长,也就是每两年增长一倍;在刚刚发布的二季度财报中,Facebook日度活跃用户数搞到5.52亿,月度活跃用户高达9.55亿,而国内新浪微博的一组数据显示,新浪微博的用户(包括数量庞大的僵尸粉)每日平均在微博上停留90分钟!
云计算时代五大元素的巨大能量首先释放在了消费领域,深远地影响了人们的做事方式与行为习惯。然而,影响绝不仅限于消费领域。当人们深入思考企业IT的问题时,如成本控制,业务敏捷性、沟通协作、商业决策等,很快发现了与这五大元素的切合点,继而引发了一系列企业IT技术的变革。
笔者如下从IT设备,IT基础设施,业务数据,业务应用、工作效率、软件工程六个方面,综述企业IT技术的重要趋势。
IT设备(IT Facility): 企业IT设备主要包括机房的UPS、空调、机柜、布线等,这些元素在云计算时代呈现出“高密度”、“模块化”,“绿色节能”的趋势。高密度是指对承重、电力、制冷等方面的更高要求。一个云计算机房的承重应该不小于1.5吨/平米,每个机柜的电力设计应不低于10KW。
模块化是将机柜、布线、空调、供电等元素集成,形成一个互匹配、自包含的单元。模块化的实现有很多形式,颗粒度也差别很大。在业务量变化很大的今天,模块化的独到优势是能更迅速的适应业务量的变化,在业务量增加时能迅速部署,而业务量减少时能更快的释放。
“绿色节能”不仅仅是一个来自社会志愿者的呼声,从企业运营角度,就数据中心运营的10%的成本来自于能源损耗,所以绿色IT、绿色数据中心成为企业IT成本压缩的重要领域,这方面的技术从传统的冷热通道封闭、冷冻水制冷等,发展到喷雾制冷、Free Cooling、甚至是余热回收等,使得数据中心的PUE值显著降低,Google、Facebook、IBM等知名企业建造了大量绿色数据中心,其PUE值非常接近于1。
IT基础设施(IT Infrastructure):企业IT基础设施是指服务器、存储、网络这“三大件”。对于IT基础设施的趋势,相信每一位IT从业者都不陌生,那就是虚拟化与云计算(IaaS,基础设施即服务),Hyper成了兵家必争之地,弹性共享计算也成了各IT厂商追逐热点。
在IT基础设施领域还有一个趋势悄然发生,那就是硬件的“三大件”与软件的“一体化”,一体化区别用通用硬件,也不同于专用设备,而是位于两者中间,支持不同工作负载的软硬件集成与优化。Oracle的Exadata, Exalogic, Exalytics,Cisco的UCS, VCE Block,IBM的PureFlex, PureApplication都属于一体化产品,国内也已经出现此类产品,限于技术水平,目前的状态是“有集成,无优化”。
业务数据(Business Data): 电子商务、移动互联、物联网、社交网络等领域的迅速发展,创造出了一个新的名词:“大数据”,当今的人类一年产生的数据,超过过去几千年产生数据的总和。一方面,大数据呈现明显的“3V+1C”的特点:Volume(大规模)、Variety(多样性)、Velocity(不确定)、Complexity(复杂性),另一方面,企业越来越希望加强对大数据的把控,希望通过对大数据的分析,分析跟踪舆情、洞察消费者喜好,并及时作出正确的商业决策。
业务数据对于企业IT带来的挑战是前所未有的,而数据处理方面的技术创新也最为异彩纷呈。首先,两类典型的数据处理工作负载(OLTP, OLAP)分别遇到了性能瓶颈,高速并发对于追求ACID的OLTP而言,首先出现性能瓶颈的是其锁机制,而对于OLAP而言,磁盘I/O是其主要瓶颈。为解决这些瓶颈,各大IT厂商都推出了各有特色的创新性技术,这其中主要包括:分布式技术(计算、存储)、RDMA、FPGA、大表扫描技术、数据分层、数据压缩、索引与分区等等,仔细分析各家产品,可以发现几乎在每一项技术中,各厂商都有相竞争的创新技术,此处笔者简略摘取几例有关IBM和oracle的技术对比:Oracle的Exadata采用分布式锁机制,IBM的DB2 PureScale直接引入其主机中采用的集中锁机制;Exadata采用PCI flash card复制热数据,DB2 PureScale采用Easy Tier技术;Exadata采用Smart Scan,IBM Smart Analytics System采用Piggy-back scan等等,这类技术创新非常之多。
此外,因为Hadoop在分布式领域应用的大获成功,以及NoSQL在对非结构化、半结构化数据的处理能力,两者已经成为传统Data Warehouse的必要且有竞争性的补充,企业IT厂商已经推出类似产品。鉴于对分布式数据库的三个目标CAP(一致性、可用性、分区容忍性)的不同偏好,已经出现数十种NoSQL系统,可见此领域创新之密集。
业务应用(Business Application):业务应用包括ERP, HCM, CRM, BI等,支撑着企业正常的业务运营。传统上,这些业务应用功能繁多、安装复杂、运维困难,环境封闭,交付单一,这些特点在云计算时代均被颠覆,呈现出“四化”趋势:平台化、服务化、移动化、社交化。
平台化有多层含义,一方面,业务应用的开发、测试、发布、运营等各个环节,都在云计算平台上进行,这些新型业务应用天然具备云的特点,例如高横向扩展性等;另一方面,传统ERP, HCM, CRM的厂商,逐渐将自己的套装软件发展成为平台,以平台即服务(PaaS)的方式交付。服务化是指业务应用的厂商告别单一的套装软件的交付方式,在有条件的情况下采用在线服务的方式进行交付,对用户而言意味着减少了运营负担,而应用厂商而言意味着更快的交付。移动化是指企业用户可以通过手机等移动设备随时缩地的访问业务应用,极大的提升了工作效率。鉴于目前社交网络的迅速发展,越来越多的企业开通微博等社交网络,面对自己的客户与合作伙伴,传统ERP,,HCM,CRM等呈现社交化的趋势,有的是自己开发一个社交网络,而有的是与既有的流行社交网络(如Facebook, Twitter等)直接集成。
工作效率(Business Productivity): 在企业信息化的过程中,不可避免的出现大量的IT系统、流程、工具,而这些大量的系统、流程、工具往往彼此关系松散,用户的获取十分困难,而随着web2.0的发展、移动设备的普及,企业用户追求更加便捷的办公IT环境,企业工作效率体系呈现如下四个趋势:
协同/社区化,传统企业OA向协同/社区化转变,进一步打破部门壁垒、更容易分享、协作;集成的办公环境,体现在信息获取,业务流程,工作交流,效率工具,会议系统等的整合;搜索(Search),搜索成为企业用户获取信息的主要人机交互方式;BYOD(Bring Your Own Device),员工习惯携带自己的移动设备进入办公环境,带来效率的同时,也带来了信息安全的挑战。
软件工程(Software Engineering): 软件工程的目标依旧是更快更敏捷的交付高质量的软件,当出现问题能时能快速修复。今天,Agile拥有越来越多的实践者、相关工具也日益普及,SOA作为一种架构理念也深入人心,而进入云计算时代,软件工程进一步发展,出现更多的理念与趋势。
首先是DevOps,这个由Development与Operations连在一起的缩写,代表着开发测试与运营的融合,持续集成,持续交付,这个理念首先源于互联网企业,进而被传统企业IT所采用,可以有效的提升交付速度,传统套装软修复一个问题经常需要数周、甚至数月的时间,而采用DevOps的方式可以将周期压缩至30分钟。DevOps对目前企业IT中广泛采用云计算服务提出更高要求,在传统IaaS服务上需要增加能涵盖软件生命周期的管理能力,借助云的快速部署能力,可以很快的部署开发测试环境,自动运行大规模测试脚本,并且可以很方便的复制客户环境。DevOps与云计算天然相关,与软件的新型交付模式——在线服务方式也天然相关,但是DevOps作为一种理念,也可以用于提高传统套装软件的交付速度与质量。
在云计算时代,企业IT更多的接纳、支持开源,不管是套装软件还是在线服务软件,一个明显的例子就是开源的死对头——微软成立一个专门的开源子公司,用于发现、利用开源的机会。看似是微软在开源面前的低头,其实背后的一个道理却不容忽视——当软件采用在线服务的方式交付时,用户还在乎服务背后的软件是开源还是闭源吗?
笔者在写这篇博文时,曾经想将其命名为“互联网对企业IT的影响”,或者“消费IT对传统企业IT的影响”,后来考虑到这不能概括本文的所有内容,于是改名为“云计算时代企业IT技术趋势综述”。即使如此,读者一定可以看到,本文的绝大部分技术创新都是源于互联网,源于消费类IT。的确,这一波技术创新大部分发迹于互联网与消费类IT领域,而传统企业IT很好的发现了利用这些技术的切合点,因此引发了企业IT领域的“二次创新”,而这些创新带来的变化就是:更高效,更敏捷,更贴近业务与用户。
出处:http://joyale.blog.51cto.com/2698460/947230

IBM发布SKC 实现云计算快速部署

2011年12月7日,IBM在北京举行了主题为“云固基础,智算未来”Power Cloud战略发布会,正式推出了Power新一代企业级基础云平台(IaaS),并在业界率先提供全面完整的解决方案,以分别满足企业级云计算平台建设从虚拟化、到系统资源池、最终达到云服务管理的三个阶段的不同需求;同时,大会还隆重发布了“IBM基础架构云快速部署解决方案套件—Starter Kit for Cloud(SKC)”。作为IBM 2011年在全球发布的“智慧云(SmartCloud)”中的重要产品,SKC能够在系统资源池基础上实现“快速云(Entry Cloud)”的部署,确保以最经济、最简捷的方式成功实现云服务管理的落地,为广大用户加快实现“智慧的运算”、以IT推动企业核心竞争力创新奠定基业长青的云基础。
面对云计算这一历史机遇,IT部门在重新思考IT的方向:如何迅速交付服务、实现跨环境整合、提高效率、降低成本;而业务部门期望重塑业务:发掘新的收入来源、加快上市速度、满足变化的客户需求。据《IBM2011年CIO调查报告》显示:IT部门被云计算的低成本、高效率和可控性所吸引――60%的CIO打算使用云计算,而两年前这一数字是33%;业务用户则被云计算的简单、自助体验和新的服务功能所吸引――55%的业务高管相信云计算能够帮助实现业务转型和更加精益、迅速、敏捷的流程。
IBM大中华区副总裁、系统与科技部总经理唐华先生表示:“在今年IBM百年华诞之际,IBM提出了‘智慧的运算(Smarter Computing)’这一重要战略,期望通过为数据而设计(Designed for Data)、为工作而优化(Tuned to the task)、通过云计算管理(Managed in a cloud)三大领先优势,帮助各行业用户奠定智慧而坚实的IT基础架构。IBM Power Systems融汇了‘智慧的运算’三大优势,基于优化的系统,构建领先的企业级虚拟化平台、强大的系统资源池以及提供可快速部署的云服务管理,并实现大数据整合,切实帮助了国家统计局、上海电信、贵州移动等诸多中国客户快速建立云优势、成就云时代的商业创新!”
业界全面领先的Power Cloud:新一代企业级基础云平台
作为云计算概念的提出者和全球云计算技术的领导者,IBM凭借为实现“智慧的地球”愿景而量身打造的Power Systems智慧系统,不断引领客户快速、成功地实现云落地。IBM系统与科技部大中华区Power Systems服务器产品总监李红认为:“在实施云计算之前,企业用户首先需要根据自身业务的独特需求选择不同的云模型,相对于需要从零开始购买硬软件、开发全新应用的分布式公有云而言,企业私有云的部署模式是通过对原有IT设施的云化管理,平滑地将现有应用迁移到云平台。”她进一步介绍了企业级云计算平台建设的三个阶段,以及IBM Power Cloud具有针对性的卓越解决方案:
架构企业级虚拟化平台:云计算的基础
虚拟化在大规模数据中心管理和解决方案交付方面发挥着巨大的作用,是企业迈向云计算的必经之路。虚拟化能够实现应用与硬件解耦,使得硬件资源可以动态地在应用系统间调拨,从而对IT资源实行统筹规划,打破项目之间的界限,形成资源共享、提高利用率。PowerVM基于IBM POWER处理器提供行业领先的虚拟化技术,为企业级云平台提供企业级的虚拟化支撑,具有强大的性能扩展、安全可靠、调配灵活和绿色节能等优势。
例如在性能扩展方面,POWER7的性能遥遥领先,PowerVM虚拟分区也具有业界无可比拟的强大扩展能力,单个虚拟机可以使用物理机的所有资源,从而保证了Power虚拟平台强大的性能扩展能力;又如在安全和可用性方面,Power与PowerVM提供更高的安全可靠性,独有的UNIX在线迁移功能减少了计划停机所带来的服务中断,基于Power的AIX系统达到99.997%的可用时间,IBM还是唯一的设计从电路到Hypervisor虚拟环境的厂商,从而能够全面保障安全性,因此Power虚拟化包括Hypervisor和VIOS都通过了EAL4+认证。
实现系统资源池管理:云计算资源管理的最佳途径
云计算作为一种新的IT基础架构管理和服务交付方式,需要用来管理大批高度虚拟化、标准化、自动化、高效的计算资源,使其表现为一个单一的大型资源池。因此,在虚拟化的基础上构建云计算资源池、实现IT系统资源共享与按需分配,是云计算发展的必经阶段。系统资源池是一组作为单一实体进行管理的虚拟系统组件(服务器、存储器和网络),通过VMControl使系统资源池的管理像管理单个系统一样简单,是实现云计算和动态基础架构的关键功能。通过VMControl统一管理系统资源池,可以打破传统的“烟囱式”IT建设模式,实现资源的自动化部署,降低环境搭建和执行的时间、避免潜在的人为错误,实现标准化的操作系统、应用软件部署和补丁管理,缩短业务需求的响应时间,满足应用按需申请资源、快速上线等需求。
成就云服务管理平台:跨进云计算的最后门槛
为了帮助客户领先一步羸取云计算的优势,IBM于今天推出了IBM基础架构云快速部署解决方案套件—Starter Kit for Cloud(SKC)。它可以帮助用户以最简洁、最快速的步骤构建Power Cloud云服务管理,通过项目管理、计费、流程管理等功能构建IT消费的新模式,在系统资源池的基础上跨越云计算的最后门槛,实现用户服务模式升级,快速响应业务需求,推动业务创新。
SKC是IBM中国系统与科技开发中心(CSTL)基于部分中国客户对云计算平台管理的需求开始研发、经IBM全球研发机构合作打造的、在全球发布的标准产品。该解决方案利用IBM VMControl的扩展方案和多虚拟机平台支持能力,基于REST开放架构,可以同时管理Power和x86服务器,具有部署简单快捷、易于上手和使用的鲜明特点。它利用已有的硬件和虚拟机环境,通过自助式按需获取计算资源,对操作系统和应用进行快速部署,其模块化架构非常易于二次开发,并且易于与企业已有的流程和系统整合,它将新工作负载实现价值的时间从几个月缩短至几分钟,支持更高效的运营,帮助控制运营成本,帮助简化数千个用程序映像的存储。
IBM中国系统与科技研发中心存储与科技部总监谢东表示:“SKC不仅体现了中国企业对云平台管理的未来构想和本地需求,同时融入IBM自己构建、运行和管理为超过 10 万专业人士提供服务的内部云平台的经验;同时,SKC采用了在世界各地企业部署云计算的成熟技术,还利用了经过时间考验的私有云实现经验和最佳实践,因此SKC已经成为许多中国客户及合作伙伴成就‘快速云’的必备工具,并为企业通过IBM Service Delivery Manager(ISDM)跃升到更高级的云平台管理提供跳板。”
作为同IBM中国开发中心和IBM中国研究院并列的三大研发机构之一,IBM中国系统与科技研发中心(CSTL)是国内系统科技研发领域的权威机构,凭借突出的人才技术优势、世界级的研发测试工作、持续的创新能力和前瞻的本地技术洞察,CSTL贴近中国的客户和ISV,针对特定需求提供快速响应的技术支持服务,为云计算在中国的普及落地提供保障。
华迪计算机集团有限公司云计算服务事业部副总经理胡荣表示:“华迪公司专注于云计算技术和业务模式的发展,提供涵盖咨询服务、集成实施、产品研发和运营维护等全方位、端到端的整体解决方案,在电信运营商省级平台及政府高新企业园区得到率先应用。在与IBM系统与科技事业部的支持下,我们已经采用了SKC作为华迪‘云数据中心综合运营管理系统’解决方案的一部分。通过应用SKC,我们能够快速地建立起云计算管理平台,从而帮助用户实现IT基础设施的统一管理、统一分配和统一部署,快速响应企业对IT资源的需求和服务交付。我们期待以SKC为合作契机、充分发挥华迪在云计算平台管理的行业领先优势,和IBM一起共同为更多企业提供高端的云计算服务。”
IBM系统与科技部大中华区Power Systems服务器产品部总经理韩忠恒先生表示:“作为服务器市场的绝对领导者,Power Systems开启了一个崭新的计算时代,凭借卓越的产品特性、稳定发展的产品路线图和持续的研发投入,一直为用户和ISV提供高价值的支持与服务。50% 的中国五百强企业正在使用Power,超过3000个企业级的应用运行在Power服务器上,超过8000个客户选择从HP/SUN迁移到POWER 7。Power 已经成为企业级关键应用的首选平台,现在有越来越多的客户选择部署Power Cloud,构建业界领先、安全可靠、绿色节能的企业级基础云平台,加快实现‘智慧的运算’,以全新的IT价值推动企业从优秀到卓越!”

虚拟化,为电信运营商带来什么?

虚拟化因其对IT的关键、变革性的技术理念,日益深入人心,也必将影响深远。IT虚拟化这一激动人心的架构可以创建容量无限的动态资源池,从而帮助用户实现对资源的随时随地访问。对于转型中的电信运营商来说,IT系统不仅是提高效率的工具,更会成为拓展新业务的利器,有关虚拟化技术的讨论在电信业渐趋热烈。
  近年来,虚拟化已经成为IT业界的焦点话题,尽管多数专家对于这一方向确信不移,但是对于IT系统日益庞大的电信运营商来说,应用尚不广泛。这一革命性的技术究竟会对电信IT系统带来哪些影响?尤其是对于运营商降低成本和提高收益有何帮助?上海电信在虚拟化领域的一些探索带给我们很好的启示。
  启示一挑战
  在上海电信近年的业务拓展中,现有的IT架构在一定程度上制约了业务的发展,尤其是在虚拟主机业务和虚拟独立服务器(VPS)业务方面,面临着一系列挑战。
  ——易用性。目前所用的软件为Xen,易用性较差,功能上有限制,在虚拟主机业务上应用较为合适,但是并不能很好地支撑更为灵活的VPS业务需求。
  ——可管理性。当前所用的虚拟化软件,兼容性和可管理性不是非常理想,对技术人员的要求也较高,另外诸如主机迁移、HA等功能也亟待实现。
  ——能源损耗。一方面,电信内部IT系统越来越庞大,机架资源、电力资源显得日趋紧张。而另一方面,设备硬件资源并未得到充分利用,很多系统空闲率非常高,资源浪费情况严重。而对于IDC机房这样的服务器集中程度高、密度大的地方,电力资源匮乏的问题更加突出。
  ——商业竞争。目前的虚拟主机业务资费和同行对比,优势不断缩小,需要进行自我改善,寻求新的商业竞争优势。
  所以,从IDC增值业务角度出发,上海电信需要有更好的IT解决方案,优化内部IT管理,进一步与业务需求相结合,不断提升商业竞争优势。而虚拟化在资源整合以及节能减排等方面的应用,是上海电信在优化IT架构中关注的重点。
  随着机构重组的进行,现有业务结构变更,一些新的业务也不断拓展,我们不难看出,原有IT架构在业务灵活性、系统扩展性、应用兼容性以及管理成本方面,难以满足新环境下的需求,上海电信信网部决定引入微软虚拟化技术,对现有IT架构实施优化和调整,以期进一步加强IT与业务紧密性,并降低IT总体拥有成本。经过评估,上海电信认为,利用虚拟化技术构建IT虚拟化基础架构,能够对现有的各种应用及业务系统服务器进行整合,对服务器资源进行更灵活、更合理的配置,极大程度地利用硬件投资,在提升IT服务的灵活性和高可用性的同时,极大降低IT管理成本。
启示二评估
  虚拟化技术不应被看成是孤立的、战术性的工具,相反,虚拟化技术将对整个企业IT系统产生深远的影响,从数据中心到桌面,企业应确信其为基础架构战略的一部分。上海电信与微软合作,针对应用需求现状,综合虚拟化解决方案特性,制定了虚拟化技术应用解决方案。上海电信对虚拟化技术的各个方面进行了评估,认为应用虚拟化技术,能够帮助上海电信提升IT系统灵活性及对外服务能力,并且有效降低运维成本。
  在对虚拟化技术的评估过程中,上海电信根据自身的发展需求,着重评估了微软虚拟化解决方案的易用性、可管理性以及测试其对应用系统的支持和虚拟化的效果。主要测试项目包括以下方面:产品安装配置,构建虚拟化基础架构环境;虚拟机部署,使用SCVMM进行虚拟机部署,能够支持Xen等异构系统,并利用SCVMM的模板化部署以及PowerShell,实现虚拟机的高度自动化部署;物理迁移,利用SCVMM的快速迁移功能,在物理服务器直接快速迁移虚拟机,并可将物理服务器直接转换为虚拟机;高可用性,通过在物理服务器群集构建故障转移群集,并配合Hyper-V双重保障虚拟机的高可用性;监控,利用SCOM集中化,全面地监控虚拟化环境中各种服务机应用的运作;备份,利用DPM实现虚拟机的备份及集中化管理,并能够自动、快速创建还原点;安全管理,利用活动目录的安全特性,并配合SCVMM的安全模版化管理,对物理和虚拟化环境实施安全统一配置机管理;资源管理,利用SCVMM能够很好地管理虚拟资源中的CPU、内存以及存储,并且能够实时动态进行资源调配。SCVM配合SCOM能够实时监控物理机和虚拟机资源分配的状况以及压力状态,从而实施自动化调整动作。
  这一虚拟化解决方案,能够实现新的虚拟化IT架构,从而更加灵活地适应新的业务需求。
  下一步,上海电信将考虑利用微软虚拟化解决方案,整合服务器资源,提高现有硬件资源利用率,同时对其他业务系统应用微软虚拟化高可用性架构。
  启示三成效
  上海电信信网部IT人员认为,物理到虚拟机的快速迁移,非常具有特色,能够实现从物理环境到虚拟化的转移。因此,虚拟化技术,能够为上海电信带来显著的收益,这些收益包括以下方面。
  ——极大提高服务器利用率。服务器整合是所有虚拟技术中重要的部分,是将操作系统和其上层运行的应用程序打包后,以虚拟机的形式运行在基于Hypervisor(一个瘦软件层,提供硬件的基本接口)的物理服务器上。单个物理服务器可运行多个虚拟机,同时提供隔离和安全防护,每个虚拟机都像在自己的硬件上运行一样。通过在进程和内存消耗方面匹配及互补工作负荷,上海电信可以降低支持业务操作的物理服务器数量。
  ——提升对外服务的灵活性和高可用性。由于电信行业的特殊性,上海电信能够利用微软服务器虚拟化解决方案,通过针对虚拟机资源占用的动态分配,为新上线、用户访问量大的后台服务器分配较多的资源用以支撑该项服务,为用户提供良好的使用体验。此外,全面的监控及管理,包括安全更新、性能及应用健康监控、运维配置管理、虚拟机映像及数据库文件备份等手段,可以使服务器长期处于高可用状态,减少停机维护时间,达到较高的用户满意度。面对复杂的IT环境,上海电信的IT专业人员,每天都需要面对大量的服务器运行维护与最终用户支持工作。通过将业务应用迁移至虚拟服务器,IT人员只需维护少量的硬件服务器即可实现业务系统的正常运行。同时,虚拟化解决方案所提供的管理工具,可以简化和加速虚拟环境的设置过程。如果新的业务系统需要更多IT资源,那么添加资源的过程也是非常简单而且实时的,工作负载完全可以实现自动适应,以形成更动态的资源分配。
  ——极大降低总体拥有成本。上海电信在不断对服务器硬件设备进行投资的同时,也注意到单个服务器的利用率问题。同时,受席卷全球的经济危机的影响,用于购买新的硬件设备的预算将会被削减,于是怎样提高服务器的利用率就变成一个电信公司所关心的问题。微软虚拟化技术就是一种应对这种挑战的技术。微软虚拟化技术,既节省了硬件开销,又减少了硬件设备的维护数量,IT人员的人力成本也随之大大降低。上海电信可以有效地控制IT系统的成本,公司可以将更多的资金用于企业的业务发展。

电信IT部门如何实施虚拟化

对电信运营商的不同企业应用,如ERP、邮件、OA以及计费系统、CRM等,如何评估和选择实施或不实施虚拟化技术?
刘宏程:评估实施或者不实施虚拟化技术我们觉得不能一概而论,虚拟化的实施其实是一个复杂的过程,我们建议用户遵循规划、部署和迁移、运行维护的步骤实施虚拟化。
评估属于规划第一步。从服务器硬件角度考虑,原有服务器如果需要升级到新的高性能系统,或者新系统平均使用率低于40%,那么从应用角度考虑,不需要特殊硬件支持的应用,如ERP、邮件、OA和CRM等均适合虚拟化。
需要指出的是,这个评估过程需要一套完善的数据收集和分析等过程,包括收集客户原有配置及服务器性能数据、确认被虚拟化的对象、推荐虚拟化采用的平台、确认在虚拟机里运行的应用及分配等,建议用户选具有丰富经验的IT合作伙伴进行专业虚拟化评估服务。
惠普已经推出广泛的产品(软硬件)和服务组合,旨在帮助客户高效地部署虚拟化,实现更为出色的业务成效。惠普致力于虚拟化技术已有很长一段时间,拥有极为丰富的经验,可以根据客户特定环境需求制作专业化的虚拟化建议书,指导用户实施虚拟化。
虚拟化本身存在哪些安全风险,如何解决?
刘宏程:目前,虚拟化的初步应用让许多新用户着实感到兴奋:原来一台服务器只能运行一两个应用,现在通过虚拟化,甚至可以将一台服务器变成十台,同时可以运行很多不同的应用。而且,用户构建一台虚拟机,完全比以前单独采购物理机,重新再装载各种各样的应用会容易得多。
因此,有的用户就会无限制地创建虚拟系统。现在,很多用户碰到了类似的问题,原来的10台机器进行虚拟化之后,变成了100台虚拟机,但并不是虚拟化之后,就不需再进行管理了。100台虚拟机还会碰到与100台物理机同样的问题,比如说分发部署:如何将100台虚拟机快速安装好,以节省管理员的宝贵时间;如何快速地恢复系统,这里面还包括像诸如安全扫描,为漏洞安装补丁等操作。这些操作不管是物理机也好,还是虚拟机也好,只要操作系统有漏洞,肯定会有这方面的管理需求,这是不可避免的。
因此,如何有效地治理企业IT架构环境里数量众多的虚拟机,如何实现物理和虚拟服务器之间的良好运维,成为了亟待解决的问题。
虚拟化的软硬件投资成本如何计算,电信运营商如何分析投资收益?
刘宏程:虚拟化技术最直接的收益是能满足运营商IT应用峰值容量的需求,减少服务器的数量,例如通过采用虚拟化技术,某企业中的1000台服务器可以被85台服务器代替,耗电可节省50%。但虚拟化的投资成本除了软硬件投资成本外,其实还有前期部署成本、员工培训投入等等成本。如果CEO们还是把虚拟化技术简单认为是一项技术工具,而非公司提升业务成效和竞争力的有效手段,那么虚拟化的更大范围普及恐怕依然难以摆脱桎梏。
作为全球领先的虚拟化技术厂商,惠普认为,企业虚拟化战略的重心应该放到如何促进企业业务发展上,而不是在技术应用的后果层面。一旦企业开始从业务成效角度关注虚拟化技术,则其不仅能降低成本、提高效率,而且还能充分体现虚拟化技术的价值。惠普不断推出的基于“业务科技”理念的虚拟化技术相关产品、服务及解决方案正体现了这一核心观点。
虚拟环境对IT管理人员提出了哪些挑战,运营商IT管理人员需要掌握哪些必要的技能?
刘宏程:惠普最新的调查结果显示,缺乏培训和经验是客户实现虚拟化项目成功实施的最大障碍。针对IT管理人员需要掌握的技能,惠普进行了科学的总结,并将这些需要具备的技能通过提供新的培训课程和支持服务弥补这一资源空白,包括为技术团队提供虚拟化专业技术。这些服务进一步扩展了惠普针对整个虚拟化生命周期的广泛服务产品,包括持续的服务改进。比如:惠普虚拟化支持服务中的面向一系列惠普虚拟软件产品的惠普培训课程,包括HP-UX虚拟化工具训练营示范系统和工作负载管理。此外,惠普操作管理服务可以帮助运营商提高员工的技术水平,在各种流程中实施相应变更,并提供适用的ITIL/ITSM和项目管理技术。
案例1 中国移动研究院利用虚拟化降低能耗
在2008年,由于电力供给不足,使得中国移动研究院实验室的电力供应无法满足测试需求,某些测试设备无法加电,从而影响测试进度。其中各专业实验室的服务器每年的电力消耗巨大,因此,降低服务器的能耗意义重大,可以有效解决实验室电力不足的问题。
截至2008年10月,中国移动研究院实验室公用PC服务器共有18台,各专业实验室共有PC服务器52台(四路10台,两路含刀片42台),各专业应用平台共有PC服务器49台(四路6台,两路43台);中国移动研究院决定利用服务器虚拟化技术,达到节能的效果。
经过前期工作,目前实验室公用服务器部分已经实施了虚拟化管理,所有服务器的申请将通过维护人员评估,通过VirtualCenter浏览器界面、从服务器摸板库中选择标准环境、签出及部署等操作只要几分钟,然后将IP地址发给申请人员,并到期自动回收,实现了按需分配为虚拟服务器。针对中国移动研究院IT数据中心将采用大量PC服务器,数据中心在设计之初就充分考虑通过虚拟化技术提高服务器资源利用率并简化维护工作量,并通过虚拟化HA提高各应用系统的可靠性,做到服务器物理故障不影响应用运行。
目前,中国移动研究院实验室虚拟化平台共管理物理机18台,具有同时提供30-60台虚拟机的能力,电力和空间的节约达到100%以上,并已将其引入了多项测试中。同时IT数据中心通过四台四路PC服务器提供38台虚拟机作为研究院IT应用和测试环境。通过IT虚拟化技术,不但大大提高了服务器的利用率,加强了对PC服务器的管理,节约了成本,而且有效地降低了能耗,减少了实验室的服务器空间占用,打造了名副其实的“绿色”实验室。
案例2 中国电信上海研究院借虚拟技术优化测试环境
中国电信上海研究院承担了很多大设备产品的测试工作,不仅任务繁重,而且测试环境的变化也十分频繁,这对测试环境的部署提出了非常高的要求:研究院需要搭建快速的测试环境,及时地更换测试环境,以便更好地利用硬件设施;需要重复利用一些测试环境,但是又不能长期将服务器闲置;需要更好地对服务器进行管理,降低维护成本。为了应对这些问题,中国电信上海研究院决定对其IT基础架构实施虚拟化策略。
研究院利用四台DellPowerEdge6850服务器,该型号服务器为基于Intel服务器芯片的四路四核系统,后端连接EMCCX600磁盘阵列,搭建了整个虚拟化应用架构。同时利用VMWareESXSer-ver3.5作为其服务器虚拟化的产品,配合使用其中的P2V功能、VMotion功能和HA高可用性,部署了部分测试用的虚拟环境,在每台物理服务器上部署了5~6个虚拟机,通过VirtualCenter能够进行统一的虚拟机管理和计算资源、存储资源的调度,实现了快速的系统迁移。
研究院通过采用虚拟化方案,利用统一的模板,能够很快部署好新的应用环境。此前搭建测试环境需要数天的时间来准备,现在通过服务器虚拟化模板,只要不到一小时的时间就能够准备完毕,如果是此前的环境重用,只需要数分钟进行虚拟机的启用即可。应用虚拟化方案之后,研究院的服务器利用率从原有的平均10%提升到了现在的70%~80%。此前,如果同时有10多个测试任务的话,由于涉及到多个部门,每个任务都需要多台服务器,必须同时准备几十台服务器,从而导致服务器的资源分配问题。
通过服务器虚拟化技术,在一台硬件能力较强的服务器上进行切分,能够快速地搭建所需要的测试环境,最大化地利用服务器。
与此同时,针对原有的应用测试环境,研究院通过P2V工具很方便地将其迁移到虚拟环境中,这样就能够保证原先已经搭建的虚拟系统能够不中断地迁移到新环境之下,不会对企业的测试造成损失。上线运行以来,系统一直非常稳定,很好地满足了测试需求,并且能够降低人力维护成本和电力运行成本,减少了对物理服务器数量的需求,从而降低了对数据中心空间的占用。基于此次虚拟化实施的成功经验,中国电信上海研究院准备在将来对现有的x86服务器进行进一步的整合,在更大范围内部署服务器虚拟化方案。

CloudStack运维常见问题及解决办法

CloudStack 2.2.y目前已经在生产环境广泛部署,CloudStack3.0.x由于还在深度开发,目前并未大规模进行商业应用.
以下就CloudStack2.2.y在安装,运维中出现的常见问题进行汇总,并给出相应的办法绕开问题.
1. CloudStack的高可用性(HA)功能欠佳
CloudStack针对设置了HA的VM,要提供VM在异常停止状态下自动重新启动.由于HA整体逻辑较为复杂,分为investigation->Fencing->Restart三个步骤.异常断电,网络闪断的情况下investigator需要一段时间来确定VM状态是否是运行,停止或未知,在未知的情况下需要对VM访问的资源,特别是存储卷进行隔断的操作.在保证隔断操作成功的基础上,可以认为VM已经停止,可以重新启动.这里所做的一切是为了保证同一时间同一个VM只可能有一个是在Running状态,避免对存储卷造成损坏.
目前CloudStack的HA功能并不能保证触发HA的VM一定能最终成功运行.这里需要保证主机硬件,电源及网络设备正常运转,特别是保证网络稳定.一旦发生多台断电断网的情况,可以试着让CloudStack通过HA自动恢复,如果在一定时间内(小于15分钟)无法正常恢复,需要手动更改数据库,使状态为关机,然后再启动虚拟机.CloudStack3.0规划将会使用Hypervisor提供的HA,稳定性会得到增强,但天下没有免费的午餐,拥有HA功能的Hypervisor版本售价也会更高.
2.CloudStack中对虚拟机进行网络限速
CloudStack中默认的网络限速无法满足需要(200Mbit/s).这时需要调整全局配置参数:network.throttling.rate与vm.throtting.rate来增加带宽.但目前还无法针对不同的VM设置不同的网络带宽,只能寄希望与该功能会加入到VM的服务方案里的可编辑选项,这样可以保证对VM网络访问带宽进行定制.
3.CloudStack中VLan规划结束,无法进行扩展
在最初建立资源域时,需要设定好guest网络的VLan,这是一个范围,一旦设定好,guest网络可用的VLan也就定死了,无法动态扩展.实在需要的话,只能通过更改数据库: 修改表data_center和op_dc_vnet_alloc可以达到这个目的,不是很友好.
4.跨资源域复制模板和ISO失败
由于权限问题,无法在资源域之间复制模板及ISO,可以通过更改二级存储系统虚机(SSVM)中二级存储挂载的目录的.htacess文件,将需要访问的IP加到allow里
5.在系统某些资源快达到临界(threshold)时,创建VM失败
系统有多个主存储,某些主存储接近threshold设置时,新建带数据盘的VM总是失败,即使有些主存储还有足够的capacity也不行.这主要是CloudStack检查存储能力的时候,对于ROOT和DATA的卷分开检查,这将导致ROOT+DATA的存储超过所要分配的主存储,显然这种方式不正确.目前可以通过调整全局配置storage.allocated.capacity.threshold来暂时解决,但最终需要两种解决方法: a> 通过ROOT + DATA的总量来确定分配的主存储 b>更合理的方式是ROOT,DATA分开检查,每个检查成功后要预保留空间,以免出现NotEnoughSpaceException,同时,ROOT及DATA可以在不同的主存储上分配
6. XenServer与某些主机板载网卡兼容性问题
主要表现是带VLan的ARP包无法经物理机到达虚拟机,据查是XenServer与某些Intel 82576网卡存储兼容性问题,最终通过升级网卡驱动得以解决.因此希望在选择硬件时,参照一下相应Hypervisor的HCL列表
7. XenServer不支持某些类型的操作系统
对于像Ubuntu10.04,CentOS5.6等一些操作系统,不支持PV虚拟化,这时要使用这些OS来创建模板,需要选择Other 64bit/32bit,这时虚拟将运行在HVM模式下.性能会有一部分损失.对于一些OS,XenServer官方不支持,比如BSD,也不建议尝试
8. XenServer Emergency Mode
由于网络配置,闪断等问题导致管理网络通讯断开,在网络恢复后发现部分XenServer网卡信息丢失,重启主机也无效.其主要原因是XenServer pool slave长时间无法连接Pool Master然后进入自保护模式,也就是emergency mode.
目前的解决方式是在每一台丢失网卡信息的主机上支持指令:xe pool-emergency-transition-to-master,因此这里也再次强调网络稳定对于CloudStack的重要性
9. 虚拟机HA失败,虚拟机状态不一致
仍然是由于大面积断网后,系统尝试HA但部分VM HA失败,导致VM的状态与真实情况不一致.这种情况下需要在数据库中手动恢复.
10. 建立特大卷的快照/模板超时
原因: 1>本身在代码里限定了超时时间为120分钟
2>主机与二级存储之间的传输速度太慢<10M/s 3>全量备份时使用了vdi.copy,这个方法不仅做拷贝,还要校验及合并等操作,非常慢
目前的方法是保证部署架构里二级存储足够快,适当调整全量快照与增量快照的比率
11. VMWare集群中系统虚拟机无法创建
首先检查网络配置上是否正确,系统VM是在管理服务器上挂载二级存储,并通过https协议将系统VM的模板PUT到ESXi中,这里要确定管理服务器对二级存储的访问权限以及SSVM对二级存储的挂载权限
从上面生产环境中运维的问题可以看到,CloudStack要在部署之前做好整合规划并做兼容性测试,同时保持网络稳定,在目前CloudStack的版本中,谨慎使用HA功能,建议在正式上线前先做Staging Cluster,然后平稳过度到生产环境,最后要定期做备份.
 » 转载请注明来源:CloudStack中文社区
 » 本文链接地址:http://www.cloudstack-china.org/2012/07/89.html

深入了解CloudStack中的网络设计

网络的设计规划是CloudStack的一个亮点,也是CloudStack被广泛商业应用的一个主要原因.本篇深入讨论一下CloudStack中网络的设计方式.
CloudStack中根据不同的数据流量类型设计了管理,公共,客户及存储网络,可以简称为PMGS ( Public, Management, Guest, Storage) 网络.
Public:当虚拟机需要访问Internet或外部网络时,需要通过公共网络;这就说明客户虚拟机必须被分配某种形式的外网IP.用户可以在CloudStack的UI上获得一个IP来做NAT映射,也可以在Guest与Public之间做负载均衡.所有的Hypervisor都需要共享Public VLan以保证虚拟机对外的访问.
Management:CloudStack内部资源相互通信会产生Management流量,这些流量包括管理服务器节点与Hypervisor集群之间的通信,与系统虚拟机之间的通信或与其它组件之间的通信等;集群规模较小时管理流量只占用很少的带宽.
Guest:最终用户运行CloudStack创建的虚拟机实例时产生Guest流量,虚拟机实例之间的相互通信通过客户网络.
Storage:主存储与Hypervisor之间互连互通的流量;主存储与二级存储之间也会产生Stroage流量,比如虚拟机模板和快照的搬移.
CloudStack中网络模式可以分成基本网络和高级网络两种.其中MGS(Management,Guest,Storage)三种网络对于基本网络及高级网络通用.而P(Public)则只是针对高级网络才存在.可以对比下图:

基本网络 vs 高级网络

这里强烈建议不同的流量类型单独设置网卡,而对于存储网络最好用网卡绑定(NIC bonding),这样在系统的稳定性和性能方面都会有极大的提高.
基本网络模式下IP地址规划
如果打算使用基本网络模式建立CloudStack云计算环境,那就意味着客户虚拟机实例将会和CloudStack,Hypervisor整体架构拥有相同的CIDR段.这样在规划IP地址时每个资源域都要预留足够的IP地址.假设你规划有8个资源域,每个资源域容纳2000台虚拟机,那IP地址CIDR可规划成192.168.0.0/20,这样能保证最多16个资源域,每个资源域IP数量有2^12-1=4095个,除去机架,系统虚拟机,主机占用的IP,提供2000个VM的IP绰绰有余.
注:具体环境中采用哪个段的IP地址可能要与IT环境相一致.
高级网络模式下的IP地址规划
高级网络模式相对来说较为复杂,在这种模式下,每个账号都要分配:
1. 公网IP,这为了保证对外网的访问,通常这个IP设置在虚拟路由器上
2. Guest网络IP范围,比如默认的:10.1.1.0/24
3. Guest网络隔离的VLan ID
以上默认的Guest网络IP范围对于所有账户都是一样的,只有管理员可以进行更改使不同账号使用不同的的Guest网络IP范围.
一个账户下的客户虚拟机实例通过它专属的VLan进行相互之间的访问或与这个账户的虚拟路由器互通.客户虚拟机可以运行在资源域内任意一台主机上;通过二层交换的VLan端口汇聚(Trunk)功能,可以保证同一个VLan下所有的虚拟机互连互通.
预留系统IP地址
当配置一个机架时,需要为系统虚拟机保留一些IP地址,这部分是管理网络也称为私有IP地址.通常情况下10个IP地址对一个机架是足够用了.这些IP地址会被SSVM(二级存储系统虚机)和CPVM(控制台系统虚机).如果系统很庞大,CPVM会被自动部署多台来分担负载.
在整个云计算环境中,所有的主机和系统虚拟机都必须有一个唯一的IP地址,因此在添加新的资源域时,也需要考虑当前环境中资源域的网络规划.
本地链路IP(Link-Local)
在使用XenServer或KVM作为主机时,系统虚拟机(SSVM,CPVM,V-Router)会被分配一个本地链路的IP地址.这个地址的CIDR是169.254.0.0/16;这样看来本地链路的IP地址会有2^16-1=65535个,目前来看不太可能超过这个范围.如果一个机架只包含XenServer或KVM的集群,那可以分配给这个机架下的主机一个C类段的地址形如:x.x.x.x/24.如果是VMWare的集群,给机架分配的IP地址范围会被系统虚拟机占用一些那么就要考虑比C类段大一些的范围作为机架的IP地址段,形如:x.x.x.x/21,这样会有2^11-2=2046个IP供给主机,存储以及系统虚拟机使用.
虚拟机隔离
在同一个资源域内,虚拟机有两种方式进行隔离:安全组和VLAN.
安全组隔离
当使用安全组时,每一个创建的账户都会有一个默认的安全组生成,以保证通过这个账户创建的虚拟机实例默认要以互连互通.当用户创建虚拟机实例后,可以对这些虚拟机实例设定一个或多个安全组.
用户可以在任意时间创建额外的安全组,但正在运行中的此用户的实例不能应用新建的安全组规则,需要关机后更改设置.
同一个安全组下的用户虚拟机实例可以相互通信.安全组通过Ingress和Egress来进行流量控制.
VLAN
高级网络模式中默认是通过VLAN进行虚拟机实例之间的相互隔离.当一个账户的第一个虚拟机被创建并运行时,一个隔离的网络也同时创建完成.在一个资源域下,一个账户的虚拟机网络默认的CIDR配置:10.1.1.0/24;在整个云环境中,只有系统管理员有权限创建一个隔离的客户虚拟机网络,并指定一个IP范围和一个VLAN.
CloudStack中网络是较为复杂的一部分,功能也十分强大,特别是高级网络模式,这里建议大家参考CloudStack3.0的相关文档来更清楚的了解网络部分.
参考资料:
CloudStack3.0 Quick Install Guide
CloudStack3.0 Advanced Install Guide
CloudStack3.0 Administration Guide
» 转载请注明来源:CloudStack中文社区
» 本文链接地址:http://www.cloudstack-china.org/2012/07/191.html