您的位置:首页 > 运维架构

Hadoop分布式搭建、Hbase安装、Hive安装

2017-02-25 20:27 369 查看

Hadoop分布式搭建、Hbase安装、Hive安装

关于hadoop分布式环境的搭建,网上有很多教程,看起来很简单,对着别人的教程一步一步来,但是真的是亲身试了这趟水,才知道这趟水有多深,就算步骤对着别人的教程一步不错,也会出现大大小小的问题,我前后安装的数次,解决了N个乱七八糟的问题,真的很消磨耐心,但是学习之路永远艰且长,所以认真学,逐渐摸清它的本质,就算出现问题也能自己解决。

这是最终成功的版本,特此记录成安装手册

安装环境:ubuntu12.04 64位系统

Hadoop版本:hadoop2.6.0

Hadoop安装

一、创建用户

:因为我在创建虚拟机,安装ubuntu的时候用的用户就是hadoop,默认为管理员,不用再设置增加权限,并将用户密码设置为hadoop。

二、更新apt:

根据网上教程,若是没有更新apt安装软件,可能有些软件安装不了。

登录hadoop用户,按ctrl+alt+t打开终端窗口,执行如下命令:

$ sudo apt-get update




三、安装SSH、配置SSH无密码登陆:

SSH是专为远程登录会话和其他网络服务提供安全性的协议

公钥私钥简单实现原理:

1、比如两台服务器A、B,A要通过SSH远程B,A首先本地生成公钥私钥对,将公钥发送给B,B收到A的公钥后加入到自己授权列表中。此时A、B公钥私钥对配置完成

2、在A请求远程B时,B先在授权列表中检查是否有A相关登录用户配置,如果有,那么就B就用A的公钥加密一段信息,发送给A,A收到后用私钥解密,然后发回给B,B就接收A解密后的信息,与发出的信息进行校验,如果校验成功则允许登录

集群、单节点模式都需要用到SSH登陆,ubuntu默认已安装了SSH client,此外还需要安装SSH server



安装后,可以使用如下命令登陆本机:



此时,会有如下提示(SSH首次登陆提示),输入yes。然后按提示输入密码hadoop,这样就登陆到本机了。



配置SSH无密码登陆:首先退出刚才的SSH,回到原先的终端窗口,然后利用ssh-keygen生成密匙,并将密匙加入到授权中:





加入授权:



四、安装java环境:

jre和jdk的区别

JRE(Java Runtime Environment,Java运行环境),是运行 Java 所需的环境。JDK(Java Development Kit,Java软件开发工具包)即包括 JRE,还包括开发 Java 程序所需的工具和类库。

直接通过命令安装OpenJDK 7



安装好OpenJDK后,找到相应的安装路径:



红色的/bin/javac前面的一串:/usr/lib/jvm/java-7-open
db28
jdk-i386,就是其安装路径

接着配置JAVA_HOME环境变量:





使该环境变量生效:



五、安装hadoop:

我下载的是hadoop-2.6.0版本,下载在“下载”文件夹中;并选择将hadoop安装到/usr/local/中

将hadoop安装包解压到/usr/local中



将文件夹名改为hadoop:



修改文件权限:



Hadoop解压后即可使用。输入如下命令检查hadoop是否可用,成功则会显示hadoop的版本信息:



六、hadoop伪分布式配置:

Hadoop 可以在单节点上以伪分布式的方式运行,Hadoop 进程以分离的 Java 进程来运行,节点既作为 NameNode 也作为 DataNode,同时,读取的是 HDFS 中的文件。

Hadoop 的配置文件位于 /usr/local/hadoop/etc/hadoop/ 中,伪分布式需要修改2个配置文件 core-site.xml 和 hdfs-site.xml 。Hadoop的配置文件是 xml 格式,每个配置以声明 property 的 name 和 value 的方式来实现。

修改配置文件core-site.xml



如图修改



修改配置文件hdfs-site.xml:





配置完成后,执行NameNode的格式化



成功:



开启NameNode和DataNode守护进程:



七、启动YARN

新版的 Hadoop 使用了新的 MapReduce 框架(MapReduce V2,也称为 YARN,Yet Another Resource Negotiator)。

YARN 是从 MapReduce 中分离出来的,负责资源管理与任务调度。

重命名:



修改配置文件mapred-site.xml:



修改配置文件yarn-site.xml:





启动YARN:



开启历史服务器,在Web中查看任务运行情况:





八、

网络配置:

我使用的是虚拟机,所以需要更改网络连接方式为桥接(Bridge)模式,才能实现多个节点互连

此外,如果节点的系统是在虚拟机中直接复制的,要确保各个节点的 Mac 地址不同(可以点右边的按钮随机生成 MAC 地址,否则 IP 会冲突

安装其他两台slave虚拟机:slave1,slave2

按以上相同的方法,在这两台slave虚拟机上配置hadoop用户、安 装SSH server、安装java环境。

查看得知3台虚拟机的ip地址:

在master节点上修改主机名,改为master:





修改所用结点的ip映射:





用同样的方法,在其他两个slave1,slave2结点上,修改主机名和自己所用结点的ip映射。修改完之后还需要重启机器一下,才能机器名的变化。

配置好后需要在各个节点上执行ping命令,测试是否相互 ping 得通,如果 ping 不通,后面就无法顺利配置成功:

九、SSH无密码登陆结点

首先生成master结点的公匙,在master的终端执行,因为改过主机名,所以得删掉原来的再重新生成一次



让master结点能无密码登陆本机,执行:



在master结点上将公匙传输到slave1,和slave2结点:





接着在slave1结点上,将SSH的公匙加入授权:



在master结点上就可以无密码SSH到各个结点了,执行如下命令进行检验:



十、配置PATH变量:

将hadoop安装目录加入到PATH变量中,这样就可以在任意目录中直接使用hadoop、hdfs等命令了,在master结点中进行配置,执行:



加入一行:



然后执行:(使配置生效)



十一、配置集群/分布式环境

修改文件core-site.xml



修改文件hdfs-site.xml:



修改文件mapred-site.xml:



修改文件yarn-site.xml:



配置好文件后,将master上的/usr/local/hadoop文件夹复制到各个结点上,在master结点上执行:

删除hadoop临时文件和日志文件



压缩后再复制:





在slave结点上执行:





首次启动需要先在master结点上执行NameNode的格式化:



启动hadoop,在master结点上执行:



通过jps指令查看各个节点启动的进程

Hbase安装

一、安装运行HBase:

解压安装包至路径/usr/local



将解压的文件名hbase-1.1.4改为hbase:



查看hbase版本,确定hbase安装成功:



Hive安装

解压缩下载的Hive软件包



将文件名改为hive:



修改文件权限:



创建元数据存储文件夹:



修改文件权限:



为了方便使用,将hive的命令加入到环境变量中去,使用下列命令编辑.bashrc文件:





使配置生效:



运行启动hive:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