作者: Chuanhui | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明
本文链接地址: http://www.nosqlnotes.net/archives/250

AWS整体介绍

Amazon平台的产品分为几个部分:

  • 计算类:包含弹性计算云(EC2)和弹性MapReduce(Elastic MapReduce)这两个产品。EC2几乎可以认为是迄今为止云计算领域最为成功的产品,通俗地将,就是提供虚拟机。EC2的创新在于允许用户根据需求动态改变虚拟机实例的类型及数量,技术上支持容错并在收费模式上支持按使用量付费,而不是预付费。弹性MapReduce将Hadoop MapReduce搬到云环境中,大量EC2实例动态地成为执行大规模MapReduce计算任务的工作机。
  • 存储类:存储类产品较多,包括弹性块存储EBS,简单消息存储SQS,Blob对象存储S3,表格存储系统Simpledb和DynamoDB以及分布式数据库系统RDS。其中,EBS相当于一个分布式块设备,可以直接挂载在EC2实例上,用于替代EC2实例本地存储,从而增强EC2可靠性。另外,S3中的Blob对象能够通过CloudFront缓存到不同地理位置的CDN节点,从而提高访问性能。Simpledb和DynamoDB是分布式表格系统,支持单表的简单操作;RDS是分布式数据库,目前支持Mysql以及Oracle两种数据库。SQS主要用于支持多个任务之间的消息传递,解除任务之间的耦合。
  • 工具支持:AWS支持多种开发语言,提供Java、Rupy、Python、PHP、Windows &.NET 以及Android和iOS的工具集。工具集中包含各种语言的SDK,程序自动部署以及各种管理工具。另外,AWS通过CloudWatch系统提供丰富的监控功能。

AWS平台引入了区域(Zone)的概念。它将区域分为两种:地理区域(Region Zone)和可用区域(Availability Zone),其中地理区域是按照实际的地理位置划分的,而可用区域一般是按照数据中心划分的。

如上图,假设用户的网站MyWebSite.com托管在AWS平台的某个可用区域中。用户将Web应用上传到EC2实例中,EC2一般分成多个自动扩展(Auto Scaling)组,并通过弹性负载均衡(Elastic Load Balancing)组件进行负载均衡。用户的Web应用可以访问AWS平台上的存储类服务,包括EBS,S3,Simpledb,DynamoDB,RDS以及SQS。网站上的Blob数据,如视频,图片将通过DNS定位到Amazon CloudFront。CloudFront首先在本地缓存节点查找Blob对象,如果不存在,将请求源站获取S3中存储的Blob对象,这一步操作称为回源。AWS CloudWatch对AWS平台上运行的所有服务及应用程序进行监控。

Amazon EC2

相比传统的虚拟机托管,EC2的最大特点是允许用户根据需求动态调整运行的实例类型和数量,实现按需付费。为了支持这种灵活性,EC2需要在技术上支持容错以及更好的安全性。

架构

Amazon EC2平台主要包含如下部分:

  • EC2实例

AMI(Amazon Machine Image)是Amazon虚拟机镜像文件,它是一个可以将用户的应用程序、配置等一起打包的加密机器镜像。用户创建好AMI后,部署在EC2平台上运行,称为一个EC2实例。每个实例自身包含一个本地存储模块(Instance Local Store),临时存放用户数据。如果EC2实例运行过程中出现故障或者实例被终止,存储在其中的数据将会丢失。因此,Amazon建议将重要的数据保存在EBS中以增强可靠性。

  • 弹性块存储

弹性块存储(EBS)映射为EC2实例上的块设备,与EC2配合使用。EBS允许用户创建卷(Volume),每个卷可以作为一个设备挂载到EC2实例上。数据在EBS中存储多份,从而保证高可靠性。另外,EBS提供了增量快照功能,可以将当前卷的状态快照增量备份到S3中。假设EBS卷有100G数据,其中只有5GB的数据从上次快照操作以后产生了变化,那么,仅仅需要将这5GB变化的数据备份到S3。

  • 弹性负载均衡

弹性负载均衡自动地将流量分发给多个EC2实例,并且在一定程度上支持容错。弹性负载均衡功能可以识别出应用实例的状态,当某个实例出现故障时,它会自动将流量路由到健康的实例上。

EC2存储

EC2本地存储是实例自带的磁盘空间,但它并不是持久的,也就是说这个实例所在的节点出现故障时,相应的磁盘空间也会随之清空,本地存储上的数据随时有丢失的风险。

