在集群上运行Spark应用程序(Python版)

52 篇文章 10 订阅

 

Spark应用程序在集群中运行时,需要借助于集群管理器(包括本地集群管理器、YARN、Mesos)来为其实现资源管理调度服务,实现对集群中各个机器的访问(可以参考前面章节的内容:Spark集群部署模式)。这里通过简单的示例介绍其中两种:独立集群管理器和Hadoop Yarn集群管理器。通过介绍,我们可以了解到如何在这两种集群管理器上运行Spark应用程序。

启动Spark集群

请登录Linux系统,打开一个终端。
启动Hadoop集群

 
  1. cd /usr/local/hadoop/
  2. sbin/start-all.sh

Shell 命令

启动Spark的Master节点和所有slaves节点

 
  1. cd /usr/local/spark/
  2. sbin/start-master.sh
  3. sbin/start-slaves.sh

Shell 命令

独立集群管理器

(1)在集群中运行应用程序JAR包
向独立集群管理器提交应用,需要把spark://master:7077作为主节点参数递给spark-submit。下面我们可以运行Spark安装好以后自带的样例程序SparkPi,它的功能是计算得到pi的值(3.1415926)。
在Shell中输入如下命令:

 
  1. bin/spark-submit --class org.apache.spark.examples.SparkPi --master spark://master:7077 examples/jars/spark-examples_2.11-2.0.2.jar 100 2>&1 | grep "Pi is roughly"

Shell 命令

(2)在集群中运行pyspark
也可以用spark-shell连接到独立集群管理器上。
首先做一点准备工作,把一个README.md文件拷贝到HDFS上,用于后面的测试。

 
  1. cd /usr/local/hadoop/
  2. # 下面这条命令中,我们把spark安装目录下的README.md文件上传到分布式文件系统HDFS的根目录下
  3. bin/hadoop fs -put /usr/local/spark/README.md /

Shell 命令

在Shell中输入如下命令启动进入pyspark:

 
  1. cd /usr/local/spark/
  2. bin/pyspark --master spark://master:7077

Shell 命令

可以在pyspark中输入如下代码进行测试:

 
  1. >>> textFile = sc.textFile("hdfs://master:9000/README.md")
  2. >>> textFile.count()
  3. 99
  4. >>> textFile.first()
  5. # Apache Spark

Python

用户在独立集群管理Web界面查看应用的运行情况,可以浏览器中输入地址进行查看(http://master:8080/),如下图:
20161206_012

Hadoop YARN管理器

(1)在集群中运行应用程序JAR包
向Hadoop YARN集群管理器提交应用,需要把yarn-cluster作为主节点参数递给spark-submit。
请登录Linux系统,打开一个终端,在Shell中输入如下命令:

 
  1. bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn-cluster examples/jars/spark-examples_2.11-2.0.2.jar

Shell 命令

运行后,根据在Shell中得到输出的结果地址查看,如下图:
20161206_014
复制结果地址到浏览器,点击查看Logs,再点击stdout,即可查看结果,如下图:
20161206_015
20161206_016

(2)在集群中运行pyspark
也可以用pyspark连接到独立集群管理器上。
请登录Linux系统,打开一个终端,在Shell中输入如下命令启动进入spark-shell:

 
  1. bin/pyspark --master yarn

Shell 命令

在pyspark中输入如下代码进行测试:

 
  1. >>> textFile = sc.textFile("hdfs://master:9000/README.md")
  2. >>> textFile.count()
  3. 99
  4. >>> textFile.first()
  5. # Apache Spark

Python

用户在Hadoop Yarn集群管理Web界面查看所有应用的运行情况,可以在浏览器中输入地址进行查看(http://master:8088/cluster) ,如下图:
20161206_013

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值