Sezione Scheduling - AWS ParallelCluster

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Sezione Scheduling

(Obbligatorio) Definisce il job scheduler utilizzato nel cluster e le istanze di calcolo gestite dal job scheduler. È possibile utilizzare il Slurm o AWS Batch scheduler. Ciascuno supporta un diverso set di impostazioni e proprietà.

Scheduling: Scheduler: slurm ScalingStrategy: string SlurmSettings: MungeKeySecretArn: string ScaledownIdletime: integer QueueUpdateStrategy: string EnableMemoryBasedScheduling: boolean CustomSlurmSettings: [dict] CustomSlurmSettingsIncludeFile: string Database: Uri: string UserName: string PasswordSecretArn: string DatabaseName: string ExternalSlurmdbd: boolean Host: string Port: integer Dns: DisableManagedDns: boolean HostedZoneId: string UseEc2Hostnames: boolean SlurmQueues: - Name: string ComputeSettings: LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer EphemeralVolume: MountDir: string CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string CapacityType: string AllocationStrategy: string JobExclusiveAllocation: boolean CustomSlurmSettings: dict Tags: - Key: string Value: string HealthChecks: Gpu: Enabled: boolean Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string PlacementGroup: Enabled: boolean Id: string Name: string Proxy: HttpProxyAddress: string ComputeResources: - Name: string InstanceType: string Instances: - InstanceType: string MinCount: integer MaxCount: integer DynamicNodePriority: integer StaticNodePriority: integer SpotPrice: float DisableSimultaneousMultithreading: boolean SchedulableMemory: integer HealthChecks: Gpu: Enabled: boolean Efa: Enabled: boolean GdrSupport: boolean CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string Networking: PlacementGroup: Enabled: boolean Name: string CustomSlurmSettings: dict Tags: - Key: string Value: string CustomActions: OnNodeStart: Sequence: - Script: string Args: - string Script: string Args: - string OnNodeConfigured: Sequence: - Script: string Args: - string Script: string Args: - string Iam: InstanceProfile: string InstanceRole: string S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string Image: CustomAmi: string
Scheduling: Scheduler: awsbatch AwsBatchQueues: - Name: string CapacityType: string Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name: string InstanceTypes: - string MinvCpus: integer DesiredvCpus: integer MaxvCpus: integer SpotBidPercentage: float

Proprietà Scheduling

Scheduler(Obbligatorio,String)

Speciifica il tipo di scheduler utilizzato. I valori supportati sono slurm e awsbatch.

Politica di aggiornamento: se questa impostazione viene modificata, l'aggiornamento non è consentito.

Nota

awsbatchsupporta solo il sistema alinux2 operativo e x86_64 la piattaforma.

ScalingStrategy(Facoltativo,String)

Consente di scegliere la modalità di dinamicità Slurm i nodi si espandono. I valori supportati sonoall-or-nothing, greedy-all-or-nothing e best-effort il valore predefinito èall-or-nothing.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

Nota

La strategia di scalabilità si applica solo ai nodi che devono essere ripristinati da Slurm, non ai nodi che alla fine sono già in esecuzione.

  • all-or-nothingQuesta strategia segue rigorosamente una all-or-nothing-approach strategia volta a evitare le istanze inattive alla fine del processo di scalabilità. Funziona su una all-or-nothing base, il che significa che si espande completamente o non si adatta affatto. Tieni presente che potrebbero esserci costi aggiuntivi dovuti alle istanze lanciate temporaneamente, quando i lavori richiedono più di 500 nodi o si estendono su più risorse di elaborazione. Questa strategia ha il throughput più basso tra le tre possibili strategie di scalabilità. Il tempo di scalabilità dipende dal numero di lavori inviati per Slurm riprendere l'esecuzione del programma. Inoltre, non è possibile scalare molto oltre il limite predefinito di account di RunInstances risorse per esecuzione, che per impostazione predefinita è di 1000 istanze. Maggiori dettagli sono disponibili nella documentazione di Amazon EC2 API Throttling

  • greedy-all-or-nothing Analogamente alla all-or-nothing strategia, mira a evitare le istanze inattive dopo il ridimensionamento. Questa strategia consente un sovradimensionamento temporaneo durante il processo di scalabilità per ottenere un throughput più elevato rispetto all' all-or-nothingapproccio, ma prevede anche lo stesso limite di scalabilità di 1000 istanze previsto dal limite di account di risorse. RunInstances

  • best-effort Questa strategia dà la priorità a un throughput elevato, anche se ciò significa che alcune istanze potrebbero rimanere inattive al termine del processo di scalabilità. Tenta di allocare tutti i nodi richiesti dai job, ma esiste la possibilità che non soddisfi l'intera richiesta. A differenza delle altre strategie, l'approccio che prevede il massimo impegno consente di accumulare più istanze rispetto al RunInstances limite standard, a scapito delle risorse inutilizzate durante le diverse esecuzioni dei processi di scalabilità.

Ogni strategia è progettata per soddisfare diverse esigenze di scalabilità e consente di selezionarne una che soddisfi requisiti e vincoli specifici.

AwsBatchQueues

(Facoltativo) Le impostazioni della coda. AWS Batch È supportata una sola coda. Se Schedulerè impostata suawsbatch, questa sezione è obbligatoria. Per ulteriori informazioni sullo awsbatch scheduler, vedere configurazione della rete eUtilizzo dello scheduler AWS Batch (awsbatch) con AWS ParallelCluster.

AwsBatchQueues: - Name: string CapacityType: string Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name: string InstanceTypes: - string MinvCpus: integer DesiredvCpus: integer MaxvCpus: integer SpotBidPercentage: float

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

Proprietà AwsBatchQueues

Name(Obbligatorio,String)

Il nome della AWS Batch coda.

Politica di aggiornamento: se questa impostazione viene modificata, l'aggiornamento non è consentito.

CapacityType(Facoltativo,String)

Il tipo di risorse di calcolo utilizzate dalla AWS Batch coda. I valori supportati sonoONDEMAND, oSPOT. CAPACITY_BLOCK Il valore predefinito è ONDEMAND.

Nota

Se lo CapacityType impostiSPOT, il tuo account deve contenere un ruolo AWSServiceRoleForEC2Spot collegato al servizio. È possibile creare questo ruolo utilizzando il seguente AWS CLI comando.

$ aws iam create-service-linked-role --aws-service-name spot.amazonaws.com

Per ulteriori informazioni, consulta il ruolo collegato ai servizi per le richieste di istanze Spot nella Amazon Amazon EC2 User Guide for Linux Instances.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

Networking

(Obbligatorio) Definisce la configurazione di rete per la coda. AWS Batch

Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string
Proprietà Networking
SubnetIds(Obbligatorio,[String])

Speciifica l'ID di una sottorete esistente in cui effettuare il provisioning della AWS Batch coda. Attualmente è supportata solo una sottorete.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

AssignPublicIp(Facoltativo,String)

Crea o assegna un indirizzo IP pubblico ai nodi della AWS Batch coda. I valori supportati sono true e false. L'impostazione predefinita dipende dalla sottorete specificata.

Politica di aggiornamento: se questa impostazione viene modificata, l'aggiornamento non è consentito.

SecurityGroups(Facoltativo,[String])

Elenco dei gruppi di sicurezza utilizzati dalla AWS Batch coda. Se non specifichi gruppi di sicurezza, AWS ParallelCluster crea nuovi gruppi di sicurezza.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

AdditionalSecurityGroups(Facoltativo,[String])

Elenco dei gruppi di sicurezza utilizzati dalla AWS Batch coda.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

ComputeResources

(Obbligatorio) Definisce la ComputeResources configurazione per la AWS Batch coda.

ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name: string InstanceTypes: - string MinvCpus: integer DesiredvCpus: integer MaxvCpus: integer SpotBidPercentage: float
Proprietà ComputeResources
Name(Obbligatorio,String)

Il nome dell'ambiente di calcolo della AWS Batch coda.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

InstanceTypes(Obbligatorio,) [String]

L'array di tipi di istanze dell'ambiente di AWS Batch calcolo. Tutti i tipi di istanza devono utilizzare l'x86_64architettura.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

MinvCpus(Facoltativo,Integer)

Il numero minimo di dati VCPUs che un ambiente di AWS Batch calcolo può utilizzare.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

DesiredVcpus(Facoltativo,Integer)

Il numero desiderato di VCPUs nell'ambiente di AWS Batch calcolo. AWS Batch regola questo valore tra MinvCpus e in MaxvCpus base alla domanda nella coda dei lavori.

Politica di aggiornamento: questa impostazione non viene analizzata durante un aggiornamento.

MaxvCpus(Facoltativo,) Integer

Il numero massimo di VCPUs per l'ambiente di AWS Batch calcolo. Non puoi impostarlo su un valore inferiore aDesiredVcpus.

Politica di aggiornamento: questa impostazione non può essere ridotta durante un aggiornamento.

SpotBidPercentage(Facoltativo,Float)

La percentuale massima del prezzo On-Demand per il tipo di istanza che il prezzo di un'istanza Amazon EC2 Spot può raggiungere prima del lancio delle istanze. Il valore predefinito è 100 (100%). L'intervallo supportato è 1 -100.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

SlurmQueues

(Facoltativo) Impostazioni per Slurm coda. Se Schedulerè impostata suslurm, questa sezione è obbligatoria.