为了解决本地存储不可靠问题,EC2推出了EBS,数据在EBS中自动在同一个可用区域内复制多份。EBS通过卷来组织数据,每个EBS卷只能挂载到一个EC2实例。EBS卷并不与实例绑定,而是与用户帐号绑定。当EC2实例发生故障时,用户可以在新启动的EC2实例上重新挂载EBS卷。另外,EBS能够以快照的形式将数据增量备份到S3,而S3的数据分布在多个可用区域,进一步增强了可靠性。EBS的设计原理如下:

如上图,EBS包含两个部分:EBS控制层(EBS control plane)及EBS存储节点。EBS客户端通过EBS control plane创建逻辑卷,获取逻辑卷每个副本所在的EBS存储节点位置,然后请求EBS存储节点读写逻辑卷数据。每个逻辑卷存储在多个EBS节点上,多个副本之间数据强同步,其中有一个副本为Primary,其它的为Secondary。当Primary往Secondary传输数据失败时,将请求EBS control plane选取新的EBS节点增加副本,这个过程称为重新镜像(re-mirroring)。EBS control plane负责每个逻辑卷的Primary副本选取,如果Primary出现故障,将选择某个Secondary副本为新的Primary。EC2实例通过EBS客户端访问EBS系统,它们之间遵守一定的协议,比如网络块设备(Network Block Device,NBD)协议,从而EC2实例访问远程EBS节点上的逻辑卷与访问本地的块设备没有差别。

自动缩放

自动缩放(Auto Scaling)可以根据用户自定义的条件,自动调整EC2的计算能力。多个EC2实例组成一个自动缩放组(Auto Scaling Group),当组内的实例负载过高,比如CPU平均使用率超过70%时,可以定义缩放规则自动增加EC2实例;同样地,当组内的实例负载过低时,可以自动缩小EC2实例规模以降低成本。

EC2根据计算能力将实例分为多种类型,如下表:

资源

Small

Large

Extra Large

High-CPU Medium

High-CPU Extra Large

平台

32位

64位

64位

64位

64位

CPU

1ECU

4ECU

8ECU

5ECU

20ECU

内存

1.7GB

7.5GB

15GB

1.7GB

7GB

存储容量

160GB

850GB

1690GB

350GB

1690GB

EC2的一个计算单元称为一个ECU(EC2 Compute Unit),其计算能力相当于1个1.0GHz 2007 Xeon处理器。EC2平台不支持虚拟机实例在线迁移,如果用户需要调整实例类型,EC2内部实现时逻辑上分为两步:a) 终止原有的EC2实例;b) 根据一定的策略(比如负载)动态选择新的服务器节点启动新的EC2实例。自动缩放功能一般会配合弹性负载均衡功能一起使用,弹性负载均衡组件能够自动将流量转发给新实例。

网络路由

通过自动缩放技术,当EC2平台检测到某个实例出现故障时,将动态选择新的节点启动新实例,每个实例重新启动后它的公共IP地址都会发生变化。Internet用户通过域名访问EC2实例,然而,需要一段比较长的时间才能更新公共IP地址与DNS之间的映射关系。为了解决这个问题,EC2提供了两种方式:

  1. 弹性负载均衡:EC2新实例重启后通知弹性负载均衡组件,弹性负载均衡组件能够自动将流量切换到新实例。
  2. 弹性IP地址:弹性IP地址和用户账号而不是和某个特定的实例绑定,EC2用户可以将DNS域名设置为指向弹性IP地址。新实例启动时,EC2用户只需要使用管理工具将弹性IP地址与新的实例关联起来,Internet用户感觉不到任何差异。

