• Ubuntu 16下配置多节点Hadoop和Spark


    记录一下配置多节点Hadoop和Spark的过程。
    建立三个节点node,分别是node0,node1,node2.其中node0作为master节点。三台云虚拟机均为Ubuntu 16版本,Hadoop为3.1.4版本,Spark为2.4.7版本。

    Hadoop

    首先是下载和配置Hadoop.

    第一步,更新软件包,安装Java

    sudo apt-get update --fix-missing
    sudo apt-get install openjdk-8-jdk
    

    第二步,生成master节点ssh的公有key,并分别拷贝到所有节点的~/.ssh/authorized_keys,从而允许master和slave nodes之间通讯。特别注意,在master节点生成公有key的时候,不需要设置任何密码。

    ssh-keygen -t rsa
    cat ~/.ssh/id_rsa.pub
    vim ~/.ssh/authorized_keys
    

    第三步,在三个节点下分别下载Hadoop 3.1.4并解压缩

    wget http://apache.mirrors.hoobly.com/hadoop/common/hadoop-3.1.4/hadoop-3.1.4.tar.gz
    tar zvxf hadoop-3.1.4.tar.gz
    

    第四步,修改三个节点的配置文件hadoop-3.1.4/etc/hadoop/core-site.xml,设置value为master节点的ip,这里设置为10.10.1.1.注意,三个节点均需要设置为master节点的ip.

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

    第五步,分别在三个节点新建namenode和datanode文件

    mkdir /mnt/data/hadoop/hadoop-3.1.4/data/namenode
    mkdir /mnt/data/hadoop/hadoop-3.1.4/data/datanode
    

    修改hadoop-3.1.4/etc/hadoop/hdfs-site.xml,并设置为刚才新建文件夹的路径

    <configuration>
    <property>
    <name>dfs.namenode.name.dir</name>
    <value>/mnt/data/hadoop/hadoop-3.1.4/data/namenode</value>
    </property>
    <property>
    <name>dfs.datanode.data.dir</name>
    <value>/mnt/data/hadoop/hadoop-3.1.4/data/datanode</value>
    </property>
    </configuration>
    

    第六步,hadoop-3.1.4/etc/hadoop/hadoop-env.sh,添加JAVA_HOME,可以使用如下命令查看JAVA_HOME:
    update-alternatives --display java
    JAVA_HOME案例路径如下:/usr/lib/jvm/java-8-openjdk-amd64/jre

    接下来,分别在三个节点修改hadoop-3.1.4/etc/hadoop/workers,移除localhost并添加所有节点的ip

    10.10.1.1
    10.10.1.2
    10.10.1.3
    

    之后,修改环境变量

    export PATH=$PATH:/mnt/data/hadoop/hadoop-3.1.4/bin
    export PATH=$PATH:/mnt/data/hadoop/hadoop-3.1.4/sbin
    

    运行Hadoop,查看是否成功

    hdfs namenode -format
    start-dfs.sh
    

    Spark

    下面介绍如何配置Spark,首先下载Spark

    wget http://mirror.metrocast.net/apache/spark/spark-2.4.7/spark-2.4.7-bin-hadoop2.7.tgz
    tar zvxf spark-2.4.7-bin-hadoop2.7.tgz
    

    接下来,修改网络配置文件,修改各个template的文件名,包括conf/slaves和conf/spark-env.sh. 在conf/slaves下移除localhost并添加所有节点的ip

    mv spark-2.4.7-bin-hadoop2.7/conf/slaves.template spark-2.4.7-bin-hadoop2.7/conf/slaves
    10.10.1.1
    10.10.1.2
    10.10.1.3
    

    修改conf/spark-env.sh并分别设置master和slave的ip:

    SPARK_MASTER_HOST=10.10.1.1
    SPARK_LOCAL_IP=10.10.1.1
    

    设置完毕后,运行Spark
    spark-2.4.7-bin-hadoop2.7/sbin/start-all.sh

  • 相关阅读:
    C#中Dictionary的用法
    System.Timers.Timer用法
    C#中的异步调用及异步设计模式(三)——基于事件的异步模式
    C#中的异步调用及异步设计模式(二)——基于 IAsyncResult 的异步设计模式
    C#中的异步调用及异步设计模式(一)
    [你必须知道的异步编程]——异步编程模型(APM)
    strncasecmp与strcasecmp用法
    C语言之strrchr函数
    HDU 5289 Assignment (ST算法区间最值+二分)
    poj 1733 Parity game(种类并查集)
  • 原文地址:https://www.cnblogs.com/kkyyhh96/p/13688840.html
Copyright © 2020-2023  润新知