SlurmQueues: - Name: string ComputeSettings: LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer EphemeralVolume: MountDir: string CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string CapacityType: string AllocationStrategy: string JobExclusiveAllocation: boolean CustomSlurmSettings: dict Tags: - Key: string Value: string HealthChecks: Gpu: Enabled: boolean Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string PlacementGroup: Enabled: boolean Id: string Name: string Proxy: HttpProxyAddress: string ComputeResources: - Name: string InstanceType: string Instances: - InstanceType: string MinCount: integer MaxCount: integer DynamicNodePriority: integer StaticNodePriority: integer SpotPrice: float DisableSimultaneousMultithreading: boolean SchedulableMemory: integer HealthChecks: Gpu: Enabled: boolean Efa: Enabled: boolean GdrSupport: boolean CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string Networking: PlacementGroup: Enabled: boolean Name: string CustomSlurmSettings: dict Tags: - Key: string Value: string CustomActions: OnNodeStart: Sequence: - Script: string Args: - string Script: string Args: - string OnNodeConfigured: Sequence: - Script: string Args: - string Script: string Args: - string Iam: InstanceProfile: string InstanceRole: string S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string Image: CustomAmi: string

Politica di aggiornamento: per questa impostazione dei valori dell'elenco, è possibile aggiungere un nuovo valore durante un aggiornamento oppure è necessario interrompere la flotta di elaborazione quando si rimuove un valore esistente.

Proprietà SlurmQueues

Name(Obbligatorio,String)

Il nome del Slurm coda.

Nota

La dimensione del cluster può cambiare durante un aggiornamento. Per ulteriori informazioni, vedere Dimensione e aggiornamento della capacità del cluster

Politica di aggiornamento: se questa impostazione viene modificata, l'aggiornamento non è consentito.

CapacityReservationTarget
Nota

CapacityReservationTargetviene aggiunto con la AWS ParallelCluster versione 3.3.0.

CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string

Speciifica la prenotazione della capacità On-Demand per le risorse di calcolo della coda.

CapacityReservationId(Facoltativo,) String

L'ID della riserva di capacità esistente a cui destinare le risorse di calcolo della coda. L'ID può fare riferimento a un ODCRo a un Capacity Block for ML.

La prenotazione deve utilizzare la stessa piattaforma utilizzata dall'istanza. Ad esempio, se le istanze vengono eseguiterhel8, la prenotazione della capacità deve essere eseguita sulla piattaforma Red Hat Enterprise Linux. Per ulteriori informazioni, consulta Piattaforme supportate nella Amazon EC2 User Guide for Linux Instances.

Nota

Se includi Instancesnella configurazione del cluster, devi escludere questa CapacityReservationId impostazione del livello di coda dalla configurazione.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

CapacityReservationResourceGroupArn(Facoltativo,String)

L'Amazon Resource Name (ARN) del gruppo di risorse che funge da gruppo di prenotazioni di capacità collegato al servizio per le risorse di calcolo della coda. AWS ParallelCluster identifica e utilizza la prenotazione di capacità più appropriata del gruppo di risorse in base alle seguenti condizioni:

Il gruppo di risorse deve averne almeno una ODCR per ogni tipo di istanza riservata in una zona di disponibilità in tutte le risorse di calcolo e le zone di disponibilità della coda. Per ulteriori informazioni, consulta Avvia istanze con prenotazioni di capacità su richiesta () ODCR.

Per ulteriori informazioni sui requisiti di configurazione di più sottoreti, vedere/. NetworkingSubnetIds

Nota

Nella AWS ParallelCluster versione 3.4.0 sono state aggiunte più zone di disponibilità.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

CapacityType(Facoltativo,String)

Il tipo di risorse di elaborazione che il Slurm utilizza la coda. I valori supportati sonoONDEMAND, SPOT oCAPACITY_BLOCK. Il valore predefinito è ONDEMAND.

Nota

Se lo imposti suSPOT, CapacityType il tuo account deve avere un ruolo AWSServiceRoleForEC2Spot collegato al servizio. È possibile creare questo ruolo utilizzando il comando seguente AWS CLI .

$ aws iam create-service-linked-role --aws-service-name spot.amazonaws.com

Per ulteriori informazioni, consulta il ruolo collegato ai servizi per le richieste di istanze Spot nella Amazon Amazon EC2 User Guide for Linux Instances.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

AllocationStrategy(Facoltativo,) String

Specificare la strategia di allocazione per tutte le risorse di calcolo definite in. Instances

Valori validi: lowest-price | capacity-optimized | price-capacity-optimized

Impostazione predefinita: lowest-price

lowest-price
  • Se utilizziCapacityType = ONDEMAND, Amazon EC2 Fleet utilizza il prezzo per determinare l'ordine e avvia prima le istanze con il prezzo più basso.

  • Se lo utilizziCapacityType = SPOT, Amazon EC2 Fleet lancia istanze dal pool di istanze Spot con il prezzo più basso e con capacità disponibile. Se un pool esaurisce la capacità prima di soddisfare la capacità richiesta, Amazon EC2 Fleet soddisfa la tua richiesta avviando istanze per te. In particolare, Amazon EC2 Fleet lancia istanze dal pool di istanze Spot con il prezzo più basso e con capacità disponibile. Amazon EC2 Fleet potrebbe lanciare istanze Spot da diversi pool.

  • Se impostiCapacityType = CAPACITY_BLOCK, non esistono strategie di allocazione, quindi il AllocationStrategy parametro non può essere configurato.

capacity-optimized
  • Se impostatoCapacityType = ONDEMAND, capacity-optimized non è disponibile.

  • Se hai impostatoCapacityType = SPOT, Amazon EC2 Fleet lancia istanze dai pool di istanze Spot con una capacità ottimale per il numero di istanze da avviare.

price-capacity-optimized
  • Se lo hai impostatoCapacityType = ONDEMAND, capacity-optimized non è disponibile.

  • Se hai impostatoCapacityType = SPOT, Amazon EC2 Fleet identifica i pool con la massima capacità e disponibilità per il numero di istanze in fase di avvio. Ciò implica che richiederemo istanze spot dai pool che riteniamo avere le minori possibilità di interruzione nel breve termine. Amazon EC2 Fleet richiede quindi istanze Spot dal prezzo più basso di questi pool.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Nota

AllocationStrategyè supportato a partire dalla AWS ParallelCluster versione 3.3.0.

JobExclusiveAllocation(Facoltativo,String)

Se impostato sutrue, il Slurm il OverSubscribe flag di partizione è impostato su. EXCLUSIVE When OverSubscribe =EXCLUSIVE, i job nella partizione hanno accesso esclusivo a tutti i nodi allocati. Per ulteriori informazioni, vedere EXCLUSIVEin Slurm documentazione.

Valori validi: true | false

Default: false

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

Nota

JobExclusiveAllocationè supportato a partire dalla AWS ParallelCluster versione 3.7.0.

CustomSlurmSettings(Facoltativo,) Dict

Definisce la personalizzazione Slurm impostazioni di configurazione della partizione (coda).

Specifica un dizionario personalizzato Slurm coppie chiave-valore dei parametri di configurazione che si applicano alle code (partizioni).

Ogni coppia chiave-valore separata, ad esempioParam1: Value1, viene aggiunta separatamente alla fine di Slurm riga di configurazione della partizione nel formato. Param1=Value1

È possibile solo specificare Slurm parametri di configurazione che non sono elencati in. CustomSlurmSettings Per informazioni sulla lista negata Slurm parametri di configurazione, vedere. Non inserito nell'elencoSlurmparametri di configurazione perCustomSlurmSettings

AWS ParallelCluster controlla solo se un parametro è in una lista di rifiuto. AWS ParallelCluster non convalida la tua personalizzazione Slurm sintassi o semantica dei parametri di configurazione. Sei responsabile della convalida della tua personalizzazione Slurm parametri di configurazione. Personalizzazione non valida Slurm i parametri di configurazione possono causare Slurm errori dei daemon che possono causare errori di creazione e aggiornamento del cluster.

Per ulteriori informazioni su come specificare valori personalizzati Slurm parametri di configurazione con AWS ParallelCluster, vedereSlurmpersonalizzazione della configurazione.

Per ulteriori informazioni sull' Slurm parametri di configurazione, vedere slurm.conf nel Slurm documentazione.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

Nota

CustomSlurmSettingsè supportato a partire dalla versione 3.6.0. AWS ParallelCluster

Tags(Facoltativo, [String])

Un elenco di coppie chiave-valore di tag. ComputeResourcei tag sostituiscono i tag duplicati specificati in o in/. Sezione Tags SlurmQueues Tags

Key(Facoltativo,) String

La chiave di tag:

Value(Facoltativo,String)

Il valore del tag.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

HealthChecks(Opzionale)

Specificate i controlli dello stato dei nodi di calcolo su tutte le risorse di calcolo nella coda.

Gpu(Facoltativo)

Specificate i controlli di GPU integrità su tutte le risorse di calcolo in una coda.

Nota

AWS ParallelCluster non supportaHealthChecks/Gpunei nodi che utilizzano alinux2 ARM sistemi operativi. Queste piattaforme non supportano NVIDIAData Center GPU Manager (DCGM).

Enabled(Facoltativo,Boolean)

Se AWS ParallelCluster esegue controlli di GPU integrità sui nodi di calcolo. Il valore predefinito è false.

