公司有个计算需求,由于不能通过连接公司的Hadoop集群进行本地编写MR程序进行调试
所以直接自己搭建一个本地Hadoop环境进行MR程序测试,然后再讲程序打包丢到公司Hadoop集群
别的不说,直接上干货
环境
操作系统:MacOS
开发环境:IDEA
步骤:
一、下载hadoop安装包:http://hadoop.apache.org/releases.html
公司目前使用2.6.5,为了避免版本上的麻烦,我也安装的2.6.5
点binary下载安装包
二、解压安装
将下载好的hadoop-2.6.5.tar.gz放在一个目录,比如"~/software/"
解压:tar -zxvf hadoop-2.6.5.tar.gz
在当前目录下生成:hadoop-2.6.5目录
三、配置
将目录切换到/software/hadoop-2.6.5/etc/hadoop下
1、在hadoop-env.sh中配置环境变量
添加:export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home
将 export HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true"
改为
export HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true -Djava.security.krb5.realm= -Djava.security.krb5.kdc="
2、core-site.xml中添加配置临时文件目录和hdfs名字、端口
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/Users/某某/software/hadoop-2.6.5/tmp</value>
<description>A base for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:8088</value>
</property>
</configuration>
3、配置mapred-site.xml
如果没有该文件,需要复制一个cp mapred-site.xml.template mapred-site.xml
<property>
<name>mapred.job.tracker</name>
<value>localhost:8089</value>
</property>
4、配置hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
5、格式化namenode
cd software/hadoop-2.6.5/bin
./hdfs namenode --format
启动hadoop
cd software/hadoop-2.6.5/sbin
访问WebUI
http://localhost:50070/
下一篇将介绍如果编写一个MapReduce程序,并运行