Slurm会计Amazon ParallelCluster - Amazon ParallelCluster
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Slurm会计Amazon ParallelCluster

从版本 3.3.0 开始,Amazon ParallelCluster支持使用集群配置参数 SlurmSettings/数据库进行Slurm记账。

使用Slurm会计,您可以集成外部会计数据库来执行以下操作:

  • 管理集群用户或用户组和其他实体。借助此功能,您可以使用更高级Slurm的功能,例如资源限制执行、公平共享和 QoS。

  • 收集和保存作业数据,例如运行作业的用户、作业的持续时间及其使用的资源。您可以使用该sacct实用程序查看保存的数据。

注意

Amazon ParallelCluster支持对Slurm支持的 MySQL 数据库服务器进行Slurm记账。

在Slurm会计领域工作Amazon ParallelCluster

在配置Slurm记账之前,必须拥有现有的外部数据库服务器和使用mysql协议的数据库。

要使用配置Slurm会计Amazon ParallelCluster,必须定义以下内容:

要逐步完成教程,请参阅使用Slurm记账创建集群

注意

Amazon ParallelCluster通过在数据库中将默认集群用户设置为数据库管理员,对Slurm会计数据库执行基本引导。Slurm Amazon ParallelCluster不会将任何其他用户添加到会计数据库。客户负责管理Slurm数据库中的会计实体。

Amazon ParallelCluster配置slurmdbd以确保群集在Slurm数据库服务器上拥有自己的数据库。同一个数据库服务器可以跨多个集群使用,但每个集群都有自己的独立数据库。 Amazon ParallelCluster使用群集名称在slurmdbd配置文件StorageLoc参数中定义数据库的名称。请考虑以下情况。存在于数据库服务器上的数据库包含未映射到活动集群名称的群集名称。在这种情况下,您可以使用该集群名称创建一个新集群以映射到该数据库。 Slurm为新集群重用数据库。

警告
  • 我们不建议设置多个集群以同时使用同一个数据库。这样做可能会导致性能问题甚至数据库死锁情况。

  • 如果在集群的头节点上启用了记Slurm账,我们建议使用具有强大 CPU、更多内存和更高网络带宽的实例类型。 Slurm会计会增加集群的头节点的压力。

在当前的Amazon ParallelClusterSlurm记账功能架构中,每个集群都有自己的slurmdbd守护程序实例,如下图示例配置所示。


     A configuration with two clusters that are connected to a MySQL server. Each cluster has their own slurmdbd daemon instance.
      Moreover, each cluster is connected to its own database through the server. Another configuration with a single cluster that has its own
       slurmdbd daemon instance. This configuration is connected to a MySQL server and is also connected to its own database through the
      server.

如果您要向集群环境添加自定义Slurm多集群或联合功能,则所有集群都必须引用同一个slurmdbd实例。对于这种替代方案,我们建议您在一个集群上启用Amazon ParallelClusterSlurm记账,然后手动配置其他集群以连接到第一个slurmdbd集群上托管的集群。

如果您使用Amazon ParallelCluster的是 3.3.0 之前的版本,请参阅此 HPC 博客文章中描述的实现Slurm记账的替代方法。

Slurm会计注意事项

不同 VPC 上的数据库和集群

要启用Slurm记账,需要数据库服务器作为slurmdbd守护程序执行的读写操作的后端。在创建或更新群集以启用Slurm记账之前,头节点必须能够访问数据库服务器。

如果您需要在集群使用的 VPC 以外的 VPC 上部署数据库服务器,请考虑以下几点:

  • 要启用集群端和数据库服务器之间的通信,您必须在两个 VPC 之间建立连接。slurmdbd有关更多信息,请参阅 Amazon Virtua l Private Cloud VPC

  • 您必须创建要连接到集群 VPC 上头节点的安全组。在两个 VPC 建立对等关系后,数据库端和集群端安全组之间就可以进行交叉链接了。有关更多信息,请参阅 Amazamaz amaza maza mazamazamazamazamaza maz

slurmdbd和数据库服务器之间配置 TLS 加密

使用Amazon ParallelCluster提供的默认Slurm记账配置,如果服务器支持 TLS 加密,则与数据库服务器slurmdbd建立 TLS 加密连接。 AmazonAmazon RDS 等数据库服务默认Amazon Aurora支持 TLS 加密。

通过在数据库服务器上设置require_secure_transport参数,可以要求在服务器端建立安全连接。这是在提供的 CloudFormation 模板中配置的。

作为安全性方面的最佳实践,我们建议您同时在slurmdbd客户端上启用服务器身份验证。为此,请在StorageParameters中配置slurmdbd.conf。将服务器 CA 证书上传到群集的头节点。接下来,将 in的 SSL_CA 选项设置slurmdbd.conf为头节点上服务器 CA 证书的路径。StorageParameters这样做可以在slurmdbd侧面进行服务器身份验证。进行这些更改后,重新启动slurmdbd服务以在启用身份验证的情况下重新建立与数据库服务器的连接。

更新数据库凭证

要更新数据库/UserName或的值 PasswordSecretArn,必须先停止计算队列。假设存储在密钥中的Amazon Secrets Manager密钥值已更改,其 ARN 未更改。在这种情况下,集群不会自动将数据库密码更新为新值。要更新集群中的新密钥值,请从头节点运行以下命令。

$ sudo /opt/parallelcluster/scripts/slurm/update_slurm_database_password.sh
警告

为避免丢失会计数据,我们建议您仅在计算队列停止时更改数据库密码。

数据库监控

建议您启用Amazon数据库服务的监控功能。有关更多信息,请参阅 Amazon RDS 监控Amazon Aurora 监控文档。