Qwiklab'实验-Hadoop, IoT, IAM, Key Management'

时间:2023-07-31 23:05:38
Qwiklab'实验-Hadoop, IoT, IAM, Key Management'

title: AWS之Qwiklab

subtitle: 1. Qwiklab'实验-Hadoop, IoT, IAM, Key Management Service'

date: 2018-09-19 17:29:20

Analyze Big Data with Hadoop

使用Hadoop分析大数据

知识梳理

1. 定义与作用

Amazon EMR 是一个托管集群平台,可简化在 AWS 上运行大数据框架 (如 Apache Hadoop 和 Apache Spark) 以处理和分析海量数据的操作。借助这些框架和相关的开源项目 (如 Apache Hive 和 Apache Pig)。处理用于分析目的的数据和商业智能工作负载。此外,可以使用 Amazon EMR 转换大量数据和将大量数据移入和移出其他 AWS 数据存储和数据库,如 Amazon Simple Storage Service (Amazon S3) 和 Amazon DynamoDB。

2. 大数据技术概述

随着数据的不断变大,数据的处理就出现了瓶颈:存储容量,读写速率,计算效率等等。为了处理大数据,google打造了三驾马车,MapReduce,BigTable和GFS。世界人民为了抢占一席之地,开源的Hadoop诞生了!

3. Hadoop概述

Apache Hadoop是一款支持数据密集型分布式应用程序并以Apache 2.0许可协议发布的开源软件框架。它支持在商品硬件构建的大型集群上运行的应用程序。Hadoop是根据谷歌公司发表的MapReduce和Google文件系统的论文自行实现而成。所有的Hadoop模块都有一个基本假设,即硬件故障是常见情况,应该由框架自动处理。(wikipedia给出的定义)

4. Hadoop作用与优势

Hadoop主要完成两件事,分布式存储和分布式计算。Hadoop能完成大数据的存储,处理,分析,统计等业务,在数据挖掘等方面应用广泛。

优势有三点:一是高扩展性。简单的增加硬件就可以达到效果的提高。二是低成本,用PC机就能做到。三是Hadoop具有成熟的生态圈,比如Hive,Hbase,zookeeper等,让Hadoop用起来更方便。

5. Hadoop核心

hadoop分为hadoop1.X和hadoop2.X,并且还有hadoop生态系统。Hadoop的核心是mapreduce和hdfs。

具体不作详细讨论。

领域 样本数据 定义
日期 2017年7月5日 事件发生的日期。
时间 20时05分47秒 CloudFront服务器完成对请求的响应时间(UTC)。
边缘位置 SEA4 为请求提供服务的边缘位置。每个边缘位置由三字母代码和任意分配的数字标识,例如DFW3。三字母代码通常对应于边缘位置附近的机场的国际航空运输协会机场代码。
字节 4261 CloudFront响应请求而向查看器提供的总字节数,包括标头。
IP 10.0.0.15 发出请求的查看者的IP地址。
方法 得到 HTTP访问方法:DELETE,GET,HEAD,OPTIONS,PATCH,POST或PUT。
主办 abcd.cloudfront.net CloudFront分配的域名。
URI /test-image-2.jpeg URI的一部分,用于标识路径和对象
状态 200 HTTP状态代码(例如200 =成功)。
介绍人 - 发起请求的域的名称。
用户代理 Mozilla的/ 5.0 ... User-Agent标头标识请求的来源,例如提交请求的设备和浏览器的类型,如果请求来自搜索引擎,则标识哪个搜索引擎。

Introduction to AWS Internet-of-Things (IoT)

AWS物联网(IoT)简介

知识梳理

1. 定义与作用

AWS物联网(loT)是一个托管云平台,可让连接的设备轻松安全地与云应用程序和其他设备进行交互。AWS loT可以支持数十亿台设备和数万亿条消息,并可以可靠安全地处理和路由这些消息到AWS端点和其他设备。借助AWS loT,应用程序可以随时跟踪所有设备并与之通信,即使它们未连接也是如此。

2. AWS IoT定义

AWS IoT 可在连接了 Internet 的设备 (如传感器、致动器、嵌入式微控制器或智能设备) 与 AWS 云之间提供安全的双向通信。客户能从多台设备收集遥测数据,然后存储和分析数据。也可以创建令用户能够通过手机或平板电脑控制这些设备的应用程序。

3. AWS IoT组件

组件

4. 示例

发布/订阅模式如何与AWS IoT配合使用

Qwiklab'实验-Hadoop, IoT, IAM, Key Management'

cd  simulator
aws iot create-keys-and-certificate --set-as-active \
--certificate-pem-outfile certs/certificate.pem.crt \
--public-key-outfile certs/public.pem.key \
--private-key-outfile certs/private.pem.key \
--region us-west-2
解释:
创建证书和密钥
将证书和密钥设置为活动状态
将证书和密钥的内容输出到~/simulator/certs/

Introduction to AWS Identity and Access Management (IAM)