Gpucomportamento dei controlli sanitari
  • SeGpu/Enabledè impostato sutrue, AWS ParallelCluster esegue controlli di GPU integrità sulle risorse di calcolo in coda.

  • Il controllo Gpu dello stato esegue controlli GPU sullo stato delle risorse di calcolo per impedire l'invio di lavori su nodi con un valore danneggiato. GPU

  • Se un nodo di elaborazione non supera un controllo di Gpu integrità, lo stato del nodo di calcolo cambia in. DRAIN I nuovi lavori non iniziano su questo nodo. I lavori esistenti vengono eseguiti fino al completamento. Una volta completati tutti i processi in esecuzione, il nodo di calcolo termina se si tratta di un nodo dinamico e viene sostituito se si tratta di un nodo statico.

  • La durata del controllo dello Gpu stato dipende dal tipo di istanza selezionato, dal numero di obiettivi del controllo dello GPUs stato dell'istanza e dal numero di obiettivi Gpu del controllo dello stato (equivalente al numero di GPU obiettivi di lavoro). Per un'istanza con 8GPUs, la durata tipica è inferiore a 3 minuti.

  • Se il controllo Gpu dello stato viene eseguito su un'istanza non supportata, viene chiusa e il processo viene eseguito sul nodo di elaborazione. Ad esempio, se un'istanza non ha unGPU, oppure se un'istanza ne haGPU, ma non lo è, il controllo dello stato viene chiuso e il processo viene eseguito sul nodo di calcolo. NVIDIA GPU Sono supportati solo NVIDIAGPUs.

  • Il controllo dello Gpu stato utilizza lo dcgmi strumento per eseguire controlli di integrità su un nodo e segue i seguenti passaggi:

    Quando inizia il controllo dello stato di Gpu salute in un nodo:

    1. Rileva se i nvidia-fabricmanager servizi nvidia-dcgm and sono in esecuzione.

    2. Se questi servizi non sono in esecuzione, il controllo Gpu sanitario li avvia.

    3. Rileva se la modalità di persistenza è abilitata.

    4. Se la modalità di persistenza non è abilitata, il controllo dello Gpu stato la abilita.

    Al termine del controllo sanitario, il controllo Gpu sanitario riporta questi servizi e risorse allo stato iniziale.

  • Se il job è assegnato a un set specifico di nodiGPUs, il controllo dello Gpu stato viene eseguito solo su quel set specifico. In caso contrario, il Gpu controllo dello stato viene eseguito su tutti i GPUs componenti del nodo.

  • Se un nodo di elaborazione riceve 2 o più richieste di controllo dello stato di Gpu salute contemporaneamente, viene eseguito solo il primo controllo e gli altri vengono ignorati. Questo vale anche per i controlli sanitari rivolti al nodo. GPUs È possibile controllare i file di registro per ulteriori informazioni su questa situazione.

  • Il registro dei controlli di integrità per un nodo di calcolo specifico è disponibile nel /var/log/parallelcluster/slurm_health_check.log file. Il file è disponibile in Amazon CloudWatch, nel gruppo di CloudWatch log del cluster, dove puoi trovare:

    • Dettagli sull'azione eseguita dal controllo dello stato di Gpu salute, tra cui l'attivazione e la disabilitazione dei servizi e la modalità di persistenza.

    • L'GPUidentificatore, l'ID seriale e il. UUID

    • L'output del controllo dello stato di salute.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

Nota

HealthChecksè supportato a partire dalla AWS ParallelCluster versione 3.6.0.

Networking

(Obbligatorio) Definisce la configurazione di rete per Slurm coda.

Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string PlacementGroup: Enabled: boolean Id: string Name: string Proxy: HttpProxyAddress: string

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Proprietà Networking
SubnetIds(Obbligatorio,[String])

Le IDs sottoreti esistenti a cui si fornisce Slurm fare la coda.

Se si configurano i tipi di istanza in SlurmQueues/ComputeResources/InstanceType, è possibile definire solo una sottorete.

Se si configurano i tipi di istanza in SlurmQueuesComputeResources//Instances, è possibile definire una o più sottoreti.

Se si utilizzano più sottoreti, tutte le sottoreti definite per una coda devono trovarsi nella stessaVPC, con ogni sottorete in una zona di disponibilità (AZ) separata.

Ad esempio, supponete di definire subnet-1 e subnet-2 per la coda.

subnet-1e non subnet-2 possono essere entrambi in AZ-1.

subnet-1può essere in AZ-1 e subnet-2 può essere in AZ-2.

Se configuri solo un tipo di istanza e desideri utilizzare più sottoreti, definisci il tipo di istanza in anziché. Instances InstanceType

Ad esempio, definisciComputeResources/Instances/InstanceType= instance.type anzichéComputeResources/InstanceType=. instance.type

Nota

Elastic Fabric Adapter (EFA) non è supportato in diverse zone di disponibilità.

L'uso di più zone di disponibilità potrebbe causare un aumento della latenza della rete di storage e costi aggiuntivi per il trasferimento dei dati tra AZ. Ad esempio, ciò potrebbe verificarsi quando un'istanza accede allo storage di file che si trova in una zona di disponibilità diversa. Per ulteriori informazioni, consulta Trasferimento dati all'interno della stessa Regione AWS.

Aggiornamenti del cluster per passare dall'uso di una singola sottorete a più sottoreti:
  • Supponiamo che la definizione di sottorete di un cluster sia definita con una singola sottorete e un AWS ParallelCluster file system managed for Lustre. FSx Quindi, non è possibile aggiornare direttamente questo cluster con una definizione di ID di sottorete aggiornata. Per effettuare l'aggiornamento del cluster, è necessario innanzitutto modificare il file system gestito con un file system esterno. Per ulteriori informazioni, consulta Convertire lo storage AWS ParallelCluster gestito in storage esterno.

  • Supponiamo che la definizione di sottorete di un cluster sia definita con una singola sottorete e un EFS file system Amazon esterno se non esistono destinazioni di EFS montaggio per tutte le sottoreti multiple definite da aggiungere. AZs Quindi, non puoi aggiornare direttamente questo cluster con una definizione di ID di sottorete aggiornata. Per aggiornare il cluster o creare un cluster, è necessario innanzitutto creare tutti i target di montaggio per tutte le sottoreti multiple definite. AZs

Zone di disponibilità e prenotazioni di capacità del cluster definite in: CapacityReservationResourceGroupArn
  • Non è possibile creare un cluster se non vi è alcuna sovrapposizione tra l'insieme di tipi di istanze e zone di disponibilità coperti dal gruppo di risorse di prenotazione della capacità definito e l'insieme di tipi di istanze e zone di disponibilità definiti per la coda.

  • È possibile creare un cluster se esiste una sovrapposizione parziale tra l'insieme di tipi di istanze e zone di disponibilità coperti dal gruppo di risorse di prenotazione della capacità definito e l'insieme di tipi di istanze e zone di disponibilità definiti per la coda. AWS ParallelCluster invia un messaggio di avviso sulla sovrapposizione parziale in questo caso.

  • Per ulteriori informazioni, consulta Avvia istanze con prenotazioni di capacità su richiesta () ODCR.

Nota

Nella AWS ParallelCluster versione 3.4.0 sono state aggiunte più zone di disponibilità.

avvertimento

Questo avviso si applica a tutte le AWS ParallelCluster versioni 3.x.y precedenti alla versione 3.3.1. AWS ParallelCluster la modifica di questo parametro non influisce sulla versione 3.3.1.

Per AWS ParallelCluster 3 versioni precedenti alla versione 3.3.1:

La modifica di questo parametro e l'aggiornamento di un cluster creano un nuovo file system managed FSx for Lustre ed eliminano il file system Managed FSx for Lustre esistente senza preservare i dati esistenti. Ciò si traduce in una perdita di dati. Prima di procedere, assicurati di eseguire il backup dei dati dal file system esistente di FSx for Lustre se desideri conservare i dati. Per ulteriori informazioni, vedete Lavorare con i backup nella Guida FSx per l'utente di for Lustre.

Se viene aggiunto un nuovo valore di sottorete, Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

Se viene rimosso un valore di sottorete, Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

AssignPublicIp(Facoltativo,String)

Crea o assegna un indirizzo IP pubblico ai nodi di Slurm coda. I valori supportati sono true e false. La sottorete specificata determina il valore predefinito. Una sottorete con IPs impostazione pubblica predefinita per l'assegnazione di indirizzi IP pubblici.

Se si definisce un p4d oppure hpc6id tipo di istanza o un altro tipo di istanza con più interfacce di rete o una scheda di interfaccia di rete, è necessario impostare HeadNode/Networking/su ElasticIpper true fornire l'accesso pubblico. AWS public IPs può essere assegnato solo alle istanze avviate con una singola interfaccia di rete. In questo caso, si consiglia di utilizzare un NATgateway per fornire l'accesso pubblico ai nodi di calcolo del cluster. In questo caso, imposta suAssignPublicIp. false Per ulteriori informazioni sugli indirizzi IP, consulta Assegnare un IPv4 indirizzo pubblico durante l'avvio dell'istanza nella Amazon EC2 User Guide for Linux Instances.

Politica di aggiornamento: se questa impostazione viene modificata, l'aggiornamento non è consentito.

SecurityGroups(Facoltativo,) [String]

Un elenco di gruppi di sicurezza da utilizzare per Slurm coda. Se non viene specificato alcun gruppo di sicurezza, AWS ParallelCluster crea gruppi di sicurezza per te.

Verifica che i gruppi di sicurezza siano configurati correttamente per i tuoi SharedStoragesistemi.

avvertimento

Questo avviso si applica a tutti e 3.x.y AWS ParallelCluster versioni precedenti alla versione 3.3.0. AWS ParallelCluster la modifica di questo parametro non influisce sulla versione 3.3.0.

Per AWS ParallelCluster 3 versioni precedenti alla versione 3.3.0:

La modifica di questo parametro e l'aggiornamento di un cluster creano un nuovo file system managed FSx for Lustre ed eliminano il file system Managed FSx for Lustre esistente senza preservare i dati esistenti. Ciò si traduce in una perdita di dati. Assicurati di eseguire il backup dei dati dal file system esistente di FSx for Lustre se desideri conservare i dati. Per ulteriori informazioni, vedere Utilizzo dei backup nella Guida FSxper l'utente di for Lustre.

avvertimento

Se abiliti Efa per le tue istanze di calcolo, assicurati che le istanze EFA abilitate facciano parte di un gruppo di sicurezza che autorizza tutto il traffico in entrata e in uscita a sé.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

AdditionalSecurityGroups([String]Facoltativo,)

Un elenco di gruppi di sicurezza aggiuntivi da utilizzare per Slurm coda.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

PlacementGroup(Facoltativo)

Specificate le impostazioni del gruppo di posizionamento per Slurm coda.

PlacementGroup: Enabled: boolean Id: string Name: string

Politica di aggiornamento: tutti i nodi di calcolo devono essere interrotti per l'eliminazione di un gruppo di posizionamento gestito. La flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Enabled(Facoltativo,Boolean)

