《云计算核心技术剖析》学习笔记

认真系统地看了这本书,让自己对云计算理解得更深刻透彻一些,如果本书能有相关国内云计算厂商的产品架构讲解就更好了


1.理论篇

  概念
    由来:电厂模式->效用计划->网格计算->云计算
    特点:超大规模 抽象化 高可靠性 通用性 高可扩展性 按需服务 廉价 自动化 节能环保 完善的运维机制
    影响
      云供应商:订单大量增加
      软件开发商:推广和销售软件会越来越简单
      服务器供应商:来自中小企业的订单减少
  架构
    基本架构
      IAAS:
        代表:Amazon EC2  IBM Blue Cloud Cisco UCS
        技术:虚拟化 分布式存储 关系型数据库 NOSQL
        特点:免维护 非常经济 开放标准 伸综性强
      SAAS:
        代表:Google Apps  Office Web Apps ZOHO Salesforce
        技术:HTML JAVAscript CSS FLASH Siverlight
        特点:使用简单 支持公开协议 安全保障 初始成本低
      PAAS
        代表:Force.com Google App Engine Windows Azure
        技术:REST 多租户 并行处理 应用服务器 分布式缓存
        特点:开发环境友好 服务丰富 管理和监控精细 伸缩性强 多住户 整合率高
      云管理层
        用户层:用户管理 客户支持 服务管理 计费管理
        运维层:运维管理 资源管理 安全管理 容灾管理
        检测层:系统监控
    应用模式
      公有云
        构建方式:独自构建 联合构建
        优势:规模大 价格低廉 灵活 功能全面
        缺点:缺乏信任 不支持遗留环境
      私有云
        构建方式:自行开发 购买成熟解决方案
        优势:数据安全 服务质量稳定  充分利用现有硬件资源 支持定制和遗留环境 不影响现有IT管理流程
        缺点:投入成本高 运营成本高
      混合云
        构建方式:外包数据中心 购买私有云服务
        优势:以公有云的成本享受私有云的服务
        缺点:安全性低 运维复杂



2.产品技术篇

2.1Google APP Engine

2.1.1总体架构:





web

web部分主要用于处理请求主要有如下模块:

(1)、前端,即可以认为负载均衡(load balancer),也可以认为它是代理(proxy),主要负责负载均衡和将具体的web请求转发给应用服务器。对于一些静态文件(比如:图片、CSS和JS脚本等)的请求,前端会将这种请求转给对应的类似于CDN(Content Delivery Network,内容分发网络)的静态文件服务器。

(2)、应用服务器。用于装载应用的代码,处理接收到的web请求,并根据请求的内容调用后面的Datastore和服务群。

(3)、 管理节点。在应用服务器间应用,并将调度之后的情况通知前端。

DataStore

它是基于BigTable技术分布式数据库,虽然它也可以被理解成一个服务,但是由于它是整个App Engine对数据进行持久化的地方,所以它是App Engine中一个非常核心的模块。

服务群

整个服务群包括很多服务供App Server上运行的应用调用,比如Memcache、图形、用户、URL抓取和任务队列。

(参考:http://www.cnblogs.com/cgli/archive/2012/06/11/2545374.html)


2.1.2.设计思想:
视失败为常态 重视伸缩 预测性能 追求低延迟 廉价的硬件和软件资源 推崇重用 灵活设计 优先移动计算 服务模式

2.1.3主要组成部分:
应用服务器(Metadata Cache 大规模数据处理引擎 多租户感知的查询优化引擎     运行时应用生成器     全文检索引擎)
DataStore 服务 管理界面 本地开发环境


2.2Saleforce.com

2.2.1总体架构





2.2.2设计思想

数据驱动 规模经济 安全为先 定制方便 功能丰富


2.2.3 多租户

多租户就是指一个单独的软件实例可以为多个组织服务。一个支持多租户的软件需要在设计上能对它的数据和配置信息进行虚拟分区,从而使得每个使用这个软件的组织能使用到一个单独的虚拟实例,并且可以对这个虚拟实例进行定制化

多租户和多用户的区别
多用户的关键点在于不同的用户拥有不同的访问权限,但是多个用户共享同一个的实例。而在多租户中,多个组织使用的实例各不相同。

多租户和虚拟化的区别
多租户和虚拟化在概念是比较类似,都是给每个用户一个虚拟的实例,并且都支持定制化,但是它们作用的层次不同:虚拟化主要是虚拟出一个操作系统的实例,而多租户则是主要虚拟出一个应用的实例。

多租户的优点:
•    经济:因为通过一个软件实例被多个组织共享,从而减低了整体资源的消耗,也同时减低应用运行的成本和相应的管理开支。
•    易于更新和开发:因为所有组织都共享同一套核心代码,所以能够让软件更新和开发更简单。
•    管理方便:首先,通过使用了多租户架构能减少物理资源和软件资源,这将简化管理。其次。由于多租户软件主要由有经验的云供应商运营,所以能依赖那些非常经验的管理人员来提升效率。


多租户的缺点:
•    更复杂:由于一个软件需要做出极大地修改,才能支持多租户架构,而且这种修改,往往会增加整个软件在架构方面的复杂性。
•    不够安全:因为众多组织的应用和数据共享同一套软件和基础设施,如果出现机器宕机,软件出现问题或者大规模的数据被暴露等情况,将会造成更严重的后果,因为影响面更大。

2.2.4主要模型





3.虚拟化

系统虚拟化的核心思想是使用虚拟化软件在一台物理机上虚拟出一台或多台虚拟机,虚拟机是指使用系统虚拟化技术,运行在一个隔离环境中、具有完整硬件功能的逻辑计算机系统,包括客户操作系统和其中的应用程序。

3.1分类
硬件仿真 全虚拟化 半虚拟化 硬件辅助虚拟化  操作系统级虚拟化


3.2用处
软件测试 桌面应用 服务器整合 自动化管理


4.Amazon EC2

亚马逊弹性计算云(EC2,Elastic Compute Cloud)是一个让使用者可以租用云端电脑运行所需应用的系统。EC2借由提供Web服务的方式让使用者可以弹性地运行自己的Amazon机器映像档,使用者将可以在这个虚拟机器上运行任何自己想要的软件或应用程式。提供可调整的云计算能力。它旨在使开发者的网络规模计算变得更为容易。

亚马逊EC2上的简单的Web服务界面,可以让您轻松的获取和配置资源。它提供您对计算资源的完全控制,并运行于亚马逊已获实证的计算环境中。亚马逊EC2缩短了获取和启动新的服务器实例时间到数分钟,让您能够迅速调整,无论是增加还是缩减,适应您计算需求的变化。亚马逊EC2让您只需为实际使用的计算进行支付。亚马逊EC2上提供开发工具来构建隔离故障应用程序并与日常故障隔离开。

4.1产品类别

Amazon S3,Amazon EC2,Amazon SQS,Amazon SimpleDB,Amazon CloudFront,Amazon RDS,Amazon Elastic MapReduce,Amazon PVS

4.2产品特点
可靠性,安全性,成本低,快速部署,易扩展


[本日志由 admin 于 2013-10-16 12:59 AM 更新]
上一篇: 2013.东莞美食节
下一篇: 制造业信息化趋势
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: 云计算
相关日志:
评论: 0 | 引用: 0 | 查看次数: 3289
发表评论
昵 称:
密 码: 游客发言不需要密码.
邮 箱: 邮件地址支持Gravatar头像,邮箱地址不会公开.
网 址: 输入网址便于回访.
内 容:
验证码:
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 30 字 | UBB代码 关闭 | [img]标签 关闭