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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM