本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Slurm会计Amazon ParallelCluster
从版本 3.3.0 开始,Amazon ParallelCluster支持使用集群配置参数 SlurmSettings/数据库进行Slurm记账。
使用Slurm会计,您可以集成外部会计数据库来执行以下操作:
-
管理集群用户或用户组和其他实体。借助此功能,您可以使用更高级Slurm的功能,例如资源限制执行、公平共享和 QoS。
-
收集和保存作业数据,例如运行作业的用户、作业的持续时间及其使用的资源。您可以使用该
sacct
实用程序查看保存的数据。
Amazon ParallelCluster支持对Slurm支持的 MySQL 数据库服务器
在Slurm会计领域工作Amazon ParallelCluster
在配置Slurm记账之前,必须拥有现有的外部数据库服务器和使用mysql
协议的数据库。
要使用配置Slurm会计Amazon ParallelCluster,必须定义以下内容:
-
数据库/URI 中外部数据库服务器的 URI。服务器必须存在并且可以从头节点访问。
-
访问在数据库/ PasswordSecretArn和数据库/中定义的外部数据库的证书UserName。 Amazon ParallelCluster使用此信息在Slurm级别上配置记账并在头节点上配置
slurmdbd
服务。slurmdbd
是管理集群与数据库服务器之间通信的守护程序。
要逐步完成教程,请参阅使用Slurm记账创建集群。
Amazon ParallelCluster通过在数据库中将默认集群用户设置为数据库管理员,对Slurm会计数据库执行基本引导。Slurm Amazon ParallelCluster不会将任何其他用户添加到会计数据库。客户负责管理Slurm数据库中的会计实体。
Amazon ParallelCluster配置slurmdbd
slurmdbd
配置文件StorageLoc
-
我们不建议设置多个集群以同时使用同一个数据库。这样做可能会导致性能问题甚至数据库死锁情况。
-
如果在集群的头节点上启用了记Slurm账,我们建议使用具有强大 CPU、更多内存和更高网络带宽的实例类型。 Slurm会计会增加集群的头节点的压力。
在当前的Amazon ParallelClusterSlurm记账功能架构中,每个集群都有自己的slurmdbd
守护程序实例,如下图示例配置所示。
如果您要向集群环境添加自定义Slurm多集群或联合功能,则所有集群都必须引用同一个slurmdbd
实例。对于这种替代方案,我们建议您在一个集群上启用Amazon ParallelClusterSlurm记账,然后手动配置其他集群以连接到第一个slurmdbd
集群上托管的集群。
如果您使用Amazon ParallelCluster的是 3.3.0 之前的版本,请参阅此 HPC 博客文章
Slurm会计注意事项
不同 VPC 上的数据库和集群
要启用Slurm记账,需要数据库服务器作为slurmdbd
守护程序执行的读写操作的后端。在创建或更新群集以启用Slurm记账之前,头节点必须能够访问数据库服务器。
如果您需要在集群使用的 VPC 以外的 VPC 上部署数据库服务器,请考虑以下几点:
在slurmdbd
和数据库服务器之间配置 TLS 加密
使用Amazon ParallelCluster提供的默认Slurm记账配置,如果服务器支持 TLS 加密,则与数据库服务器slurmdbd
建立 TLS 加密连接。 AmazonAmazon RDS 等数据库服务默认Amazon Aurora支持 TLS 加密。
通过在数据库服务器上设置require_secure_transport
参数,可以要求在服务器端建立安全连接。这是在提供的 CloudFormation 模板中配置的。
作为安全性方面的最佳实践,我们建议您同时在slurmdbd
客户端上启用服务器身份验证。为此,请在StorageParametersslurmdbd.conf
。将服务器 CA 证书上传到群集的头节点。接下来,将 in的 SSL_CAslurmdbd.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 监控文档。