linux 下配置伪分布式Hadoop1.2.1出现的一些错误

工具:

ubuntu Linux

Hadoop-1.2.1

SSH

jdk

安装过程遇到的问题:

在Hadoop的配置中难免会遇见一些问题,网上的安装很多,也很全,但应用在自己的机器上就不一样了。下面我来吹一下我安装hadoop遇见的问题吧,献丑啦!

首先从apache的网站http://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-1.2.1/下载hadoop1.2.1

然后解压tar -zxvf +文件名到指定文件夹下,我这里是/opt/ ,cd 到安装目录的conf目录下,输入ls命令

root@kdl-Aspire-E5-572G:/home/kdl/opt/hadoop-1.2.1/conf# ls
capacity-scheduler.xml      hadoop-policy.xml      slaves
configuration.xsl           hdfs-site.xml          ssl-client.xml.example
core-site.xml               log4j.properties       ssl-server.xml.example
fair-scheduler.xml          mapred-queue-acls.xml  taskcontroller.cfg
hadoop-env.sh               mapred-site.xml        task-log4j.properties
hadoop-metrics2.properties  masters
root@kdl-Aspire-E5-572G:/home/kdl/opt/hadoop-1.2.1/conf# 
有四个文件需要配置,分别是hadoop-env.sh、core-site.xml、hdfs-site.xml 、mapred-site.xml

这几个文件的解释在http://blog.csdn.net/cafuc46wingw/article/details/41828881

分别vim编辑加入一下代码

1:

export JAVA_HOME=/home/kdl/user/java/jdk1.7.0_80
2:

<configuration>
 <property>
       <name>fs.default.name</name>
       <value>hdfs://localhost:9000</value>
 </property>
  <property>
       <name>hadoop.tmp.dir</name>
       <value>/opt/data/tmp</value>
  </property>
</configuration>
localhost是本地hostname

3:

<configuration>
<property>

        <name>dfs.replication</name>

        <value>1</value>

  </property>

     <property>

        <name>dfs.permissions</name>

        <value>false</value>

     </property>
</configuration>
4:

<configuration>
<property>
        <name>mapred.job.tracker</name>
        <value>localhost:9001</value>
</property>
</configuration>
这里我的配置不是根据刚才那个连接里的全部,只是抽取一部分。

输入vim /etc/profile编辑里面的HADOOP_HOME以及PATH,这里我就不说了,网上一堆。

source /etc/profile 生效一下

然后呢,出现问题了,这时如果输入hadoop命令是可以的,但是它报错命令不存在,想了几下,搜了一下。才突然发现,我的JDK版本过高了,是JDK 8了,得卸载掉JDK,我的JDK是用bin目录安装的,所以直接删除掉文件(得益于Linux是基于文件形式的),然后下载JDK 7,配置环境变量。

然后呢,hadoop命令成功,在bin目录下执行start-all.sh,啊,要输入密码,然后输入自己的用户登录密码,结果不成功,一直显示permission denied (publickey,password)。麻烦,原来是SSH的问题,首先我既然没安装,然后安装,apt-get install openssh-server 通过命令ps -e | grep ssh查看是否启动ssh,没有启动输入service sshd start启动

然后设置SSH免密码登录,这个的话等我有时间再分享,或者百度上也有。

然后,conf目录输入hadoop命令成功,但是当在输入jps查看java进程时却说不存在,可以进入http://localhost:50070/ 和http://localhost:50030/ 查看一些log文件,其实这里面还有关于hadoop的HDFS mapreduce等文件。但是我在这里没找到错误,我回过头去找下文件哪里出错,结果我把profile里的HADOOP_HOME的路径改成绝对路径还有hadoop-env.sh的JAVA_HOME的路径也改成绝对路径,输入jps既然就成功啦,实在奇怪,也是自己不懂hadoop的反映吧。术业不精,还望各位大神指点。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值