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 lo scheduler o. Slurm AWS Batch 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 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 scalabilità dei nodi Slurm dinamici. 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 ogni esecuzione del programma di ripresa Slurm. Inoltre, non è possibile scalare molto oltre il limite predefinito per esecuzione degli account di RunInstances risorse, che per impostazione predefinita è di 1000 istanze. Maggiori dettagli sono disponibili nella documentazione sulla limitazione delle API AWS EC2

  • 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-nothing approccio, 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 sforzo 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 eAWS Batch (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

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 Guida per l'utente di Amazon EC2 per le istanze Linux.

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 vCPU che un ambiente di AWS Batch elaborazione può utilizzare.

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

DesiredVcpus(Facoltativo,) Integer

Il numero desiderato di vCPU nell'ambiente di AWS Batch elaborazione. 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 vCPU per l'ambiente di AWS Batch elaborazione. Non puoi impostarlo su un valore inferiore a. DesiredVcpus

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 un'istanza Spot EC2 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 la 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 il parco di elaborazione quando si rimuove un valore esistente.

Proprietà SlurmQueues

Name(Obbligatorio,String)

Il nome della 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 ODCR o a un Capacity Block per 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, consultare Piattaforme supportate nella Guida per l'utente di Amazon EC2 per le istanze Linux.

Nota

Se la includete Instancesnella configurazione del cluster, dovete escludere questa CapacityReservationId impostazione del livello di coda dalla configurazione.

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 avere almeno un ODCR per ogni tipo di istanza riservato in una zona di disponibilità in tutte le risorse di calcolo e le zone di disponibilità della coda. Per ulteriori informazioni, consulta Avviare le istanze con ODCR (Prenotazioni di capacità on demand).

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 calcolo utilizzate dalla Slurm coda. I valori supportati sono ONDEMAND o SPOT. Il valore predefinito è ONDEMAND.

Nota

Se lo imposti suSPOT, CapacityType il tuo account deve avere un ruolo collegato al AWSServiceRoleForEC2Spot 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 Guida per l'utente di Amazon EC2 per le istanze Linux.

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

Default: lowest-price

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

  • Se lo utilizziCapacityType = SPOT, EC2 Fleet lancia le 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, EC2 Fleet soddisfa la richiesta lanciando istanze per te. In particolare, EC2 Fleet lancia istanze dal pool di istanze Spot con il prezzo più basso e con capacità disponibile. EC2 Fleet potrebbe avviare istanze Spot da diversi pool.

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

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

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

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 versione 3.3.0. AWS ParallelCluster

JobExclusiveAllocation(Facoltativo,String)

Se impostato sutrue, il OverSubscribe flag Slurm della partizione è impostato su. EXCLUSIVE When OverSubscribe =EXCLUSIVE, i job nella partizione hanno accesso esclusivo a tutti i nodi allocati. Per ulteriori informazioni, vedete EXCLUSIVE nella 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 le impostazioni di configurazione personalizzate Slurm della partizione (coda).

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

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

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

AWS ParallelCluster controlla solo se un parametro si trova in un elenco negato. AWS ParallelCluster non convalida la sintassi o la semantica dei parametri di Slurm configurazione personalizzati. Sei responsabile della convalida dei parametri di configurazione personalizzati. Slurm I parametri di Slurm configurazione personalizzati non validi possono causare errori nei Slurm daemon che possono causare errori nella creazione e nell'aggiornamento del cluster.

Per ulteriori informazioni su come specificare parametri di Slurm configurazione personalizzati con, vedere. AWS ParallelClusterSlurmpersonalizzazione della configurazione

Per ulteriori informazioni sui parametri di Slurm configurazione, vedere slurm.conf nella documentazione. Slurm

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(Facoltativo)

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

Gpu(Facoltativo)

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

Nota

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

Enabled(Facoltativo,) Boolean

Se AWS ParallelCluster esegue controlli dello stato della GPU sui nodi di elaborazione. Il valore predefinito è false.

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

  • Il controllo Gpu dello stato esegue controlli sullo stato della GPU sulle risorse di elaborazione per impedire l'invio di lavori su nodi con una GPU danneggiata.

  • Se un nodo di elaborazione non supera un controllo di Gpu integrità, lo stato del nodo di elaborazione 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 GPU nell'istanza e dal numero di obiettivi del controllo dello Gpu stato (equivalente al numero di obiettivi GPU del processo). Per un'istanza con 8 GPU, 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 dispone di una GPU o se un'istanza ha una GPU ma non è una GPU NVIDIA, il controllo dello stato viene interrotto e il processo viene eseguito sul nodo di calcolo. Sono supportate solo le GPU NVIDIA.

  • Il controllo dello Gpu stato utilizza lo dcgmi strumento per eseguire controlli di integrità su un nodo e prevede 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 GPU a nodi, il controllo dello Gpu stato viene eseguito solo su quel set specifico. In caso contrario, il Gpu controllo dello stato viene eseguito su tutte le GPU 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 di integrità e gli altri vengono ignorati. Questo vale anche per i controlli di integrità rivolti alle GPU dei nodi. È 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'identificatore GPU, l'ID seriale e l'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 la 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])

Gli ID delle sottoreti esistenti in cui si effettua il provisioning della Slurm coda.

Se configurate i tipi di istanza in SlurmQueues/ComputeResources/InstanceType, potete 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 nello stesso VPC, con ciascuna sottorete in una zona di disponibilità (AZ) separata.

Ad esempio, supponiamo 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 le AZ. Ad esempio, ciò potrebbe verificarsi quando un'istanza accede a uno 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 file system FSx for Lustre AWS ParallelCluster gestito. 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 Converti 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 file system Amazon EFS esterno se non esistono destinazioni di montaggio EFS per tutte le AZ per le diverse sottoreti definite da aggiungere. Quindi, non è possibile 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 AZ per le più sottoreti definite.

Zone di disponibilità e prenotazioni di capacità del cluster definite in Arn: CapacityReservation ResourceGroup
  • 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 Avviare le istanze con ODCR (Prenotazioni di capacità on demand).

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 FSx for Lustre gestito ed eliminano il file system FSx for Lustre gestito esistente senza preservare i dati esistenti. Ciò si traduce in una perdita di dati. Prima di procedere, assicuratevi di eseguire il backup dei dati dal file system FSx for Lustre esistente se desiderate conservare i dati. Per ulteriori informazioni, consulta Lavorare con i backup nella Guida per l'utente di FSx 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 della Slurm coda. I valori supportati sono true e false. La sottorete specificata determina il valore predefinito. Una sottorete con IP pubblici per impostazione predefinita assegna indirizzi IP pubblici.

Se si definisce un tipo di hpc6id istanza p4d or o un altro tipo di istanza con più interfacce di rete o una scheda di interfaccia di rete, è necessario impostare HeadNode/Networking/su ElasticIpper fornire l'accesso true pubblico. AWS Gli IP pubblici possono essere assegnati solo alle istanze avviate con una singola interfaccia di rete. In questo caso, si consiglia di utilizzare un gateway NAT 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 indirizzo IPv4 pubblico durante il lancio 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 la 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 versione 3.3.0 non viene influenzata dalla modifica di questo parametro.

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 FSx for Lustre gestito ed eliminano il file system FSx for Lustre gestito esistente senza preservare i dati esistenti. Ciò si traduce in una perdita di dati. Assicurati di eseguire il backup dei dati dal file system FSx for Lustre esistente se desideri conservare i dati. Per ulteriori informazioni, consulta Lavorare con i backup nella Guida per l'utente di FSx for Lustre.

avvertimento

Se abiliti Efa per le tue istanze di calcolo, assicurati che le istanze abilitate per EFA 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 la Slurm coda.

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

PlacementGroup(Facoltativo)

Specificate le impostazioni del gruppo di posizionamento per la 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 viene utilizzato un gruppo di posizionamento per la 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 utilizzato dalla Slurm coda. Assicuratevi di fornire il nome del gruppo di posizionamento 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 utilizzato dalla Slurm coda. Assicuratevi di fornire il nome del gruppo di posizionamento 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 proxy per la 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 proxy HTTP o HTTPS per la 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 usare per la Slurm coda. Per utilizzare la stessa AMI per tutti i nodi, utilizza 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)

