将简单讨论以下AWS服务:
-
Storage and Content Delivery
-
Amazon CloudFront
-
AWS Storage Gateway
-
-
Security
-
AWS Directory Service
-
Key Management Service and Cloud HSM
-
AWS Cloud Trail
-
-
Analytics
-
AWS Kinesis
-
AWS Elastic MapReduce
-
AWS Data Pipeline
-
AWS import/Export
-
-
DevOps
-
AWS OpsWorks
-
AWS CloudFormation
-
AWS Elastic Beanstalk
-
AWS Trusted Advisor
-
AWS Config
-
Storage and Content Delivery
- Amazon CloudFront
- 概念:AWS提供的Content Delivery Network(CDN)网络服务,用于加速在不同地理位置的用户访问速度。
- Distributions:AWS CloudFront最小的单元,是所有资源,配置的最小集合。在创建distribution时需要指定DNS Domain Name,用于对外部提供的统一访问入口。
- Origions:AWS CloudFront源,表示从哪些地方可以取到最新的资源。常见的源有S3 Bucket,S3静态主机,EC2 Instance,ELB。
- Edge location:端点位置,从Origions取到数据后存放数据的位置,位于不同的地理位置,为不同地理位置的用户提供最近的数据访问。
- 缓存控制:控制数据生命周期,默认24小时过期,也可以指定过期日期,通过设置Cache-Control header或Time to Live控制。也可以调用API强制所有数据都过期,以便全部重新刷新数据。最简单的方式是在路径上对对像使用版本控制,CloudFront会自动选择最新的数据版本,如assets/v2/css/narrow.css。
- 多个Origion:可以使用动态或静态的多个origions,并根据请求路径参数选择不同的origion,如.php的访问都在EC2,.jpg的访问都到S3。
- 权限控制:Signed URLs,只允许某个时间段访问资源。Signed Cookies,通过key pairs访问资源。Origin Access Identities(OAI),只允许Cloud Front访问S3的资源。
- 使用场景:跨地理位置的访问请求都可以用CloudFront加速,不管是静态还是动态的资源。不跨地理位置的访问不使用CloudFront,如所有用户都在同一城市,或者在不同地理位置,但都使用同一个VPN。
- AWS Storage Gateway
- 概念:AWS存储网关,通过AWS Storage Gateway,on-premises的数据中心可以访问AWS的存储服务。
- File GateWay:文件网关,类似共享文件服务,Elastic File System等。
- Volume Gateway:分区网关
- Cached Volumes:用于扩展用户的分区,类似于直接mount到用户数据中心,直接存储数据。最终数据存储在S3。
- Stored Volumes:用于用户数据的备份。最终数据存储到S3。
- Virtual Tape Libraries(VTL):用于数据的归档。
Security
- AWS Directory Service
- AWS 目录服务,提供三种类型。
- Microsoft AD,一般用于大于5000人的组织,提供企业级的功能服务。
- Simple AD,简化版的Microsoft AD,一般用于小于5000人的组织,某些高级功能不支持。
- AD Connector,AD连接器,用于将On-Premises的AD应用到AWS,而不需要再创建一套认证系统。
- AWS 目录服务,提供三种类型。
- Key Management Service and Cloud HSM
- 概念:AWS密钥管理,通过KMS,可以加密S3,EBS等数据,密钥永远不会离开AWS,提供了高的安全性。
- Customer Master Keys:用户Master Key对应于AWS KMS里面创建的密钥。只能用该Key来加密不大于4KB的数据,一般来说,CMK只用于加密和解密其它密钥。
- Data Keys,数据密钥,由CMS加密和解密。Data Keys用于加密和解密真实的数据。
- Envelop Encryption:信封加密模型。一般的流程是这样的:用户向KMS请求生成Data Keys,KMS使用CMK生成Data Keys,并将Data Kyes的明文和密文返回给用户。用户使用Data Keys明文加密数据,并将数据密文和Data Keys的密文一起发送给AWS。AWS使用CMS解密Data Keys得到Data Keys明文,再用此密钥解密最终的数据。因此,不同的数据都需要对应不同的Data Keys。
- 用户只有提供Data Keys的密文且有相应的权限后,AWS才会返回去明文。
- AWS CloudHSM:Hardware security module,硬件安全模块,提供专门的硬件来存储密钥,提高数据的安全性。
- AWS Cloud Trail
- 概念:一种用于监控用户API调用和Console操作的AWS服务,会将API调用记录的详情存入S3。可以在一个或多个Region上使用该服务。
- 使用场景:
- 安全审计,用于审计AWS资源访问的安全性。
- 排查是否存在无权限账号的恶意访问。
Analytics
- AWS Kinesis
- 概念:AWS提供的处理流数据的服务,如视频播放,大文件上传/下载等。
- Kinesis Firehouse:加载大量流数据到S3。
- Kinesis Stream:提供开发应用程序的SDK,使得用户可以方便的在加载数据的时候时时进行统计分析。
- Kinesis Analytics:提供标准的SQL来分析流数据。
- 使用创建:
- 流数据获取和收集。
- 流数据的试试收集和分析处理。
- AWS Elastic MapReduce
- 概念:AWS提供的集成了Hadoop的大数据分析框架,用于大数据的分析和处理。
- 两种文件系统:
- Hadoop Distributed File System(HDFS),基于Hadoop的文件系统。
- EMR File System,基于EMR的文件系统,支持将数据存储在Instance Store上,临时存储,或者存储在EBS上,永久存储。
- 使用场景:
- Log文件的分析处理。
- Clickstream的分析处理。
- AWS Data Pipeline
- 概念:在AWS不同组件或on-premises间快速的传输数据。
- 支持组件:On-premise,S3,EMR,Redshift等。
- AWS Import/Export
- 概念:将大量数据从on-premises拷贝到AWS或者从AWS拷贝到on-premises,或者在on-premises的数据中心间转移数据。
- 两种服务:
- Inport/Export Snowball
- 用于数据中心的迁移,AWS提供存储设备和转运服务。
- 用户不用提供硬件资源,如存储,卡车,集装箱等。
- Import/Export Disk
- 用于用户数据在On-premises和AWS之间的转移,AWS只提供可靠的高速网络服务和其它的监控服务等。
- 用户需要提供硬件资源,如存储等。
- Inport/Export Snowball
DevOps
- AWS OpsWorks
- 概念:基于Chef的应用程序配置管理服务,将资源分组,分组后的资源叫做stack。
- 定义应用程序架构规格,包括安装包,软件配置和存储资源等。
- 通过对应用程序分层来设计架构,适用于有多层架构的应用。
- 适用于持续集成环境来自动化部署和测试应用。
- AWS CloudFormation
- 概念:用Template定义stack,stack是一组资源的集合,包括EC2配置,ELB配置,Disk配置,Network配置等。
- Template是一个JSON文件,可通过此文件创建stack,创建好stack以后,相关的资源就自动创建好了。
- 可通过指定parameter来动态设置资源规格,例如EC2类型,Disk大小等。
- 如果创建好资源后修改了template,可通过创建一个change set来修改已经创建的资源,例如增加资源大小,规格等。
- 使用场景
- 快速启动测试环境,因为可以一次把所有的资源都创建好。
- 快速创建相同的环境,因为template是模板,可以创建一样的环境。
- AWS Elastic Beanstalk
- 概念:快速部署应用的服务,使得我们不用关心应用底层资源配置,只需关心代码和实现。
- 只需提供运行时代码,再选择相关配置,Beanstalk就会自动创建运行时环境,用户不会直接访问底层EC2,Disk等。
- 支持平台:PHP,Java,Node.js,Python,Ruby,Go等。
- AWS Trusted Advisor
- 概念:AWS提供的可信任的指导,可以给客户一些适用的建议来优化AWS资源使用,安全告警,费用优化,性能优化等。
- Cost Optimization:查看有哪些浪费的资源以节省费用,如没使用的EBS,使用率低的EBS,没使用的Elastic IP等。
- Performance: 查看系统性能,CPU使用率,Disk使用率等。
- Security:查看系统有哪些安全漏洞,给出不同级别的提示和高级。
- Fault Tolerance:查看有哪些错误的自动处理。
- 服务限制:可以查看所有的服务限制使用情况,例如每个Region限制5个VPC,可以查看使用情况。
- AWS Config
- 概念:AWS配置管理服务,能够跟踪资源配置修改记录,方便审计。
- 还可以发现当前帐号对应的资源,记录当前配置和捕获配置修改。
- 如果资源配置发生改变,可以设置SNS发送告警。