AWS身份和访问管理(IAM)简介

知识梳理

1. 定义与作用

AWS身份和访问管理(IAM)是一项Web服务,使Amazon Web Services(Aws)客户能够在AWS中管理用户和用户权限。借助IAM,您可以集中管理用户、诸如访问密钥之类的安全凭证以及控制用户可以访问哪些AWS资源的权限。

2. AWS身份和访问管理(IAM)具体作用

管理IAM用户及其访问权限:创建用户并为其分配单独的安全凭证(访问密钥,密码和多重身份验证设备)。管理权限以控制用户可以执行的操作。

管理IAM角色及其权限:lAM角色与用户类似,因为它是具有权限策略的AWS身份,用于确定身份在AWS中可以做什么和不能做什么。但是,角色不是与个人有唯一的关联,而是由任何需要它的人来假设。

管理联盟用户及其权限:通过信用身份联合,以允许企业中的现有用户访问AWS管理控制台,调用AWS API和访问资源,而无需为每个身份创建IAM用户。

IAM组权限策略(EC2-Support)托管策略代码块:
AmazonEC2ReadOnlyAccess: {
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow", //权限
"Action": "ec2:Describe*", //针对AWS服务进行API调用
"Resource": "*"
//资源定义规则所涵盖的实体范围(如特定Amazon S3存储桶/Amazon EC2实例/ *表示任何资源)
},
{
"Effect": "Allow",
"Action": "elasticloadbalancing:Describe*",
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"cloudwatch:ListMetrics",
"cloudwatch:GetMetricStatistics",
"cloudwatch:Describe*"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "autoscaling:Describe*",
"Resource": "*"
}
]
} IAM组权限策略(EC2-Support)内联策略代码块:
EC2-Admin-Policy: {
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:Describe*",
"ec2:StartInstances",
"ec2:StopInstances"
],
"Resource": [
"*"
],
"Effect": "Allow"
}
]
}

Introduction to AWS Key Management Service

AWS Key Management Service简介

知识梳理

1. 定义与作用

AWS Key Management Service (AWS KMS) 是一项托管服务,可让用户轻松创建和控制用于加密数据的加密密钥。在 AWS KMS 中创建的主密钥受 FIPS 140-2 验证加密模块保护。

2. 对称和非对称加密

对称加密算法

3. AWS Key Management Service(AWS KMS)用法

身份验证和访问控制

4. AWS 服务如何使用 AWS KMS

许多 AWS 服务使用 AWS KMS 来对数据加密提供支持。如果某项 AWS 服务与 AWS KMS 相集成,您即可使用您账户中的客户主密钥 (CMK) 保护该服务为您接收、存储或管理的数据。有关与 AWS KMS 集成的 AWS 服务的完整列表,请参阅 AWS 服务集成。

以下主题详细讨论了特定服务如何使用 AWS KMS (包括其支持的 CMK)、这些服务如何管理数据密钥、所需的权限、以及如何跟踪您账户中每项服务使用 CMK 的情况。

主题

  • AWS CloudTrail
  • Amazon DynamoDB
  • Amazon Elastic Block Store(Amazon EBS)
  • Amazon Elastic Transcoder
  • Amazon EMR
  • Amazon Redshift
  • Amazon Relational Database Service (Amazon RDS)
  • AWS Secrets Manager
  • Amazon Simple Email Service (Amazon SES)
  • Amazon Simple Storage Service (Amazon S3)
  • AWS Systems Manager Parameter Store
  • Amazon WorkMail
  • Amazon WorkSpaces
密钥策略
{
"Version": "2012-10-17",
"Id": "key-consolepolicy-3",
"Statement": [
{
"Sid": "Enable IAM User Permissions",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::824333991948:root"
},
"Action": "kms:*",
"Resource": "*"
},
{
"Sid": "Allow access for Key Administrators",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::824333991948:user/awsstudent"
},
"Action": [
"kms:Create*",
"kms:Describe*",
"kms:Enable*",
"kms:List*",
"kms:Put*",
"kms:Update*",
"kms:Revoke*",
"kms:Disable*",
"kms:Get*",
"kms:Delete*",
"kms:TagResource",
"kms:UntagResource",
"kms:ScheduleKeyDeletion",
"kms:CancelKeyDeletion"
],
"Resource": "*"
},
{
"Sid": "Allow use of the key",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::824333991948:user/awsstudent"
},
"Action": [
"kms:Encrypt",
"kms:Decrypt",
"kms:ReEncrypt*",
"kms:GenerateDataKey*",
"kms:DescribeKey"
],
"Resource": "*"
},
{
"Sid": "Allow attachment of persistent resources",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::824333991948:user/awsstudent"
},
"Action": [
"kms:CreateGrant",
"kms:ListGrants",
"kms:RevokeGrant"
],
"Resource": "*",
"Condition": {
"Bool": {
"kms:GrantIsForAWSResource": "true"
}
}
}
]
}