L'AMI da utilizzare per la Slurm coda anziché le AMI predefinite. È possibile utilizzare il comando pcluster CLI per visualizzare un elenco delle AMI predefinite.

Nota

L'AMI deve essere basata sullo stesso sistema operativo utilizzato dal nodo principale.

pcluster list-official-images

Se l'AMI personalizzata richiede autorizzazioni aggiuntive per il suo avvio, è necessario aggiungere queste autorizzazioni alla policy del nodo principale.

Ad esempio, se a un'AMI personalizzata è associata un'istantanea crittografata, nelle politiche 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 convalida AMI personalizzati, consulta. Risoluzione dei problemi relativi alle AMI personalizzate

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 ComputeResources configurazione per la coda. Slurm

Nota

Le dimensioni del cluster possono 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 il parco di elaborazione quando si rimuove un valore esistente.

Proprietà ComputeResources
Name(Obbligatorio,String)

Il nome dell'ambiente di calcolo della Slurm 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 questa risorsa di Slurm 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 si definisce un tipo di hpc6id istanza p4d or o un altro tipo di istanza con più interfacce di rete o una scheda di interfaccia di rete, è necessario avviare le istanze di calcolo nella sottorete privata come descritto in. AWS ParallelCluster che utilizza due sottoreti AWS gli IP pubblici possono essere assegnati solo alle istanze avviate con una singola interfaccia di rete. Per ulteriori informazioni, consulta Assegnare un indirizzo IPv4 pubblico durante l'avvio dell'istanza nella Guida per l'utente di Amazon EC2 per le istanze Linux.

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

