zoukankan      html  css  js  c++  java
  • (一)CentOS6.3安装Hadoop2.6.5

    1.准备环境

     

    下载CentOS:

    https://www.centos.org/download/

    下载JDK:

    https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

    下载 Hadoop:

    https://hadoop.apache.org/releases.html

     

     

    2.安装步骤

    首先熟悉以下linux常用命令。

    cd / 切换到根目录

    cd ~ 切换到用户跟目录

    mkdir xxx新增目录

    ls -a 查看当前目录下的所有目录,以及隐藏目录 

    ls -l 查看当前目录下的所有目录的详细信息

    find /root -name *test*搜索目录

    mv xxx aaa   (xxx 旧目录名,aaa新目录名) 修改目录

    mv yyy /root (yyy需要修改目录。/root 剪切到的位置) 移动目录

    cp -r aaa /  (将aaa目录复制到根目录下) 

    cp tt.zip /   (将tt.zip复制到根目录下)

    rm 删除文件

    rm-r 删除目录

    rm-rf 强制删除目录

    touch test.txt  新建文件

    rm -rf xxx.txt 删除文件

    tar -zcvf 打包后的名称 打包前的名称 压缩文件

    tar -zcvf xxx.tar.gz ./*  (./*表示当前目录下的所有文件)

    tar-xvf 包名       解压到当前的目录

    tar-xvf 包名 -C 目标目录    解压到指定的目标目录

    文件编辑:

    vim文件名-->进入文件-->命令模式-->按i进入编辑模式-->编辑文件-->按Esc进入底行模式-->输入:-->输入命令 wq(保存并退出) 输入q! (不保存,强制退出)

    yum install packagexx安装Linux的源包软件

    yum remove xx  卸载软件

    rpm -ivh package安装第三方源包

    rpm -e --nodeps xxx 卸载

    了解掌握以上基础命令可以让一个新手少走很多弯路。

     

    安装准备

    安装前最好是启用并登录root用户操作,会减少很多麻烦。

    注意安装包和系统是否匹配,如果是64位,则保证都是64位二进制程序。

    linux操作最好还是选择CentOS,ubuntu亲测系统容易崩溃,恢复起来难度太大。

    修改主机名:

    vim /etc/sysconfig/network

    这里考虑后期集群配置,主机名设置为:Master.Hadoop

    NETWORKING=yes

    HOSTNAME=Master.Hadoop

     

    配置Host,配置的作用是不用每次都输入这么长的IP

    vim /etc/hosts

    文件尾部增加:192.168.241.130 Master.Hadoop

    配置完成后,重启机器。

     

    2.1安装JDK

    在/usr/lib/下新建jdk1.8文件夹

    下载好的安装包jdk-8u161-linux-x64.tar.gz复制到jdk1.8目录下,解压提取文件到当前目录。

    解压完安装包,并按照目录放置程序后,配置环境变量。

    vim /etc/profile

     

    # set java environment

    export JAVA_HOME=/usr/lib/jdk1.8

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

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

    source /etc/profile

    2.2安装=Hadoop

    在/usr/lib/下新建hadoop2.6.5文件夹

    下载好的安装包hadoop-2.6.5.tar.gz复制到jdk1.8目录下,解压提取文件到当前目录。

    配置环境变量:

     

    #hadoop2.6.5

    export  HADOOP_HOME=/usr/lib/hadoop2.6.5

    export  HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop

    export  HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lib/native

    export  HADOOP_OPTS="-Djava.library.path=${HADOOP_HOME}/lib"

    export  PATH=${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:$PATH

    配置生效

    source  /etc/profile

    接下来配置hadoop,每一步一定要信息,不然后期排查问题够头疼的。

    所有配置文件目录:/usr/lib/hadoop2.6.5/etc/hadoop,共6个文件需要配置。

    (1)配置:core-site.xml

     

    <configuration>

    <!-- HDFS file path -->

    <property>

      <name>fs.defaultFS</name>

      <value>hdfs://192.168.241.130:9000</value>

     </property>

     

     <property>

      <name>io.file.buffer.size</name>

      <value>131072</value>

     </property>

     

     <property>

      <name>hadoop.tmp.dir</name>

      <value>file:/usr/lib/hadoop2.6.5/tmp</value>

      <description>Abasefor other temporary directories.</description>

     </property>

    </configuration>

    目录下file:/usr/hadoop/hadoop-2.6.5/tmp,tmp目录需要手动创建。

     

    (2)配置:hdfs-site.xml

     

    <configuration>

    <property>

      <name>dfs.namenode.secondary.http-address</name>

      <value>192.168.241.130:9001</value>

     </property>

     

      <property>

       <name>dfs.namenode.name.dir</name>

       <value>file:/usr/lib/hadoop2.6.5/dfs/name</value>

     </property>

     

     <property>

      <name>dfs.datanode.data.dir</name>

      <value>file:/usr/lib/hadoop2.6.5/dfs/data</value>

      </property>

     

     <property>

      <name>dfs.replication</name>

      <value>1</value>

     </property>

     

     <property>

      <name>dfs.webhdfs.enabled</name>

      <value>false</value>

     </property>

     

    </configuration>

    (3)配置mapred-site.xml 

    mapred-site配置需要手动添加一个该文件,或者直接复制系统给出的mapred-site.xml.template内容

     

    <configuration>

      <property>

       <name>mapreduce.framework.name</name>

       <value>yarn</value>

     </property>

     <property>

      <name>mapreduce.jobhistory.address</name>

      <value>192.168.241.130:10020</value>

     </property>

     <property>

      <name>mapreduce.jobhistory.webapp.address</name>

      <value>192.168.241.130:19888</value>

     </property>

    </configuration>

    (4)配置yarn-site.xml

     

    <!-- Site specific YARN configuration properties -->

    <property>

       <name>yarn.nodemanager.aux-services</name>

       <value>mapreduce_shuffle</value>

      </property>

      <property>

       <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>

       <value>org.apache.hadoop.mapred.ShuffleHandler</value>

      </property>

      <property>

       <name>yarn.resourcemanager.address</name>

       <value>192.168.241.130:8032</value>

      </property>

      <property>

       <name>yarn.resourcemanager.scheduler.address</name>

       <value>192.168.241.130:8030</value>

      </property>

      <property>

       <name>yarn.resourcemanager.resource-tracker.address</name>

       <value>192.168.241.130:8035</value>

      </property>

      <property>

       <name>yarn.resourcemanager.admin.address</name>

       <value>192.168.241.130:8033</value>

      </property>

      <property>

       <name>yarn.resourcemanager.webapp.address</name>

       <value>192.168.241.130:8088</value>

      </property>

    (5)配置hadoop-env.sh

     

    export JAVA_HOME=/usr/lib/jdk1.8

    (6)配置yarn-env.sh

     

     

    export HADOOP_YARN_USER=/usr/lib/jdk1.8

    配置完成后,最好从头到位再检查一遍,一定注意每个细节不出问题。

    3. 启动Hadoop

    首先切换到安装目录

    HDFS初始化

    bin/hadoop namenode –format

     

    启动HDFS

    $HADOOP_HOME/sbin/start-dfs.sh

    停止HDFS

    $HADOOP_HOME/sbin/stop-dfs.sh

    查看运行状态

    $HADOOP_HOME/bin/hadoop dfsadmin –report

     

    视图查看运行状态

    http://192.168.241.130:50070/dfshealth.html#tab-overviewa

     

    Hadoop集群启动

    $HADOOP_HOME/sbin/start-yarn.sh

    停止Hadoop集群

    $HADOOP_HOME/sbin/stop-yarn.sh

     

    视图查看集群运行状态

    http://192.168.241.130:8088

     

    4.异常排除

    当然,很多情况下都不能一次成功的。下面是集中常见的异常和处理办法。

    (1)WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

    出现这个异常时,很有可能是/usr/lib/hadoop2.6.5/lib/native版本与系统版本不对应导致,

    这种情况在hadoop2.4之前的版本比较常见,因为官网编译的二进制包是32位。

    可以执行file libhadoop.so.1.0.0查版本。

     

    网上还提到一种缺少配置的异常解决办法:

    在hadoop-env.sh中重新配置:

    export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lib/native

    export HADOOP_OPTS="-Djava.library.path=${HADOOP_HOME}/lib/native/"

    当尝试多种办法不能得以解决时,我们可以进入debug模式查看异常具体原因:

    在etc/hadoop/hadoop-env.sh文件中添加下面配置

     

    export HADOOP_ROOT_LOGGER=DEBUG,console

    (2)配置ssh

    配置hadoop集群时一定要配ssh免密登录,但是配单机有时候也会提示SSH的异常,配置方法如下:

    检测是否已经配置ssh

    ssh -version

    获取并安装ssh

    sudo apt install openssh-server

    或者通过yum install openssh-server安装

    配置ssh免密登录

    ssh-keygen -t rsa   #回车

    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

    测试ssh无密登陆

    ssh 主机名  #如果不提示输入密码则配置成功

     

     

     

     

     

    (3)需要配置安装2.14的glibc库

    有网友提供了下载地址:http://pan.baidu.com/s/1eRNygZC 密码:s2r0

    下载下来,放在桌面任意位置都行,把所有文件放在一个文件夹里。

    执行:rpm -Uvh glibc-2.14.1-6.x86_64.rpm glibc-common-2.14.1-6.x86_64.rpm glibc-headers-2.14.1-6.x86_64.rpm glibc-devel-2.14.1-6.x86_64.rpm nscd-2.14.1-6.x86_64.rpm

     

    安装完成

    (4)异常openssl: false Cannot load libcrypto.so (libcrypto.so: 无法打开共享对象文件: 没有那个文件或目录

    打开缺少的路径,这里缺少的是usr/lib64

    执行命令:

    echo "/usr/ lib64 " >> /etc/ld.so.conf

    ldconfig

     

    (5) WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

    所有准备就绪,执行hadoop fs –ls /时又出现

    WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

    ls: `.': No such file or directory

    此时按照之前方式debug 查看具体原因,发现缺少HADOOP_OPTS配置。

    在hadoop-env.sh中添加HADOOP_OPTS配置

     

    # Extra Java runtime options.  Empty by default.

    #export HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true"

    export HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib:$HADOOP_PREFIX/lib/native"

  • 相关阅读:
    【职业规划】一位资深程序员大牛给予Java初学者的学习路线建议
    一个断点调试的小技巧
    无穷分数
    Spring事务异常回滚,捕获异常不抛出就不会回滚
    理解Servlet和Servlet容器、Web服务器等概念
    图解红黑树及Java进行红黑二叉树遍历的方法
    Majority Element
    Factorial Trailing Zeroes
    Valid Parentheses
    House Robber
  • 原文地址:https://www.cnblogs.com/loyung/p/10071289.html
Copyright © 2011-2022 走看看