安装spark standalone mode

本文详细介绍了如何在本地环境中安装并配置Spark集群,包括安装JDK、Scala,构建Spark源码,配置环境变量,启动Master和Slave节点,并通过Web UI进行监控。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考:

http://spark.incubator.apache.org/docs/latest/

http://spark.incubator.apache.org/docs/latest/spark-standalone.html

http://www.yanjiuyanjiu.com/blog/20130617/

1.安装JDK

2.安装scala 2.9.3

Spark 0.7.2 依赖 Scala 2.9.3, 我们必须要安装Scala 2.9.3.

下载 scala-2.9.3.tgz 并 保存到home目录(已经在sg206上).
$ tar -zxf scala-2.9.3.tgz
$ sudo mv scala-2.9.3 /usr/lib
$ sudo vim /etc/profile
# add the following lines at the end
export SCALA_HOME=/usr/lib/scala-2.9.3
export PATH=$PATH:$SCALA_HOME/bin
# save and exit vim
#make the bash profile take effect immediately
source /etc/profile
# test
$ scala -version

3.building spark

cd /home

tar -zxf spark-0.7.3-sources.gz

cd spark-0.7.3

sbt/sbt package  (需要git环境  yum install git)

4.配置文件

spark-env.sh

############

export SCALA_HOME=/usr/lib/scala-2.9.3
export SPARK_MASTER_IP=172.16.48.202
export SPARK_WORKER_MEMORY=10G

#############

slaves

将从节点IP添加至slaves配置文件

5.启动和停止

bin/start-master.sh - Starts a master instance on the machine the script is executed on.
bin/start-slaves.sh - Starts a slave instance on each machine specified in the conf/slaves file.
bin/start-all.sh - Starts both a master and a number of slaves as described above.
bin/stop-master.sh - Stops the master that was started via the bin/start-master.sh script.
bin/stop-slaves.sh - Stops the slave instances that were started via bin/start-slaves.sh.
bin/stop-all.sh - Stops both the master and the slaves as described above.

6. 浏览master的web UI(默认http://localhost:8080). 这是你应该可以看到所有的word节点,以及他们的CPU个数和内存等信息。

### 配置和使用 Spark Standalone 模式 #### 安装 Spark Standalone 模式 要设置 Spark 的独立模式 (Standalone Mode),可以按照以下方式操作。首先,在集群中的每个节点上部署已编译好的 Spark 版本文件夹。可以通过官方发布的预构建版本或者自行编译来获得这些文件[^2]。 #### 启动集群 手动启动集群时,需要分别运行 `start-master.sh` 和 `start-slave.sh` 脚本来初始化 Master 和 Worker 进程。Master 是整个集群的核心管理器,而 Slave 则代表各个工作节点。通过指定 Master URL (`spark://<master-host>:7077`) 来让 Workers 注册到对应的 Master 上。 对于更复杂的环境配置,还可以利用脚本自动化批量分发并启动服务进程;此外也有图形界面监控工具可供查看当前系统的状态信息以及历史作业记录等数据[^3]。 #### 使用 Client 或 Cluster Deploy Modes 当提交应用程序至 Spark 独立集群执行时,有两种主要的部署模式可以选择——Client 模式与 Cluster 模式: - **Client 模式**: Driver 程序会在客户端本地运行,并连接远程服务器完成计算任务处理流程。这种方式适合调试阶段因为便于日志观察及错误排查等工作[^1]。 - **Cluster 模式**: 将 driver 移植到了 worker 节点内部去运作,从而使得 master 不再承担额外负载压力的同时提高了整体性能表现水平。不过由于缺乏直接交互能力所以通常用于生产环境中长期无人值守的任务调度场景下更为合适一些。 以下是简单的 Python API 示例代码展示如何向不同类型的 spark-submit 命令附加参数以适应上述两种情况之一的需求: ```python from pyspark.sql import SparkSession # 创建一个新的会话实例对象 spark = SparkSession.builder \ .appName("example") \ .getOrCreate() data = [("James", "", "Smith"), ("Anna", "Rose", ""), ("Mike", "John", "Williams")] columns = ["firstname", "middlename", "lastname"] df = spark.createDataFrame(data=data, schema=columns) df.show() ``` 如果采用的是 client 方式,则只需要简单调用如下命令即可: ```bash ./bin/spark-submit --class com.example.MainApp --deploy-mode client /path/to/jarfile.jar arg1 arg2 ... ``` 如果是 cluster 方法的话则需改成这样形式传递选项进去: ```bash ./bin/spark-submit --class com.example.MainApp --deploy-mode cluster --master spark://HOST:PORT hdfs:///path/to/jarfile.jar arg1 arg2 ... ``` 以上就是关于怎样设定好并且运用 Sparkstandalone mode 下的一些基本指导原则了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值