zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    jdbc连接数据库(mysql,sqlserver,oracle)
    简单粗暴将sqlserver表以及数据迁移到oracle
    LXD 2.0 系列(五):镜像管理
    LXD 2.0 系列(十二):调试,及给 LXD 做贡献
    LXD 2.0 系列(七):LXD 中的 Docker
    LXD 2.0 系列(四):资源控制
    LXD 2.0 系列(三):你的第一个 LXD 容器
    LXD 2.0 系列(二):安装与配置
    LXD 2.0 系列(一):LXD 入门
    Debian-linux 网卡配置
  • 原文地址:https://www.cnblogs.com/flyuz/p/9105342.html
Copyright © 2011-2022 走看看