云计算初探

0x00 前言  

  从几年前第一次听说云计算来,到现在云计算、云服务已经充斥着我们的网络生活,比如百度的网盘、阿里巴巴的云主机,各大公司都将这个炒得很热的概念拿来吸引用户的眼球。今天花点时间对云计算做一个初步的了解,对自己做一个扫盲处理。 

0x01 什么是云计算

  NIST信息技术实验室2009年对云计算的定义如下:云计算是一种模型,能支持便捷地按需通过网络访问一个可配置的共享计算资源池(包括网络、服务器、存储、应用程序、服务),共享池中的资源能以最少的用户管理或最少的服务提供商实现快速供给和回收。---[Effectively
and Securely Using the Cloud Computing Paradigm]

  对于认为云计算不是新概念的人来说它就是20世纪60年代分时模型的现代版本,不管是分时系统还是NIST给出的定义都还不太直观,浪潮之巅 一书中对云计算的描述倒是比较浅显易懂。采用高速光纤网络连接的数万台服务器级别的大型数据中心的出现,使得计算资源和能力有了共享的可能,这样全世界的计算能力就如天上飘着的一朵朵云,它们之间通过互联网连接。云计算能保证用户在无需自己购置设备的情况下可以随时地访问和处理信息,并且可以与他人方便地共享信息。为了能将成千上万台服务器组织到一起,让终端用户觉得使用云计算的资源就如同使用自家的计算机,需要能做到将一个巨型任务分解为无数小任务,分派到不同服务器中,然后把每一台服务器上完成的小任务合并起来,达到最终完成大任务的目的。另外,还需要能将跨越几个数据中心的服务器资源作为整体完整保存,然后根据用户需求动态分配这些资源。因此,云计算本身是一个很复杂的工程,离不开大型数据中心和高速主干网,所谓的云,本质上就是大型数据中心提供针对终端用户的服务。

  云模型由5个基本特征、3个服务模型和4个部署模型。其中5个特征包括:

  1. 按需自助服务  2. 普适网络连接  3. 资源池  4. 快速伸缩能力  5. 可被测量的服务

  3个服务模型包括:

  1. SaaS (Software as a Servie): 通过网络使用提供商的应用程序.
  2. PaaS (Platform as a
Service): 将用户创建的应用部署到云中.
  3. IaaS (infrastructure as a Service):
租赁处理能力、存储能力、网络带宽、及其他基础计算资源

  4个部署模型为: 

  1. 私有云:企业建立或租用的云
  2. 社区云: 为某个社区建立的共享基础设施
  3. 公共云:
面向大众的超大规模基础设施
  4. 混合云: 两个以上的云组合

  开放云宣言中,云计算被赋予以下几个特征:(1) 按需扩展  (2) 精简数据中心  (3) 改善业务流程  (4) 最大程度降低创业成本

  还可以从不同角度阐述云计算的五个界定特征: 

1. 动态计算基础设施 ->
具有标准化的、可扩展的、动态的、虚拟化的、安全的物理基础设施
2. 以IT服务为中心 ->
可以给应用程序或服务提供一个易于访问的专有实例
3. 基于自助服务 -> 针对业务服务提供按需上传、构建、部署、调度、管理和报告的能力
4.
自主管理平台 -> 供给引擎、调度与保留资源的机制、资源访问控制机制
5. 按使用量计费 -> 用户根据使用的资源量支付费用

  云计算起源中有如下一些重要因素:  

公用计算:将计算资源打包并交付给用户使用,用户以按需付费方式使用资源
网格计算:将多个网络化计算资源的处理能力集中起来解决某个特定问题,是一种基于计算机网络的并行处理方式
自治计算:不受外部控制,计算机在无人干扰的情况下执行关键和复杂的操作
平台虚拟化:将物理计算资源在逻辑上划分为多个运行环境,包括服务器、应用程序和操作系统,在物理计算平台上运行虚拟机,由虚拟机监控器控制
软件即服务:将应用程序作为服务向用户提供,SaaS可提供有效的补丁管理机制
面向服务架构:由一组相互交互的服务组成,这些服务接口对外开放且有文档说明,功能上松耦合,可以被不同组织协调使用

  上述几条是用计算的重要组成部分,但它们并不等同于云计算

0x02 云计算的基本特征

  按需自助服务:用户可以在无需与云服务提供商联络的情况下根据自己的需求使用云计算资源,可以提高效率并节约成本

  普适网络连接:通过低成本的高带宽网络连接到搞利用率的大型IT资源池

  位置无关资源池:资源可以在物理上分布于多个位置,当计算需要时作为虚拟组件分配

  快速伸缩能力:服务之间为松耦合,对所分配资源可以进行快速、有效增加或缩减,服务的伸缩性彼此之间相互独立

  可被测量的服务:用户使用的云计算资源的数量能动态、自动地分配和监控

0x03 云计算的影响

  架构方面:云计算需要有高性能、自治的计算,还需要能将服务进行有效的整合,最后具有高度可扩展性的云平台可以使性能根据相应负载的增加而增加

  技术方面:(1) 云计算的普及使得厂商之间的竞争加剧,计算成本的降低最终会引发云计算的商品化

       (2) 云计算服务提供商需要满足间歇性的峰值需求,还要组织利用过剩的服务器、存储和数据库资源通过云计算服务获取收益

       (3) 和普通软件有开源社区一样,也有开源的云计算平台:Globus
Nimbus、Eucalyptus、RESERVOIR、Enomalism、Abicloud、Xen等

  运维方面:(1) 通过虚拟化和集群进行资源整合,使得多个应用程序可以运行在一台服务器上,当资源过载时,可以将应用程序迁移到其他服务器

       (2) 可以通过外包节省成本、提高效率和灵活性并采用弹性的付费方式

  

  

时间: 2024-11-08 02:24:04

云计算初探的相关文章

Java工程师学习指南(完结篇)

Java工程师学习指南 完结篇 先声明一点,文章里面不会详细到每一步怎么操作,只会提供大致的思路和方向,给大家以启发,如果真的要一步一步指导操作的话,那至少需要一本书的厚度啦. 因为笔者还只是一名在校生,所以写的内容主要还是针对Java初学者或者接触Java后端不久的朋友,不适用于已经工作多年的Java大佬们.所以本文中的方法不一定适合所有人,如有错误还请谅解. 本期的内容是系列文章的最后一部分内容了.这个系列可能还有很多东西没有说清楚,也有很多内容被忽略了.但是这些内容也确实是笔者结合自己经验

GoogleFusionTablesAPI初探地图与云计算

http://developer.51cto.com/art/200906/129324.htm http://yexiaochai.iteye.com/blog/1893735 http://yexiaochai.iteye.com/blog/1893734

云计算对传统软件工程的影响

云计算是什么?美国国家标准与技术研究院(NIST)给出了定义:云计算是一种按使用量付费的模式,这种模式提供可用的.便捷的.按需的网络访问, 进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互. 云计算是并行计算.分布式计算和网格计算的发展,或者说是这些计算科学概念的商业实现.[1]它具有三大形式分别为基础设施即服务(IaaS),平台即服务(PaaS)和软件即服务(SaaS).其中,基础设施即服务是

论云计算对传统软件工程的影响

如今,云这种概念已经越来越深入人心,似乎云已经成了我们生活的一部分.那么,这种近几年兴起的技术,是否对我们传统的一些行业有所影响. 首先了解一下软件工程的概念.软件工程是一门研究用工程化方法构建和维护有效的.实用的和高质量的软件的学科.工程是科学和数学的某种应用,通过这一应用,使自然界的物质和能源的特性能够通过各种结构.机器.产品.系统和过程,是以最短的时间和精而少的人力做出高效.可靠且对人类有用的东西.而软件工程作为一种工程,则是应用计算机科学.数学.逻辑学及管理科学等原理,开发软件的工程.

云计算对软件工程的影响

云计算对传统软件工程的影响 什么是云计算: 云计算(cloud computing)是基于互联网的相关服务的增加.使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源.云是网络.互联网的一种比喻说法.对于云计算的定义现阶段广为接受的是美国国家标准与技术研究院(NIST)定义:云计算是一种按使用量付费的模式,这种模式提供可用的.便捷的.按需的网络访问, 进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服

初探开源分布式WPA破解程序moscrack

最近玩moscrack这个开源的分布式破解程序,但苦于网上没有一篇step by step的使用指南(不管中文还是英文),跟着说明自己摸索了两个晚上,记录下来供有需要的同学参考.感兴的朋友可以和我一起讨论如何更好地利用这个项目. 项目地址:https://sourceforge.net/projects/moscrack/ 一.简要说明 1.运行模式:Moscrack根据字典文件的共享机制不同,分两个运行模式,copy和share,copy模式比较简单,本文也是基于该模式介绍. 2.网络连接模式

OpenStack云计算(一)——OpenStack 网络

OpenStack它是 Rackspace Cloud 和 NASA 负责的一个开源基础架构即服务的云计算项目. OpenStack 是一个由开发者和云计算技术人员的全球协作开发的面向公共和私有云的标准云操作系统,是在 Apache 许可条款下发布的免费开源软件.云服务提供者.企业和政府组织均可使用这个免费的 Apache 许可的软件来构建可大规模伸缩的云环境. OpenStack 包含六个核心软件项目: Cloud Compute-Nova Cloud Storage-Swift Image

云计算与软件工程

1 云计算 1.1 云计算是什么 云计算是一种按使用量付费的模式,这种模式提供可用的.便捷的.按需的网络访问, 进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互. 云计算是通过使计算分布在大量的分布式计算机上,而非本地计算机或远程服务器中,企业数据中心的运行将与互联网更相似.这使得企业能够将资源切换到需要的应用上,根据需求访问计算机很存储系统.这意味着计算能力也可以作为一种商品进行流通,不过是通

沉淀再出发:openstack初探

沉淀再出发:OpenStack初探 一.前言 OpenStack是IaaS的一种平台,通过各种虚拟化来提供服务.我们主要看一下OpenStack的基本概念和相应的使用方式. 二.OpenStack的框架和使用 2.1.OpenStack简介 OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目.OpenStack是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作.OpenStack支持几