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

Hadoop-2.8.0 开发环境搭建(Mac)

2017-07-24 16:12 381 查看
Hadoop
是一个由
Apache
基金会开发的分布式系统架构,简称
HDFS
,具有高容错性、可伸缩性等特点,并且可以部署在低配置的硬件上;同时,提供了高吞吐量的数据访问性能,适用于超大数据集的应用程序,以及通过集群拓扑高效快速的处理数据的能力。

本文主要介绍一下
Hadoop
的开发环境搭建,平台是
Mac
系统。

下载源码

在搭建环境之前,需要先下载
hadoop
binary,可以把 source也下载下来,方便以后阅读。下载后进行解压:

$ tar -zxvf hadoop-2.8.0.tar.gz


配置hadoop

hadoop
的配置稍许麻烦,暂时没有一键化配置的功能;另外,
hadoop
是基于
java
开发的,所需需要安装
java
开发环境,如果没有安装,请参考其它资料先安装
java
开发环境。设置好
java
开发环境后,再设置
hadoop
的开发环境。

hadoop
的配置文件主要都在
etc/hadoop
目录下,可以配置
hdfs
yarn
mapreduce
等,下面具体介绍:

1. 添加hadoop环境变量

添加的方式很多,可以修改系统级的文件,如:
/etc/bashrc
/etc/profile
,也可以修改当然用户的文件,比如:
~/.bash_profile
(shell用的是bash)、
~/.zshrc
(shell用的是zsh),添加如下代码即可

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home
export HADOOP_HOME=/Users/gandalf/Documents/kelvin/Hadoop/hadoop-2.8.0

export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin


配置完成后,需要设置其生效,安装
zsh
的配置设置:

$ source ~/.zshrc


设置完成后,如果出现下面信息,表示
hadoop
开发环境变量设置好了

$ hadoop version
Hadoop 2.8.0
Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r 91f2b7a13d1e97be65db92ddabc627cc29ac0009
Compiled by jdu on 2017-03-17T04:12Z
Compiled with protoc 2.5.0
From source with checksum 60125541c2b3e266cbf3becc5bda666
This command was run using /Users/gandalf/Documents/kelvin/Hadoop/hadoop-2.8.0/share/hadoop/common/hadoop-common-2.8.0.jar


2. 修改hadoop-env.sh

直接设置
JAVA_HOME
的路径,不要用
$JAVA_HOME
代替,因为
hadoop
对系统变量的支持不是太好

# The java implementation to use.
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home


3. 修改core-site.xml

设置
hadoop
的临时目录及文件系统,其中
localhost:9000
表示本地主机,如果是远程主机,则需要把
localhost
修改为相应的
IP
地址,如果填写远程主机的域名,则需要到
/etc/hosts
文件中做
DNS
映射

<configuration>
<!--设置临时目录-->
<property>
<name>hadoop.tmp.dir</name>
<value>/Users/gandalf/Documents/kelvin/Hadoop/hadoop-2.8.0/data</value>
</property>
<!--设置文件系统-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>


4. 配置hdfs-site.xml

由于是一台
Mac
电脑,所以数据的副本设置为
1
,默认是
3


<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>


5. 配置mapred-site.xml

由于
hadoop
的根目录下的
etc/hadoop
目录下没有
mapred-site.xml
文件,所以需要创建该文件,但是我们可以直接把
etc/hadoop
目录下的
mapred-site.xml.template
文件重命名为
mapred-site.xml
,然后配置数据处理的框架为
yarn


<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>


6. 配置yarn-site.xml

配置数据处理框架
yarn


<configuration>

<!-- Site specific YARN configuration properties -->
<
bb43
;property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>localhost:9000</value>
</property>
</configuration>


启动hadoop

配置完
hadoop
后,就可以启动
hadoop


1. 启动namenode

$ hadoop namenode -format


如果出现如下图片提示,表示
namenode
启动成功



需要注意的是,如果有错误,请先检查是不是
hadoop
安装包是
32-bit
,而计算机系统是
64-bit
,造成不匹配

2. 启动hdfs

启动
hdfs
,有可能需要输入
3
次密码

$ start-dfs.sh


如果出现如下提示,表示
hadoop
无法远程登录主机,需要开放权限



具体开放权限的步骤如下,先到系统设置里的共享里,然后允许远程登录,最后添加当前的用户即可:





如果不想每次启动都输入
3
次密码,可以添加
ssh
的公钥到
authorized_keys
文件中

// 添加ssh的公钥到authorized_keys文件中
$ mkdir ~/.ssh && cd ~/.ssh
$ ssh-keygen -t rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys


3. 启动yarn

启动数据处理
mapreduce
框架
yarn


$ start-yarn.sh


如果执行
jps
命令出现如下提示,表示
hadoop
启动完成



4. 浏览器查看hadoop

我们也可以通过浏览器查看
hadoop
的详细信息,打开链接:

http://localhost:50070/


然后在如下界面,我们就可以查看
hadoop
的具体信息了



hadoop
的开发环境搭建如上,如有不足之处,欢迎指出,共同进步
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  大数据 hadoop apache