1  使用单机local模式提交任务

local模式也就是本地模式,也就是在本地机器上单机执行程序。使用这个模式的话,并不需要启动Hadoop集群,也不需要启动Spark集群,只要有一台机器上安装了JDKScalaSpark即可运行。

进入到Spark2.1.1的安装目录,命令是:

cd  /opt/spark/spark-2.1.1-bin-hadoop2.7

   执行命令,用单机模式运行计算圆周率的Demo:

./bin/spark-submit  --class   org.apache.spark.examples.SparkPi  --master   local  examples/jars/spark-examples_2.11-2.1.1.jar

  如图:

2  使用独立的Spark集群模式提交任务

这种模式也就是Standalone模式,使用独立的Spark集群模式提交任务,需要先启动Spark集群,但是不需要启动Hadoop集群。启动Spark集群的方法是进入$SPARK_HOME/sbin目录下,执行start-all.sh脚本,启动成功后,可以访问下面的地址看是否成功:

http://Spark的Marster机器的IP:8080/

如图:

执行命令,用Standalone模式运行计算圆周率的Demo:

./bin/spark-submit   --class   org.apache.spark.examples.SparkPi   --master   spark://192.168.27.143:7077   examples/jars/spark-examples_2.11-2.1.1.jar

  如图:

3 用yarn-client模式执行计算程序

cd   /opt/spark/spark-2.1.1-bin-hadoop2.7

   执行命令,用yarn-client模式运行计算圆周率的Demo:

 ./bin/spark-submit   --class  org.apache.spark.examples.SparkPi  --master  yarn-client    examples/jars/spark-examples_2.11-2.1.1.jar

  我这里出现了报错, 如图:

解决方法:

echo -e "export HADOOP_CONF_DIR=/usr/local/hadoop-2.7.3/etc/hadoop" >> /etc/profile
source /etc/profile

接着运行...

又出现了如下报错....

经一番gooole, 由于VMware设置了4g内存,本地虚机启动了太多程序导致内存不够引起.

解决方案:

修改yarn-site.xml,添加下列property

<property>
<name>yarn.nodemanager.pmem-check-enabled</name>
<value>false</value>
</property> <property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>

4 用yarn-cluster模式执行计算程序

cd   /opt/spark/spark-2.1.1-bin-hadoop2.7

  执行命令,用yarn-cluster模式运行计算圆周率的Demo:

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

  注意,使用yarn-cluster模式计算,结果没有输出在控制台,结果写在了Hadoop集群的日志中,如何查看计算结果?注意到刚才的输出中有地址:

Spark2.3.1中用各种模式来跑官方Demo的更多相关文章

  1. [Intel Edison开发板] 03、Edison开发IDE入门及跑官方提供的DEMO

    一.启动Eclipse爱迪生开发板IDE eclipse开发环境在iss-iot-win_03-14-16中,但是一定每次都是点bat脚本启动,否则就会少东西(windows->preferen ...

  2. Spark- Spark Yarn模式下跑yarn-client无法初始化SparkConext,Over usage of virtual memory

    在spark yarn模式下跑yarn-client时出现无法初始化SparkContext错误. // :: INFO mapreduce.Job: Task Id : attempt_142829 ...

  3. Spark2.X集群运行模式

    rn 启动 先把这三个文件的名字改一下 配置slaves 配置spark-env.sh export JAVA_HOME=/opt/modules/jdk1..0_60 export SCALA_HO ...

  4. 新闻实时分析系统 Spark2.X集群运行模式

    1.几种运行模式介绍 Spark几种运行模式: 1)Local 2)Standalone 3)Yarn 4)Mesos 下载IDEA并安装,可以百度一下免费文档. 2.spark Standalone ...

  5. 新闻网大数据实时分析可视化系统项目——16、Spark2.X集群运行模式

    1.几种运行模式介绍 Spark几种运行模式: 1)Local 2)Standalone 3)Yarn 4)Mesos 下载IDEA并安装,可以百度一下免费文档. 2.spark Standalone ...

  6. vm centos7中用NAT模式配置上网

    第一步:设置虚拟机的NAT相关网络设置:   点击5标致处的“NAT设置”会出现设置6标致处的网关.   第二部:设置操作系统网络设置,右击上图中9标致处的系统,点击设置   第三部:配置操作系统ip ...

  7. STM32中用 stop 模式 配合低功耗模式下的自动唤醒(AWU) 能否实现FreeRTOS tickless 模式

    已经实现  ,2018年11月17日11:56:42,具体 如下: 第一步 : 修改 void vPortSetupTimerInterrupt( void ) 函数 ,修改原来的 systick 定 ...

  8. selenium 在电脑浏览器中用手机模式打开

    import requests from selenium import webdriver from selenium.webdriver.common.action_chains import A ...

  9. MVVM开发模式简单实例MVVM Demo

    本文主要是翻译Rachel Lim的一篇有关MVVM模式介绍的博文 A Simple MVVM Example 并具体给出了一个简单的Demo(原文是以WPF开发的,对于我自己添加或修改的一部分会用红 ...

随机推荐

  1. Python学习-1.安装Python

    到Python的官方网站 https://www.python.org/downloads/ 下载官方的安装包 https://www.python.org/ftp/python/3.4.1/pyth ...

  2. kylin的配置账号密码的加密方法

    kylin的配置账号密码的加密方法 kylin安装过程中,配置账户,其中密码是加密的.生成密码对应密文的 方法如下: import java.io.PrintStream; import org.sp ...

  3. electron-vue 开发环境搭建(Windows环境)

    1.安装 Node.js,一切都基于这个.安装完成后,终端输入 node -v 验证. 2.建立自己的项目目录,然后进入目录. 安装 vue-cli ,终端输入 npm install -g vue- ...

  4. C#构造方法(函数)

    一.概括 1.通常创建一个对象的方法如图: 通过  Student tom = new Student(); 创建tom对象,这种创建实例的形式被称为构造方法. 简述:用来初始化对象的,为类的成员赋值 ...

  5. C#多线程编程系列(五)- 使用任务并行库

    目录 1.1 简介 1.2 创建任务 1.3 使用任务执行基本的操作 1.4 组合任务 1.5 将APM模式转换为任务 1.6 将EAP模式转换为任务 1.7 实现取消选项 1.8 处理任务中的异常 ...

  6. 第七章 ReentrantLock总结

    常用方式: int a = 12; //注意:通常情况下,这个会设置成一个类变量,比如说Segement中的段锁与copyOnWriteArrayList中的全局锁 final ReentrantLo ...

  7. leetcode 123. 买卖股票的最佳时机 III JAVA

    题目: 给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格. 设计一个算法来计算你所能获取的最大利润.你最多可以完成 两笔 交易. 注意: 你不能同时参与多笔交易(你必须在再次购买前出 ...

  8. FastAdmin 前端页面传参

    如果我们需要自己在控制器中透传数据到JS中去,则可以使用控制器的assignconfig方法来透传,使用如下 $this->assignconfig('demo', ['name'=>'名 ...

  9. 使用dev-tool定位页面性能瓶颈

    这是部门同事的一次内部分享,听完后受益颇多,趁着记忆还算新鲜,赶紧记录一波. 从 dev-tool 看页面 parse 过程 时间都去哪儿了 当浏览器发送一个请求到接受所有响应数据截止,这个过程发生了 ...

  10. 六:MyBatis学习总结(六)——调用存储过程

    一.提出需求 查询得到男性或女性的数量, 如果传入的是0就女性否则是男性 二.准备数据库表和存储过程 create table p_user( id int primary key auto_incr ...