云计算原理与技术

云计算概述

云计算的起源

云计算的起源主要来源于新业务模式的创新。谈云计算的话题,一般都会谈到一家新加坡的公司,SalesForce,这家公司因提供在线的CRM而获得高速发展,后来业界总结这家企业的业务模型,就有了最初的研讨,这个应该算云计算三大主要类别中Saas(软件即服务)的源头。云计算的概念的发挥及拓展主力还是互联网企业,互联网企业从来都是以创新而闻名的,Amazon公司提供的在线计算资源租赁服务也获得了快速发展,于是,业界给出了界定:Iaas(基础设施即服务)。在类似此类业务创新成功后,在SAAS和IAAS的基础上有陆续有了PAAS(平台即服务),慢慢就有了云计算的说法。

云计算的定义

云计算 (cloud computing)是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云是网络、互联网的一种比喻说法。过去在图中往往用云来表示电信网,后来也用来表示互联网和底层基础设施的抽象。因此,云计算甚至可以让你体验每秒10万亿次的运算能力,拥有这么强大的计算能力可以模拟核爆炸、预测气候变化和市场发展趋势。用户通过电脑、笔记本、手机等方式接入数据中心,按自己的需求进行运算。
对云计算的定义有多种说法。对于到底什么是云计算,至少可以找到100种解释。 现阶段广为接受的是美国国家标准与技术研究院(NIST)定义:云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问, 进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互

云计算的分类

云计算通常可以分为三类:将基础设施作为服务(IaaS)、将平台作为服务(PaaS)和将软件作为服务(SaaS)。
1、IaaS:将硬件设备等基础资源封装成服务供用户使用。 在IaaS环境中,用户相当于在使用裸机和磁盘,既可以让它运行Windows,也可以让它运行Linux。 IaaS最大优势在于它允许用户动态申请或释放节点,按使用量计费。而IaaS是由公众共享的,因而具有更高的资源使用效率。
2、PaaS:提供用户应用程序的运行环境,典型的如Google App Engine。PaaS自身负责资源的动态扩展和容错管理,用户应用程序不必过多考虑节点间的配合问题。但与此同时,用户的自主权降低,必须使用特定的编程环境并遵照特定的编程模型,只适用于解决某些特定的计算问题。
3、SaaS:针对性更强,它将某些特定应用软件功能封装成服务。SaaS既不像PaaS一样提供计算或存储资源类型的服务,也不像IaaS一样提供运行用户自定义应用程序的环境,它只提供某些专门用途的服务供应用调用。
注意:随着云计算的深化发展,不同云计算解决方案之间相互渗透融合,同一种产品往往 横跨两种以上类型

云计算关键技术

体系结构

由于云计算分为IaaS、PaaS和SaaS三种类型,不同的厂家又提供了不同的解决方案,目前还没有一个统一的技术体系结构,云计算的体系结构由5部分组成,分别为应用层,平台层,资源层,用户访问层和管理层,云计算的本质是通过网络提供服务,所以其体系结构以服务为核心。
如下图:
在这里插入图片描述
1、资源层
资源池层是指基础架构屋面的云计算服务,这些服务可以提供虚拟化的资源,从而隐藏物理资源的复杂性。
物理资源指的是物理设备,如服务器等。
服务器服务指的是操作系统的环境,如linux集群等。
网络服务指的是提供的网络处理能力,如防火墙,VLAN,负载等。
存储服务为用户提供存储能力。
2、平台层
平台层为用户提供对资源层服务的封装,使用户可以构建自己的应用。
数据库服务提供可扩展的数据库处理的能力。
中间件服务为用户提供可扩展的消息中间件或事务处理中间件等服务。
3、应用层
应用层提供软件服务
企业应用是指面向企业的用户,如财务管理,客户关系管理,商业智能等。
个人应用指面向个人用户的服务,如电子邮件,文本处理,个人信息存储等。
4、用户访问层
用户访问层是方便用户使用云计算服务所需的各种支撑服务,针对每个层次的云计算服务都需要提供相应的访问接口。
服务目录是一个服务列表,用户可以从中选择需要使用的云计算服务。
订阅管理是提供给用户的管理功能,用户可以查阅自己订阅的服务,或者终止订阅的服务。
服务访问是针对每种层次的云计算服务提供的访问接口,针对资源层的访问可能是远程桌面或者xwindows,针对应用层的访问,提供的接口可能是web。
5、管理层
管理层是提供对所有层次云计算服务的管理功能:
安全管理提供对服务的授权控制,用户认证,审计,一致性检查等功能。
服务组合提供对自己有云计算服务进行组合的功能,使得新的服务可以基于已有服务创建时间。
服务目录管理服务提供服务目录和服务本身的管理功能,管理员可以增加新的服务,或者从服务目录中除去服务。
服务使用计量对用户的使用情况进行统计,并以此为依据对用户进行计费。
服务质量管理提供对服务的性能,可靠性,可扩展性进行管理。
部署管理提供对服务实例的自动化部署和配置,当用户通过订阅管理增加新的服务订阅后,部署管理模块自动为用户准备服务实例。
服务监控提供对服务的健康状态的记录。

数据存储

云计算环境下的数据存储,通常被称为海量数据存储,或大数据存储。大数据存储与传统的数据库服务在本质上有着较大的区别,传统的关系数据库中强调事务的ACID特性,即原子性、一致性、隔离性和持久性,对数据的一致性的严格要求时期在很多分布式场景中无法应用。在这种情况下,出现了基于BASE特性的新型数据库,即只要求满足基本可用、柔性状态、最终一致性。
NOSQL在这种情况下应运而生,它是指未采用关系模型的数据库,目前,NOSQL主要包含以下几种类型:列存储、文档存储、键-值存储、图存储、对象存储、XML数据库。

计算模型

云计算的计算模型是一种可编程的并行计算框架、需要高扩展性和容错性支持。Paas平台不仅要实现海量数据的存储,而且要提供面向海量数据的分析处理功能。由于Paas平台部署于大规模硬件资源上,因此海量数据的分析处理需要抽象处理过程,并要求其编程模型支持规模扩展,屏蔽底层细节并简单有效。目前比较成熟的技术有MapReduce、Dryad等。

虚拟化

虚拟化是指计算机在虚拟的基础上而不是真实的基础上运行。虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。
虚拟化有以下三个特点:

  1. 资源共享
  2. 资源定制
  3. 细粒度资源管理
发布了39 篇原创文章 · 获赞 4 · 访问量 1219

猜你喜欢

转载自blog.csdn.net/zwj1834787/article/details/103335338