Slurmcontabilidade com AWS ParallelCluster - AWS ParallelCluster

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Slurmcontabilidade com AWS ParallelCluster

A partir da versão 3.3.0, AWS ParallelCluster oferece suporte à Slurm contabilidade com o parâmetro de configuração de cluster SlurmSettings/Database.

Com a contabilização de Slurm, você pode integrar um banco de dados contábil externo para fazer o seguinte:

  • Gerenciar usuários do cluster ou grupos de usuários e outras entidades. Com esse recurso, você pode usar os recursos mais avançados do Slurm, como imposição de limite de recursos, fairshare e QOS.

  • Coleta e salva dados do trabalho, como o usuário que executou o trabalho, a duração do trabalho e os recursos que ele usa. Você pode visualizar os dados salvos com o utilitário sacct.

nota

AWS ParallelCluster suporta a Slurm contabilização de Slurmservidores de banco de dados MySQL compatíveis.

Trabalhando com Slurm contabilidade em AWS ParallelCluster

Antes de configurar a contabilização de Slurm, você deve ter um servidor de banco de dados externo existente e um banco de dados que use um protocolo mysql.

Para configurar a Slurm contabilidade com AWS ParallelCluster, você deve definir o seguinte:

  • O URI do servidor de banco de dados externo em Database/Uri. O servidor deve existir e estar acessível a partir do nó principal.

  • Credenciais para acessar o banco de dados externo que estão definidas em Database/PasswordSecretArne Database/UserName. AWS ParallelCluster usa essas informações para configurar a contabilidade no Slurm nível e o slurmdbd serviço no nó principal. slurmdbdé o daemon que gerencia a comunicação entre o cluster e o servidor do banco de dados.

Para ver um tutorial, consulte Criação de um cluster com contabilidade Slurm.

nota

AWS ParallelCluster executa um bootstrap básico do banco de dados Slurm contábil definindo o usuário padrão do cluster como administrador do banco de dados no Slurm banco de dados. AWS ParallelCluster não adiciona nenhum outro usuário ao banco de dados contábil. O cliente é responsável por gerenciar as entidades de contabilização no banco de dados Slurm.

AWS ParallelCluster configura slurmdbdpara garantir que um cluster tenha seu próprio Slurm banco de dados no servidor de banco de dados. O mesmo servidor de banco de dados pode ser usado em vários clusters, mas cada cluster tem seu próprio banco de dados separado. AWS ParallelCluster usa o nome do cluster para definir o nome do banco de dados no StorageLocparâmetro do arquivo de slurmdbd configuração. Considere a situação a seguir. Um banco de dados que está presente no servidor de banco de dados inclui um nome de cluster que não é mapeado para um nome de cluster ativo. Nesse caso, você pode criar um novo cluster com esse nome de cluster para mapear para esse banco de dados. Slurm reutiliza o banco de dados para o novo cluster.

Atenção
  • Não recomendamos configurar mais de um cluster para usar o mesmo banco de dados ao mesmo tempo. Isso pode levar a problemas de desempenho ou até mesmo a situações de impasse no banco de dados.

  • Se a contabilização de Slurm estiver habilitada no nó principal de um cluster, recomendamos usar um tipo de instância com uma CPU poderosa, mais memória e maior largura de banda da rede. A contabilização de Slurm pode sobrecarregar o nó principal do cluster.

Na arquitetura atual do recurso de AWS ParallelCluster Slurm contabilidade, cada cluster tem sua própria instância do slurmdbd daemon, conforme mostrado nos exemplos de configurações do diagrama a seguir.

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.

Se você estiver adicionando funcionalidades personalizadas de vários clusters Slurm ou de federação ao seu ambiente de cluster, todos os clusters devem fazer referência à mesma instância slurmdbd. Para essa alternativa, recomendamos que você habilite a AWS ParallelCluster Slurm contabilização em um cluster e configure manualmente os outros clusters para se conectarem aos slurmdbd que estão hospedados no primeiro cluster.

Se você estiver usando AWS ParallelCluster versões anteriores à versão 3.3.0, consulte o método alternativo para implementar a Slurm contabilidade descrito nesta postagem do blog sobre HPC.

Considerações sobre contabilização de Slurm

Banco de dados e cluster em diferentes VPCs

Para habilitar a contabilização de Slurm, é necessário um servidor de banco de dados para servir como back-end para as operações de leitura e gravação que o daemon slurmdbd executa. Antes que o cluster seja criado ou atualizado para permitir a contabilização de Slurm, o nó principal deve ser capaz de acessar o servidor do banco de dados.

Se você precisar implantar o servidor de banco de dados em uma VPC diferente da usada pelo cluster, considere o seguinte:

  • Para permitir a comunicação entre o slurmdbd do lado do cluster e do servidor do banco de dados, você deve configurar a conectividade entre as duas VPCs. Para obter mais informações, consulte VPC Peering no Guia do usuário da Amazon Virtual Private Cloud.

  • Você deve criar o grupo de segurança que deseja anexar ao nó principal na VPC do cluster. Depois que as duas VPCs tiverem sido emparelhadas, a vinculação cruzada entre os grupos de segurança do lado do banco de dados e do cluster ficará disponível. Para obter mais informações, consulte Regras do Grupo de Segurança no Guia do usuário da Amazon Virtual Private Cloud.

Configurando a criptografia TLS entre slurmdbd e o servidor de banco de dados

Com a configuração de Slurm contabilidade padrão fornecida, AWS ParallelCluster slurmdbd estabelece uma conexão criptografada TLS com o servidor de banco de dados, se o servidor oferecer suporte à criptografia TLS. AWS serviços de banco de dados, como o Amazon RDS, Amazon Aurora oferecem suporte à criptografia TLS por padrão.

Você pode exigir conexões seguras no lado do servidor definindo o parâmetro require_secure_transport no servidor do banco de dados. Isso é configurado no CloudFormation modelo fornecido.

Seguindo as práticas recomendadas de segurança, recomendamos também habilitar a verificação da identidade do servidor no cliente do slurmdbd. Para fazer isso, configure StorageParameterso. noslurmdbd.conf. Carregue o certificado CA do servidor no nó principal do cluster. Em seguida, defina a opção SSL_CA de StorageParameters em slurmdbd.conf para o caminho do certificado CA do servidor no nó principal. Isso permite a verificação da identidade do servidor no lado de slurmdbd. Depois de fazer essas alterações, reinicie o serviço slurmdbd para restabelecer a conectividade com o servidor de banco de dados com a verificação de identidade ativada.

Atualização das credenciais do banco de dados

Para atualizar os valores de Database/UserNameou PasswordSecretArn, você deve primeiro interromper a frota computacional. Suponha que o valor secreto armazenado no AWS Secrets Manager segredo seja alterado e seu ARN não seja alterado. Nessa situação, o cluster não atualiza automaticamente a senha do banco de dados para o novo valor. Para atualizar o cluster para o novo valor secreto, execute o comando a seguir no nó principal.

$ sudo /opt/parallelcluster/scripts/slurm/update_slurm_database_password.sh
Atenção

Para evitar a perda de dados contábeis, recomendamos que você altere a senha do banco de dados somente quando a frota de computação for interrompida.

Monitoramento de banco de dados

Recomendamos que você ative os recursos de monitoramento dos serviços de AWS banco de dados. Para obter mais informações, consulte a documentação de Monitoramento do Amazon RDS ou de Monitoramento do Amazon Aurora.