Indica se un gruppo di collocamento viene utilizzato per Slurm coda. Il valore predefinito è false.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Id(Facoltativo,String)

Il nome del gruppo di posizionamento per un gruppo di posizionamento del cluster esistente che Slurm queue utilizza. Assicurati di fornire il nome del gruppo di collocamento e non l'ID.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Name(Facoltativo,String)

Il nome del gruppo di posizionamento per un gruppo di posizionamento del cluster esistente che Slurm queue utilizza. Assicurati di fornire il nome del gruppo di collocamento e non l'ID.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Nota
Proxy(Facoltativo)

Specifica le impostazioni del proxy per Slurm coda.

Proxy: HttpProxyAddress: string

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

HttpProxyAddress(Facoltativo,String)

Definisce un server HTTP o HTTPS proxy per Slurm coda. In genere, èhttps://x.x.x.x:8080.

Non esiste un valore predefinito.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Image

(Facoltativo) Specificate l'immagine da utilizzare per Slurm coda. Per utilizzare lo stesso AMI per tutti i nodi, utilizzate l'CustomAmiimpostazione nella Imagesezione.

Image: CustomAmi: string

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

ImageProprietà
CustomAmi(Facoltativo,String)

Il AMI da usare per Slurm coda invece di quella predefinitaAMIs. Puoi utilizzare il plugin pcluster CLIcomando per visualizzare un elenco di quelli predefinitiAMIs.

Nota

AMIDeve essere basato sullo stesso sistema operativo utilizzato dal nodo principale.

pcluster list-official-images

Se la configurazione personalizzata AMI richiede autorizzazioni aggiuntive per il suo avvio, è necessario aggiungere tali autorizzazioni alla politica del nodo principale.

Ad esempio, se a una soluzione personalizzata AMI è associata un'istantanea crittografata, nelle policy del nodo principale sono necessarie le seguenti politiche aggiuntive.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:ReEncrypt*", "kms:CreateGrant", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:<AWS_REGION>:<AWS_ACCOUNT_ID>:key/<AWS_KMS_KEY_ID>" ] } ] }

Per risolvere i problemi relativi agli avvisi di AMI convalida personalizzati, vedere. Risoluzione dei AMI problemi personalizzati

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

ComputeResources

(Obbligatorio) Definisce la configurazione per ComputeResources Slurm coda.

Nota

La dimensione del cluster può cambiare durante un aggiornamento. Per ulteriori informazioni, vedere Dimensione e aggiornamento della capacità del cluster

ComputeResources: - Name: string InstanceType: string Instances: - InstanceType: string MinCount: integer MaxCount: integer DynamicNodePriority: integer StaticNodePriority: integer SpotPrice: float DisableSimultaneousMultithreading: boolean SchedulableMemory: integer HealthChecks: Gpu: Enabled: boolean Efa: Enabled: boolean GdrSupport: boolean CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string Networking: PlacementGroup: Enabled: boolean Name: string CustomSlurmSettings: dict Tags: - Key: string Value: string

Politica di aggiornamento: per questa impostazione dei valori dell'elenco, è possibile aggiungere un nuovo valore durante un aggiornamento oppure è necessario interrompere la flotta di elaborazione quando si rimuove un valore esistente.

Proprietà ComputeResources
Name(Obbligatorio,String)

Il nome del Slurm ambiente di calcolo della coda. Il nome può contenere fino a 25 caratteri.

Politica di aggiornamento: se questa impostazione viene modificata, l'aggiornamento non è consentito.

InstanceType(Obbligatorio,String)

Il tipo di istanza utilizzato in questo Slurm risorsa di calcolo. Tutti i tipi di istanze in un cluster devono utilizzare la stessa architettura di processore. Le istanze possono utilizzare l'arm64architettura x86_64 or.

La configurazione del cluster deve definire una delle due InstanceTypeistanze. Se entrambi sono definiti, AWS ParallelCluster fallisce.

Quando si definisceInstanceType, non è possibile definire più sottoreti. Se configuri solo un tipo di istanza e desideri utilizzare più sottoreti, definisci il tipo di istanza in anziché inInstances. InstanceType Per ulteriori informazioni, consulta Networking/. SubnetIds

Se definisci un p4d oppure hpc6id tipo di istanza o un altro tipo di istanza con più interfacce di rete o una scheda di interfaccia di rete, è necessario avviare le istanze di calcolo in una sottorete privata come descritto in. AWS ParallelCluster utilizzando due sottoreti AWS public IPs può essere assegnato solo alle istanze avviate con una singola interfaccia di rete. Per ulteriori informazioni, consulta Assegnare un IPv4 indirizzo pubblico durante il lancio dell'istanza nella Amazon EC2 User Guide for Linux Instances.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

Instances(Obbligatorio)

Speciifica l'elenco dei tipi di istanza per una risorsa di calcolo. Per specificare la strategia di allocazione per l'elenco dei tipi di istanze, vedere. AllocationStrategy

La configurazione del cluster deve definire InstanceTypeo Instances. Se entrambi sono definiti, AWS ParallelCluster fallisce.

Per ulteriori informazioni, consulta Allocazione di più tipi di istanza con Slurm.

Instances: - InstanceType: string

Politica di aggiornamento: per questa impostazione dei valori dell'elenco, è possibile aggiungere un nuovo valore durante un aggiornamento oppure è necessario interrompere la flotta di elaborazione quando si rimuove un valore esistente.

InstanceType(Obbligatorio,String)

Il tipo di istanza da usare in questo Slurm risorsa di calcolo. Tutti i tipi di istanze di un cluster devono utilizzare la stessa architettura di processore, x86_64 oppurearm64.

I tipi di istanza elencati in Instancesdevono avere:

  • Lo stesso numero di core ovCPUs, se DisableSimultaneousMultithreadingimpostato sutrue, lo stesso numero di core.

  • Lo stesso numero di acceleratori degli stessi produttori.

  • EFAsupportato, se Efa/Enabledimpostato su. true

I tipi di istanza elencati in Instancespossono avere:

Se definisci un p4d oppure hpc6id tipo di istanza o un altro tipo di istanza con più interfacce di rete o una scheda di interfaccia di rete, è necessario avviare le istanze di calcolo in una sottorete privata come descritto in. AWS ParallelCluster utilizzando due sottoreti AWS public IPs può essere assegnato solo alle istanze avviate con una singola interfaccia di rete. Per ulteriori informazioni, consulta Assegnare un IPv4 indirizzo pubblico durante il lancio dell'istanza nella Amazon EC2 User Guide for Linux Instances.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

Nota

Instancesè supportato a partire dalla AWS ParallelCluster versione 3.3.0.

MinCount(Facoltativo,Integer)

Il numero minimo di istanze che Slurm utilizzi delle risorse di calcolo. Il valore predefinito è 0.

Nota

La dimensione del cluster può cambiare durante un aggiornamento. Per ulteriori informazioni, vedere Dimensione e aggiornamento della capacità del cluster

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

MaxCount(Facoltativo,Integer)

Il numero massimo di istanze che Slurm utilizzi delle risorse di calcolo. Il valore predefinito è 10.

Quando viene utilizzatoCapacityType = CAPACITY_BLOCK, MaxCount deve essere uguale MinCount e maggiore di 0, poiché tutte le istanze che fanno parte della prenotazione Capacity Block vengono gestite come nodi statici.

Al momento della creazione del cluster, il nodo principale attende che tutti i nodi statici siano pronti prima di segnalare l'avvenuta creazione del cluster. Tuttavia, durante l'utilizzoCapacityType = CAPACITY_BLOCK, i nodi che fanno parte delle risorse di calcolo associate ai Capacity Blocks non verranno presi in considerazione per questo controllo. Il cluster verrà creato anche se non tutti i blocchi di capacità configurati sono attivi.

Nota

Le dimensioni del cluster possono cambiare durante un aggiornamento. Per ulteriori informazioni, vedere Dimensione e aggiornamento della capacità del cluster

DynamicNodePriority(Facoltativo,Integer)

La priorità dei nodi dinamici in una risorsa di calcolo in coda. La priorità corrisponde a Slurm parametro Weightdi configurazione del nodo per i nodi dinamici delle risorse di calcolo. Il valore predefinito è 1000.

Slurm dà priorità ai nodi con i valori più bassi Weight per primi.

avvertimento

L'uso di molti Weight valori diversi in un Slurm la partizione (coda) potrebbe rallentare la velocità di pianificazione dei lavori in coda.

Nelle AWS ParallelCluster versioni precedenti alla versione 3.7.0, ai nodi statici e dinamici veniva assegnato lo stesso peso predefinito di. 1 In questo caso, Slurm potrebbe dare priorità ai nodi dinamici inattivi rispetto ai nodi statici inattivi a causa dello schema di denominazione per i nodi statici e dinamici. Quando tutto il resto è uguale, Slurm pianifica i nodi in ordine alfabetico per nome.

Nota

DynamicNodePriorityviene aggiunto nella AWS ParallelCluster versione 3.7.0.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

StaticNodePriority(Facoltativo,) Integer

La priorità dei nodi statici in una risorsa di calcolo in coda. La priorità corrisponde a Slurm parametro Weightdi configurazione del nodo per i nodi statici delle risorse di calcolo. Il valore predefinito è 1.

Slurm dà priorità ai nodi con i valori più bassi Weight per primi.

avvertimento

L'uso di molti Weight valori diversi in un Slurm la partizione (coda) potrebbe rallentare la velocità di pianificazione dei lavori in coda.

Nota

StaticNodePriorityè stato aggiunto nella versione 3.7.0. AWS ParallelCluster

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

SpotPrice(Facoltativo,) Float

Il prezzo massimo pagato per un'istanza Amazon EC2 Spot prima del lancio di qualsiasi istanza. Il valore predefinito è il prezzo On-Demand.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

DisableSimultaneousMultithreading(Facoltativo,Boolean)

