1.对于中、小型公司来说,如何处理公司与日增长的庞大数据是一个非常烦恼的问题。而本系列博客介绍了如何利用aws的大数据产品一步步构建低成本、可扩展以及易维护的数据仓库。
2.Amazon EMR简介:Amazon EMR 提供的托管 Hadoop 框架可以让您快速轻松、经济高效地在多个动态可扩展的 Amazon EC2 实例之间处理大量数据。您还可以运行其他常用的分布式框架 (例如 Amazon EMR 中的 Apache Spark、HBase、Presto 和 Flink),以及与其他 AWS 数据存储服务 (例如 Amazon S3 和 Amazon DynamoDB) 中的数据进行交互。
Amazon EMR 能够安全可靠地处理广泛的大数据使用案例,包括日志分析、Web 索引、数据转换 (ETL)、机器学习、财务分析、科学模拟和生物信息。
3.进入EC2控制台,点击左下角的密钥对菜单
4.点击创建密钥对按钮,在弹出的对话框中输入密钥对的名称:dfwarehouse-test
5.点击创建按钮,下载密钥。请保护好密钥,AWS只提供了这一次下载密钥的机会
6.登录aws账户、选择emr,进入emr的控制台。
7.点击创建集群按钮,进入集群创建页面
8.点击转到高级选项(在高级选项中能选择安装哪些软件)
9.选择要安装的EMR版本,已经要安装的软件。我在这里安装了Hadoop、Hive、Hue、Tez、Sqoop和Spark
10.取消勾选:最后的步骤完成后,集群自动终止。
11.点击下一步
12.实例组配置,勾选:统一实例组
13.配置根设备 EBS 卷大小:设置10G(根据自己的情况设置,一般设置100G)
14.配置EMR的实例类型:
在Amazon EMR中可以选择实例类型,但是不能选择操作系统类型,只能用Amazon自带的操作类型。
在EMR中有3种实例角色:
1)主实例(Master):整个EMR集群的老大,运行着Hadoop的namenode,管理者Hadoop集群的元数据。
2)核心实例(Core):核心实例运行着Hadoop集群的DataNode以及进行计算。是一个运行着Hdfs的计算节点。
3)任务实例(Task):任务实例与核心实例比较类似,只是任务实例上没有Hdfs,不保存数据。任务的临时数据保存在核心实例中。任务实例突然关闭并不影响整个job的执行,不会造成数据的丢失。
所以,主实例和核心实例选择按需实例,任务实例选择Spot实例(是按需实例价格的10%)。关于Spot实例具体可见官网:
https://amazonaws-china.com/cn/ec2/spot/
Amazon EMR集群最少需要1台主实例、1台核心实例。可以没有任务实例。
15.点击下一步,进入一般集群配置
16.集群名称,给创建的EMR集群取一个名字:warehouse-test
17.勾选日志记录、调试和终止保护。
终止保护是指在关闭(终止)现在这个EMR集群时,会进行验证,防止误操作关闭集群
18.请勾选附加选项中的EMRFS 一致视图选项
19.点击下一步按钮,进入安全性设置
20.在安全选项中的EC2键对,选择已经存在的EC2密钥对:warehouse-test
21.EC2安全组分别为主实例和核心实例默认创建一个安全组。
EMR集群的安全组规则的创建原则是:
1)主实例和核心与任务实例要能互联互通
2)核心与任务实例一般只允许主实例登录,也就是说一般不允许任何人(包括开发人员)登录核心和任务节点。
3)主实例允许开发人员登录
22.点击创建集群按钮,等几分钟EMR集群就创建好了。
23.在emr控制台可以查看集群摘要、应用程序历史记录、监控等
24.在摘要中可以看见主节点的公有DNS,点击SSH按钮,可以看见登录到emr主节点的ssh命令
25.登录到emr的主节点
26.登录,注意修改pem文件的权限为400
chmod 400 ~/Downloads/dfwarehouse-test.pem
ssh -i ~/Downloads/dfwarehouse-test.pem [email protected]
27.登录成功后看见EMR就成功了。
注意:主节点的安全组要对自己所在的ip开放端口