Apache Spark¶
在这篇文章中
信息
Apache Spark 是一个强大且快速的大数据处理引擎,可用于各种任务,例如实时数据流处理、机器学习和数据库分析。Spark 提供了多种编程语言的灵活 API,包括 Scala、Java、Python 和 R。
Apache Spark 的关键特性¶
- 高性能:Spark 使用分布式数据处理和优化算法,使其能够比传统解决方案更快地处理大量数据。
- 分布式:Spark 可以在多节点集群上运行,使您能够根据需要扩展数据处理能力。
- 多样化的 API:Spark 提供多种编程语言的 API,使其适用于不同的场景和开发团队。
- 支持多种数据类型:Spark 可以处理不同的数据类型,包括结构化数据(表)、非结构化数据(文本、图像)和半结构化数据(JSON)。
- Spark GraphX:一种图形 API,支持对大型图进行操作。
部署功能¶
| ID | 软件名称 | 兼容操作系统 | 虚拟机 | 物理机 | vGPU | GPU | 最低CPU(核) | 最低内存(GB) | 最低硬盘(GB) | 自定义域名 | 是否启用 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 204 | Apache Spark | Ubuntu 22.04 | + | + | + | + | 6 | 8 | 160 | 否 | 订购 |
- 控制面板访问地址:
https://spark{Server_ID_from_Invapi}.hostkey.in - 安装控制面板及操作系统所需时间约为 15 分钟。
备注
除非另有说明,默认情况下,我们从开发者网站或操作系统存储库安装软件的最新发布版本。
部署 Apache Spark 后的入门指南¶
支付订单后,当服务器准备就绪时,您将通过电子邮件(发送至注册时使用的地址)收到通知。该通知将包含 VPS IP 地址和连接所需的登录凭据。我们的客户通过 服务器控制面板和 API - Invapi 管理其设备。
您可以在服务器控制面板的 Configuration >> Tags 选项卡中,或在服务器准备就绪后发送给您的电子邮件中找到认证数据:
- 访问 Apache Spark Web 界面的链接:位于标签 webpanel 中;
- Login 和 Password:在服务器准备就绪时发送至您注册邮箱的电子邮件中提供。
配置 Apache Spark¶
Spark 可以在本地计算机或分布式环境中启动。在点击标签 webpanel 中的链接之前,您需要:
通过 SSH 连接到服务器:
然后使用 启动组件 部分表格中的命令启动所需的应用程序。
否则,点击链接将显示 502 (Bad Gateway) 错误。
启动组件¶
您可以使用下表中的命令启动各种 Spark 组件,例如 Application、Standalone Master、Standalone Worker 和带有 Web 界面的 History Server。
| 名称 | 本地地址和端口 | 外部地址 | 启动命令 |
|---|---|---|---|
| Application | localhost:4040 | https://spark{Server_ID_from_Invapi}.hostkey.in | /root/spark-3.5.3-bin-hadoop3/bin/./spark-shell |
| Standalone Master | localhost:8080 | https://spark{Server_ID_from_Invapi}.hostkey.in/master | /root/spark-3.5.3-bin-hadoop3/sbin/./start-master.sh |
| Standalone Worker | localhost:8081 | https://spark{Server_ID_from_Invapi}.hostkey.in/worker | /root/spark-3.5.3-bin-hadoop3/sbin/./start-master.sh spark://hostname:port |
| History Server | localhost:18080 | https://spark{Server_ID_from_Invapi}.hostkey.in/history | mkdir /tmp/spark-events/root/spark-3.5.3-bin-hadoop3/sbin/./start-history-server.sh |
请注意,启动 Spark 组件的命令可能会因使用的版本而异。上述示例使用的是 Spark 3.5.3 版本。更新 Spark 时,您需要相应地调整命令中的路径。始终建议查阅最新的 Spark 文档以获取有关组件启动命令的最准确信息。要检查版本,请通过 SSH 连接到服务器并输入以下命令:
该命令的输出将列出 /root 目录的内容,包括包含已安装版本的 spark 目录:

启动 Spark 组件后,您可以通过指定的外部地址访问其 Web 界面。考虑 Spark Application 界面的一个示例:

此示例演示了在 https://spark{Server_ID_from_Invapi}.hostkey.in 可访问的 Spark Application 界面。该界面显示有关运行任务、处理阶段、内存使用情况和其他关键指标的信息。
需要注意的是,在此界面中链接到其他 Spark 组件(例如 Standalone Master 或 Worker)时,从另一台机器连接将无法正常工作。这是由于安全设置:组件配置为本地运行,仅通过域名暴露 Web 界面。
要修改此配置并启用对所有组件的外部访问,您需要执行以下步骤:
- 在
/root/nginx目录中执行命令docker compose down以停止并移除当前的 Docker 容器。 - 从
/etc/environment文件中删除行SPARK_LOCAL_IP="127.0.0.1"。
进行这些更改后,Spark Web 界面将通过公网 IP 地址(无 SSL 证书)可访问。此修改还可以解决组件之间在运行过程中出现的连接问题。
备注
重要的是要记住,此配置会降低 Spark 集群的安全级别。仅在必要时且在安全的网络环境中使用。如果使用此配置,请考虑在 Spark 本身中配置 SSL 连接或实施其他安全措施以保护集群。
自定义路径¶
- 在
/root/nginx目录中执行命令docker compose down以停止 Docker 容器。 - 对 Nginx 配置文件进行必要的编辑:
/data/nginx/user_conf.d/spark{Server_ID_from_Invapi}.hostkey.in.conf。 - 从
/root/nginx目录使用命令docker compose up -d重新启动 Docker 容器。
备注
有关 Apache Spark 基本设置的详细信息,请参阅 开发者文档。