云计算(1) 云计算概念
一、云计算概念
1 云计算定义
2 计算模式的演进
人类对计算的追求: 自动化、高性能、易使用
演进过程:
主机系统与集中计算: 仅规定了计费使用的模式,没有IT资源管理方面的考虑。
-> 效用计算
: 考虑购买主机成本高,将IT资源包装成可以度量的服务提供给用户。
-> 客户机/服务器模式: (IBM: 设备放在IBM内部,通过网络远程使用)
-> 集群计算
-> 服务计算
(软件即服务SaaS): 将所有应用程序都作为服务提供,而不是购买软件。
- 不同服务相对独立,松散耦合,随意组合。重点是服务发现。
-> 个人计算机与桌面计算
-> 分布式计算
-> 网格计算
-> 云计算
: “效用计算 + 服务计算”
增强版的效用计算(不仅考虑计费,还考虑 IT 管理) + 更广泛的服务计算(不仅是软件,还包括基础设施和平台)
传统分布式计算系统
- 计算机集群: 将多个可信、静态的独立节点连接起来协作完成计算
- P2P网络: 每一个节点既是客户端也是服务器,提供部分系统资源
- 计算网格: 将多个异构计算机动态、紧耦合地整合在一起完成计算任务
传统分布式系统的特点及问题
- 计算集群(计算抽象)
- 基本组件为计算节点、通信软件、网络接口卡
- 集群应该合并多个系统镜像到一个单系统镜像,然而并没有
- 依靠中间件实现单系统镜像的支持
- 以单独计算机身份接入互联网
- P2P系统(存储抽象)
- 节点是简单接入互联网的客户机,自治、自由加入和退出
- 无中心协作或中心数据库;没有专用的物理互联网络
- 计算网格(接近”云”)
- 计算资源整合,一个集成的资源池,提供基础设施;类比电力网格
- 节点包括:工作站、服务器、集群、超级计算机
- 计算和数据网格、P2P网格
- 太异构、用户管理、耗资源的协议、安全性、应用受限
云计算基本想法
- 一种完美的分布式计算解决方案——对网格的优化
- 大量计算节点,同构可控
- 专用内部网络
- 通过互联网对外服务(公有云)
- 全面虚拟化:计算、存储、网络、桌面
- 集中管理:安全、高效
云计算 vs. 网格计算
3 云计算的发展与推动力
持续优化的动力:节能降耗、降低维护成本、提升资产安全、提升信息系统的容灾备份能力
4 云计算的特征与分类
4.1 概念模型
4.2 特征
- 现实中云的特点:大、规模动态伸缩、边界是模糊的、飘忽不定,无法也无需确定具体位置
- Elastic Computing Cloud
- 亚马逊弹性计算云的成功
- 云计算的特点
- 超大规模——需求
- 虚拟化——技术
- 按需服务——商业模式
- 通用
- 高可伸缩
- 极其廉价
- 高可靠——要求
4.3 云部署模型
4.4 云的服务模型
IaaS
- 通过虚拟机方式对外提供计算和存储能力
- 机器享有公网IP,多个虚拟机之间通过网络进行通信;也会有内部子网
- 类似租用独立的计算机
- 用户自行解决多台机器之间的协同问题
- 优势
- 允许用户动态申请和释放资源
- 按使用量计费
- 更高的资源使用效率(节能环保)
PaaS
- 提供用户应用程序的开发和运行环境,包括应用编程接口和运行平台等,支持应用从创建到运行整个生命周期需要的各种软硬件资源和工具。
- 经过封装的IT能力,或逻辑资源:数据库、文件系统和应用运行环境
- 主要面向软件开发者(包括应用服务上)
- PaaS自身负责资源的动态扩展和容错管理
- 用户无需考虑节点间的配合问题
- 用户自主权降低,需按照给定的编程环境和编程模型构建应用
- 类似MPI (Message Passing Interface)编程
- 只适用于解决模型特定的计算问题
SaaS
- 通过标准的Web浏览器获软件客户端访问云上的应用
5 云计算相关的技术
6 云计算三元认知论
- 一种商业模式
- 一种全新的商业模式,从产品提供的服务类型看,而非技术角度
- 区别于传统的”互联网服务”模式:在软件服务基础上提供平台和基础设施服务
- 除了服务理念,还要有具体的实现机制;云平台就是具体体现,包括计算范式和实现方式
- 一种计算范式
- 理论层面的实现方式,偏向针对商业模式的体系结构设计
- 云体逻辑结构:具体落地的云平台逻辑结构——物理结构就是云数据中心
- 计算+存储+通信
- 云栈逻辑结构:面向服务的云平台逻辑结构——物理结构就是管理系统的结构
- 基础设施即服务,平台即服务,软件即服务
- 一种实现方式
- 数据中心+云平台管理系统
- 软件定义数据中心:软件定义计算,软件定义存储,软件定义网络,软件定义安全
7 云计算的开源方法论
- 云计算时代,开源不仅是一种开放源代码的具体产品,更是一种方法论、一种构造大规模复杂软件的协作方式。
- 开源的可以是各行各业的技术或产品
开源软件 —— 一种版权持有人为任何人和任何目的提供学习、修改和分发权力,并公布源代码的计算机软件
- 许可证不应限制任何个人或团体奖包含该开源软件的广义作品进行销售或赠予
- 开源软件的程序必须包含源代码,必须允许发布源代码及以后的程序
- 开源软件许可证必须允许修改和派生作品,并允许使用原有软件的许可条款发布他们
开源软件 vs. 自由软件 vs. 免费软件
- 开源不一定自由,开源不一定免费,自由不一定免费;免费不一定开源,不一定自由
价值和意义
8 三个问题
8.1 发展阶段
Google Trends、国家重视程度、产业发展现状
8.2 云计算的优势
- 经济性
- 能耗接近硬件成本;管理成本线性增长
- 可扩展性和可伸缩性
- 类似个人笔记本电脑的单个虚拟机
- 组建超出想象的计算能力的集群
- 内存达到40万GB
- 近似无上限的硬盘空间
- 快速完成
- 虚拟化:模拟出符合用户需求的任何计算环境
- 高可靠:多副本容错、计算节点同构可互换等措施
- 管理简单:无需专职IT维护人员
- 安全:专业的团队 + 严格的权限管理
8.3 大数据关系
- 海量数据或巨量数据,其规模巨大到无法通过目前主流的计算机系统在合理时间内获取、存储、管理、处理并提炼以帮助使用者决策。
- 为什么会产生大数据?
- 数据产生方式的改变
- 人类活动越来越依赖数据
- 互联网+物联网:互联网用户,传感器,摄像头…
- 特征
- 3V:Volume(量大), Variety(多样), Velocity(快速)
- 4V+1C:Value(低价值密度), Complexity(复杂:处理和分析难度大)
- 5V:Volume, Variety, Velocity, Value, Veracity(真实)
- 大数据促进了云计算的产生,激发了云计算的潜力;云计算为大数据的收集、存储、加工和应用提供了更好的支持。
- 关系密切而多样
9 难点、风险与挑战
9.1 云计算技术难点
9.2 风险与挑战
- 增加了安全漏洞
- 运程使用IT资源需要云用户将信任边界扩展到外部的云,建立这样的安全架构同时又不引入安全漏洞是非常困难的
- 重叠的信任边界和不断增加的数据曝光为恶意的云用户提供了更多的攻击IT资源、窃取或破坏企业数据的机会
- 降低了运营管理控制
- 云用户对云资源的管理控制低于对企业内部IT资源的管理控制
- 云提供者可能不遵守它发布的云服务保证
- 云用户和云提供者之间较长的地理距离可能需要更多的网络跳数,会带来延迟波动和带宽受限
- 云用户对云资源的管理控制低于对企业内部IT资源的管理控制
- 云提供者之间有限的可移植性
- 由于缺乏行业标准,不同的云提供者提供的服务存在较大差异
- 多地区法规和法律问题
- 第三方云提供者通常选择造价较低、方便的地理位置建立数据中心,而云用户通常不会意识到所使用IT资源和自身数据所存放的位置
- 某些云用户可能会遇到严重的法律问题
- 例如:英国法律规定,英国公民的个人数据只能留在英国境内
- 潜在的数据获得和公开
- 例如:某些国家的法律规定,某些类型的数据必须向某些政府机构或数据主体公开
9.3 缺陷与未来
- 虽然是最成功的商业计算模型,但不是完美的,仍有缺陷
- 从平台角度看——没有统一的标准
- 从计算角度看——针对松耦合的数据处理
- 从数据角度看——管理和分析商业数据
- 从资源集成角度看——必须集中到云中
- 从信息安全角度看——暴露、丢失的风险
- 然而这些恰是网格的优势所在
- 未来:云格计算——结合的基准是SOA