0. 概述

AWS的EMR服务为客户提供的托管 Hadoop 框架可以让您轻松、快 
速、经济高效地在多个动态可扩展的 Amazon EC2 实例之间分发和处理 
大量数据。您还可以运行其他常用的分发框架(例如 Amazon EMR 中的 
Spark 和 Presto)与其他 AWS 数据存储服务(例如 Amazon S3 和 
靠地处理大数据使用案例,包括日志分析、Web 索引、数据仓库、机器 
学习、财务分析、科学模拟和生物信息。 
通过EMR服务,我们不必再去手动一个个的安装JDK,Hadoop, 
不用再为安装这些软件费神,搭建过Hadoop集群的人都知道,很繁琐, 
还有很多配置,甚至每台机器上遇到的问题还不一样。现在有了EMR一切 
都变得简单,使你专注于自己的开发,现在说起来简单,但我在用EMR的 
时候也遇到了很多问题,由于众所周知的原因AWS在朝鲜和其他国家并 
不能方便的应用,尤其EMR,所以我能找到的关于EMR的资料没有帮我 
完全搞定,官方的文档很多,但有的问题没有说清楚,在和AWS技术支 
持沟通后才搞定。

1. 创建密钥对

密钥对是用来ssh登录远程主机的 
1 打开 Amazon EC2 控制台 https://console.aws.amazon.com/ec2/。 
 
2 左侧找到密钥对 
 
3 创建密钥对 
 
 
点击创建后会弹出对话框让你保存密钥,保存好,ssh登录的时候会用到 

2. 创建S3存储桶

如果此步忽略,后面会默认创建一个存储桶 
1 通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/。 
 
2 创建存储桶 
 

3. 创建EMR,托管Hadoop集群

1 通过以下网址打开 Amazon EMR 控制台:https://console.aws.amazon.com/elasticmapreduce/。 
 
2 创建集群 
 
输入集群名称,设置S3存储路径,即为第二步里创建的S3存储桶,如果没有创建,这里会自动分配一个路径 

 
选择Hbase 

设置集群数量,默认即可 

选择密钥对,就是在第一步里创建的密钥对,然后点击创建,则开始启动集群,知道集群状态显示为等待状态时说明启动成功 

这样Hadoop集群就创建好了,在集群列表里点击刚才创建好的集群,进行集群详细信息 

4. 登陆主机

根据官方文档,就是让你直接用主节点共有DNS和密钥对登陆,但是它没有说明要设置安全组,于是我在这个地方折腾了很久 
1 修改安全策略 
AWS为了安全,默认的安全组里禁用了SSH的22端口,也禁用ping,总之你要用到的端口都必须自己去打开,我为了省事,因为是测试,所以全部打开了端口,具体操作如下: 
在集群详细信息里,找到主机点的安全组,点击后面的连接进入安全组设置 
 
点击入站,这里就是所有开放的端口,这里可以设置具体哪个IP访问,点击编辑,新增你的安全规则 

打开ICMP是为了能ping同主机,打开SSH 22端口是为了SSH登录,也是为什么创建好主机直接登录不成功的原因所在,因为我要用程序通过thrift服务器来连接HBase所以打开TCP的端口,为安全起见,建议用到什么端口就打开什么端口

2 登录 
PuTTY 本身不支持 Amazon EC2 生成的私有密钥格式 (.pem)。PuTTY 有一个名为 PuTTYgen 的工具,可将密钥转换成所需的 PuTTY 格式 (.ppk)。您必须将私有密钥转换为此格式 (.ppk),然后才能尝试使用 PuTTY 连接到您的实例。 
转换您的私有密钥 
- 启动 PuTTYgen(例如,在“Start”菜单中,依次单击“All Programs > PuTTY > PuTTYgen ”)。 
- 在 Type of key to generate (要生成的密钥类型) 下,选择 SSH-2 RSA。 
- 单击“Load”。在默认情况下,PuTTYgen 仅显示扩展名为 .ppk 的文件。要找到您的 .pem 文件,请选 择显示所有类型的文件的选项。 
- 为启动实例时指定的密钥对选择 .pem 文件,然后单击 Open。单击 OK (确定) 关闭确认对话框。 
- 单击 Save private key (保存私有密钥),以 PuTTY 可用的格式保存密钥。PuTTYgen 显示一条关于在没有口令的情况下保存密钥的警告。单击 Yes (是)。

然后通过生成的ppk密钥来登录 

登录成功: 

输入hbase shell即可操作hbase 
 
EMR默认已经开启thrift,所以不再手动去启动它,这样程序里就可以访问主机了 
用程序连接的时候可以用主机公共DNS名称连接即可。

AWS EMR上搭建HBase环境的更多相关文章

  1. 在AWS EMR上运行Map Reduce的Java示例程序 及 操作小计

    下面的代码中AffairClient类中包含了三个内之类,分别对应于Hadoop Mapreduce程序运行所需的Mapper类,Reducer类,和主类.AffairClient类中其余方法用于配置 ...

  2. Linux 下搭建 HBase 环境

    Linux 下搭建 HBase 环境 作者:Grey 原文地址: 博客园:Linux 下搭建 HBase 环境 CSDN:Linux 下搭建 HBase 环境 前置工作 首先,需要先完成 Linux ...

  3. Ubuntu上搭建Hadoop环境(单机模式+伪分布模式) (转载)

    Hadoop在处理海量数据分析方面具有独天优势.今天花了在自己的Linux上搭建了伪分布模式,期间经历很多曲折,现在将经验总结如下. 首先,了解Hadoop的三种安装模式: 1. 单机模式. 单机模式 ...

  4. CentOS7.2上搭建httpbin环境

    CentOS7上搭建httpbin环境 1.安装python31)安装python3.6可能使用的依赖yum -y install openssl-devel bzip2-devel expat-de ...

  5. windows上搭建php环境

    在Windows 7下进行PHP环境搭建,首先需要下载PHP代码包和Apache与Mysql的安装软件包. PHP版本:php-5.3.2-Win32-VC6-x86,VC9是专门为IIS定制的,VC ...

  6. 在ubuntu16上搭建rabbitMQ环境

    在ubuntu16上搭建rabbitMQ环境 安装rabbitMQ apt-cache pkgnames | grep rabbitmq apt-get install rabbitmq-server ...

  7. 使用Cloudera Manager搭建HBase环境

    使用Cloudera Manager搭建HBase环境 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.使用CM安装HBase服务 1>.进入CM服务安装向导 2>. ...

  8. mac上搭建mysql环境配置和Navicat连接mysql

    mac上搭建mysql环境配置 1.下载mysql for mac: https://downloads.mysql.com/archives/community/ 注意:mysql版本要和你的MAC ...

  9. 【FastDFS】小伙伴们说在CentOS 8服务器上搭建FastDFS环境总报错?

    写在前面 在[冰河技术]微信公众号的[分布式存储]专题中,我们分别搭建了单节点FastDFS环境和高可用FastDFS集群环境.但是,之前的环境都是基于CentOS 6.8服务器进行搭建的.很多小伙伴 ...

