Hadoop在ubuntu下安装配置文件及出现问题

我的配置:

路径:

hadoop /home/flyuz/hadoop

jdk1.8.0_172 /opt/java/jdk1.8.0_172

eclipse /opt/eclipse

 

版本:

ubuntu16.04

hadoop 2.7.6

jdk1.8.0_172

 相关软件从官网下载,安装Hadoop前需要先安装ssh,看https://www.cnblogs.com/flyuz/p/9555694.html

环境文件:

/etc/profile

#set java 别删path

export JAVA_HOME=/opt/java/jdk1.8.0_172

export JRE_HOME=/opt/java/jdk1.8.0_172/jre

export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib

export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

 

~/.bashrc

#set java

export JAVA_HOME=/opt/java/jdk1.8.0_172

#ser hadoop  经测试不弄这个也能用

export HADOOP_INSTALL=/home/flyuz//hadoop

export PATH=$PATH:$HADOOP_INSTALL/bin

export PATH=$PATH:$HADOOP_INSTALL/sbin

export HADOOP_MAPRED_HOME=$HADOOP_INSTALL

export HADOOP_COMMON_HOME=$HADOOP_INSTALL

export HADOOP_HDFS_HOME=$HADOOP_INSTALL

export YARN_HOME=$HADOOP_INSTALL

 

Hadoop伪分布式配置

 伪分布式需要修改2个配置文件 core-site.xml 和 hdfs-site.xml 。Hadoop的配置文件是 xml 格式,每个配置以声明 property 的 name 和 value 的方式来实现。

修改配置文件 core-site.xml (gedit ./etc/hadoop/core-site.xml),将当中的

<configuration>
</configuration>

改为:(其中file 应该为你的hadoop文件夹根目录)

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/usr/local/hadoop/tmp</value>
        <description>Abase for other temporary directories.</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

修改配置文件 hdfs-site.xml:(和上面一样)

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/usr/local/hadoop/tmp/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/usr/local/hadoop/tmp/dfs/data</value>
    </property>
</configuration>

配置完成后,执行 NameNode 的格式化:

./bin hadoop namenode -format

 如果在这一步时提示 Error: JAVA_HOME is not set and could not be found. 的错误,则说明之前设置 JAVA_HOME 环境变量那边就没设置好,请按教程先设置好 JAVA_HOME 变量,否则后面的过程都是进行不下去的。如果已经按照前面教程在.bashrc文件中设置了JAVA_HOME,还是出现 Error: JAVA_HOME is not set and could not be found. 的错误,那么,请到hadoop的安装目录修改配置文件“/usr/local/hadoop/etc/hadoop/hadoop-env.sh”,在里面找到“export JAVA_HOME=${JAVA_HOME}”这行,然后,把它修改成JAVA安装路径的具体地址,比如,“export JAVA_HOME=/usr/lib/jvm/default-java”,然后,再次启动Hadoop。

 

 Spark安装:

 http://dblab.xmu.edu.cn/blog/1307-2/

遇到的问题:

datanode  打不开, 原因 format次数过多,导致namenode的clusterID和datanode的clusterID 不匹配。

解决:

/home/flyuz/hadoop/tmp/dfs 中的data下的version中的clusterID复制成和name下的version一样的

 

eclipse中编译时出错:log4j

解决:在项目src目录中 创建log4j.properties的文本文件

log4j.rootLogger=INFO, stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n

log4j.appender.logfile=org.apache.log4j.FileAppender

log4j.appender.logfile.File=target/spring.log

log4j.appender.logfile.layout=org.apache.log4j.PatternLayout

log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n

 

配置完成后:

cd ~/hadoop/sbin/

start-all.sh  运行

jps  查看启动情况   应该有六个

SecondaryNameNode
Jps
NameNode
DataNode
ResourceManager
NodeManager

原文地址:https://www.cnblogs.com/flyuz/p/9105342.html