• Hadoop Single Node Cluster——Hadoop单节点集群的安装


    Hadoop Single Node Cluster只以一台机器来建立Hadoop环境,仍然可以使用Hadoop命令,只是无法发挥使用多台机器的威力。

    安装JDK

    因为Hadoop是以Java开发的,所以必须先安装Java环境。本文是以Ubuntu系统为例

    安装前查看java版本

    在命令终端输入  java -version 查看

    安装成功 返回的是 java 版本,未安装会提示包含在下列软件包中,执行下列命令安装

    sudo apt-get update 

    sudo apt-get install default-jdk

    安装完成后,再次查看java版本

    查看Java安装位置

    执行 update-alternatives --display java ,系统会响应安装的路径。

    设置SSH无密码登陆

    Hadoop 是由很多台服务器所组成的。当我们启动Hadoop系统时,NameNode必须与DataNode连接,并管理这些节点(DataNode)。此时系统会要求用户输入密码。为了让系统顺利运行而不需手动输入密码,就需要SSH设置成无密码登录,设置为SSH Key(密钥)来进行身份验证。

    安装SSH

    sudo apt-get install ssh

    sudo apt-get install rsync

    产生SSH Key(密钥)进行后续身份验证

    ssh-keygen -t dsa -P ' ' -f  ~/.ssh/id_dsa

    SSH Key(密钥)会产生在用户的根目录下,可用如下命令查看

    ll ~/.ssh

    将产生的Key放置到许可证文件中

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

    下载安装Hadoop

    到Hadoop官网下载Hadoop版本,并安装到Ubuntu中

    浏览器输入   https://archive.apache.org/dist/hadoop/common/  选择Hadoop版本。

    使用 wget 命令下载到本地

    使用 sudo tar -zxvf Hadoop~~~  解压

    将 Hadoop 移动到 /usr/local

    sudo mv hadoop~~~ /usr/local/hadoop

    设置Hadoop环境变量

    编辑 ~/.bashrc

    sudo gedit ~/.bashrc  打开,在文章末尾加入

    设置JDK安装路径

    export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

    设置HADOOP_HOME为Hadoop的安装路径

    export HADOOP_HOME=/usr/local/hadoop

    设置PATH

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

    设置HADOOP其他环境变量

    export HADOOP_MAPRED_HOME=$HADOOP_HOME
    export HADOOP_COMMON_HOME=$HADOOP_HOME
    export HADOOP_HDFS_HOME=$HADOOP_HOME
    export YARN_HOME=$HADOOP_HOME

    链接库的相关设置

    export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
    export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
    export JAVA_LIBRARY_PATH=$HADOOP_HOME/lib/native:$JAVA_LIBRARY_PATH

     让 ~/.bashrc设置生效

    source ~/.bashrc

    修改Hadoop配置设置文件

    设置hadoop-env.sh配置文件

    sudo gedit /usr/local/hadoop/etc/hadoop/hadoop-env.sh

    修改 JAVA_HOME 设置,修改为: export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

    设置 core-site.xml

    sudo gedit /usr/local/hadoop/etc/hadoop/core-site.xml

    设置HDFS的默认名称

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

    设置yarn-site.xml

    yarn-site.xml文件中含有MapReduce2(YARN)相关的配置设置

    sudo gedit /usr/local/hadoop/etc/hadoop/yarn-site.xml

    <configuration>

    <!-- 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>
    </configuration>

    设置mapred-site.xml

    mapred-site.xml用于设置监控Map与Reduce程序的JobTracker任务分配情况以及TaskTracker任务运行情况。

    sudo gedit /usr/local/hadoop/etc/hadoop/mapred-site.xml

    <configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    </configuration>

    设置 hdfs-site.xml

    hdfs-site.xml 用于设置HDFS分布式文件系统

    sudo gedit /usr/local/hadoop/etc/hadoop/hdfs-site.xml

    <configuration>

    设置 blocks 副本备份数量
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>

    设置NameNode数据存储目录
    <property>
        <name>dfs.namenode.name.dir</name>
        <value> file:/usr/local/hadoop/hadoop_data/hdfs/namenode</value>
    </property>

    设置DataNode数据存储
    <property>
        <name>dfs.datanode.data.dir</name>
        <value> file:/usr/local/hadoop/hadoop_data/hdfs/datanode</value>
    </property>
    </configuration>

    创建并格式化 HDFS 目录

    创建 NameNode 数据存储目录

    sudo mkdir -p /usr/local/hadoop/hadoop_data/hdfs/namenode

    创建 DataNode 数据存储目录

    sudo mkdir -p /usr/local/hadoop/hadoop_data/hdfs/datanode

    将 Hadoop 目录的所有者更改为 hduser

    sudo chown hduser:hduser -R /usr/local/hadoop

    格式化 namenode

    hadoop namenode -format

    这个操作会删除所有的数据。

    启动Hadoop

    start-all.sh

  • 相关阅读:
    excel VBA构造正则函数(双参数)
    excel VBA构造函数就是这么简单
    excel VBA中正则模块vbscript.regexp的用法
    excel VBA构造正则函数(单参数)
    USB 设备插拔事件处理
    MySQL 修改 root 密码命令
    函数指针
    串口编程需要注意的地方
    写开机自启动程序应该注意的一点
    C++ 中 delete 和 delete[] 的区别
  • 原文地址:https://www.cnblogs.com/zhouzhishuai/p/10413422.html
Copyright © 2020-2023  润新知