开发者学堂课程【E-MapReduce 入门课程:EMR 开通与演示】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/759/detail/13336
EMR 开通与演示
内容介绍:
一、概念介绍
二、准备工作
三、创建流程演示
一、概念介绍
1. 网络
VPC
专有网络(Virtual Private Cloud,简称 VPC)是您基于阿里云构建的一个隔离的网络环境,专有网络之间逻辑上彻底隔离。
安全组
安全组提供类似虚拟防火墙功能,用于设置集群内 ECS 实例的网络访问控制,是重要的安全隔离手段。
交换机
VPC内ECS实例通过交换机进行通讯。根据实例所属的专有网络 VPC和虚拟交换机网段,专有网络 VPC 类型 ECS 实例一经创建即被分配一个私有 IP 地址。
EMR团队与阿里云安全团队紧密合作及时发现各种高危漏洞,提前预防危险的发生。
2. 集群类型
EMR 支持的六种集群类型,根据集群使用场景来划分。
Hadoop 集群类型有最丰富的开源组件,作为大数据平台,包含组件:
·Data warehouse: Hive
·Batch processing: MR,
Spark
·Strcaming processing: Flink,
Spark Streaming
·Ad hoc: lmpala, Presto
·NoSQL: HBase
·lnteractive tool: HUE,
zeppelin. Jupyter
·Authentication Permission:
Apache Ranger, MIT
Kerberos
kafka 可以作为消息系统,包含组件:
· Message Engine: Kafka
·Cluster Management:
Kafka Manager
·Authentication
Permission : Ranger. MIT
Kerberos
TensorFlow 作为 ML/AI 平台,包含组件:
·Data warehouse:Hive
·Batch processing: MR,Spark
·Streaming processing: Flink ,
Spark Streaming
·Deep Learning: TensorFlow,
Analytic Zoo
·lnteractirve tool: HUE,
zeppelin, Jupyter
·Authentication Permission:
Apache Ranger,MIT
Kerberos
druid 主要用于实时 OLAP 的场景,包含组件:
·Compute Engine: Druid
·Data visualization:
Superset
·File System: HDFS
ZooKeeper 作为分布式协调系统,包含组件:
·Kafka, Druid, HDFS,YARN,
HBase independent
distributed coordinator
dataflow 集群类型里的组件基于 Apache Flink 官方产品 ververica 和 EMapReduce Hadoop 构建的企业级大数据计算平台,完全兼容开源 Flink APl,主要用于实时计算的场景,并做了实时计算上的适配和优化,并提供额外商业增值能力。
3. EMR集群节点类型
Master
·部署Master服务,HDFS NameNode, YARN ResouroeManager等.
· HDFS, YARN, Hive, HBase组件均已实现HA机制
Core
·部署YARN NodeManager和DataNode
·不支持弹性伸缩
即可以做存储也可以做计算
Task
·部署YAPRN NodeManager但不会部署DataNode
主要目标是计算,不进行存储。
·支持竞价实例和弹性伸缩
弹性伸缩的过程是通过 Task 节点的扩充和减少来增加或减少计算力。
Gateway
·部署 Hadoop,Spark,Fink等组件的客户端
·支持部署不同部门采用不同的参数和配置
4. 权限策略
角色
RAM 角色是一种虚拟用户,没有确定的身份认证密钥,需要被一个受信的实体用户扮演才能正常使用。首次使用 E-MapPeduce 服务时,必须用主账号完成默认角色授权,否则子账号和主账号不能使用E-MapReduce。
系统角色 |
角色描述 |
AliyunEMRDefaultRole |
E-MapReduoe 才能正常地调用相关服务(ECS 和 OSS等),创建集群以及保存日志。 |
AliyunEmrEcsDefaultRole |
您创建的 E-MapReduce 集群可以以免AK的方式访问阿里云资源,例如 OSS |
用户系统策略
权限指在某种条件下允许或拒绝对某些资源执行某些操作,权限策略是一组访问权限的集合。权限策略分为系统策略和自定义策略,需要主账号在 RAM 控制台上进行操作
系统策略 |
策略描述 |
AliyunEMRFullAccess |
管理 E一MapReduoe 的权限,主要包括对 E-MapReduoe 的所有资源的所有操作权限。 |
AliyunEMRDevelopAccess |
E-MapReduoe 开发者权限,与AliyunEMRFulAcoess 策略相比,不授予集群的创建和释放等操作权限。 |
AliyunEMRFlowAdmin |
E-MapReduoe数据开发的管理员权限,支持创建项目、开发和管理作业,但不支持添加项目成员和管理集群。 |
创建集群时如果使用的是子账号,就需要主账号为子账号授权相应的权限策略,这样才能在 EMR 控制台上进行操作。
5. EMR 费用组成
ECS 实例费用
购买 E-MapReduce 集群时,系统根据您选择的实例配置自动购买并创建阿里云 ECS 实例,您无需提前准备集群所需的 ECS 实例。同时,如果您的账号拥有云服务器ECS的优惠折扣,创建集群时将自动享受该折扣。
EMR 实例费用
E-MapReduce 会提供集群的多维度管理服务,包括页面的展示与控制、OpenAPI 与 SDK 的支持、监控报警、运维工具和服务端后台的自动化运维等服务。关于 E-MapReduce 产品的详细定价有两种类型:包年包月和按量付费。目前使用包年包月,EMR 实例部分价格享受0折优惠。
外网流量费(开启公网)
Master 节点的外网流量费用未包含在集群的费用中,需要单独计算。该部分费用采用按量付费的方式,按小时计算出方向的外网流量费用(入方向流量免费)。
二、准备工作
首先需要注册阿里云账号。如果您还没有阿里云的云账号,请注册阿里云账号,并完成实名认证。
F-MapReduce 服务账号授权。您需要给 EMR 系统默认角色授权。
子账户授权。如果您需要使用 PAM 子账号登录 EMR 控制台,并使用控制台上的功能,则需要您使用主账号登录访问控制 RAM 控制台,授予PAM子账号相应的权限。EMR 提供的系统权限共有三个。
确保账户余额充足。根据阿里云ECS的规则,您在购买按量付费实例时,需要保证阿里云账户中可用余额不少于100元的人民币(代金券无效)。
如果账户不能满足要求,在创建按量付费的 EMR 实例时点击创建会有错误的提示,无法完成正常的创建流程。
三、创建流程演示
在 EMR 的官方主页上观看 EMR 的集群介绍功能介绍。
点击购买可以跳转进相关的 EMR 控制台。
也可以先点击进入控制台,再点击创建集群,也可以进入创建页面。
这里分为三个环节:软件配置、硬件配置、基础配置。
1.软件配置
集群类型分为六种,可以根据使用集群的具体场景选择合适的集群。这里选择 Hadoop 集群作为演示。
其中云原生选项 EMR 产品目前默认是 on ECS。
产品版本分为 EMR-4.x 基于 hadoop 3.x 和 EMR-3.x 基于 hadoop 2x。可以根据对 Hadoop 生态的需求选择合适的版本来创建集群,这里选择 EMR-3.29 版本。
根据所选版本可以看到版本里各个组件的版本情况,也可以根据对组件的需要点击可选服务,创建进集群里面。
高级设置里有 Kerberos 集群模式和软件自定义配置两部分。
打开 Kerberos 集群模式开关后创建的集群默认开启 Kerberos,创建出高安全集群。
软件自定义配置打开后可以通过 json 文件来对组件的配置在创建时进行初始化,方便批量或自动化进行创建集群的需求。
2.硬件配置
付费类型分为包年包月和按量付费。包年包月也可以选择付费时长和是否开启自动续费的开关。
可以选择不同的可用区来创建集群,不同的可用区下有不同的 VPC,如果在当前可用区下没有 VPC,可以点击创建 VPC,创建专有网络。
如果使用的是子账号,需要有相关的权限,否则需要主账号来创建相关 VPC 和交换机。
安全组可以选择已有的安全组,也可以创建安全组,主要填入安全组的名称,在创建集群时会自动创建一个安全组。
打开高可用开关可以选择部署方式。
选择集群具体实例以及相关机器规格。Master 实例下可以选择具体 ECS 的规格,主要看相关块数以及内存的数目。可以看到相关系统盘和数据盘的配置,master 配置为选择的高可用两台。
Core实例配置
可以看到别的机器类型实例。计算型的 core 和 mem 的比例为1:2,内存型为1:8,通用型为1:4,这里选择 g6.2xiarge。core 节点的最小数目为两台,可以更改实例数量来增加相关 core 节点数目。
3. 基础配置
先为集群创建一个名称。
挂载公网开启后 Master 节点上会绑定相关的弹性公网 IP,关闭后相关的集群功能,如通过控制台访问 wab 将无法使用。
远程登陆开关主要用于为绑定的安全组打开远程登陆22端口。如果已经开启了端口,就无需将远程登陆端口打开。
密钥对和密码主要用于登陆集群的 Master 节点,设置密码作为后续登陆节点的认证。
添加用户是在集群创建完成之后为集群的用户管理里面默认添加用户名称。
权限设置是为 EMR 授权的两个服务角色。其中服务角色不能更改,是用于 EMR 服务来对创建的集群进行相关部署工作。ECS 应用角色创建对象为 EMR 的角色并填写角色名称,就可以使用自己的角色来通过集群访问外部资源,如 OSS。
引导操作是在集群创建的过程中自动运行定义的脚本,脚本首先要上传至 OSS 。
标签主要用于为集群及集群下的 ECS 实例的筛选和管理。
资源组是用于集群管理的方式,当有多个集群时,可以将其分入不同的资源组类,通过筛选资源组快速得到本资源组下的所有集群。
点击确定
可以看到所选择的所有配置的情况,比如集群名称和所属的地域,软件的版本以及各个软件的具体版本情况。这里所选的组件的版本在集群创建好了之后不能更改,但是组件类型可以在创建好之后进行添加,比如一些可选的服务,在创建时没有勾选,此后创建好之后仍然可以将这些服务方便的安装在集群里。还有一些网络情况,比如所选的可用区以及网络的类型和安全组的名称。
硬件情况比如 Master 节点的配置以及数量和 Core节点的配置,因为没有开启 Kerberos 集群模式,所以为标准模式,如果开启则为高安全模式。
挂载公网开关打开后会给 master 节点绑上弹性公网的 IP,通过相关 IP 地址可以公网环境下访问 master 节点。
开启远程登陆会为安全组打开22端口的相关操作。在安全组中手动开启22端口则不用打开此端口。
Meta 数据库是数据的存储地址,这里选择集群自带的数据库来进行存储,也可以在创建集群时选择集群默认的配置情况,在创建好了之后将其改为自建的 RDS 作为存储地址。
价格分为 ECS 和 EMR 两部分,算出总价。
最后一步勾选服务条款,点击创建,完成整个集群的创建流程。
这时集群正在初始化中,可以点击集群 ID 进入集群管理的详细界面。
查看集群基础信息。
标签可以根据集群管理,如果有多个集群,可以通过标签对不同集群进行筛选。
当前集群状态是初始化中,正常情况下一个集群的初始化时间约为十分钟左右,根据集群的规模以及所选可用区和网络情况综合决定。当集群创建成功之后状态会变为运行中,此时集群创建完毕。