Skip to content

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 中;
  • LoginPassword:在服务器准备就绪时发送至您注册邮箱的电子邮件中提供。

配置 Apache Spark

Spark 可以在本地计算机或分布式环境中启动。在点击标签 webpanel 中的链接之前,您需要:

通过 SSH 连接到服务器:

ssh root@<server_ip>

然后使用 启动组件 部分表格中的命令启动所需的应用程序。

否则,点击链接将显示 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 连接到服务器并输入以下命令:

ls /root

该命令的输出将列出 /root 目录的内容,包括包含已安装版本的 spark 目录:

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

此示例演示了在 https://spark{Server_ID_from_Invapi}.hostkey.in 可访问的 Spark Application 界面。该界面显示有关运行任务、处理阶段、内存使用情况和其他关键指标的信息。

需要注意的是,在此界面中链接到其他 Spark 组件(例如 Standalone Master 或 Worker)时,从另一台机器连接将无法正常工作。这是由于安全设置:组件配置为本地运行,仅通过域名暴露 Web 界面。

要修改此配置并启用对所有组件的外部访问,您需要执行以下步骤:

  1. /root/nginx 目录中执行命令 docker compose down 以停止并移除当前的 Docker 容器。
  2. /etc/environment 文件中删除行 SPARK_LOCAL_IP="127.0.0.1"

进行这些更改后,Spark Web 界面将通过公网 IP 地址(无 SSL 证书)可访问。此修改还可以解决组件之间在运行过程中出现的连接问题。

备注

重要的是要记住,此配置会降低 Spark 集群的安全级别。仅在必要时且在安全的网络环境中使用。如果使用此配置,请考虑在 Spark 本身中配置 SSL 连接或实施其他安全措施以保护集群。

自定义路径

  1. /root/nginx 目录中执行命令 docker compose down 以停止 Docker 容器。
  2. 对 Nginx 配置文件进行必要的编辑:/data/nginx/user_conf.d/spark{Server_ID_from_Invapi}.hostkey.in.conf
  3. /root/nginx 目录使用命令 docker compose up -d 重新启动 Docker 容器。

备注

有关 Apache Spark 基本设置的详细信息,请参阅 开发者文档

使用 API 订购带有 Apache Spark 的服务器

question_mark
Is there anything I can help you with?
question_mark
AI Assistant ×