Spark安装和部署

单机模式

参考官网 Spark Standalone Mode

  • 先安装配置好java环境,scala,下载spark解压至/usr/local/spark
  • 启动spark的master ./sbin/start-master.sh
    Master-WebUI: http://10.0.30.70:8080/
  • 启动spark的worker ./sbin/start-slave.sh spark://master:7077 根据conf/slaves的配置启动worker,如果找不到slaves中配置的主机则默认为
    master地址可通过Master-WebUI: http://10.0.30.70:8080/查看
    Spark安装和部署_第1张图片
  • 运行示例 bin/spark-submit --class "SimpleApp" ./sparkapp/target/scala-2.11/simple-project_2.11-1.0.jar 其中SimpleApp是通过sbt打包的一个程序 参考 独立应用程序

集群部署

  • 准备工作:配置Java环境,安装scala,各主机下载spark解压至/usr/local/spark,设置hostname,/etc/hosts,各主机之间免密登录。
    hostnamectl set-hostname test
    master, slave1, slave2
  • 配置conf/下的配置文件
    spark-env.sh
SPARK_LOCAL_IP=master                                 #本机ip或hostname
SPARK_MASTER_IP=master                                #master节点ip或hostname
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop   #hadoop的配置路径
export YARN_CONF_DIR=/usr/local/hadoop/etc/hadoop     #yarn路径配置

slaves

slave1
slave2
  • 将上述配置文件分别复制到各主机下的配置文件中,同时将其中的SPARK_LOCAL_IP改为本机的ip,然后在master下执行./sbin/start-all.sh,会在master主机中启动Master进程,在slave1和slave2主机中启动Worker进程

  • 提交运行示例,程序提交到master:bin/spark-submit --class "SimpleApp" --master spark://master:7077 ./sparkapp/target/scala-2.11/simple-project_2.11-1.0.jar 通过Master-WebUI: http://10.0.30.70:8080/查看执行的任务

    Spark安装和部署_第2张图片

  • Spark on yarn 提交Spark应用程序到yarn,前提是hadoop的yarn即ResourceManger已启动,可参考Hadoop集群安装部署,执行bin/spark-submit --class "SimpleApp" --master yarn ./sparkapp/target/scala-2.11/simple-project_2.11-1.0.jar,可通过WebUI:ResourceManager - http://localhost:8088/查看提交的任务

    Spark安装和部署_第3张图片

  • 配置,启动 History Server
    spark-defaults.conf

spark.eventLog.enabled           true          #eventLog是否生效
spark.eventLog.dir               hdfs://master:9000/history/spark    #eventLog的文件存放位置,需要在hdfs上创建相应的目录
spark.eventLog.compress          true          #eventLog是否启用压缩

注意,eventLog是存储在hdfs上的需要根据配置的spark.eventLog.dir的路径在hdfs上创建相应的目录
spark-env.sh

export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=18080 -Dspark.history.retainedApplications=3 -Dspark.history.fs.logDirectory=hdfs://master:9000/history/spark"

启动执行./sbin/start-history-server.sh,在 HistoryServer-WebUI: http://10.0.30.70:18080/查看

你可能感兴趣的:(Spark安装和部署)