Instances(Obbligatorio)

Specifica 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 il parco di elaborazione quando si rimuove un valore esistente.

InstanceType(Obbligatorio,String)

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

I tipi di istanza elencati in Instancesdevono avere:

  • Lo stesso numero di vCPU o, DisableSimultaneousMultithreadingse impostato su, lo stesso numero true di core.

  • Lo stesso numero di acceleratori degli stessi produttori.

  • EFA supportato, se Efa/Enabledimpostato su. true

I tipi di istanza elencati in Instancespossono avere:

Se si definisce un tipo di hpc6id istanza p4d or o un altro tipo di istanza con più interfacce di rete o una scheda di interfaccia di rete, è necessario avviare le istanze di calcolo nella sottorete privata come descritto in. AWS ParallelCluster che utilizza due sottoreti AWS gli IP pubblici possono essere assegnati solo alle istanze avviate con una singola interfaccia di rete. Per ulteriori informazioni, consulta Assegnare un indirizzo IPv4 pubblico durante l'avvio dell'istanza nella Guida per l'utente di Amazon EC2 per le istanze Linux.

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 versione 3.3.0. AWS ParallelCluster

MinCount(Facoltativo,Integer)

Il numero minimo di istanze utilizzate dalla risorsa di Slurm 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 utilizzate dalla risorsa di Slurm 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à è mappata al parametro di Weightconfigurazione del Slurm nodo per i nodi dinamici delle risorse di calcolo. Il valore predefinito è 1000.

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

avvertimento

L'uso di molti Weight valori diversi in una Slurm partizione (coda) potrebbe rallentare la velocità di pianificazione dei lavori nella 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à è mappata al parametro di Weightconfigurazione del Slurm nodo per i nodi statici delle risorse di calcolo. Il valore predefinito è 1.

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

avvertimento

