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

  • 相关阅读:
    webAPI 控制器(Controller)太多怎么办?
    mysql Unknown error 1054
    .NET MVC项目设置包含Areas中的页面为默认启动页
    EF C# ToPagedList方法 The method 'Skip' is only supported for sorted input in LINQ to Entities. The method 'OrderBy' must ……
    控制台Main函数传参
    C#编码规范
    Linq扩展方法
    Linq操作ArrayList
    LINQ和文件目录
    LINQ To Objects
  • 原文地址:https://www.cnblogs.com/kkyyhh96/p/13688840.html
Copyright © 2011-2022 走看看