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:stringSlurmSettings: MungeKeySecretArn:stringScaledownIdletime:integerQueueUpdateStrategy:stringEnableMemoryBasedScheduling:booleanCustomSlurmSettings:[dict]CustomSlurmSettingsIncludeFile:stringDatabase: Uri:stringUserName:stringPasswordSecretArn:stringDatabaseName:stringExternalSlurmdbd:booleanHost:stringPort:integerDns: DisableManagedDns:booleanHostedZoneId:stringUseEc2Hostnames:booleanSlurmQueues: - Name:stringComputeSettings: LocalStorage: RootVolume: Size:integerEncrypted:booleanVolumeType:stringIops:integerThroughput:integerEphemeralVolume: MountDir:stringCapacityReservationTarget: CapacityReservationId:stringCapacityReservationResourceGroupArn:stringCapacityType:stringAllocationStrategy:stringJobExclusiveAllocation:booleanCustomSlurmSettings:dictTags: - Key:stringValue:stringHealthChecks: Gpu: Enabled:booleanNetworking: SubnetIds: -stringAssignPublicIp:booleanSecurityGroups: -stringAdditionalSecurityGroups: -stringPlacementGroup: Enabled:booleanId:stringName:stringProxy: HttpProxyAddress:stringComputeResources: - Name:stringInstanceType:stringInstances: - InstanceType:stringMinCount:integerMaxCount:integerDynamicNodePriority:integerStaticNodePriority:integerSpotPrice:floatDisableSimultaneousMultithreading:booleanSchedulableMemory:integerHealthChecks: Gpu: Enabled:booleanEfa: Enabled:booleanGdrSupport:booleanCapacityReservationTarget: CapacityReservationId:stringCapacityReservationResourceGroupArn:stringNetworking: PlacementGroup: Enabled:booleanName:stringCustomSlurmSettings:dictTags: - Key:stringValue:stringCustomActions: OnNodeStart: Sequence: - Script:stringArgs: -stringScript:stringArgs: -stringOnNodeConfigured: Sequence: - Script:stringArgs: -stringScript:stringArgs: -stringIam: InstanceProfile:stringInstanceRole:stringS3Access: - BucketName:stringEnableWriteAccess:booleanKeyName:stringAdditionalIamPolicies: - Policy:stringImage: CustomAmi:string
Scheduling: Scheduler: awsbatch AwsBatchQueues: - Name:stringCapacityType:stringNetworking: SubnetIds: -stringAssignPublicIp:booleanSecurityGroups: -stringAdditionalSecurityGroups: -stringComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name:stringInstanceTypes: -stringMinvCpus:integerDesiredvCpus:integerMaxvCpus:integerSpotBidPercentage:float
Proprietà Scheduling
Scheduler(Obbligatorio,String)-
Speciifica il tipo di scheduler utilizzato. I valori supportati sono
slurmeawsbatch.Nota
awsbatchsupporta solo il sistemaalinux2operativo ex86_64la piattaforma. ScalingStrategy(Facoltativo,String)-
Consente di scegliere la modalità di scalabilità Slurm dei nodi dinamici. I valori supportati sono
all-or-nothing,greedy-all-or-nothingebest-effortIl 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 Slurm ripresa. 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 EC2 API di Amazon. -
greedy-all-or-nothingAnalogamente 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-effortQuesta 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:stringCapacityType:stringNetworking: SubnetIds: -stringAssignPublicIp:booleanSecurityGroups: -stringAdditionalSecurityGroups: -stringComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name:stringInstanceTypes: -stringMinvCpus:integerDesiredvCpus:integerMaxvCpus:integerSpotBidPercentage:float
Politica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.
Proprietà AwsBatchQueues
Name(Obbligatorio,String)-
Il nome della AWS Batch coda.
CapacityType(Facoltativo,String)-
Il tipo di risorse di calcolo utilizzate dalla AWS Batch coda. I valori supportati sono
ONDEMAND, oSPOT.CAPACITY_BLOCKIl valore predefinito èONDEMAND.Nota
Se lo
CapacityTypeimpostiSPOT, il tuo account deve contenere un ruoloAWSServiceRoleForEC2Spotcollegato al servizio. È possibile creare questo ruolo utilizzando il seguente AWS CLI comando.$aws iam create-service-linked-role --aws-service-name spot.amazonaws.com.rproxy.govskope.caPer ulteriori informazioni, consulta il ruolo collegato ai servizi per le richieste di istanze Spot nella Amazon Amazon EC2 User Guide for Linux Instances.
Networking
(Obbligatorio) Definisce la configurazione di rete per la coda. AWS Batch
Networking: SubnetIds: -stringAssignPublicIp:booleanSecurityGroups: -stringAdditionalSecurityGroups: -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.
AssignPublicIp(Facoltativo,String)-
Crea o assegna un indirizzo IP pubblico ai nodi della AWS Batch coda. I valori supportati sono
trueefalse. L'impostazione predefinita dipende dalla sottorete specificata. 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:stringInstanceTypes: -stringMinvCpus:integerDesiredvCpus:integerMaxvCpus:integerSpotBidPercentage:float
Proprietà ComputeResources
Name(Obbligatorio,String)-
Il nome dell'ambiente di calcolo della AWS Batch coda.
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. 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
MinvCpuse inMaxvCpusbase 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 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 può raggiungere il prezzo di un'istanza Amazon EC2 Spot 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:stringComputeSettings: LocalStorage: RootVolume: Size:integerEncrypted:booleanVolumeType:stringIops:integerThroughput:integerEphemeralVolume: MountDir:stringCapacityReservationTarget: CapacityReservationId:stringCapacityReservationResourceGroupArn:stringCapacityType:stringAllocationStrategy:stringJobExclusiveAllocation:booleanCustomSlurmSettings:dictTags: - Key:stringValue:stringHealthChecks: Gpu: Enabled:booleanNetworking: SubnetIds: -stringAssignPublicIp:booleanSecurityGroups: -stringAdditionalSecurityGroups: -stringPlacementGroup: Enabled:booleanId:stringName:stringProxy: HttpProxyAddress:stringComputeResources: - Name:stringInstanceType:stringInstances: - InstanceType:stringMinCount:integerMaxCount:integerDynamicNodePriority:integerStaticNodePriority:integerSpotPrice:floatDisableSimultaneousMultithreading:booleanSchedulableMemory:integerHealthChecks: Gpu: Enabled:booleanEfa: Enabled:booleanGdrSupport:booleanCapacityReservationTarget: CapacityReservationId:stringCapacityReservationResourceGroupArn:stringNetworking: PlacementGroup: Enabled:booleanName:stringCustomSlurmSettings:dictTags: - Key:stringValue:stringCustomActions: OnNodeStart: Sequence: - Script:stringArgs: -stringScript:stringArgs: -stringOnNodeConfigured: Sequence: - Script:stringArgs: -stringScript:stringArgs: -stringIam: InstanceProfile:stringInstanceRole:stringS3Access: - BucketName:stringEnableWriteAccess:booleanKeyName:stringAdditionalIamPolicies: - Policy:stringImage: CustomAmi:string
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
CapacityReservationTarget-
Nota
CapacityReservationTargetviene aggiunto con la AWS ParallelCluster versione 3.3.0.CapacityReservationTarget: CapacityReservationId:stringCapacityReservationResourceGroupArn:stringSpeciifica 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 eseguite
rhel8, la prenotazione della capacità deve essere eseguita sulla piattaforma Red Hat Enterprise Linux. Per ulteriori informazioni, consulta la sezione Piattaforme supportate nella Amazon EC2 User Guide for Linux Instances.Nota
Se includi Instancesnella configurazione del cluster, devi escludere questa
CapacityReservationIdimpostazione 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:
-
Se
PlacementGroupè abilitato in SlurmQueues/Networkingo SlurmQueues/ComputeResources/Networking, AWS ParallelCluster seleziona un gruppo di risorse destinato al tipo di istanza ePlacementGroupper una risorsa di calcolo, se la risorsa di calcolo esiste.PlacementGroupDeve avere come target uno dei tipi di istanza definiti in. ComputeResources -
Se
PlacementGroupnon è abilitato in SlurmQueues/Networkingo SlurmQueues/ComputeResources/Networking, AWS ParallelCluster seleziona un gruppo di risorse destinato solo al tipo di istanza di una risorsa di elaborazione, se la risorsa di calcolo esiste.
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 Avvio di istanze con On-Demand Capacity Reservations (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à.
-
CapacityType(Facoltativo,String)-
Il tipo di risorse di calcolo utilizzate dalla Slurm coda. I valori supportati sono
ONDEMAND, oSPOT.CAPACITY_BLOCKIl valore predefinito èONDEMAND.Nota
Se lo imposti su
SPOT,CapacityTypeil tuo account deve avere un ruoloAWSServiceRoleForEC2Spotcollegato al servizio. È possibile utilizzare il seguente AWS CLI comando per creare questo ruolo.$aws iam create-service-linked-role --aws-service-name spot.amazonaws.com.rproxy.govskope.caPer ulteriori informazioni, consulta il ruolo collegato ai servizi per le richieste di istanze Spot nella Amazon Amazon EC2 User Guide for Linux Instances.
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|prioritized|capacity-optimized-prioritizedCapacityType Strategie consentite SU RICHIESTA al prezzo più basso, con priorità PUNTO prezzo più basso, capacità ottimizzata, price-capacity-optimized capacity-optimized-prioritized BLOCCO_CAPACITÀ Non supportato: non può essere AllocationStrategy configurato Impostazione predefinita:
lowest-pricelowest-price-
-
Se utilizzi
CapacityType = ONDEMAND, Amazon EC2 Fleet utilizza il prezzo per determinare l'ordine e avvia prima le istanze con il prezzo più basso. -
Se lo utilizzi
CapacityType = 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 imposti
CapacityType = CAPACITY_BLOCK, non esistono strategie di allocazione, quindi ilAllocationStrategyparametro non può essere configurato.
-
capacity-optimized-
-
Se impostato
CapacityType = ONDEMAND,capacity-optimizednon è disponibile. -
Se hai impostato
CapacityType = 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 impostato
CapacityType = ONDEMAND,capacity-optimizednon è disponibile. -
Se hai impostato
CapacityType = 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.
-
prioritized-
-
Se lo imposti
CapacityType = ONDEMAND, Amazon EC2 Fleet rispetta l'ordine di priorità che AWS ParallelCluster si applica alle LaunchTemplate sostituzioni quando vengono specificate più sottoreti. AWS ParallelCluster ricava l'overrideprioritydalla posizione della sottorete di destinazione in cui la prima sottorete ottiene la massimaSlurmQueues/Networking/SubnetIdspriorità. Le priorità vengono stabilite AWS ParallelCluster in ordine decrescente daSlurmQueues/Networking/SubnetIds, con la prima con la priorità più alta e l'ultimo SubnetId SubnetID con la priorità più bassa. -
Se impostata, non è disponibile
CapacityType = SPOT.prioritized
-
capacity-optimized-prioritized-
-
Se lo imposti
CapacityType = ONDEMAND,capacity-optimized-prioritizednon è disponibile. -
Se lo hai impostato
CapacityType = SPOT, Amazon EC2 Fleet ottimizza prima la capacità e poi applica, nel migliore dei modi, l'ordine di priorità assegnato alle AWS ParallelCluster sostituzioni. LaunchTemplate Le priorità vengono stabilite AWS ParallelCluster in ordine decrescente daSlurmQueues/Networking/SubnetIds, con la prima con la priorità più alta e l'ultimo SubnetId SubnetID con la priorità più bassa. Tutte le sostituzioni destinate alla stessa sottorete ricevono lo stesso valore di priorità.
-
Nota
AllocationStrategyè supportato a partire dalla versione 3.3.0 AWS ParallelCluster .Novità nella versione 3.14.0:
prioritized(per On-Demand) ecapacity-optimized-prioritized(per Spot). JobExclusiveAllocation(Facoltativo,)String-
Se impostato su
true, ilOverSubscribeflag Slurm della partizione è impostato su.EXCLUSIVEWhenOverSubscribe=EXCLUSIVE, i job nella partizione hanno accesso esclusivo a tutti i nodi allocati. Per ulteriori informazioni, vedete EXCLUSIVEnella Slurm documentazione. Valori validi:
true|falseDefault:
falsePolitica 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 esempio
Param1: 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.
CustomSlurmSettingsPer informazioni sui parametri di Slurm configurazione non elencati, vedere. Non inserito nell'elenco Slurm parametri di configurazione per CustomSlurmSettingsAWS 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. È tua responsabilità convalidare i 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 ParallelClusterSlurm personalizzazione 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
SlurmQueuesTagsKey(Facoltativo,)String-
La chiave di tag:
Value(Facoltativo,String)-
Il valore del tag.
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 supporta
HealthChecks/Gpunei nodi che utilizzano sistemi operativialinux2ARM. Queste piattaforme non supportano NVIDIA Data Center GPU Manager (DCGM). L'abilitazione dei controlli dello stato della GPU quando si utilizzano tipi di istanze la cui dimensione totale della memoria della GPU è superiore a 327680 MiB è sconsigliata.
Enabled(Facoltativo,)Boolean-
Se AWS ParallelCluster esegue controlli dello stato della GPU sui nodi di elaborazione. Il valore predefinito è
false.
Gpucomportamento del controllo dello stato di salute-
Se
Gpu/Enabledè impostato sutrue, AWS ParallelCluster esegue controlli dello stato della GPU sulle risorse di calcolo in coda. -
Il controllo
Gpudello 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
Gpuintegrità, lo stato del nodo di elaborazione cambia in.DRAINI 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
Gpustato dipende dal tipo di istanza selezionato, dal numero di oggetti GPUs presenti nell'istanza, dalla memoria totale della GPU e dal numero di obiettivi del controlloGpudello stato (equivalente al numero di obiettivi GPU del processo). Ad esempio, su un p4d.24xlarge, la durata tipica è di 3 minuti. -
Se il controllo di
Gpuintegrità 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. È GPUs supportata solo la tecnologia NVIDIA. -
Il controllo dello
Gpustato utilizza lodcgmistrumento per eseguire controlli di integrità su un nodo e segue i seguenti passaggi:Quando inizia il controllo dello stato di
Gpusalute in un nodo:-
Rileva se i
nvidia-fabricmanagerservizinvidia-dcgmand sono in esecuzione. -
Se questi servizi non sono in esecuzione, il controllo
Gpusanitario li avvia. -
Rileva se la modalità di persistenza è abilitata.
-
Se la modalità di persistenza non è abilitata, il controllo dello
Gpustato la abilita.
Al termine del controllo sanitario, il controllo
Gpusanitario riporta questi servizi e risorse allo stato iniziale. -
-
Se il job è assegnato a un set specifico di nodi GPUs, il controllo dello
Gpustato viene eseguito solo su quel set specifico. Altrimenti, il controlloGpudello 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
Gpusalute contemporaneamente, viene eseguito solo il primo controllo e gli altri vengono ignorati. Questo vale anche per i controlli sanitari del nodo di destinazione. 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.logfile. 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
Gpusalute, 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: -stringAssignPublicIp:booleanSecurityGroups: -stringAdditionalSecurityGroups: -stringPlacementGroup: Enabled:booleanId:stringName:stringProxy: HttpProxyAddress:string
Proprietà Networking
SubnetIds(Obbligatorio,[String])-
Le IDs sottoreti esistenti in cui si effettua il provisioning della Slurm 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 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 nonsubnet-2possono essere entrambi in AZ-1.subnet-1può essere in AZ-1 esubnet-2può essere in AZ-2.Se configuri solo un tipo di istanza e desideri utilizzare più sottoreti, definisci il tipo di istanza in anziché.
InstancesInstanceTypeAd esempio, definisci
ComputeResources/Instances/InstanceType=instance.typeanzichéComputeResources/InstanceType=.instance.typeNota
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 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 file system Amazon EFS esterno se non esistono destinazioni di montaggio EFS per tutte le sottoreti multiple definite da aggiungere. AZs 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 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 Avvio di istanze con On-Demand Capacity Reservations (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:
Se si modifica questo parametro e si aggiorna un cluster, viene creato un nuovo file system gestito FSx per Lustre ed eliminato il file system Managed FSx for Lustre esistente senza preservare i dati esistenti. Ciò comporta la 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 della Slurm coda. I valori supportati sono
trueefalse. 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 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
truepubblico. AWS public IPs può essere assegnato 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.falsePer ulteriori informazioni sugli indirizzi IP, consulta Assegnare un IPv4 indirizzo pubblico durante l'avvio dell'istanza nella Amazon EC2 User Guide for Linux Instances. 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.yAWS 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:
Se si modifica questo parametro e si aggiorna un cluster, viene creato un nuovo file system gestito FSx per Lustre ed eliminato il file system Managed FSx for Lustre esistente senza preservare i dati esistenti. Ciò comporta la 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, consulta Lavorare con i backup nella Guida FSx per l'utente di for Lustre.
avvertimento
Se abiliti Efa per le tue istanze di calcolo, assicurati che le istanze abilitate per EFA siano membri 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:booleanId:stringName:stringEnabled(Facoltativo,)Boolean-
Indica se viene utilizzato un gruppo di posizionamento per la Slurm coda. Il valore predefinito è
false. Id(Facoltativo,String)-
L'ID del gruppo di posizionamento per un gruppo di posizionamento del cluster esistente utilizzato dalla Slurm coda. Assicuratevi di fornire l'ID del gruppo di collocamento e non il nome.
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.
Nota
-
Se
PlacementGroup/Enabledè impostato sutrue, senza unNameoIddefinito, a ciascuna risorsa di calcolo viene assegnato un proprio gruppo di posizionamento gestito, a meno che ComputeResources/Networking/non PlacementGroupsia definito per sostituire questa impostazione. -
A partire dalla AWS ParallelCluster versione 3.3.0, SlurmQueues/NetworkingPlacementGroup/Nameè stato aggiunto come alternativa preferita a SlurmQueues///Networking. PlacementGroupId
PlacementGroup/Ide PlacementGroup/Namesono equivalenti. Puoi usare uno dei due.
Se includi sia PlacementGroup/Idche PlacementGroup/Name, AWS ParallelCluster fallisce. Puoi scegliere solo l'uno o l'altro.
Non è necessario aggiornare il cluster per utilizzare PlacementGroup/Name.
Proxy(Facoltativo)-
Specifica le impostazioni proxy per la Slurm coda.
Proxy: HttpProxyAddress:stringHttpProxyAddress(Facoltativo,)String-
Definisce un server proxy HTTP o HTTPS per la Slurm coda. In genere, è.
https://x.x.x.x:8080Non esiste un valore predefinito.
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
ImageProprietà
CustomAmi(Facoltativo,String)-
L'AMI da usare per la Slurm coda anziché quella predefinita AMIs. È possibile utilizzare il comando pcluster CLI per visualizzare un elenco delle impostazioni predefinite. AMIs
Nota
L'AMI deve essere basata sullo stesso sistema operativo utilizzato dal nodo principale.
pcluster list-official-imagesSe 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.
Per risolvere i problemi relativi agli avvisi di convalida AMI personalizzati, consulta. Risoluzione dei problemi relativi alle AMI personalizzate
ComputeResources
(Obbligatorio) Definisce la ComputeResources configurazione per la coda. Slurm
Nota
-
La dimensione del cluster può cambiare durante un aggiornamento. Per ulteriori informazioni, vedere Dimensione e aggiornamento della capacità del cluster.
-
È possibile aggiungere nuove risorse di elaborazione al cluster solo se distribuite in sottoreti che appartengono ai blocchi CIDR esistenti al momento della creazione del cluster.
ComputeResources: - Name:stringInstanceType:stringInstances: - InstanceType:stringMinCount:integerMaxCount:integerDynamicNodePriority:integerStaticNodePriority:integerSpotPrice:floatDisableSimultaneousMultithreading:booleanSchedulableMemory:integerHealthChecks: Gpu: Enabled:booleanEfa: Enabled:booleanGdrSupport:booleanCapacityReservationTarget: CapacityReservationId:stringCapacityReservationResourceGroupArn:stringNetworking: PlacementGroup: Enabled:booleanName:stringCustomSlurmSettings:dictTags: - Key:stringValue:string
Proprietà ComputeResources
Name(Obbligatorio,)String-
Il nome dell'ambiente di calcolo della Slurm coda. Il nome può contenere fino a 25 caratteri.
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'
arm64architetturax86_64or.La configurazione del cluster deve definire una delle due InstanceTypeistanze. Se entrambi sono definiti, AWS ParallelCluster fallisce.
Quando si definisce
InstanceType, 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.InstanceTypePer ulteriori informazioni, consulta Networking/. SubnetIdsSe 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 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.
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:stringNota
Per le AWS ParallelCluster versioni da 3.2.0 a 3.6.
x, non EnableMemoryBasedScheduling può essere abilitato se configuri più tipi di istanza in Istanze.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_64oppurearm64.I tipi di istanza elencati in Instancesdevono avere:
-
Lo stesso numero di v oCPUs, se DisableSimultaneousMultithreadingimpostato su
true, lo stesso numero di core. -
Lo stesso numero di acceleratori degli stessi produttori.
I tipi di istanza elencati in Instancespossono avere:
-
Diverse quantità di memoria.
In questo caso, la memoria minima deve essere impostata come Slurm risorsa consumabile.
Nota
Per le AWS ParallelCluster versioni da 3.2.0 a 3.6.
x, non EnableMemoryBasedScheduling può essere abilitato se configuri più tipi di istanza in Istanze. -
Schede di rete diverse.
In questo caso, il numero di interfacce di rete configurate per la risorsa di calcolo è definito dal tipo di istanza con il minor numero di schede di rete.
-
Larghezza di banda di rete diversa.
-
Dimensioni diverse dell'Instance Store.
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 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.
-
Nota
Instancesè supportato a partire dalla AWS ParallelCluster versione 3.3.0. 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
MaxCount(Facoltativo,Integer)-
Il numero massimo di istanze utilizzate dalla risorsa di Slurm calcolo. Il valore predefinito è 10.
Quando si utilizza
CapacityType = CAPACITY_BLOCK,MaxCountdeve essere ugualeMinCounte 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, quando si utilizza
CapacityType = 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
Weightper primi.avvertimento
L'uso di molti
Weightvalori 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.
1In 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
Weightper primi.avvertimento
L'uso di molti
Weightvalori 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 ParallelClusterPolitica 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.
DisableSimultaneousMultithreading(Facoltativo,Boolean)-
Se
true, 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 Amazon User Guide. EC2
SchedulableMemory(Facoltativo,)Integer-
La quantità di memoria in MiB configurata nel Slurm parametro
RealMemoryper 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 in Amazon EC2 Instance Typese restituita dall' EC2 API Amazon DescribeInstanceTypes. Assicurati di convertire i valori forniti in GiB in MiB. Valori supportati:
1-EC2MemoryEC2Memoryè la memoria (in MiB) elencata in Amazon EC2 Instance Typese restituita dall'API Amazon EC2 . DescribeInstanceTypes Assicurati di convertire i valori forniti in GiB in MiB. Questa opzione è particolarmente rilevante quando SlurmSettings/EnableMemoryBasedSchedulingè abilitato. Per ulteriori informazioni, consulta Slurm pianificazione basata sulla memoria.
Nota
SchedulableMemoryè supportata a partire dalla AWS ParallelCluster versione 3.2.0.A partire dalla versione 3.2.0,
RealMemoryper impostazione predefinita, AWS ParallelCluster configura i nodi di Slurm calcolo sul 95 percento della memoria restituita dall'API Amazon. EC2DescribeInstanceTypesQuesta configurazione è indipendente dal valore di.EnableMemoryBasedScheduling 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 supporta
HealthChecks/Gpunei nodi che utilizzano sistemi operativialinux2ARM. Queste piattaforme non supportano NVIDIA Data Center GPU Manager (DCGM).
Gpucomportamento di controllo dello stato di salute-
Se
Gpu/Enabledè impostato sutrue, AWS ParallelCluster esegue controlli di integrità della GPU su una risorsa di calcolo. -
Il controllo
Gpudello 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
Gpuintegrità, lo stato del nodo di calcolo cambia in.DRAINI 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
Gpustato dipende dal tipo di istanza selezionato, dal numero di oggetti GPUs presenti nell'istanza e dal numero di obiettivi del controlloGpudello stato (equivalente al numero di obiettivi GPU del processo). Per un'istanza con 8 GPUs, la durata tipica è inferiore a 3 minuti. -
Se il controllo
Gpudello 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. È GPUs supportata solo la tecnologia NVIDIA. -
Il controllo dello
Gpustato utilizza lodcgmistrumento per eseguire controlli di integrità su un nodo e segue i seguenti passaggi:Quando inizia il controllo dello stato di
Gpusalute in un nodo:-
Rileva se i
nvidia-fabricmanagerservizinvidia-dcgmand sono in esecuzione. -
Se questi servizi non sono in esecuzione, il controllo
Gpusanitario li avvia. -
Rileva se la modalità di persistenza è abilitata.
-
Se la modalità di persistenza non è abilitata, il controllo dello
Gpustato la abilita.
Al termine del controllo sanitario, il controllo
Gpusanitario riporta questi servizi e risorse allo stato iniziale. -
-
Se il job è assegnato a un set specifico di nodi GPUs, il controllo dello
Gpustato viene eseguito solo su quel set specifico. Altrimenti, il controlloGpudello 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
Gpusalute 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.logfile. 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
Gpusalute, 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)-
Speciifica le impostazioni Elastic Fabric Adapter (EFA) per i nodi della coda. Slurm
Efa: Enabled:booleanGdrSupport:booleanEnabled(Facoltativo,)Boolean-
Speciifica che Elastic Fabric Adapter (EFA) è abilitato. Per visualizzare l'elenco delle EC2 istanze Amazon che supportano EFA, 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/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 per EFA siano membri di un gruppo di sicurezza che consente tutto il traffico in entrata e in uscita verso se stesso.
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 Slurm elaborazione e il sistema operativo.
CapacityReservationTarget-
CapacityReservationTarget: CapacityReservationId:stringCapacityReservationResourceGroupArn:stringSpeciifica 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ò 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 Avvio di istanze con On-Demand Capacity Reservations (ODCR).
-
Se
PlacementGroupè abilitato in SlurmQueues/Networkingo SlurmQueues/ComputeResources/Networking, AWS ParallelCluster seleziona un gruppo di risorse destinato al tipo di istanza e a una risorsaPlacementGroupdi calcolo, se esistente.PlacementGroupDeve avere come target uno dei tipi di istanze definiti in. ComputeResources -
Se
PlacementGroupnon è abilitato in SlurmQueues/Networkingo SlurmQueues/ComputeResources/Networking, AWS ParallelCluster seleziona un gruppo di risorse destinato solo al tipo di istanza di una risorsa di calcolo, se esistente.
-
Nota
CapacityReservationTargetviene aggiunto con la AWS ParallelCluster versione 3.3.0. Networking-
Networking: PlacementGroup: Enabled:booleanName:stringPlacementGroup(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 su
true, senza unaNamedefinizione, a quella risorsa di calcolo viene assegnato un proprio gruppo di posizionamento gestito, indipendentemente dall'impostazione SlurmQueues/Networking/PlacementGroup. -
Se è impostata su
true, con unaNamedefinizione, a quella risorsa di calcolo viene assegnato il gruppo di posizionamento denominato, indipendentemente dalle impostazioniSlurmQueues/Networking/PlacementGroup.
-
Name(Facoltativo,String)-
Il nome del gruppo di posizionamento per un gruppo di posizionamento del cluster esistente utilizzato per la risorsa di calcolo.
Nota
-
Se entrambi
PlacementGroup/EnabledeNamenon 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 esempio
Param1: 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.
CustomSlurmSettingsPer informazioni sui parametri di Slurm configurazione non elencati, vedere. Non inserito nell'elenco Slurm parametri di configurazione per CustomSlurmSettingsAWS 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. È tua responsabilità convalidare i 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 ParallelClusterSlurm personalizzazione 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 SlurmQueuesTagsKey(Facoltativo,)String-
La chiave di tag:
Value(Facoltativo,String)-
Il valore del tag.
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:integerEncrypted:booleanVolumeType:stringIops:integerThroughput:integerEphemeralVolume: MountDir:string
LocalStorage(Facoltativo)-
Specifica le proprietà
LocalStoragedei nodi nella Slurm coda.LocalStorage: RootVolume: Size:integerEncrypted:booleanVolumeType:stringIops:integerThroughput:integerEphemeralVolume: MountDir:stringRootVolume(Facoltativo)-
Specifica i dettagli del volume principale dei nodi nella Slurm coda.
RootVolume: Size:integerEncrypted:booleanVolumeType:stringIops:integerThroughput:integerSize(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'AMI
growroot. Encrypted(Facoltativo,Boolean)-
Se
true, il volume principale dei nodi nella Slurm coda è crittografato. Il valore predefinito èfalse. VolumeType(Facoltativo,String)-
Speciifica il tipo di volume Amazon EBS dei nodi nella Slurm coda. I valori supportati sono
gp2,,gp3,io1,io2sc1,st1e.standardIl valore predefinito ègp3.Per ulteriori informazioni, consulta i tipi di volume di Amazon EBS nella Amazon EC2 User Guide.
Iops(Facoltativo,Boolean)-
Definisce il numero di IOPS e
io1io2ilgp3tipo di volumi.Il valore predefinito, i valori supportati e il
volume_sizerapportovolume_iopsdi rapporto variano in base aVolumeTypeeSize.VolumeType=io1-
Valore predefinito
Iops= 100Valori supportati
Iops= 100—64000 †volume_sizeRapporto massimovolume_iops= 50 IOPS per GiB. 5000 IOPS richiedono almeno 100 GiB.volume_size VolumeType=io2-
Valore predefinito = 100
IopsValori supportati
Iops= 100—64000 (256000 per i volumiio2Block Express) †SizeRapporto massimoIops= 500 IOPS per GiB. 5000 IOPS richiedono almeno 10 GiB.Size VolumeType=gp3-
Valore predefinito = 3000
IopsValori supportati
Iops= 3000-16000 †SizeRapporto massimoIops= 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.io2I volumi Block Express supportanovolume_iopsvalori fino a 256000 sui tipi diR5bistanza. Per ulteriori informazioni, consulta i volumiio2Block Express nella Amazon EC2 User Guide. Throughput(Facoltativo,Integer)-
Definisce la velocità effettiva per i tipi di
gp3volume, in MiB/s. Questa impostazione è valida solo quando è.VolumeTypegp3Il valore predefinito è125. Valori supportati: 125-1000 MiB/sIl rapporto tra a non
Iopspuò essere superioreThroughputa 0,25. Il throughput massimo di 1000 MiB/s richiede che l'Iopsimpostazione sia almeno 4000.
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.
ext4Il 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:stringMountDir(Facoltativo,String)-
La directory di montaggio per il volume temporaneo per ogni nodo della coda. Slurm
CustomActions
(Facoltativo) Specifica gli script personalizzati da eseguire sui nodi della coda. Slurm
CustomActions: OnNodeStart: Sequence: - Script:stringArgs: -stringScript:stringArgs: -stringOnNodeConfigured: Sequence: - Script:stringArgs: -stringScript:stringArgs: -string
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
Sequencepersonalizzata. Per ulteriori informazioni, consulta Azioni bootstrap personalizzate.Sequence(Facoltativo)-
Elenco degli script da eseguire.
Script(Obbligatorio,String)-
Il file da usare. Il percorso del file può iniziare con
https://os3://. Args(Facoltativo,[String])-
L'elenco degli argomenti da passare allo script.
Script(Obbligatorio,String)-
Il file da usare per un singolo script. Il percorso del file può iniziare con
https://os3://. Args(Facoltativo,[String])-
L'elenco degli argomenti da passare al singolo script.
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
Sequencepersonalizzata. Per ulteriori informazioni, consulta Azioni bootstrap personalizzate.Sequence(Facoltativo)-
Elenco degli script da eseguire.
Script(Obbligatorio,String)-
Il file da usare. Il percorso del file può iniziare con
https://os3://. Args(Facoltativo,[String])-
L'elenco degli argomenti da passare allo script.
Script(Obbligatorio,String)-
Il file da usare per un singolo script. Il percorso del file può iniziare con
https://os3://. Args(Facoltativo,[String])-
Un elenco di argomenti da passare al singolo script.
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.SequenceAWS 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:stringEnableWriteAccess:booleanKeyName:stringAdditionalIamPolicies: - Policy:stringInstanceProfile:stringInstanceRole: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.
InstanceProfileInstanceRoleIl formato èarn:${Partition}:iam::${Account}:instance-profile/${InstanceProfileName}.Se è specificato, le
AdditionalIamPoliciesimpostazioniS3Accessand non possono essere specificate.Si consiglia di specificare una o entrambe
AdditionalIamPoliciesle impostazioniS3Accesse poiché le funzionalità aggiunte richiedono AWS ParallelCluster spesso nuove autorizzazioni. 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.
InstanceProfileInstanceRoleIl formato èarn:${Partition}:iam::${Account}:role/${RoleName}.Se è specificato, le
AdditionalIamPoliciesimpostazioniS3Accessand non possono essere specificate.Si consiglia di specificare una o entrambe
AdditionalIamPoliciesle impostazioniS3Accesse 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
InstanceRoleimpostazioniInstanceProfileand non possono essere specificate.Si consiglia di specificare una o entrambe
AdditionalIamPoliciesle impostazioniS3Accesse poiché le funzionalità aggiunte richiedono AWS ParallelCluster spesso nuove autorizzazioni.S3Access: - BucketName:stringEnableWriteAccess:booleanKeyName:stringPolitica 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)-
Specifica un elenco di Amazon Resource Names (ARNs) di 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
InstanceRoleimpostazioniInstanceProfileand non possono essere specificate.Si consiglia di utilizzarle
AdditionalIamPoliciesperchéAdditionalIamPoliciesvengono aggiunte alle autorizzazioni richieste eInstanceRoledevono 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:stringPolitica di aggiornamento: questa impostazione può essere modificata durante un aggiornamento.
Policy(Obbligatorio,[String])-
Elenco delle politiche IAM.
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:integerQueueUpdateStrategy:stringEnableMemoryBasedScheduling:booleanCustomSlurmSettings:[dict]CustomSlurmSettingsIncludeFile:stringDatabase: Uri:stringUserName:stringPasswordSecretArn:stringExternalSlurmdbd: Host:stringPort:integerDns: DisableManagedDns:booleanHostedZoneId:stringUseEc2Hostnames: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. 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 comandi Slurm 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 di rimozione successiva di. 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.shDopo 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 0o 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") -
QueueUpdateStrategy(Facoltativo,String)-
Specifica la strategia di sostituzione per i parametri di SlurmQueues sezione che hanno la seguente politica di aggiornamento:
Il
QueueUpdateStrategyvalore viene utilizzato solo all'avvio di un processo di aggiornamento del cluster.Valori validi:
COMPUTE_FLEET_STOP|DRAIN|TERMINATEValore predefinito:
COMPUTE_FLEET_STOPDRAIN-
I nodi nelle code con valori dei parametri modificati sono impostati su.
DRAININGI 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.
QueueUpdateStrategyCon questa impostazione, l'aggiornamento dei parametri indicati 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 terminati 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)-
Se
true, la pianificazione basata sulla memoria è abilitata in. Slurm Per ulteriori informazioni, vedere SlurmQueues//. ComputeResourcesSchedulableMemoryIl 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 Slurm pianificazione basata sulla memoria.
Nota
EnableMemoryBasedSchedulingè supportato a partire dalla versione 3.2.0. AWS ParallelClusterNota
Per le AWS ParallelCluster versioni da 3.2.0 a 3.6.
x, non EnableMemoryBasedScheduling può essere abilitato se configuri più tipi di istanza in Istanze. 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.confAWS ParallelClusterOgni 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 key pair, come illustrato negli esempi seguenti:
- Param1: 100 - Param2: "SubParam1,SubParam2=SubValue2"Esempio reso in Slurm configurazione:
Param1=100 Param2=SubParam1,SubParam2=SubValue2I 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 settingsEsempio, 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 settingsNota
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 in
CustomSlurmSettings, non è necessario specificare parametri di Slurm configurazione personalizzati perCustomSlurmSettingsIncludeFile.È possibile specificare solo parametri Slurm di configurazione che non sono negati in.
CustomSlurmSettingsPer informazioni sui parametri di Slurm configurazione non elencati, vedere. Non inserito nell'elenco Slurm parametri di configurazione per CustomSlurmSettingsAWS 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. È tua responsabilità convalidare i 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 ParallelClusterSlurm personalizzazione 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.conffile generato AWS ParallelCluster .È necessario includere il percorso del file. Il percorso può iniziare con
https://os3://.Se si specificano parametri Slurm di configurazione personalizzati per
CustomSlurmSettingsIncludeFile, 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.
CustomSlurmSettingsIncludeFilePer informazioni sui parametri di Slurm configurazione non elencati, vedere. Non inserito nell'elenco Slurm parametri di configurazione per CustomSlurmSettingsAWS 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. È tua responsabilità convalidare i 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 ParallelClusterSlurm personalizzazione 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 Slurm contabilità con AWS ParallelCluster.
Database: Uri:stringUserName:stringPasswordSecretArn:string
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:porte 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.
-
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.
PasswordSecretArn(Obbligatorio,String)-
L'Amazon Resource Name (ARN) del AWS Secrets Manager segreto che contiene la password in chiaro
UserName. Questa password viene utilizzata insiemeUserNameall'account per l'autenticazione sul server del database. SlurmNota
-
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.
-
Non è possibile utilizzare il carattere '#' nella password del database poiché Slurm non lo supporta in slurmdbd.conf.
Se l'utente ha il permesso di farlo DescribeSecret,
PasswordSecretArnviene convalidato.PasswordSecretArnè valido se il segreto specificato esiste. Se la policy IAM dell'utente non includeDescribeSecret,PasswordSecretArnnon viene convalidata e viene visualizzato un messaggio di avviso. Per ulteriori informazioni, consulta Politica AWS ParallelCluster pcluster utente di base.Quando esegui l'aggiornamento
PasswordSecretArn, 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.shavvertimento
Si consiglia di modificare la password del database solo quando la flotta di elaborazione viene interrotta per evitare la perdita di dati contabili.
-
DatabaseName(Facoltativo,String)-
Nome del database sul server di database (definito dal parametro Uri) da utilizzare per la 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 corrisponde al
StorageLocparametro di slurmdbd.conf. Se non
DatabaseNameviene fornito, ParallelCluster utilizzerà il nome del cluster per definire un valore per.StorageLocL'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 la funzionalità di contabilità. Slurm
-
Nota
Databaseviene aggiunto a partire dalla versione 3.3.0.
ExternalSlurmdbd
(Facoltativo) Definisce le impostazioni per abilitare l'SlurmAccounting con un server slurmdbd esterno. Per ulteriori informazioni, vedere Slurm Accounting with. AWS ParallelCluster
ExternalSlurmdbd: Host:stringPort:integer
Proprietà ExternalSlurmdbd
Host(Obbligatorio,String)-
L'indirizzo del server slurmdbd esterno per la contabilità. Slurm L'host può essere un indirizzo IP o un nome DNS 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 Slurm che si applicano all'intero cluster.
Dns: DisableManagedDns:booleanHostedZoneId:stringUseEc2Hostnames:boolean
Proprietà Dns
DisableManagedDns(Facoltativo,Boolean)-
Se
true, 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. SeDisableManagedDnsè 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 il DNS EC2 predefinito di Amazon, imposta suUseEc2Hostnames.trueIn 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 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.
UseEc2Hostnames(Facoltativo,Boolean)-
Se
true, i nodi di calcolo del cluster sono configurati con il nome EC2 host 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 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 ParallelClusterprologscript and:epilog-
prologviene eseguito per aggiungere informazioni/etc/hostssui nodi ai nodi di calcolo quando ogni lavoro viene allocato. -
epilogviene eseguito per pulire i contenuti scritti da.prolog
Per aggiungere script
prologoepilogscript personalizzati, aggiungili rispettivamente alle/opt/slurm/etc/pcluster/epilog.d/cartelle/opt/slurm/etc/pcluster/prolog.d/o. -