L'uso di molti Weight valori diversi in una Slurm partizione (coda) potrebbe rallentare la velocità di pianificazione dei lavori nella 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 Spot EC2 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, il multithreading sui nodi della Slurm coda è disabilitato. 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 Core e thread della CPU per ogni core di CPU per tipo di istanza nella Guida per l'utente di Amazon EC2.

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

SchedulableMemory(Facoltativo,) Integer

La quantità di memoria in MiB configurata nel 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 lavori quando SlurmSettings/EnableMemoryBasedSchedulingè abilitato. Il valore predefinito è il 95 percento della memoria elencata nei tipi di istanza di Amazon EC2 e restituita dai tipi di API di Amazon DescribeInstance EC2. Assicurati di convertire i valori forniti in GiB in MiB.

Valori supportati: 1-EC2Memory

EC2Memoryè la memoria (in MiB) elencata nei tipi di istanza Amazon EC2 e restituita dai tipi di API Amazon EC2. DescribeInstance 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, RealMemory per impostazione predefinita, AWS ParallelCluster configura i nodi di Slurm calcolo sul 95 percento della memoria restituita dall'API Amazon EC2. DescribeInstanceTypes Questa configurazione è indipendente dal valore di. EnableMemoryBasedScheduling

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 integrità della GPU su una risorsa di calcolo.

Enabled(Facoltativo,) Boolean

Se AWS ParallelCluster esegue controlli dello stato della GPU sul calcolo di una risorsa in coda. Il valore predefinito è false.

Nota

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

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

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

  • 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 GPU nell'istanza e dal numero di obiettivi del controllo dello Gpu stato (equivalente al numero di obiettivi GPU del processo). Per un'istanza con 8 GPU, 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 dispone di una GPU o se un'istanza ha una GPU ma non è una GPU NVIDIA, il controllo dello stato viene interrotto e il processo viene eseguito sul nodo di calcolo. Sono supportate solo le GPU NVIDIA.

  • Il controllo dello Gpu stato utilizza lo dcgmi strumento per eseguire controlli di integrità su un nodo e prevede 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 GPU a nodi, il controllo dello Gpu stato viene eseguito solo su quel set specifico. In caso contrario, il Gpu controllo dello stato viene eseguito su tutte le GPU 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 di integrità e gli altri vengono ignorati. Questo vale anche per i controlli di integrità rivolti alle GPU dei nodi. È 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'identificatore GPU, l'ID seriale e l'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 Elastic Fabric Adapter (EFA) per i nodi della coda. Slurm

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 istanze EC2 che supportano EFA, consulta Tipi di istanze supportati nella Guida per l'utente di Amazon EC2 per le istanze Linux. Per ulteriori informazioni, consulta Elastic Fabric Adapter. Ti consigliamo di utilizzare un cluster SlurmQueues/Networking/per ridurre al minimo le latenze tra PlacementGrouple 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 abilitate all'EFA 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(BooleanFacoltativo,)

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

Nota

AWS ParallelCluster versione da 3.0.0 a 3.0.1: il supporto per GPUDirect RDMA è abilitato per le risorse di calcolo. Slurm Il supporto per GPUDirect RDMA è supportato da tipi di istanze specifici (p4d.24xlarge) su sistemi operativi specifici (Osisalinux2, centos7ubuntu1804, o). ubuntu2004 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 elaborazione.

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 ODCR o a un Capacity Block per 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 avere almeno un ODCR per ogni tipo di istanza elencato per la risorsa di calcolo. Per ulteriori informazioni, consulta Avviare le istanze con ODCR (Prenotazioni di capacità on demand).

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 le impostazioni di configurazione del Slurm nodo personalizzato (risorsa di calcolo).

Specifica un dizionario di coppie chiave-valore dei parametri di Slurm configurazione personalizzati che si applicano ai Slurm nodi (risorse di calcolo).

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

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

AWS ParallelCluster controlla solo se un parametro si trova in un elenco negato. AWS ParallelCluster non convalida la sintassi o la semantica dei parametri di Slurm configurazione personalizzati. Sei responsabile della convalida dei parametri di configurazione personalizzati. Slurm I parametri di Slurm configurazione personalizzati non validi possono causare errori nei Slurm daemon che possono causare errori nella creazione e nell'aggiornamento del cluster.

