主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

配置 Spark 集群

从适当配置的 MATLAB® 客户端向 Spark™ 集群提交包含 tall (MATLAB) 数组和 mapreduce (MATLAB) 函数的并行 MATLAB 代码。

集群配置

按照这些说明将 MATLAB Parallel Server™ 安装接入到您的 Spark 集群。

  1. MATLABParallel Server 与您的集群基础架构集成。有关说明,请参阅为其他第三方调度器安装 MATLABParallel Server

    MATLAB Parallel Server 支持在不同环境中运行的 Spark 集群,例如 Spark Standalone 或 Databricks™。

  2. 如果您的集群需要 Kerberos 身份验证,请确保您的 MATLAB Parallel Server 安装已正确配置。有关说明,请参阅Kerberos 身份验证

客户端配置

要配置客户端以在集群上运行 MATLAB 代码,您必须已经能够从目标客户端计算机提交到集群。客户端计算机必须安装有 Spark,才能访问 MATLAB 之外的集群。

许多 Spark 发行版不支持从 Linux® 客户端直接访问基于 Windows® 的集群。Windows 客户端用户通常需要设置一个 Linux 网关节点,可以通过 SSH 或 VNC 从 Windows 客户端访问该节点。然后可以从该网关节点访问集群。

如果您的集群需要 Kerberos 身份验证,您必须确保您的 MATLAB 客户端安装已配置为进行 Kerberos 身份验证。有关说明,请参阅Kerberos 身份验证

创建集群配置文件

在此步骤中,您将创建一个集群配置文件,使 MATLAB 客户端能够连接到集群。

  1. 启动集群配置文件管理器。在主页选项卡的环境区域中,选择并行 > 创建和管理集群

  2. 通过选择添加集群配置文件 > Spark在集群配置文件管理器中创建一个新的配置文件。

  3. 在列表中选择新的配置文件后,点击重命名并将配置文件名称编辑为 SparkInstallTest。按 Enter 键。

  4. 属性选项卡中,选择编辑并提供以下字段的设置:

    1. 描述字段设置为用于测试安装

    2. ClusterMatlabRoot 设置为在工作单元计算机上运行 MATLAB 的安装位置。

    3. 如果集群使用在线许可,请将 RequiresOnlineLicensing 设置为 true。

    4. 如果将 RequiresOnlineLicensing 设置为 true,请在 LicenseNumber 字段中输入您的许可证号码。

    5. SparkInstallFolder 设置为客户端计算机上的 Spark 安装位置。

    6. SparkProperties 表中指定其他 Spark 属性。例如,要将首选工作单元数量指定为 16,请在 SparkProperties 表下选择添加。指定一个名为 spark.executor.instances 的新属性,输入 16 作为值,并选择 String 作为数据类型。

    7. 点击完成以保存您的集群配置文件更改。对话框如下所示:

      Cluster Profile Manager with the SparkInstallTest cluster profile selected. The properties of the InstallTest profile are displayed.

验证集群配置文件

在此步骤中,您将验证您的集群配置文件,从而验证您的安装。

  1. 如果尚未打开,请从 MATLAB 桌面启动集群配置文件管理器。在主页选项卡的环境区域中,选择并行 > 创建和管理集群

  2. 在列表中选择 SparkInstallTest 集群配置文件。

  3. 点击验证选项卡。

  4. 使用复选框选择所有测试或验证阶段的子集,并指定验证您的配置文件时要使用的工作单元数量。

  5. 点击验证

客户端完成集群验证后,验证选项卡显示输出。下图显示了通过所有验证测试的配置文件的结果。

Cluster Profile Manager with the SparkInstallTest profile selected. The validation results for the Spark cluster are shown in the right pane.

注意

如果您的验证未通过,请联系 MathWorks 安装支持团队

如果您的验证通过,您现在就拥有一个有效的配置文件,您可以使用它从 MATLAB 客户端访问集群。您可以对配置文件进行适合您的应用程序的任何修改,例如指定其他 Spark 属性、NumWorkersRangeAttachedFilesAdditionalPaths 等等。

要为其他用户保存您的配置文件,请选择该配置文件并点击导出,然后将您的配置文件保存到方便位置的文件中。稍后,运行 集群配置文件管理器时,其他用户可以通过点击导入来导入您的配置文件。

示例

使用 mapreducer (MATLAB) 函数将执行环境切换到 Spark 集群。

有关如何在 Spark 集群上运行并行 MATLAB 代码的示例,请参阅在 Spark 集群上使用 tall 数组 (Parallel Computing Toolbox)

Kerberos 身份验证

如果集群使用需要 Oracle® Java® 加密扩展的 Kerberos 身份验证,则必须配置 MATLAB 和 MATLAB Parallel Server 的所有安装。如果您在 Hadoop® 上使用 Spark(例如 Cloudera® 发行版),则可能需要完成这些配置步骤。

客户端和工作单元 MATLAB 安装的配置说明相同。

从 R2018b 开始,通过在 MATLAB 安装中启用适当的安全策略来配置您的 Java 安装。

  1. 在 MATLAB 编辑器中,打开文件 ${MATLAB_ROOT}/sys/java/jre/${ARCH}/jre/lib/security/java.security

  2. 将以下代码行

    #crypto.policy=unlimited
    更改为
    crypto.policy=unlimited

Spark 版本支持

Spark 2.2 或更高版本支持 MATLAB mapreduce、tall 数组和数据存储的并行使用。对于客户端,可以在支持所有架构的 Spark 集群上使用 tall 数组,同时支持 Linux 和 Mac 架构的集群。这包括跨平台支持。

Spark 执行器内存默认设置

从 MATLAB 提交的 Spark 作业的 spark.executor.memory 属性的默认值为 2560 MB。

另请参阅

(Parallel Computing Toolbox)

主题