Setrue, multithreading sui nodi di Slurm la coda è disabilitata. Il valore predefinito è false.

Non tutti i tipi di istanza possono disabilitare il multithreading. Per un elenco dei tipi di istanza che supportano la disabilitazione del multithreading, consulta CPUCPUcore e thread per ogni tipo di istanza nella Amazon User Guide. EC2

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

SchedulableMemory(IntegerFacoltativo,)

La quantità di memoria in MiB configurata in Slurm parametro RealMemory per i nodi di calcolo di una risorsa di calcolo. Questo valore è il limite superiore per la memoria del nodo disponibile per i job quando SlurmSettings/EnableMemoryBasedSchedulingè abilitato. Il valore predefinito è il 95 percento della memoria elencata in Amazon EC2 Instance Types e restituita da Amazon EC2 API DescribeInstanceTypes. Assicurati di convertire i valori forniti in GiB in MiB.

Valori supportati: 1-EC2Memory

EC2Memoryè la memoria (in MiB) elencata in Amazon EC2 Instance Types e restituita da Amazon. EC2 API DescribeInstanceTypes Assicurati di convertire i valori forniti in GiB in MiB.

Questa opzione è particolarmente rilevante quando SlurmSettings/EnableMemoryBasedSchedulingè abilitato. Per ulteriori informazioni, consulta Slurmpianificazione basata sulla memoria.

Nota

SchedulableMemoryè supportata a partire dalla AWS ParallelCluster versione 3.2.0.

A partire dalla versione 3.2.0, per impostazione predefinita, AWS ParallelCluster configura per RealMemory Slurm nodi di calcolo fino al 95 percento della memoria restituita da Amazon EC2 APIDescribeInstanceTypes. Questa configurazione è indipendente dal valore diEnableMemoryBasedScheduling.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

HealthChecks(Facoltativo)

Specificate i controlli di integrità su una risorsa di calcolo.

Gpu(Facoltativo)

Specificate i controlli di GPU integrità su una risorsa di calcolo.

Enabled(Facoltativo,Boolean)

Se AWS ParallelCluster esegue controlli di GPU integrità sul calcolo di una risorsa in coda. Il valore predefinito è false.

Nota

AWS ParallelCluster non supportaHealthChecks/Gpunei nodi che utilizzano alinux2 ARM sistemi operativi. Queste piattaforme non supportano NVIDIAData Center GPU Manager (DCGM).

Gpucomportamento di controllo dello stato di salute
  • SeGpu/Enabledè impostato sutrue, AWS ParallelCluster esegue controlli di GPU integrità su una risorsa di calcolo.

  • Il controllo Gpu dello stato esegue controlli sullo stato di una risorsa di calcolo per impedire l'invio di lavori su nodi con una risorsa danneggiata. GPU

  • Se un nodo di elaborazione non supera un controllo di Gpu integrità, lo stato del nodo di calcolo cambia in. DRAIN I nuovi lavori non iniziano su questo nodo. I lavori esistenti vengono eseguiti fino al completamento. Una volta completati tutti i processi in esecuzione, il nodo di calcolo termina se si tratta di un nodo dinamico e viene sostituito se si tratta di un nodo statico.

  • La durata del controllo dello Gpu stato dipende dal tipo di istanza selezionato, dal numero di obiettivi del controllo dello GPUs stato dell'istanza e dal numero di obiettivi Gpu del controllo dello stato (equivalente al numero di GPU obiettivi di lavoro). Per un'istanza con 8GPUs, la durata tipica è inferiore a 3 minuti.

  • Se il controllo Gpu dello stato viene eseguito su un'istanza non supportata, viene chiusa e il processo viene eseguito sul nodo di elaborazione. Ad esempio, se un'istanza non ha unGPU, oppure se un'istanza ne haGPU, ma non lo è, il controllo dello stato viene chiuso e il processo viene eseguito sul nodo di calcolo. NVIDIA GPU Sono supportati solo NVIDIAGPUs.

  • Il controllo dello Gpu stato utilizza lo dcgmi strumento per eseguire controlli di integrità su un nodo e segue i seguenti passaggi:

    Quando inizia il controllo dello stato di Gpu salute in un nodo:

    1. Rileva se i nvidia-fabricmanager servizi nvidia-dcgm and sono in esecuzione.

    2. Se questi servizi non sono in esecuzione, il controllo Gpu sanitario li avvia.

    3. Rileva se la modalità di persistenza è abilitata.

    4. Se la modalità di persistenza non è abilitata, il controllo dello Gpu stato la abilita.

    Al termine del controllo sanitario, il controllo Gpu sanitario riporta questi servizi e risorse allo stato iniziale.

  • Se il job è assegnato a un set specifico di nodiGPUs, il controllo dello Gpu stato viene eseguito solo su quel set specifico. In caso contrario, il Gpu controllo dello stato viene eseguito su tutti i GPUs componenti del nodo.

  • Se un nodo di elaborazione riceve 2 o più richieste di controllo dello stato di Gpu salute contemporaneamente, viene eseguito solo il primo controllo e gli altri vengono ignorati. Questo vale anche per i controlli sanitari rivolti al nodo. GPUs È possibile controllare i file di registro per ulteriori informazioni su questa situazione.

  • Il registro dei controlli di integrità per un nodo di calcolo specifico è disponibile nel /var/log/parallelcluster/slurm_health_check.log file. Questo file è disponibile in Amazon CloudWatch, nel gruppo di CloudWatch log del cluster, dove puoi trovare:

    • Dettagli sull'azione eseguita dal controllo dello stato di Gpu salute, tra cui l'attivazione e la disabilitazione dei servizi e la modalità di persistenza.

    • L'GPUidentificatore, l'ID seriale e il. UUID

    • L'output del controllo dello stato di salute.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

Nota

HealthChecksè supportato a partire dalla AWS ParallelCluster versione 3.6.0.

Efa(Facoltativo)

Specifica le impostazioni di Elastic Fabric Adapter (EFA) per i nodi in Slurm coda.

Efa: Enabled: boolean GdrSupport: boolean

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Enabled(Facoltativo,Boolean)

Speciifica che Elastic Fabric Adapter (EFA) è abilitato. Per visualizzare l'elenco delle EC2 istanze Amazon che supportanoEFA, consulta Tipi di istanze supportati nella Amazon EC2 User Guide for Linux Instances. Per ulteriori informazioni, consulta Elastic Fabric Adapter. Ti consigliamo di utilizzare un cluster SlurmQueues/Networking/PlacementGroupper ridurre al minimo le latenze tra le istanze.

Il valore predefinito è false.

Nota

Elastic Fabric Adapter (EFA) non è supportato in diverse zone di disponibilità. Per ulteriori informazioni, consulta SubnetIds.

avvertimento

Se stai definendo un gruppo di sicurezza personalizzato in SecurityGroups, assicurati che le istanze EFA abilitate siano membri di un gruppo di sicurezza che autorizza tutto il traffico in entrata e in uscita a sé stante.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

GdrSupport(Facoltativo,) Boolean

(Facoltativo) A partire dalla AWS ParallelCluster versione 3.0.2, questa impostazione non ha alcun effetto. Il supporto di Elastic Fabric Adapter GPUDirect RDMA (EFA) per (accesso diretto remoto alla memoria) è sempre abilitato se è supportato dal tipo di istanza per Slurm risorsa di calcolo e sistema operativo.

Nota

AWS ParallelCluster versione da 3.0.0 a 3.0.1: il supporto per è abilitato per GPUDirect RDMA Slurm risorse di calcolo. Support for GPUDirect RDMA è supportato da tipi di istanze specifici (p4d.24xlarge) su sistemi operativi specifici (Osisalinux2,ubuntu1804, orubuntu2004). Il valore predefinito è false.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

CapacityReservationTarget
CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string

Speciifica la prenotazione di capacità su richiesta da utilizzare per la risorsa di calcolo.

CapacityReservationId(Facoltativo,) String

L'ID della riserva di capacità esistente a cui destinare le risorse di calcolo della coda. L'id può riferirsi a un ODCRo a un Capacity Block for ML.

Quando questo parametro è specificato a livello di risorsa di calcolo, InstanceType è facoltativo e verrà recuperato automaticamente dalla prenotazione.

CapacityReservationResourceGroupArn(Facoltativo,) String

Indica l'Amazon Resource Name (ARN) del gruppo di risorse che funge da gruppo di prenotazioni di capacità collegato al servizio per la risorsa di calcolo. AWS ParallelCluster identifica e utilizza la prenotazione di capacità più appropriata del gruppo. Il gruppo di risorse deve averne almeno una ODCR per ogni tipo di istanza elencato per la risorsa di calcolo. Per ulteriori informazioni, consulta Avvia istanze con prenotazioni di capacità su richiesta () ODCR.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Nota

CapacityReservationTargetviene aggiunto con la AWS ParallelCluster versione 3.3.0.

Networking
Networking: PlacementGroup: Enabled: boolean Name: string

Politica di aggiornamento: tutti i nodi di calcolo devono essere interrotti per l'eliminazione di un gruppo di posizionamento gestito. La flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

PlacementGroup(Facoltativo)

Specifica le impostazioni del gruppo di posizionamento per la risorsa di calcolo.

Enabled(Facoltativo,) Boolean

Indica se viene utilizzato un gruppo di collocamento per la risorsa di calcolo.

  • Se impostato sutrue, senza una Name definizione, a quella risorsa di calcolo viene assegnato un proprio gruppo di posizionamento gestito, indipendentemente dall'impostazione SlurmQueues/Networking/PlacementGroup.

  • Se è impostata sutrue, con una Name definizione, a quella risorsa di calcolo viene assegnato il gruppo di posizionamento denominato, indipendentemente dalle impostazioniSlurmQueues/Networking/PlacementGroup.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Name(Facoltativo,String)