Per ulteriori informazioni su come specificare parametri di Slurm configurazione personalizzati con, vedere. AWS ParallelClusterSlurmpersonalizzazione della configurazione

Per ulteriori informazioni sui parametri di Slurm configurazione, vedere slurm.conf nella documentazione. Slurm

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 la Slurm coda.

Proprietà ComputeSettings

Specifica le proprietà ComputeSettings dei nodi nella 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 nella 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 principale dei nodi nella 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 della coda. Slurm La dimensione predefinita proviene dall'AMI. L'utilizzo di una dimensione diversa richiede il supporto dell'AMIgrowroot.

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 nella Slurm coda è crittografato. 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 volume Amazon EBS dei nodi nella Slurm coda. I valori supportati sonogp2,,gp3,io1, io2sc1, st1 e. standard Il valore predefinito è gp3.

Per ulteriori informazioni, consulta Tipi di volumi di Amazon EBS nella Guida per l'utente di Amazon EC2.

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 IOPS e io1 io2 il gp3 tipo di volumi.

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 massimo volume_iops = 50 IOPS per GiB. 5000 IOPS richiedono almeno 100 GiB. volume_size

VolumeType = io2

Valore predefinito = 100 Iops

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

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

VolumeType = gp3

Valore predefinito = 3000 Iops

Valori supportati Iops = 3000—16000 †

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

† Il numero massimo di IOPS è garantito solo sulle istanze basate sul sistema Nitro dotate anche di più di 32.000 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 Guida per l'utente di Amazon EC2.

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 Volumi Instance store nella Guida per l'utente di Amazon EC2.

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 della coda. Slurm

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)

Speciifica una sequenza di script o un singolo script da eseguire sui nodi della Slurm 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 Sequence personalizzata. 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 della 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 Sequence personalizzata. 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 le impostazioni IAM opzionali per la 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 la Slurm coda. Non è possibile specificare entrambi e. InstanceProfile 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 la Slurm coda. Non è possibile specificare entrambi e. InstanceProfile 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 la Slurm coda. Viene utilizzato per generare politiche per concedere l'accesso specificato al bucket nella coda. Slurm

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 del 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)

Speciifica un elenco di Amazon Resource Names (ARN) delle policy IAM per Amazon EC2. Questo elenco è allegato al ruolo root utilizzato per la Slurm coda oltre alle autorizzazioni richieste da. AWS ParallelCluster

Il nome di una policy IAM e il relativo 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 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 Dns: DisableManagedDns: boolean HostedZoneId: string UseEc2Hostnames: boolean

SlurmSettingsProprietà

ScaledownIdletime(Facoltativo,Integer)

Definisce il periodo di tempo (in minuti) in cui non c'è nessun lavoro e il Slurm 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 Secrets AWS Manager che contiene la chiave munge con codifica base64 da utilizzare nel cluster Slurm. Questa chiave di munge verrà utilizzata per autenticare le chiamate RPC tra i comandi del client Slurm e i demoni Slurm 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 testo semplice 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 policy IAM dell'utente 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 nell'ARN segreto viene modificato mentre l'ARN rimane lo stesso, il cluster non verrà aggiornato automaticamente con la nuova chiave munge. Per utilizzare la nuova chiave munge dell'ARN 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 la flotta 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: NUOVA POLITICA DI AGGIORNAMENTO CON COMPUTE FLEET E NODI DI ACCESSO INTERROTTI (erroneamente non aggiunta nella versione 3.7.0).

QueueUpdateStrategy(Facoltativo,) String

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//. ComputeResourcesSchedulableMemory

Il valore predefinito è false.

avvertimento

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

Per ulteriori informazioni, consulta Slurmpianificazione basata sulla memoria.

Nota

EnableMemoryBasedSchedulingè supportato a partire dalla versione 3.2.0. AWS ParallelCluster

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