AWS云平台系列介绍(一):AWS平台与EC2介绍相关推荐

  1. 【云原生系列】云计算概念与架构设计介绍

    1 什么是云计算 云计算是一种基于互联网的计算模式,在这个模式下,各种计算资源(例如计算机.存储设备.网络设备.应用程序等)可以通过互联网实现共享和交付.云计算架构设计的主要目标是实现高效.可扩展.可 ...

  2. AmazonS3(aws 云服务android sdk接入)

    参考 aws云服务文档 https://aws.amazon.com/cn/documentation/s3/ aws云服务实例代码 https://github.com/awslabs/aws-sd ...

  3. 亚马逊AWS在线系列讲座——基于AWS云平台的高可用应用设计

    设计高可用的应用是架构师的一个重要目标,可是基于云计算平台设计高可用应用与基于传统平台的设计有很多不同.云计算在给架构师带来了很多新的设计挑战的时候,也给带来了很多新的设计理念和可用的服务.怎样在设计 ...

  4. 微软体验计划无法连接服务器,Microsoft的常见问题_云平台服务-AWS云服务

    问:什么是 Microsoft 支持终止 (EOS)? 长期服务渠道 (LTSC) Microsoft 生命周期策略为商业产品和开发人员产品(例如 SQL Server 和 Windows Serve ...

  5. AWS云平台的服务概览

    当我们向别人解释AWS云平台所包含的那些服务的时候,许多人对AWS服务种类的丰富程度都表示惊讶.对于部分听说过AWS的人来说,他们知道AWS云平台的功能主要限于EC2(弹性计算云).S3(简单存储服务 ...

  6. 数据分析与可视化 --aws云平台

    数据分析与可视化 项目一:搭建AWS数据分析开发环境 1.安装Notebook开发环境 Step1:下载支持Notebook 的开发环境 远程登录到Amazon EC2实例后 在命令行中输入并执行: ...

  7. aws云平台架构师 收入_收入15万美元的云架构师可能被低薪

    aws云平台架构师 收入 根据该消息来源, "云架构师的年收入在14万至15万美元之间". 我支付的费用越来越少,具体取决于建筑师的住所. 但是,具有良好的经验和行之有效的成功经验 ...

  8. 通过AWS云平台 构建云上勒索病毒防护体系,轻松保护数据完整性

    最近几年,勒索病毒成为许多企业安全管理者谈之色变的话题.从早期的WannaCry,到最新的GlobeImposter,各种勒索病毒以及其变种对企业的数据完整性保护提出了极大的挑战,其中针对制造业.政府 ...

  9. 云服务系列文章(一) 阿里云和AWS

    [怒草 https://blog.csdn.net/visionliao/article/details/108055806 未经允许严禁转载,请尊重作者劳动成果.] 概述 "云" ...

  10. 4G DTU接入平台系列教程(三):OneNet中移物联云平台接入教程详解

    LTE-659 4G DTU系列 OneNet中移物联云平台连接教程 今天介绍物联设备 LTE-659 4G DTU如何接入OneNet中移物联云平台系列. LTE-659是一款Cat 1模块.物联网 ...

最新文章

  1. 我删了这些训练数据…模型反而表现更好了!?
  2. c语言未命名exe,用dev-c++编译出现问题,求大神解答啊
  3. EntityFramework Code-First 简易教程(三)-------数据库初始化
  4. li前面的原点或者方的样式修改html中列表项li所显示的圆点的颜色?,以及相关样式的设定...
  5. win7更改适配器设置没有本地连接解决方法
  6. 市场调研策划书_市场调查计划书模板
  7. flask orm 数据库_Flask:使用ORM框架操作数据库
  8. 使PNG图片在IE6下透明(非背景图片)
  9. 20. 顺时针打印矩阵
  10. Java课程设计-旅游管理系统
  11. VS系列编译器基本调试快捷键的使用
  12. 高响应比优先调度算法和短作业优先调度算法
  13. ascII码,asc2码表
  14. 测试 linux CPU 压力
  15. android 疯狂猜成语 源码,安卓版疯狂猜成语答案图文全解
  16. SAP中一次性客户及供应商的应用浅晰
  17. 谷歌中国工程研究院原副院长王劲加盟百度
  18. 阿里云主机修改操作系统 详细步骤
  19. 人到中年,没事多休息,有空多赚钱!
  20. 智慧养老平台推广文案列

热门文章

  1. 够快,首个“开源ChatGPT项目“来了!网友吐槽:这谁能跑
  2. 【计算机系统结构】第5章 存储层次问答题
  3. 四川成龙师范大学计算机专业,四川师范大学成龙校区有哪些专业
  4. 【Effection C++】读书笔记 条款26:尽可能延后变量定义式的出现时间
  5. 数据产品_数据中台02_数仓模型和架构
  6. 信息奥赛一本通1851:【08NOIP提高组】笨小猴
  7. 宽禁带半导体:后摩尔时代超车绝佳赛道?
  8. 【系统】win7开机卡,拔网线开机后接上网线才行正常使用,WIN7开机网络转圈圈
  9. 文件描述符与文件句柄
  10. 第一章:网络应用编程入门知识