博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hadoop - Mac OSX下配置和启动hadoop以及常见错误解决
阅读量:5952 次
发布时间:2019-06-19

本文共 3416 字,大约阅读时间需要 11 分钟。

0. 安装JDK

参考网上教程在OSX下安装jdk

 

1. 下载及安装hadoop

a) 下载地址:

http://hadoop.apache.org

 

b) 配置ssh环境

在terminal里面输入: ssh localhost

如果有错误提示信息,表示当前用户没有权限。这个多半是系统为安全考虑,默认设置的。

更改设置如下:进入system preference --> sharing --> 勾选remote login,并设置allow access for all users。

再次输入“ssh localhost",再输入密码并确认之后,可以看到ssh成功。

 

 

c) ssh免登陆配置

命令行输入:

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa  

ssh-keygen表示生成秘钥;-t表示秘钥类型;-P用于提供密语;-f指定生成的秘钥文件。

这个命令在”~/.ssh/“文件夹下创建两个文件id_dsa和id_dsa.pub,是ssh的一对儿私钥和公钥。

接下来,将公钥追加到授权的key中去,输入:

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

********************************************************************************

免密码登录localhost

1. ssh-keygen -t rsa Press enter for each line 提示输入直接按回车就好

2. cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

3. chmod og-wx ~/.ssh/authorized_keys

测试 ssh localhost如果仍然提示要输入密码,那么可以vim ~/.ssh/config文件,添加以下代码。

Host localhost   AddKeysToAgent yes   UseKeychain yes   IdentityFile ~/.ssh/id_rsa

测试 ssh localhost,不再提示需要输入密码。

 

********************************************************************************

d) 设置环境变量

在实际启动Hadoop之前,有三个文件需要进行配置。

但在这之前,我们需要在我们的bash_profile中配置如下几个配置

 

命令行输入: 

open ~/.bash_profile;

 

# hadoop

export HADOOP_HOME=/Users/YourUserName/Documents/Dev/hadoop-2.7.3
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

 

e) 配置hadoop-env.sh

在${HADOOP_HOME}/etc/hadoop目录下,找到hadoop-env.sh,打开编辑确认如下设置是否正确:

export JAVA_HOME=${JAVA_HOME}

export HADOOP_HEAPSIZE=2000(去掉注释)

export HADOOP_OPTS="-Djava.security.krb5.realm=OX.AC.UK -Djava.security.krb5.kdc=kdc0.ox.ac.uk:kdc1.ox.ac.uk"(去掉注释)

 

f) 配置core-site.xml——指定了NameNode的主机名与端口

/Users/YourUserName/Documents/Dev/hadoop-2.7.3/hadoop-${user.name}
hdfs://localhost:9000
A base for other temporary directories.
fs.default.name
hdfs://localhost:8020

 

g) 配置hdfs-site.xml——指定了HDFS的默认参数副本数,因为仅运行在一个节点上,所以这里的副本数为1

dfs.replication
1

 

h) 配置mapred-site.xml——指定了JobTracker的主机名与端口

mapred.job.tracker
hdfs://localhost:9001
mapred.tasktracker.map.tasks.maximum
2
mapred.tasktracker.reduce.tasks.maximum
2

 

i) 安装HDFS

经过以上的配置,就可以进行HDFS的安装了

命令行输入:

cd $HADOOP_HOME/bin

hadoop namenode -format 

如果出现下图, 说明你的HDFS已经安装成功了

 

j) 启动Hadoop

cd ${HADOOP_HOME}/sbin

start-dfs.sh

start-yarn.sh

 

k) 验证hadoop

如果在启动过程中没有发生任何错误

启动完成之后,在命令行输入: jps

如果结果如下:

3761 DataNode

4100 Jps
3878 SecondaryNameNode
3673 NameNode
4074 NodeManager
3323 ResourceManager

以上几个节点都打印出来,那么恭喜你,你已经成功安装和启动hadoop了!

最后,我们可以在浏览器通过http的方式进行验证

浏览器输入:

http://localhost:8088/

结果如下:

浏览器输入:

http://localhost:50070/

结果如下:

 

 

2. 常见错误解决

hadoop namenode不能启动

org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: Directory /tmp/hadoop-javoft/dfs/name is in an inconsistent state: storage di rectory does not exist or is not accessible.

原因在于core-site.xml

你必须覆盖hadoop.tmp.dir为你自己的hadoop目录
...
hadoop.tmp.dir
/home/javoft/Documents/hadoop/hadoop-${user.name}

 

 

 

 

转载地址:http://eklxx.baihongyu.com/

你可能感兴趣的文章
axios 拦截 , 页面跳转, token 验证(自己摸索了一天搞出来的)
查看>>
有序的双链表
查看>>
程序员全国不同地区,微信(面试 招聘)群。
查看>>
【干货】界面控件DevExtreme视频教程大汇总!
查看>>
闭包 !if(){}.call()
查看>>
python MySQLdb安装和使用
查看>>
Java小细节
查看>>
poj - 1860 Currency Exchange
查看>>
chgrp命令
查看>>
Java集合框架GS Collections具体解释
查看>>
洛谷 P2486 BZOJ 2243 [SDOI2011]染色
查看>>
linux 笔记本的温度提示
查看>>
数值积分中的辛普森方法及其误差估计
查看>>
Web service (一) 原理和项目开发实战
查看>>
跑带宽度多少合适_跑步机选购跑带要多宽,你的身体早就告诉你了
查看>>
广平县北方计算机第一届PS设计大赛
查看>>
深入理解Java的接口和抽象类
查看>>
java与xml
查看>>
Javascript异步数据的同步处理方法
查看>>
iis6 zencart1.39 伪静态规则
查看>>