IaaS(Infrastructure as a Service),即基础设施即服务。消费者通过Internet 可以从完善的计算机基础设施获得服务。这类服务称为基础设施即服务(Infrastructure as a Service,IaaS)。基于 Internet 的服务(如存储和数据库)是 IaaS的一部分。Internet上其他类型的服务包括平台即服务(Platform as a Service,PaaS)和软件即服务(Software as a Service,SaaS)。PaaS提供了用户可以访问的完整或部分的应用程序开发,SaaS则提供了完整的可直接使用的应用程序,比如通过 Internet管理企业资源。
2、IaaS应用方式
作为Infrastructure as a Service (IaaS) 在实际应用中的一个例子,The New York Times 使用成百上千台 Amazon EC2 实例在 36 小时内处理 TB 级的文档数据。如果没有 EC2,The New York Times 处理这些数据将要花费数天或者数月的时间。
IaaS 分为两种用法:公共的和私有的。
Amazon EC2在基础设施云中使用公共服务器池。更加私有化的服务会使用企业内部数据中心的一组公用或私有服务器池。如果在企业数据中心环境中开发软件,那么这两种类型都能使用,而且使用EC2临时扩展资源的成本也很低 — 比方说测试。结合使用两者可以更快地开发应用程序和服务,缩短开发和测试周期。同时,IaaS也存在安全漏洞,例如服务商提供的是一个共享的基础设施,也就是说一些组件,例如CPU 缓存,GPU等对于该系统的使用者而言并不是完全隔离的,这样就会产生一个后果,即当一个攻击者得逞时,全部服务器都向攻击者敞开了大门,即使使用了hypervisor,有些客户机操作系统也能够获得基础平台不受控制的访问权。解决办法:开发一个强大的分区和防御策略,IaaS供应商必须监控环境是否有未经授权的修改和活动
3、云计算IaaS的应用
1、内部企业资源云:目前阶段较适用于中小型非实时业务;可应用于业务生命周期的前、中、后期;
可根据业务的需求、重要性、效益和生命周期提供差异化的内部企业资源云。 ——前期:业务开发、业务测试、业务孵化
——中期:业务整合、业务快速部署、业务集中管理、业务的高可用、业务备份 ——后期:业务、业务退出
2、外部公共资源云:重点面向短期临时性计算资源出租用户或中小企业用户,以及需要低成本构建高可用系统、灾备系统的用户; ——资源出租类业务 虚拟主机,虚拟存储的出租
高可用性;高安全性的系统解决方案及相应的资源出租和服务提供 ——分布式业务:网络加速、负载均衡等业务
——综合信息服务类业务:综合一体化服务(网络、计算、存储和常见应用系统) 开发环境业务
综合各种电信应用 桌面虚拟化业务 ——安全增值类业务 存储灾备
系统灾备(冷灾备、热灾备)
站点灾备(冷灾备、热灾备、数据热备应用冷备)
4、IaaS与云计算
根据NIST的权威定义,云计算有SPI, 即SaaS、PaaS和IaaS三大服务模式。这是目前被业界最广泛认同的划分。PaaS和IaaS源于SaaS理念。PaaS和IaaS可以直接通过SOA/Web Services向平台用户提供服务, 也可以作为SaaS模式的支撑平台间接向最终用户服务。
SaaS:提供给客户的服务是运营商运行在云计算基础设施上的应用程序,用户可以在各种设备上通过客户端界面访问,如浏览器。消费者不需要管理或控制任何云计算基础设施,包括网络、服务器、操作系统、存储等等;
PaaS:提供给消费者的服务是把客户采用提供的开发语言和工具 (例如Java,python, .Net等)开发的或收购的应用程序部署到供应商 的云计算基础设施上去。客户不需要管理或控制底层的云基础设施,
包括网络、服务器、操作系统、存储等,但客户能控制部署的应用程序,也可能控制运行应用程序的托管环境配置;
IaaS: 提供给消费者的服务是对所有设施的利用,包括处理、存储、网络和其它基本的计算资源,用户能够部署和运行任意软件,包括操作系统和应用程序。消费者不管理或控制任何云计算基础设施,但能控制操作系统的选择、储存空间、部署的应用,也有可能获得有限制的网络组件(例如,防火墙,负载均衡器等)的控制。
5、IaaS平台
5.1 OPENStack
Rackspace和NASA联手推出的云计算平台。为那些希望给用户提供云服务的托管供应商们创造了进入云计算领域的机
会,就像Parallels Virtuozzo为Web托管公司开发了虚拟化私有服务器
5.1.1 Openstack的概述
OpenStack是由Rackspace和NASA共同开发的云计算平台,帮助服务商和企业内部实现类似于Amazon EC2和S3的云基础架构服务(IaaS),用Python语言编写
5.1.2 OpenStack包含主要项目
5.1.3 OpenStack能做什么
App Owner可注册云服务,查看运行和计费情况
开发(App Dev)和运维人员(Dev Ops)可创建和存储他们应用的自定义镜像,并通过这些镜像启动、监控和终止实例
平台的管理人员(Cloud Ops)能够配置和操作网络、存储等基础架构
5.1.4 OpenStack架构分析
Nova(OpenStack Compute)
云计算控制器,不仅提供了对外的接口,而且用于创建虚拟机实例以及给每个虚拟机配置相应的网络。它包括nova-api,nova-compute,nova-network, nova-volume,nova-scheduler, Queue, SQL database,User dashboard
OpenStack Image Service
包括两个主要部分:API Server和Registry Server
支持的后端仓储:OpenStack Object Storage,FileSystem,Amazon S3,HTTP(只读) OpenStack Object Storage
提供大容量、大型文件的存储,适合虚拟机镜像、图片、视频、备份数据等比较静态的数据的存储,但不是文件系统,也不适合存放实时访问的数据,可以水平扩展。
5.1.5 OpenStack Compute(Nova)服务架构
5.2 Eucalyptus
Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems (Eucalyptus)是一种开源的软件基础结构,(NIST云服务SPI模式)用来通过计算集群或工作站群实现弹性的、实用的云计算。它最初是美国加利福尼亚大学 Santa Barbara 计算机科学学院的一个研究项目,现在已经商业化,发展成为了 Eucalyptus Systems Inc。不过,Eucalyptus 仍然按开源项目那样维护和开发。Eucalyptus Systems 还在基于开源的 Eucalyptus 构建额外的产品;它还提供支持服务。
Eucalyptus 并非一个完全开源的项目,涉及到商业版本的利益,该公司并不愿意开源底层的高性能模块的源代码。
5.3 开源的IaaS平台 5.3.1 Eucalyptus
开源的IaaS管理平台——Eucalyptus 优点
•起步最早,发展规模最大 •与Amazon EC2/S3兼容的API 缺点
•部分源代码非公开
•缺乏友好和功能齐全的portal
5.3.2 CloudStack
开源的IaaS管理平台——CloudStack 优点
•代码都是用java编写
•框架 插件”的系统构架通过不同的插件来提供对不同虚拟化技术的支持 缺点
•对于标准的Xen / KVM计算节点,CloudStack需要在计算节点上安装Agent与控制节点进行交互, Agent是瓶颈
•最新的版本才支持与Amazon EC2的接口
5.3.3 Convirt
开源的IaaS管理平台——Convirt 优点
•安装配置简单 •界面友好 •监控功能丰富 缺点
•仅支持KVM和Xen •共享存储方面支持欠缺 •无法批量部署
6、IaaS核心技术——服务器虚拟化概述
1、虚拟化是将底层物理设备与上层操作系统、软件分离的一种去耦合技术,其将硬件、操作系统和应用程序一同装入一个可迁移的虚拟机档案文件中。
2、虚拟化通过其管理软件将多个物理设备纳入统一的资源池进行管理,从而增强了物理设备和物理设备之间的耦合性。
6.1 服务器虚拟化技术分类
6.1.1 完全虚拟化(Full Virtualiztion)
它虚拟的是现实存在的平台,客户机操作系统无须进行任何修改即可在其上运行。完全虚拟化技术又分为软件辅助虚拟化和硬件辅助虚拟化两类。
6.1.2 半虚拟化(Para-Virtualiztion)
虚拟的平台是VMM重新定义的,需要对客户机操作系统进行修改以适应虚拟环境。(在Intel VT和AMD AVT等硬件辅助虚拟化技术的支持下客户操作系统已经不再需要修改)
VMware服务器虚拟化
Citrix服务器虚拟化
Microsoft服务器虚拟化
Redhat服务器虚拟化
7、服务器虚拟化带来的意义
服务器虚拟化技术的目标
同质:虚拟机的运行环境与物理机的环境本质上是相同的 高效:虚拟机中运行的软件需要有接近在物理机上运行的性能 资源受控:VMM 对系统资源具有完全的控制能力和管理权限
因篇幅问题不能全部显示,请点此查看更多更全内容