- UID
- 1023166
- 性别
- 男
- 来自
- 燕山大学
|
云计算由Google提出,随后在互联网界风起“云”涌,随之而来的云计算服务和技术平台成功案例层出不穷,如Google的GFS、 MapReduce、Bigtable、Chubby和App Engine,亚马逊的Dynamo、EC2、S3、SQS、SimpleDB和CloudFront,微软的Azure、SQL、“.Net”和 Live服务,开源云计算平台的HDFS、HBase和Eucalyptus,VMware的虚拟化平台等。
1 云计算的核心技术
云计算主要基于资源虚拟和分布式并行架构两大核心技术,同时互联网上有大量的开源软件为用户提供支撑,如Xen、KVM、Lighttpd、 Memcached、Nginx、Hadoop、Eucalytus等。云计算技术有效地节约了云服务商的硬件投入、软件开发成本和维护成本。
虚拟化技术最早由VMware公司引入并在X86 CPU上实现。虚拟化平台将服务器虚拟为多个性能可配的虚拟机(VM),对整个集群系统中所有VM进行监控和管理,并根据实际资源使用情况对资源池灵活分配和调度。
分布式并行架构是云计算的另一个核心技术,用于将大量的机器整合为一台超级计算机,提供海量的数据存储和处理服务。整合后的超级计算机通过分布式文件系统、分布式数据库和MapReduce技术,提供海量文件存储、海量结构化数据存储和统一的海量数据处理编程方法和运行环境[1-3]。
2 虚拟化技术
虚拟化技术主要分为两个层面:物理资源池化和资源池管理。其中物理资源池化是把物理设备由大化小,将一个物理设备虚拟为多个性能可配的最小资源单位;资源池管理是对集群中虚拟化后的最小资源单位进行管理,根据资源的使用情况和用户对资源的申请情况,按照一定的策略对资源进行灵活分配和调度,实现按需分配资源[4-7]。
2.1 物理资源的池化
云计算平台如图1所示。物理硬件设备的虚拟化对象包括服务器、存储、网络、安全等多个方面,不同的虚拟化技术从不同角度解决系统的各种问题。
(1)服务器虚拟化
服务器虚拟化对服务器进行资源虚拟和池化,将一台服务器虚拟为多个同构的虚拟服务器,同时对集群中的虚拟服务器资源池进行管理。
(2)存储虚拟化
存储虚拟化主要是对传统的存储区域网络(SAN)、网络附加存储(NAS)设备进行异构,将存储资源按类型统一集中为一个大容量的存储资源,并将统一的存储资源通过分卷、分目录的权限和资源管理方法进行池化,然后将虚拟存储资源分配给各个应用使用,或者是直接分配给最终用户使用。
(3)网络虚拟化
网络虚拟化将一个物理网络节点虚拟成多个虚拟的网络设备(交换机、负载均衡器等),并进行资源管理,配合虚拟机和虚拟存储空间为应用提供云服务。
2.2 资源池的管理和使用
资源池由云管理平台实现统一的管理、调度和监控,涉及云平台的合理使用和维护管理。云管理平台共分为4个管理层面,分别为:设备的管理、虚拟资源的管理、服务的管理和租户管理。
(1)设备管理
设备管理为云计算平台的硬件设备提供管理和告警功能,主要包括系统管理员在日常的维护工作中查询各物理设备性能情况,并对如应用服务器的CPU使用率、内存使用率、硬盘使用率、网络接口使用率、存储设备的空间使用率、IO情况等关键指标进行监控。用户可以根据应用物理设备的实际配置,设置相应的监控阈值,系统会自动启动对相应指标的监控并报警。
(2)虚拟资源管理
虚拟资源管理为各种应用提供虚拟资源的统一管理、资源分配和灵活调度,同时还包括系统管理员在日常的维护工作中查询各个最小虚拟资源的性能情况,并对应用虚拟机的CPU使用率、内存使用率、硬盘使用率、网络接口使用率,虚拟存储(如亚马逊的EBS)的空间使用率、IO情况等关键指标进行监控。用户可以根据虚拟资源的实际配置,设置相应的监控阈值,系统会自动启动对相应指标的监控并报警。
(3)服务管理
服务管理包括服务模板、服务实例、服务目录等管理。服务管理在虚拟资源的基础上,快速向租户提供用户指定的操作系统、应用软件等软件资源。
(4)租户管理
租户管理对每一个租户对应的资源群进行管理,内容包括资源的种类、数量、分布情况等,同时对租户生命周期进行管理,包括租户的申请、审核、正常、暂停、注销等。
2.3 集群的故障定位与维护
Google的集群维护方式给我们留下了深刻的印象,维护人员推着小推车对损坏的机器进行更换,故障定位通过定制PC的故障灯进行判断(在通用的因特网数据中心(IDC)应用中,计算资源通常使用通用PC机)。目前所有的云平台对物理机和虚拟机的监控、告警,都是按照机器的IP地址作为机器的编号进行管理。对于承载着虚拟机的物理机而言,其Host OS模块的IP地址对应和代表着物理机器在集群中的唯一标志。IP地址的分配一般采用两种方式:采用动态主机配置协议(DHCP)方式自动获取;通过手工指定方式确定。由于集群中机器很多,手工指定工作量非常巨大,因此通常采用DHCP的方式对IP地址进行分配。
但是维护人员在云管理平台上发现物理设备出了故障,维护人员无法通过IP地址对应到故障机器的具体物理位置,通用的PC机又没有故障灯等辅助定位手段。定位故障机器的物理位置并更换或维护它成为一个复杂和繁琐的过程。
在的虚拟化集群中,可以采用简单而有效的方法解决此问题。对于每一台物理机器,配置一个USB接口的KEY,KEY中保存了物理机器的位置信息,同时 USB KEY与物理位置直接绑定(如绑在机架上)。机器在启动时,会到USB KEY中读取物理位置信息,根据读取的物理位置信息,依据固定的算法和物理信息算出机器的IP地址,并在管理平台中体现。这样,每个物理机器的IP地址就与物理位置绑定,在物理机器故障时,维护人员在云管理平台可以准确获取故障机器的IP地址和物理位置。
2.4 资源池的分组与异构
对于服务器的虚拟化,由于架构不同,SUN、IBM等厂家的小型机虚拟化都采用相互独立的架构,与基于X86架构的虚拟化系统(如XEN、KVM等)无法兼容,因此造成了资源浪费。 |
|