随机推荐

  1. BZOJ 3527: [ZJOI2014]力(FFT)

    BZOJ 3527: [ZJOI2014]力(FFT) 题意: 给出\(n\)个数\(q_i\),给出\(Fj\)的定义如下: \[F_j=\sum \limits _ {i < j} \fra ...

  2. NOIWC2018游记

    NOIWC2018游记 接着PKUWC就是NOIWC了.感觉时间很紧呀,但越是紧张呢,就越让人心里觉得充实. 能够去NOIWC,应该是一次非常充实的体验吧. 这一篇游记是接着上一篇写的,时间点上完全都 ...

  3. [BZOJ1207] [HNOI2004] 打鼹鼠 (dp)

    Description 鼹鼠是一种很喜欢挖洞的动物,但每过一定的时间,它还是喜欢把头探出到地面上来透透气的.根据这个特点阿Q编写了一个打鼹鼠的游戏:在一个n*n的网格中,在某些时刻鼹鼠会在某一个网格探 ...

  4. .NET Core 配置Configuration杂谈

    前言 .NET Core 在配置文件的操作上相对于.NET Framework做了不少改变,今天来聊一聊.关于Configuration的Package都是以Microsoft.Extensions. ...

  5. 小程序wx.navigateTo和wx.redirectTo 都无效

    最近在写小程序,遇到页面跳转时,发现有几次失败.查询资料已解决,总结一下知识点: 一.如下,第5层到到6层时失败(评论页⑤-->返回商品详情页⑥) 登陆①-->主页②-->商品列表页 ...

  6. RocketMQ与kafka对比(官方)

    淘宝内部的交易系统使用了淘宝自主研发的Notify消息中间件,使用Mysql作为消息存储媒介,可完全水平扩容,为了进一步降低成本,我们认为存储部分可以进一步优化,2011年初,Linkin开源了Kaf ...

  7. LAMP基础

    前言:上一篇博文,说到了URL.http的协议.事务以及私有https的实现.此次 一. 概念: LAMP: a:apache m:mariadb,mysql p:php,perl,python 二. ...

  8. ImageButton 图像按钮

    ImageButton 类主要成员有: setINMask 属性: 数据类型:Bool, {get ,set}. 用于确定是否接受用户输入操作,它的值是传给一个指针.这个指针指向的当前图像按钮所在的窗 ...

  9. 自动化之路 Graphite监控上手指南

    自动化运维怎能少了监控,推荐Graphite监控,下面是配置地址 http://www.infoq.com/cn/articles/graphite-intro/ Graphite官网 http:// ...

  10. 进程优化工具Process Lasso Pro 8.4官方版+激活破解方法

    Process Lasso是一款来自美国的系统进程优化工具,基于特殊算法动态调整进程的优先级别,通过合理的设置进程优先级来实现降低系统负担的功能.可有效避免蓝 屏.假死.进程停止响应.进程占用 CPU ...