Il nome del gruppo di posizionamento per un gruppo di posizionamento del cluster esistente utilizzato per la risorsa di calcolo.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Nota
  • Se entrambiPlacementGroup/Enablede Name non sono impostati, i rispettivi valori predefiniti sono PlacementGrouple impostazioni SlurmQueues/Networking/.

  • ComputeResources/Networking/PlacementGroupviene aggiunto con la AWS ParallelCluster versione 3.3.0.

CustomSlurmSettings(Facoltativo,Dict)

(Facoltativo) Definisce la personalizzazione Slurm impostazioni di configurazione del nodo (risorsa di calcolo).

Specifica un dizionario personalizzato Slurm coppie chiave-valore dei parametri di configurazione applicabili a Slurm nodi (risorse di calcolo).

Ogni coppia chiave-valore separata, ad esempioParam1: Value1, viene aggiunta separatamente alla fine del Slurm riga di configurazione del nodo nel formato. Param1=Value1

È possibile solo specificare Slurm parametri di configurazione che non sono elencati in. CustomSlurmSettings Per informazioni sulla lista negata Slurm parametri di configurazione, vedere. Non inserito nell'elencoSlurmparametri di configurazione perCustomSlurmSettings

AWS ParallelCluster controlla solo se un parametro è in una lista di rifiuto. AWS ParallelCluster non convalida la tua personalizzazione Slurm sintassi o semantica dei parametri di configurazione. Sei responsabile della convalida della tua personalizzazione Slurm parametri di configurazione. Personalizzazione non valida Slurm i parametri di configurazione possono causare Slurm errori dei daemon che possono causare errori di creazione e aggiornamento del cluster.

Per ulteriori informazioni su come specificare valori personalizzati Slurm parametri di configurazione con AWS ParallelCluster, vedereSlurmpersonalizzazione della configurazione.

Per ulteriori informazioni sull' Slurm parametri di configurazione, vedere slurm.conf nel Slurm documentazione.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

Nota

CustomSlurmSettingsè supportato a partire dalla versione 3.6.0. AWS ParallelCluster

Tags(Facoltativo, [String])

Un elenco di coppie chiave-valore di tag. ComputeResourcei tag sostituiscono i tag duplicati specificati in o/. Sezione Tags SlurmQueuesTags

Key(Facoltativo,) String

La chiave di tag:

Value(Facoltativo,String)

Il valore del tag.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

ComputeSettings

(Obbligatorio) Definisce la ComputeSettings configurazione per Slurm coda.

Proprietà ComputeSettings

Specifica le proprietà ComputeSettings dei nodi nel Slurm coda.

ComputeSettings: LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer EphemeralVolume: MountDir: string

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

LocalStorage(Facoltativo)

Specifica le proprietà LocalStorage dei nodi nel Slurm coda.

LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer EphemeralVolume: MountDir: string

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

RootVolume(Facoltativo)

Specifica i dettagli del volume radice dei nodi nel Slurm coda.

RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Size(Facoltativo,Integer)

Specifica la dimensione del volume root in gibibyte (GiB) per i nodi in Slurm coda. La dimensione predefinita proviene da. AMI L'utilizzo di una dimensione diversa richiede che i AMI supportigrowroot.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Encrypted(Facoltativo,Boolean)

Setrue, il volume principale dei nodi nel Slurm le code sono crittografate. Il valore predefinito è false.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

VolumeType(Facoltativo,String)

Speciifica il tipo di EBS volume Amazon dei nodi nel Slurm coda. I valori supportati sonogp2,gp3,io1,io2, sc1st1, estandard. Il valore predefinito è gp3.

Per ulteriori informazioni, consulta i tipi di EBS volume Amazon nella Amazon EC2 User Guide.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Iops(Facoltativo,Boolean)

Definisce il numero di volumi IOPS for io1 e gp3 type. io2

Il valore predefinito, i valori supportati e il volume_size rapporto volume_iops di rapporto variano in base a VolumeType eSize.

VolumeType = io1

Valore predefinito Iops = 100

Valori supportati Iops = 100—64000 †

volume_sizeRapporto volume_iops massimo = 50 IOPS per GiB. 5000 IOPS richiede volume_size almeno 100 GiB.

VolumeType = io2

Valore predefinito Iops = 100

Valori supportati Iops = 100—64000 (256000 per i volumi io2 Block Express) †

SizeRapporto Iops massimo = 500 IOPS per GiB. 5000 IOPS richiede Size almeno 10 GiB.

VolumeType = gp3

Valore predefinito Iops = 3000

Valori supportati Iops = 3000—16000 †

SizeRapporto massimo Iops = 500 IOPS per GiB per volumi IOPS superiori a 3000.

† IOPS Il valore massimo è garantito solo sulle istanze create sul sistema Nitro e dotate anche di oltre 32.000 istanze. IOPS Altre istanze possono avere fino a 32.000. IOPS io1I volumi precedenti potrebbero non raggiungere le massime prestazioni a meno che non si modifichi il volume. io2 I volumi Block Express supportano volume_iops valori fino a 256000 sui tipi di R5b istanza. Per ulteriori informazioni, consulta i volumi io2 Block Express nella Amazon EC2 User Guide.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Throughput(Facoltativo,Integer)

Definisce la velocità effettiva per i tipi di gp3 volume, in MiB/s. Questa impostazione è valida solo quando è. VolumeType gp3 Il valore predefinito è 125. Valori supportati: 125-1000 MiB/s

Il rapporto tra a non Iops può essere superiore Throughput a 0,25. Il throughput massimo di 1000 MiB/s richiede che l'Iopsimpostazione sia almeno 4000.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

EphemeralVolume(Facoltativo,) Boolean

Speciifica le impostazioni per il volume effimero. Il volume temporaneo viene creato combinando tutti i volumi dell'Instance Store in un unico volume logico formattato con il file system. ext4 Il valore predefinito è /scratch. Se il tipo di istanza non dispone di volumi di Instance Store, non viene creato alcun volume temporaneo. Per ulteriori informazioni, consulta Instance Store Volumes nella Amazon EC2 User Guide.

EphemeralVolume: MountDir: string

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

CustomActions

(Facoltativo) Specifica gli script personalizzati da eseguire sui nodi di Slurm coda.

CustomActions: OnNodeStart: Sequence: - Script: string Args: - string Script: string Args: - string OnNodeConfigured: Sequence: - Script: string Args: - string Script: string Args: - string

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

CustomActionsProprietà
OnNodeStart(Facoltativo,String)

Specifica una sequenza di script o un singolo script da eseguire sui nodi di Slurm posiziona la coda prima che venga avviata qualsiasi azione di bootstrap di distribuzione del nodo. AWS ParallelCluster non supporta l'inclusione sia di un singolo script che della stessa azione personalizzata. Sequence Per ulteriori informazioni, consulta Azioni bootstrap personalizzate.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

OnNodeConfigured(Facoltativo,String)

Specifica una sequenza di script o un singolo script da eseguire sui nodi di Slurm coda dopo che tutte le azioni di bootstrap del nodo sono state completate. AWS ParallelCluster non supporta l'inclusione sia di un singolo script che della stessa azione personalizzata. Sequence Per ulteriori informazioni, consulta Azioni bootstrap personalizzate.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategydeve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Nota

Sequenceviene aggiunto a partire dalla AWS ParallelCluster versione 3.6.0. Quando si specificaSequence, è possibile elencare più script per un'azione personalizzata. AWS ParallelCluster continua a supportare la configurazione di un'azione personalizzata con un singolo script, senza includere. Sequence

AWS ParallelCluster non supporta l'inclusione sia di un singolo script che della stessa azione personalizzata. Sequence

Iam

(Facoltativo) Definisce IAM le impostazioni opzionali per Slurm coda.

Iam: S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string InstanceProfile: string InstanceRole: string

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

IamProprietà
InstanceProfile(Facoltativo,String)

Specificate un profilo di istanza per sostituire il ruolo o il profilo di istanza predefinito per Slurm coda. Non è possibile specificare entrambi InstanceProfile e. InstanceRole Il formato è arn:${Partition}:iam::${Account}:instance-profile/${InstanceProfileName}.

Se è specificato, le AdditionalIamPolicies impostazioni S3Access and non possono essere specificate.

Si consiglia di specificare una o entrambe AdditionalIamPolicies le impostazioni S3Access e poiché le funzionalità aggiunte richiedono AWS ParallelCluster spesso nuove autorizzazioni.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

InstanceRole(Facoltativo,String)

Speciifica un ruolo di istanza per sovrascrivere il ruolo o il profilo di istanza predefinito per Slurm coda. Non è possibile specificare entrambi InstanceProfile e. InstanceRole Il formato è arn:${Partition}:iam::${Account}:role/${RoleName}.

Se è specificato, le AdditionalIamPolicies impostazioni S3Access and non possono essere specificate.

Si consiglia di specificare una o entrambe AdditionalIamPolicies le impostazioni S3Access e poiché le funzionalità aggiunte richiedono AWS ParallelCluster spesso nuove autorizzazioni.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

S3Access(Facoltativo)

Specifica un bucket per Slurm coda. Viene utilizzato per generare politiche per garantire l'accesso specificato al bucket nel Slurm coda.

Se viene specificato, le InstanceRole impostazioni InstanceProfile and non possono essere specificate.

Si consiglia di specificare una o entrambe AdditionalIamPolicies le impostazioni S3Access e poiché le funzionalità aggiunte richiedono AWS ParallelCluster spesso nuove autorizzazioni.

S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

BucketName(Obbligatorio,String)

Nome del bucket .

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

KeyName(Facoltativo,String)

La chiave per il secchio. Il valore predefinito è *.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

EnableWriteAccess(Facoltativo,Boolean)

Indica se l'accesso in scrittura è abilitato per il bucket.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

AdditionalIamPolicies(Facoltativo)

Specifica un elenco di IAM politiche Amazon Resource Names (ARNs) per AmazonEC2. Questo elenco è allegato al ruolo root utilizzato per Slurm coda oltre ai permessi richiesti da. AWS ParallelCluster

