Spark集群环境搭建

来源:互联网 发布:东莞三星视界待遇知乎 编辑:程序博客网 时间:2024/05/16 14:22

一、开发工具

  1. JAVA:JDK(Oracle官网最新版)
  2. Hadoop(Version:2.7.3)
  3. Spark(Version:2.1.1)
  4. VirtualBox
  5. Scala(Vesion:2.1.12)
  6. Ubuntu(Vesion:16.04)

二、Linux基本配置

  1. VirtualBox安装Ubuntu

  2. Ubuntu下切换到root

    sudo passwd //设置root的密码
  3. Ubuntu VI编辑器乱码

    先卸载vim-tiny:

    $ sudo apt-get remove vim-common

    再安装vim full:

    $ sudo apt-get install vim
  4. SSH免密码登录

    a.安装ssh client server

    sudo apt-get install openssh-client sudo apt-get install openssh-server

    在Master主机上生成

    ssh-keygen -t rsa

    三次回车之后,在当前根目录下会生成:.ssh目录,.ssh下有id_rsa和id_rsa.pub

    b.将生成的id_rsa.pub复制到Slaver机器上的.ssh/authorized_keys文件中,如果没有该目录及文件,手动创建,并使用追加的方式进行:

    cat id_rsa.pub >> .ssh/authorized_keys

    authorized_keys的权限设置:

    chmod 600 .ssh/authorized_keys

三、Java安装及环境变量配置

  1. 解压JDK

    在/usr/local目录下新建目录jdk,解压JDK文件

    sudo tar -zxvf jdkXXX.tar.gz -C /usr/local/jdk
  2. 配置环境变量

    编辑/etc/profile文件:

    export JAVA_HOME=/usr/local/jdk/jdk1.8.0_131 export JRE_HOME=${JAVA_HOME}/jre export CLASS_PATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=$PATH:${JAVA_HOME}/bin # $PATH必须得有

四、Hadoop安装配置

  1. 解压Hadoop

    sudo tar -zxvf hadoop2.7.3.tar.gz -C /usr/local/hadoop
  2. 修改Hadoop的配置文件(目录:hadoop/hadoop2.7.3/etc/hadoop)

    core-site.xml hdfs-site.xml maped-site.xml  yarn-site.xml  hadoop-env.sh  slaves
  3. 格式化并启动HDFS

    格式化:

    bin/hdfs namenode -format

    启动HDFS:

    sbin/start_dfs.sh

    启动失败的可原因:/etc/hosts文件有变动

  4. 使用Browser查看HDFS信息

    使用默认端口连接:http://master:50070/
  5. 启动资源管理框架YARN

    /sbin/start-yarn.sh
  6. 查看Hadoop的UI控制台

    http://master:8088

五、Spark安装配置

  1. 解压Spark

    sudo tar -zxvf spark-2.1.1-hin-hadoop2.7 -C /usr/local/spark
  2. 修改Spark的配置文件(conf目录下)

    spark-env.sh  slaves
  3. 配置系统环境变量

    vim /etc/profile 使用scp 将/etc/profile文件同步到每台机器上
  4. 拷贝Spark安装目录下的所有文件到其它的机器上

  5. 启动Spark

    启动Spark

    /sbin/start-all.sh

    启动Spark的日志记录服务

    sbin/start-history-server.sh
  6. 查看Spark的UI控制台

    http://master:8080 http://master:18080 (history-server)
  7. Spark-submit提交Spark运行

    bin目录下:

    spark-submit  --class 完整的包名 --master spark://master:7077 --executor-memory 20G --total-executor-cores 100 *.jar 运行jar的完整路径 1000 并行运行的数目
  8. spark-shell运行

    bin目录下:

    spark-shell --master spark://Master:7077