CustomSlurmSettings(Facoltativo,[Dict])

Definisce le Slurm impostazioni personalizzate che si applicano all'intero cluster.

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

Ogni dizionario nell'elenco viene visualizzato come una riga separata aggiunta al file di configurazione. Slurm È 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

I parametri di Slurm configurazione complessi sono costituiti da più coppie chiave-valore separate da spazi, come mostrato 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, reso in configurazione: Slurm

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

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

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

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

AWS ParallelCluster controlla solo se un parametro si trova in un elenco negato. AWS ParallelCluster non convalida la sintassi o la semantica dei parametri di Slurm configurazione personalizzati. Sei responsabile della convalida dei parametri di configurazione personalizzati. Slurm I parametri di Slurm configurazione personalizzati non validi possono causare errori nei Slurm daemon che possono causare errori nella creazione e nell'aggiornamento del cluster.

Per ulteriori informazioni su come specificare parametri di Slurm configurazione personalizzati con, vedere. AWS ParallelClusterSlurmpersonalizzazione della configurazione

Per ulteriori informazioni sui parametri di Slurm configurazione, vedere slurm.conf nella documentazione. Slurm

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 le Slurm impostazioni personalizzate che si applicano all'intero cluster.

Specifica il Slurm file personalizzato costituito da parametri di Slurm configurazione personalizzati da aggiungere alla fine del slurm.conf file generato AWS ParallelCluster .

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

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

Nota

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

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

AWS ParallelCluster controlla solo se un parametro si trova in un elenco negato. AWS ParallelCluster non convalida la sintassi o la semantica dei parametri di Slurm configurazione personalizzati. Sei responsabile della convalida dei parametri di configurazione personalizzati. Slurm I parametri di Slurm configurazione personalizzati non validi possono causare errori nei Slurm daemon che possono causare errori nella creazione e nell'aggiornamento del cluster.

Per ulteriori informazioni su come specificare parametri di Slurm configurazione personalizzati con, vedere. AWS ParallelClusterSlurmpersonalizzazione della configurazione

Per ulteriori informazioni sui parametri di Slurm configurazione, vedere slurm.conf nella documentazione. Slurm

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 per abilitare l'SlurmAccounting nel cluster. Per ulteriori informazioni, consulta Slurmcontabilità 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 la Slurm contabilità. Questo URI deve essere formattato come host:port e non deve contenere uno schema, ad esempio. mysql:// L'host può essere un indirizzo IP o un nome DNS risolvibile dal nodo principale. Se non viene fornita una porta, AWS ParallelCluster utilizza la porta MySQL predefinita 3306.

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

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

  • Viene creato un cluster.

  • Slurmla 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à Slurm utilizzata per connettersi al database, scrivere registri contabili ed eseguire query. 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 in chiaroUserName. Questa password viene utilizzata insieme UserName all'account per l'autenticazione sul server del database. Slurm

Nota

Quando crei un segreto utilizzando la AWS Secrets Manager console, assicurati di selezionare «Altro tipo di segreto», seleziona il testo non crittografato 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 policy IAM dell'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 l'ARN segreto rimane 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 del database (definito dal parametro Uri) da utilizzare per Slurm Accounting.

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, QoS, ecc.).

  • Se sul server del database esiste DatabaseName già un database con un nome, slurmdbd lo utilizzerà per la funzionalità Slurm Accounting.

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.

Dns

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

Dns: DisableManagedDns: boolean HostedZoneId: string UseEc2Hostnames: boolean

DnsProprietà

DisableManagedDns(Facoltativo,Boolean)

Setrue, le voci DNS per il cluster non vengono create e i nomi dei Slurm 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 ParallelClusterin 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 il DNS predefinito di EC2, imposta suUseEc2Hostnames. true In alternativa, configura il tuo resolver DNS 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 nomi DNS 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 host EC2 predefinito. SlurmNodeHostNameViene 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 ParallelClusterin 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 epilog script prolog o 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.