Il nome IAM di una politica e il suo ARN sono diversi. I nomi non possono essere usati.

Se è specificato, le InstanceRole impostazioni InstanceProfile and non possono essere specificate.

Si consiglia di utilizzarle AdditionalIamPolicies perché AdditionalIamPolicies vengono aggiunte alle autorizzazioni richieste e InstanceRole devono includere tutte le autorizzazioni richieste. AWS ParallelCluster Le autorizzazioni richieste spesso cambiano da rilascio a rilascio man mano che vengono aggiunte caratteristiche.

Non esiste un valore predefinito.

AdditionalIamPolicies: - Policy: string

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

SlurmSettings

(Facoltativo) Definisce le impostazioni per Slurm che si applicano all'intero cluster.

SlurmSettings: ScaledownIdletime: integer QueueUpdateStrategy: string EnableMemoryBasedScheduling: boolean CustomSlurmSettings: [dict] CustomSlurmSettingsIncludeFile: string Database: Uri: string UserName: string PasswordSecretArn: string ExternalSlurmdbd: Host: string Port: integer Dns: DisableManagedDns: boolean HostedZoneId: string UseEc2Hostnames: boolean

SlurmSettingsProprietà

ScaledownIdletime(Facoltativo,Integer)

Definisce la quantità di tempo (in minuti) in cui non è disponibile alcun lavoro e il Slurm il nodo termina.

Il valore predefinito è 10.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

MungeKeySecretArn(Facoltativo,String)

L'Amazon Resource Name (ARN) del segreto in testo semplice di AWS Secrets Manager che contiene la chiave munge con codifica base64 da utilizzare nel Slurm ammasso. Questa chiave munge verrà utilizzata per RPC autenticare le chiamate tra Slurm comandi client e Slurm demoni che agiscono come server remoti. Se non MungeKeySecretArn viene fornito, AWS ParallelCluster genererà una chiave di munge casuale per il cluster.

Nota

MungeKeySecretArnè supportato a partire dalla AWS ParallelCluster versione 3.8.0.

avvertimento

Se MungeKeySecretArn è stato appena aggiunto a un cluster esistente, non ParallelCluster ripristinerà la chiave munge precedente in caso di rollback o quando successivamente si rimuove il. MungeKeySecretArn Verrà invece generata una nuova chiave di munge casuale.

Se l' AWS ParallelCluster utente ha il permesso di accedere DescribeSecreta quella specifica risorsa segreta, MungeKeySecretArn viene convalidata. MungeKeySecretArn è valido se:

  • Il segreto specificato esiste e

  • Il segreto è in chiaro e contiene una stringa valida con codifica in base64 e

  • La chiave di munge binaria decodificata ha una dimensione compresa tra 256 e 8192 bit.

Se la IAM policy utente di pcluster non include DescribeSecret, non viene convalidata e MungeKeySecretArn viene visualizzato un messaggio di avviso. Per ulteriori informazioni, consulta Politica AWS ParallelCluster pcluster utente di base.

Quando esegui l'aggiornamento MungeKeySecretArn, la flotta di elaborazione e tutti i nodi di accesso devono essere interrotti.

Se il valore segreto nel segreto ARN viene modificato mentre ARN rimane lo stesso, il cluster non verrà aggiornato automaticamente con la nuova chiave munge. Per utilizzare la nuova chiave munge ARN del segreto, devi interrompere la flotta di calcolo e accedere ai nodi, quindi eseguire il seguente comando dal nodo principale.

sudo /opt/parallelcluster/scripts/slurm/update_munge_key.sh

Dopo aver eseguito il comando, puoi riattivare sia il parco di calcolo che i nodi di accesso: i nodi di calcolo e di accesso appena assegnati inizieranno automaticamente a utilizzare la nuova chiave munge.

Per generare una chiave di munge personalizzata con codifica base64, è possibile utilizzare l'utilità mungekey distribuita con il software di munge e quindi codificarla utilizzando l'utilità base64 generalmente disponibile nel sistema operativo. In alternativa, potete usare bash (impostate il parametro bs tra 32 e 1024)

dd if=/dev/random bs=128 count=1 2>/dev/null | base64 -w 0

o Python come segue:

import random import os import base64 # key length in bytes key_length=128 base64.b64encode(os.urandom(key_length)).decode("utf-8")

Politica di aggiornamento: NEW UPDATE POLICY WITH COMPUTE FLEET AND LOGIN NODES STOPPED (erroneamente non aggiunta nella 3.7.0).

QueueUpdateStrategyString(Facoltativo,)

Specifica la strategia di sostituzione per i parametri di SlurmQueues sezione che hanno la seguente politica di aggiornamento:

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta o QueueUpdateStrategy deve essere impostata affinché questa impostazione venga modificata per un aggiornamento.

Il QueueUpdateStrategy valore viene utilizzato solo all'avvio di un processo di aggiornamento del cluster.

Valori validi: COMPUTE_FLEET_STOP | DRAIN | TERMINATE

Valore predefinito: COMPUTE_FLEET_STOP

DRAIN

I nodi nelle code con valori dei parametri modificati sono impostati su. DRAINING I nodi in questo stato non accettano nuovi lavori e i lavori in esecuzione continuano fino al completamento.

Dopo che un nodo diventa idle (DRAINED), un nodo viene sostituito se il nodo è statico e il nodo viene terminato se il nodo è dinamico. Gli altri nodi in altre code senza valori dei parametri modificati non vengono influenzati.

Il tempo necessario a questa strategia per sostituire tutti i nodi della coda con valori dei parametri modificati dipende dal carico di lavoro in esecuzione.

COMPUTE_FLEET_STOP

Il valore predefinito del parametro. QueueUpdateStrategy Con questa impostazione, l'aggiornamento dei parametri nella SlurmQueues sezione richiede l'interruzione del parco di elaborazione prima di eseguire un aggiornamento del cluster:

$ pcluster update-compute-fleet --status STOP_REQUESTED
TERMINATE

Nelle code con valori dei parametri modificati, i processi in esecuzione vengono interrotti e i nodi vengono spenti immediatamente.

I nodi statici vengono sostituiti e i nodi dinamici vengono terminati.

Gli altri nodi in altre code senza valori dei parametri modificati non vengono influenzati.

Politica di aggiornamento: questa impostazione non viene analizzata durante un aggiornamento.

Nota

QueueUpdateStrategyè supportato a partire dalla AWS ParallelCluster versione 3.2.0.

EnableMemoryBasedScheduling(Facoltativo,Boolean)

Setrue, la pianificazione basata sulla memoria è abilitata in Slurm. Per ulteriori informazioni, vedere SlurmQueues/ComputeResources/SchedulableMemory.

Il valore predefinito è false.

avvertimento

L'abilitazione della pianificazione basata sulla memoria influisce sul modo in cui Slurm lo scheduler gestisce i lavori e l'allocazione dei nodi.

Per ulteriori informazioni, consulta Slurmpianificazione basata sulla memoria.

Nota

EnableMemoryBasedSchedulingè supportato a partire dalla AWS ParallelCluster versione 3.2.0.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

CustomSlurmSettings(Facoltativo,[Dict])

Definisce la personalizzazione Slurm impostazioni che si applicano all'intero cluster.

Specifica un elenco di Slurm dizionari di configurazione di coppie chiave-valore da aggiungere alla fine del file generato. slurm.conf AWS ParallelCluster

Ogni dizionario dell'elenco viene visualizzato come una riga separata aggiunta al Slurm file di configurazione. È possibile specificare parametri semplici o complessi.

I parametri semplici sono costituiti da una singola coppia di key pair, come illustrato negli esempi seguenti:

- Param1: 100 - Param2: "SubParam1,SubParam2=SubValue2"

Esempio reso in Slurm configurazione:

Param1=100 Param2=SubParam1,SubParam2=SubValue2

Complesso Slurm i parametri di configurazione sono costituiti da più coppie chiave-valore separate da spazi, come illustrato negli esempi seguenti:

- NodeName: test-nodes[1-10] CPUs: 4 RealMemory: 4196 ... # other node settings - NodeSet: test-nodeset Nodes: test-nodes[1-10] ... # other nodeset settings - PartitionName: test-partition Nodes: test-nodeset ... # other partition settings

Esempio, renderizzato in Slurm configurazione:

NodeName=test-nodes[1-10] CPUs=4 RealMemory=4196 ... # other node settings NodeSet=test-nodeset Nodes=test-nodes[1-10] ... # other nodeset settings PartitionName=test-partition Nodes=test-nodeset ... # other partition settings
Nota

Personalizza Slurm i nodi non devono contenere i -dy- modelli -st- o nei loro nomi. Questi modelli sono riservati ai nodi gestiti da AWS ParallelCluster.

Se si specifica personalizzato Slurm parametri di configurazione inCustomSlurmSettings, non è necessario specificare personalizzati Slurm parametri di configurazione perCustomSlurmSettingsIncludeFile.

È possibile solo specificare Slurm parametri di configurazione che non sono elencati in. CustomSlurmSettings Per informazioni sulla lista negata Slurm parametri di configurazione, vedere. Non inserito nell'elencoSlurmparametri di configurazione perCustomSlurmSettings

AWS ParallelCluster controlla solo se un parametro è in una lista di rifiuto. AWS ParallelCluster non convalida la tua personalizzazione Slurm sintassi o semantica dei parametri di configurazione. Sei responsabile della convalida della tua personalizzazione Slurm parametri di configurazione. Personalizzazione non valida Slurm i parametri di configurazione possono causare Slurm errori dei daemon che possono causare errori di creazione e aggiornamento del cluster.

Per ulteriori informazioni su come specificare valori personalizzati Slurm parametri di configurazione con AWS ParallelCluster, vedereSlurmpersonalizzazione della configurazione.

