• CentOS下安装hadoop


    CentOS下安装hadoop

    用户配置

    添加用户

    adduser hadoop
    passwd hadoop
    

    权限配置

    chmod u+w /etc/sudoers
    vi /etc/sudoers
    在
    root    ALL=(ALL) ALL
    下添加
    hadoop    ALL=(ALL) ALL
    chmod u-w /etc/sudoers
    

    关闭防火墙

    查看防火墙状态

    service iptables status
    

    关闭防火墙

    service iptables stop
    

    查看防火墙开机启动状态

    chkconfig iptables --list
    

    关闭防火墙开机启动

    chkconfig iptables off
    

    安装JDK1.7

    卸载系统自带OpenJDK

    查看目前系统jdk

    rpm -qa | grep jdk
    

    得到结果:

    java-1.7.0-openjdk-1.7.0.51-2.4.5.5.el7.x86_64
    java-1.7.0-openjdk-headless-1.7.0.51-2.4.5.5.el7.x86_64
    

    卸载:

    rpm -e --nodeps java-1.7.0-openjdk-1.7.0.51-2.4.5.5.el7.x86_64
    rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.51-2.4.5.5.el7.x86_64
    

    下载JDK1.7

    下载地址: jdk-7u79-linux-x64.tar.gz 下载

    上传hadoop文件

    使用Filezilla client把jdk-7u79-linux-x64.tar.gz放到CentOS目录/usr/lib/jvm中(史上最简单的上传文件到linux系统方法)

    修改权限

    sudo chmod u+x jdk-7u79-linux-x64.tar.gz
    

    解压JDK1.7

    cd /usr/lib/jvm
    sudo tar -zxvf ./jdk-7u79-linux-x64.tar.gz  -C /usr/lib/jvm  
    

    配置环境

    打开profile文件:

    sudo gedit /etc/profile
    

    在文件最下边输入:

    export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_4579
    export JRE_HOME=/usr/lib/jvm/jdk1.7.0_4579/jre
    export CLASSPATH=.:$JRE_HOME/lib/tr.jar:$JAVA_HOME/lib:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
    export PATH=$JAVA_HOME/bin:$PATH
    

    使其立刻生效:

    source /etc/profile
    

    验证是否成功

    java -version
    

    手动设置系统默认JDK

    sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.7.0_79/bin/java 300
    sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.7.0_79/bin/javac 300
    sudo update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk1.7.0_79/bin/jar 300
    sudo update-alternatives --config java
    

    配置SSH免密码登陆

    进入用户的根目录下

    ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
    cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
    

    验证是否安装成功

    ssh -version
    

    登陆

    ssh localhost
    

    安装Hadoop2.6.0

    下载hadoop2.6

    hadoop-2.6.0.tar.gz

    解压hadoop-2.6.0.tar.gz

    进入/usr/local/hadoop

    sudo tar -zxvf ./hadoop-2.6.0.tar.gz -C /usr/local
    cd /usr/local/
    sudo mv ./hadoop-2.6.0/ ./hadoop
    sudo chown -R hadoop:hadoop ./hadoop
    

    配置hadoop2.6.0环境

    打开profile

    sudo gedit /etc/profile
    

    在最下边添加:

    # set hadoop path
    export HADOOP_HOME=/usr/local/hadoop
    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
    

    使其立刻生效:

    source /etc/profile
    

    修改/usr/local/hadoop/etc/hadoop/hadoop-env.sh

    export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_79
    

    伪分布式Hadoop2.6.0配置

    etc / hadoop / core-site.xml:

    <configuration>
        <property>
            <name>fs.defaultFS</name>
            <value>hdfs://localhost:9000</value>
        </property>
    </configuration>
    

    etc / hadoop / hdfs-site.xml:

    <configuration>
        <property>
            <name>dfs.replication</name>
            <value>1</value>
        </property>
    </configuration>
    

    启动Hadoop2.6.0

    进入hadoop的bin目录

    cd /usr/local/hadoop/bin
    

    格式化Hadoop的文件系统HDFS

    hdfs namenode -format
    

    进入hadoop的sbin目录

    cd /usr/local/hadoop/sbin
    

    启动所有进程

    start-all.sh
    

    成功的话,会看到 successfully formatted 的提示,且倒数第5行的提示如下,Exitting with status 0 表示成功,若为 Exitting with status 1 则是出错。若出错(不该如此,请仔细检查之前步骤),可试着加上 sudo, 既 sudo bin/hdfs namenode -format 再试试看。

    关闭命令

    stop-all.sh
    

    用jps查看启动的进程

    Jps
    ResourceManager
    NameNode
    DataNode
    SecondaryNameNode
    NodeManager
    

    浏览器访问:http://localhost:50070

    hadoop进程管理页面http://localhost:8088

    问题

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

    原因是hadoop-2.6.0.tar.gz安装包是在32位机器上编译的,64位的机器加载本地库.so文件时出错,不影响使用。

    解决:

    1、重新编译源码后将新的lib/native替换到集群中原来的lib/native
    2、修改hadoop-env.sh ,增加
    export HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib:$HADOOP_PREFIX/lib/native"
    

    文档参考:

    1. hadoop 2.6.0单节点-伪分布式模式安装
    2. Hadoop:设置一个节点集群
    3. Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04
    4. Hadoop入门基础教程之服务器基础环境搭建
  • 相关阅读:
    每日vim插件--vim中的文本对象及相关插件
    《android传感器高级编程》译者序
    我在用的mac软件(3)-效率篇
    终端环境之tmux
    我在用的mac软件(2)-终端环境之zsh和z(*nix都适用)
    我在用的mac软件(1)--终端环境之iTerm2
    转:微服务架构的理论基础
    怎么使用阿里云直播服务应用到现在主流直播平台中
    WindowsServer2012显示计算机的方法
    在Windows Server 2012启用或关闭Internet Explorer增强的安全配置
  • 原文地址:https://www.cnblogs.com/yhcao/p/4729706.html
Copyright © 2020-2023  润新知