pyspark 启动命令汇总 local、yarn、standalone

启动命令实在是太多了。。记录下

 

 

0. 启动Pyspark

默认情况下,pyspark 会以 spark-shell启动

pyspark --master local[*]

local:让spark在本地模式运行【*】代表使用全部的线程, 也可以规定使用的线程

 

1.Hadoop Yarn 启动 pyspark

首先启动Hadoop yarn, 

start-all.sh

Spark APP 可以在Yarn 资源管理器 上运行

HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop pyspark --master yarn -deploy-mode client

 HADOOP_CONF_DIR 变量设置了Hadoop 配置文件变量, 路径就是hadoop的安装位置, 放在~/.bashrc 里也挺好

vim ~/.bashrc 

export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop

source ~/.bashrc

2.Spark Standalone模式运行 pyspark

启动 spark standalone

start-all.sh

去 master:8080下确认所有的worker 都正确启动了

然后

pyspark --master spark://master:7077 --num-executors 1 --total-executor-cores 3 --executor-memory 512m

master spark:master:7077 以standalone模式启动

num-executors 1  执行计算的executor 1个进程,数量决定了你计算的速度, ps:如果你是虚拟机的化,别弄太多 10个就算是极限了-。-||

executor-memory 512m 内存大小,executor个数*内存大小,(考虑电脑能不能受得了。)

 

3. 从Jupyter启动Pyspark

1.local模式下

PYSPARK_DRIVER_PYTHON=jupyter PYSPARK_DRIVER_PYTHON_OPTS='notebook' pyspark

其实可以前两个变量可以放在 ~/.bashrc里 

export PYSPARK_DRIVER_PYTHON=jupyter
export PYSPARK_DRIVER_PYTHON_OPTS='notebook'

放到系统变量后,要是想再用回spark-shell,得删掉这两个系统变量并

unset PYSPARK_DRIVER_PYTHON

就能该回来了

2.hadoop yarn-client模式

三个变量 MASTER=yarn-client pyspark

就可以在localhost:8088下看到这个app

3.stand alone模式

三个变量 MASTER=spark://master:7077 pyspark --num-executors 1 --total-executor-cores 2 --executor-memory 512M

 

1. spark-submit

格式

spark-submit --driver-memory 2g --master local[4] application.py

driver程序使用2g内存,啥事driver,啥事executor,说的非常简单一点, driver可以看程python的main函数,用来生成spark Context 以及程序的所有操作, 他决定给各个worker啥活, 然后这个活会被发送的各个executor里去干, 这样,如何分配内存会了把。

yarn模式

spark-submit --driver-memory 512m --executor-cores 2 --master yarn --deploy-mode client /usr/local/app.py

standalone

spark-submit --master spark://master:7077 --deploy-mode client executor-memory 512m --total-executor-cores 2 app.py
上一篇:zookeeper集群启动状态是standalone


下一篇:pyspark 启动命令汇总 local、yarn、standalone等