Per ulteriori informazioni sull' Slurm parametri di configurazione, vedere slurm.conf nel Slurm documentazione.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

Nota

CustomSlurmSettingsè supportato a partire dalla versione 3.6.0. AWS ParallelCluster

CustomSlurmSettingsIncludeFile(Facoltativo,) String

Definisce la personalizzazione Slurm impostazioni che si applicano all'intero cluster.

Specifica la personalizzazione Slurm file composto da personalizzato Slurm parametri di configurazione da aggiungere alla fine del slurm.conf file AWS ParallelCluster generato.

È necessario includere il percorso del file. Il percorso può iniziare con https:// os3://.

Se si specifica personalizzato Slurm parametri di configurazione perCustomSlurmSettingsIncludeFile, non è necessario specificare personalizzati Slurm parametri di configurazione perCustomSlurmSettings.

Nota

Personalizza Slurm i nodi non devono contenere i -dy- modelli -st- o nei loro nomi. Questi modelli sono riservati ai nodi gestiti da AWS ParallelCluster.

È possibile solo specificare Slurm parametri di configurazione che non sono elencati in. CustomSlurmSettingsIncludeFile Per informazioni sulla lista negata Slurm parametri di configurazione, vedere. Non inserito nell'elencoSlurmparametri di configurazione perCustomSlurmSettings

AWS ParallelCluster controlla solo se un parametro è in una lista di rifiuto. AWS ParallelCluster non convalida la tua personalizzazione Slurm sintassi o semantica dei parametri di configurazione. Sei responsabile della convalida della tua personalizzazione Slurm parametri di configurazione. Personalizzazione non valida Slurm i parametri di configurazione possono causare Slurm errori dei daemon che possono causare errori di creazione e aggiornamento del cluster.

Per ulteriori informazioni su come specificare valori personalizzati Slurm parametri di configurazione con AWS ParallelCluster, vedereSlurmpersonalizzazione della configurazione.

Per ulteriori informazioni sull' Slurm parametri di configurazione, vedere slurm.conf nel Slurm documentazione.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

Nota

CustomSlurmSettingsè supportato a partire dalla versione 3.6.0. AWS ParallelCluster

Database

(Facoltativo) Definisce le impostazioni da abilitare Slurm Contabilità sul cluster. Per ulteriori informazioni, consulta Slurm contabilità con AWS ParallelCluster.

Database: Uri: string UserName: string PasswordSecretArn: string

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

Proprietà Database

Uri(Obbligatorio,String)

L'indirizzo del server di database utilizzato come backend per Slurm contabilità. Questo URI deve essere formattato come host:port e non deve contenere uno schema, ad esempiomysql://. L'host può essere un indirizzo IP o un DNS nome risolvibile dal nodo principale. Se non viene fornita una porta, utilizza la AWS ParallelCluster MySQL porta predefinita 3306.

AWS ParallelCluster avvia il Slurm il database di contabilità viene inserito nel cluster e deve accedere al database.

Il database deve essere raggiungibile prima che si verifichi quanto segue:

  • Viene creato un cluster.

  • Slurm la contabilità è abilitata con un aggiornamento del cluster.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

UserName(Obbligatorio,String)

L'identità che Slurm utilizza per connettersi al database, scrivere registri contabili ed eseguire interrogazioni. L'utente deve disporre delle autorizzazioni di lettura e scrittura sul database.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

PasswordSecretArn(Obbligatorio,String)

L'Amazon Resource Name (ARN) del AWS Secrets Manager segreto che contiene la password UserName in chiaro. Questa password viene utilizzata insieme a e UserName Slurm accounting per l'autenticazione sul server del database.

Nota

Quando crei un segreto utilizzando la AWS Secrets Manager console, assicurati di selezionare «Altro tipo di segreto», seleziona il testo in chiaro e includi solo il testo della password nel segreto.

Per ulteriori informazioni su come AWS Secrets Manager creare un segreto, consulta Create an Secret AWS Secrets Manager

Se l'utente ha il permesso di farlo DescribeSecret, PasswordSecretArn viene convalidato. PasswordSecretArnè valido se il segreto specificato esiste. Se la IAM politica utente non includeDescribeSecret, PasswordSecretArn non viene convalidata e viene visualizzato un messaggio di avviso. Per ulteriori informazioni, consulta Politica AWS ParallelCluster pcluster utente di base.

Quando esegui l'aggiornamentoPasswordSecretArn, la flotta di elaborazione deve essere interrotta. Se il valore segreto cambia e il segreto rimane ARN invariato, il cluster non viene aggiornato automaticamente con la nuova password del database. Per aggiornare il cluster per il nuovo valore segreto, è necessario eseguire il comando seguente dall'interno del nodo principale dopo l'arresto del parco di elaborazione.

$ sudo /opt/parallelcluster/scripts/slurm/update_slurm_database_password.sh
avvertimento

Si consiglia di modificare la password del database solo quando la flotta di elaborazione viene interrotta per evitare la perdita di dati contabili.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

DatabaseName(Facoltativo,String)

Nome del database sul server di database (definito dal parametro Uri) da utilizzare per Slurm Contabilità.

Il nome del database può contenere lettere minuscole, numeri e caratteri di sottolineatura. Il nome non può superare i 64 caratteri.

Questo parametro è mappato al StorageLoc parametro di slurmdbd.conf.

Se non DatabaseName viene fornito, ParallelCluster utilizzerà il nome del cluster per definire un valore per. StorageLoc

L'aggiornamento di DatabaseName è consentito, con le seguenti considerazioni:

  • Se un database con un nome DatabaseName non esiste ancora sul server del database, slurmdbd lo creerà. Sarà tua responsabilità riconfigurare il nuovo database secondo necessità (ad esempio aggiungendo le entità contabili: cluster, account, utenti, associazioni, QOSs ecc.).

  • Se sul server del database esiste DatabaseName già un database con un nome, slurmdbd lo utilizzerà per Slurm Funzionalità di contabilità.

Politica di aggiornamento: la flotta di elaborazione deve essere interrotta affinché questa impostazione possa essere modificata per un aggiornamento.

Nota

Databaseviene aggiunto a partire dalla versione 3.3.0.

ExternalSlurmdbd

(Facoltativo) Definisce le impostazioni da abilitare Slurm Contabilità con un server slurmdbd esterno. Per ulteriori informazioni, consulta Slurm contabilità con. AWS ParallelCluster

ExternalSlurmdbd: Host: string Port: integer

Proprietà ExternalSlurmdbd

Host(Obbligatorio,String)

L'indirizzo del server slurmdbd esterno per Slurm contabilità. L'host può essere un indirizzo IP o un DNS nome risolvibile dal nodo principale.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

Port(Facoltativo,) Integer

La porta che il servizio slurmdbd ascolta. Il valore predefinito è 6819.

Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.

Dns

(Facoltativo) Definisce le impostazioni per Slurm che si applicano all'intero cluster.

Dns: DisableManagedDns: boolean HostedZoneId: string UseEc2Hostnames: boolean

Proprietà Dns

DisableManagedDns(Facoltativo,Boolean)

Setrue, le DNS voci per il cluster non vengono create e Slurm i nomi dei nodi non sono risolvibili.

Per impostazione predefinita, AWS ParallelCluster crea una zona ospitata sulla Route 53 in cui i nodi vengono registrati al momento dell'avvio. Il valore predefinito è false. Se DisableManagedDns è impostato sutrue, la zona ospitata non viene creata da AWS ParallelCluster.

Per informazioni su come utilizzare questa impostazione per distribuire cluster in sottoreti senza accesso a Internet, consulta. AWS ParallelCluster in un'unica sottorete senza accesso a Internet

avvertimento

È necessario un sistema di risoluzione dei nomi per il corretto funzionamento del cluster. Se DisableManagedDns è impostato sutrue, è necessario fornire un sistema di risoluzione dei nomi. Per utilizzare l'EC2impostazione predefinita di AmazonDNS, imposta UseEc2Hostnames sutrue. In alternativa, configura il tuo DNS resolver e assicurati che i nomi dei nodi siano registrati all'avvio delle istanze. Ad esempio, puoi farlo configurando/. CustomActionsOnNodeStart

Politica di aggiornamento: se questa impostazione viene modificata, l'aggiornamento non è consentito.

HostedZoneId(Facoltativo,String)

Definisce un ID di zona ospitata Route 53 personalizzato da utilizzare per la risoluzione dei DNS nomi per il cluster. Se fornito, AWS ParallelCluster registra i nodi del cluster nella zona ospitata specificata e non crea una zona ospitata gestita.

Politica di aggiornamento: se questa impostazione viene modificata, l'aggiornamento non è consentito.

UseEc2Hostnames(Facoltativo,Boolean)

Setrue, i nodi di calcolo del cluster sono configurati con il nome EC2 host predefinito. Il Slurm NodeHostNameviene inoltre aggiornato con queste informazioni. Il valore predefinito è false.

Per informazioni su come utilizzare questa impostazione per distribuire cluster in sottoreti senza accesso a Internet, consulta. AWS ParallelCluster in un'unica sottorete senza accesso a Internet

Nota

Questa nota non è rilevante a partire dalla versione 3.3.0. AWS ParallelCluster

Per le versioni AWS ParallelCluster supportate precedenti alla 3.3.0:

Quando UseEc2Hostnames è impostato sutrue, il file di configurazione Slurm viene impostato con gli AWS ParallelCluster prolog script and: epilog

  • prologviene eseguito per aggiungere informazioni /etc/hosts sui nodi ai nodi di calcolo quando ogni lavoro viene allocato.

  • epilogviene eseguito per pulire i contenuti scritti da. prolog

Per aggiungere script prolog o epilog script personalizzati, aggiungili rispettivamente alle /opt/slurm/etc/pcluster/epilog.d/ cartelle /opt/slurm/etc/pcluster/prolog.d/ o.

Politica di aggiornamento: se questa impostazione viene modificata, l'aggiornamento non è consentito.