Ubuntu16.04下hadoop-2.6.0单机配置和伪分布式配置
来源:互联网 发布:西门子编程器pg m4价格 编辑:程序博客网 时间:2024/06/06 03:13
[-]
- 注意安装之前最好删除hadoop-260dfsdata下的所有文件避免出现各种问题尤其安装包不是官方现下载的
- 需要重新编译的教程httpblogcsdnnetggz631047367articledetails42460589
- 在Ubuntu下创建hadoop用户组和用户
- 在Ubuntu下安装JDK
- 安装ssh服务
- 建立ssh无密码登录本机
- 安装hadoop
- 测试
- Hadoop伪分布式配置
注意:安装之前最好删除hadoop-2.6.0/dfs/data下的所有文件,避免出现各种问题。尤其安装包不是官方现下载的。
需要重新编译的教程:http://blog.csdn.net/ggz631047367/article/details/42460589
在Ubuntu下创建hadoop用户组和用户
Hadoop的管理员最好就是以后要登录桌面环境运行eclipse的用户,否则后面会有拒绝读写的问题出现。当然不是也有办法办法解决。
1. 创建hadoop用户组;
2. 创建hadoop用户;
3. 给hadoop用户添加权限,打开/etc/sudoers文件;
在root ALL=(ALL:ALL) ALL下添加hadoop ALL=(ALL:ALL) ALL.
在Ubuntu下安装JDK
具体见:http://blog.csdn.net/ggz631047367/article/details/42366687
//JAVA_HOME=/usr/lib/jvm/jdk1.8.0_25
安装ssh服务
建立ssh无密码登录本机
切换到hadoop用户,执行以下命令:
ssh生成密钥有rsa和dsa两种生成方式,默认情况下采用rsa方式。
1. 创建ssh-key,,这里我们采用rsa方式;
2. 进入~/.ssh/目录下,将id_rsa.pub追加到authorized_keys授权文件中,开始是没有authorized_keys文件的;
3. 登录localhost;
4. 执行退出命令;
安装hadoop
下载地址:http://apache.fayea.com/hadoop/common/stable/hadoop-2.6.0.tar.gz
因多次修改,可能会有Hadoop实际路径和配置文件中Hadoop路径不同,可能会产生错误
1. 把hadoop解压到/usr/local下:
2.配置
修改bashrc的配置:
在文件末尾添加:
如果不知道JAVA_HOME可以通过命令获得: 目录取到java根目录即可。执行下面命令使改动生效:
修改hadoop-env.sh的配置:
找到JAVA_HOME改为上面的值。
测试
- 通过执行hadoop自带实例WordCount验证是否安装成功
/usr/local/hadoop路径下创建input文件夹
在hadoop目录下执行WordCount:
Hadoop伪分布式配置
sudo gedit /usr/local/hadoop/etc/hadoop/core-site.xml
sudo gedit /usr/local/hadoop/etc/hadoop/yarn-site.xml
sudo gedit /usr/local/Hadoop/etc/Hadoop/mapred-site.xml //伪分布式不用配
sudo gedit /usr/local/hadoop/etc/hadoop/hdfs-site.xml
sudo gedit /usr/local/hadoop/etc/hadoop/
masters 添加:localhost
sudo gedit /usr/local/hadoop/etc/hadoop/
slaves
添加:localhost
关于配置的一点说明:上面只要配置 fs.defaultFS 和 dfs.replication 就可以运行,不过有个说法是如没有配置 hadoop.tmp.dir 参数,此时 Hadoop 默认的使用的临时目录为 /tmp/hadoo-hadoop,而这个目录在每次重启后都会被干掉,必须重新执行 format 才行(未验证),所以伪分布式配置中最好还是设置一下。
配置完成后,首先在 Hadoop 目录下创建所需的临时目录:
修改pid目录位置(可以不做)
vi hadoop-env.shexport HADOOP_PID_DIR=/usr/local/hadoop-2.6.0/pidvi mapred-env.shexport HADOOP_MAPRED_PID_DIR=/usr/local/hadoop-2.6.0/pidyarn-env.shexport YARN_PID_DIR=/usr/local/hadoop-2.6.0/pid接着初始化文件系统HDFS。 成功的话,最后的提示如下,
Exitting with status 0
表示成功,Exitting with status 1:
则是出错。开启Jobhistory
Unable to load native-hadoop library for your platform这个提示,解决方式:
1、重新编译源码后将新的lib/native替换到集群中原来的lib/native
2、修改hadoop-env.sh ,增加
export HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib:$HADOOP_PREFIX/lib/native"此步骤解决方案(网上搜索):
一,通常编译好的hadoop库是在lib中,如果你不想编译,可以用lib/native里面的预编译库,然后把native的库移动到lib文件夹中。
cp hadoop-2.6.0/lib/native/* hadoop-2.6.0/lib/
二,加入系统变量export HADOOP_COMMON_LIB_NATIVE_DIR=/home/administrator/work/hadoop-2.6.0/lib/nativeexport HADOOP_OPTS="-Djava.library.path=/home/administrator/work/hadoop-2.6.0/lib"export HADOOP_ROOT_LOGGER=DEBUG,console
终于:搞定。
Namenode information:http://localhost:50070来查看Hadoop的信息。
All Applications:http://http://2xx.81.8x.1xx:8088/,将其中的2xx.81.8x.1xx替换为你的实际IP地址。
运行例子:
1.先在hdfs上建个文件夹 bin/hdfs dfs -mkdir -p /user/ha1/input
bin/hdfs dfs -mkdir -p /user/ha1/output
2.上传一些文件:bin/hdfs dfs -put etc/hadoop/ /user/ha1/input 把etc/hadoop文件上传到hdfs的/user/ha1/input中
3.执行指令
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar grep /user/ha1/input/hadoop /user/ha1/output/temp 'dfs[a-z.]+'
错误1:
WARN hdfs.DFSClient: DataStreamer Exception
org.apache.hadoop.ipc.RemoteException(Java.io.IOException): File /user/ha1/input/hadoop/yarn-env.sh._COPYING_ could only be replicated to 0 nodes instead of minReplication (=1). There are 0 datanode(s) running and no node(s) are excluded in this operation.//删除dfs/data/目录所有文件,关闭所有服务重新执行bin/hdfs namenode -format以及1,2步骤
错误2:
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.hdfs.server.namenode.SafeModeException): Cannot delete /user/root/grep-temp-23493900. Name node is in safe mode.
The reported blocks 188 has reached the threshold 0.9990 of total blocks 188. The number of live datanodes 2 has reached the minimum number 0. In safe mode extension. Safe mode will be turned off automatically in 10 seconds.
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.checkNameNodeSafeMode(FSNamesystem.java:1364)操作太快,未退出安全模式,等退出安全模式
4.查看结果
bin/hdfs dfs -cat /user/ha1/output/temp/*
终止一个job:
hadoop job -kill job_1447903602796_0001
- Ubuntu16.04下hadoop-2.6.0单机配置和伪分布式配置
- Ubuntu14.04下hadoop-2.6.0单机配置和伪分布式配置
- [转载] Ubuntu14.04下hadoop-2.6.0单机配置和伪分布式配置
- Ubuntu12.04下hadoop-2.6.0单机配置和伪分布式配置
- hadoop-2.6.0单机配置和伪分布式配置
- ubuntu14.04 配置hadoop 单机+伪分布式
- Hadoop单机伪分布式配置
- Hadoop安装教程_单机/伪分布式配置_Hadoop2.7.3/Ubuntu16.04
- Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.4/Ubuntu16.04
- Ubuntu 14.10 安装 hadoop-2.6.0单机配置和伪分布式配置
- Hadoop:Hadoop单机伪分布式的安装和配置
- Hadoop:Hadoop单机伪分布式的安装和配置
- centos下搭建单机和伪分布式hadoop环境-(3)配置hadoop的伪分布式模式
- Hadoop入门-单机伪分布式配置
- Hadoop入门-单机伪分布式配置
- Hadoop入门-单机伪分布式配置
- 单机伪分布式环境搭建(配置Hadoop)
- CentOS中Hadoop单机伪分布式配置
- pyhon中input()和raw_input()函数的区别
- wps面试一小时的面经
- 网络连接评分机制之NetworkAgent
- SQL*Plus copy命令处理大批量数据复制
- 无法远程访问Mysql的解决方案
- Ubuntu16.04下hadoop-2.6.0单机配置和伪分布式配置
- request详解
- 集群hadoop版本升级(2.6.4--2.7.2)
- 数字签名
- TCP三次握手(建立连接)与四次挥手(释放连接)详细图解
- Codevs 1116 四色问题(DFS)
- 系统状态检测命令
- Android下拉刷新
- web性能优化