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
eawsbatch
.Nota
awsbatch
supporta solo il sistemaalinux2
operativo ex86_64
la piattaforma. ScalingStrategy
(Facoltativo,String
)-
Consente di scegliere la scalabilità dei nodi Slurm dinamici. I valori supportati sono
all-or-nothing
,greedy-all-or-nothing
ebest-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-nothing
Questa 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.
CapacityType
(Facoltativo,String
)-
Il tipo di risorse di calcolo utilizzate dalla AWS Batch coda. I valori supportati sono
ONDEMAND
, oSPOT
.CAPACITY_BLOCK
Il valore predefinito èONDEMAND
.Nota
Se lo
CapacityType
impostiSPOT
, il tuo account deve contenere un ruoloAWSServiceRoleForEC2Spot
collegato al servizio. È possibile creare questo ruolo utilizzando il seguente AWS CLI comando.$
aws iam create-service-linked-role --aws-service-name spot.amazonaws.comPer 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.
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.
AssignPublicIp
(Facoltativo,String
)-
Crea o assegna un indirizzo IP pubblico ai nodi della AWS Batch coda. I valori supportati sono
true
efalse
. 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:
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.
InstanceTypes
(Obbligatorio,)[String]
-
L'array di tipi di istanze dell'ambiente di AWS Batch calcolo. Tutti i tipi di istanza devono utilizzare l'
x86_64
architettura. 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 inMaxvCpus
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
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
CapacityReservationTarget
viene 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 eseguite
rhel8
, 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:
-
Se
PlacementGroup
è abilitato in SlurmQueues/Networkingo SlurmQueues/ComputeResources/Networking, AWS ParallelCluster seleziona un gruppo di risorse destinato al tipo di istanza ePlacementGroup
per una risorsa di calcolo, se la risorsa di calcolo esiste.PlacementGroup
Deve avere come target uno dei tipi di istanza definiti in. ComputeResources -
Se
PlacementGroup
non è 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 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à.
-
CapacityType
(Facoltativo,String
)-
Il tipo di risorse di calcolo utilizzate dalla Slurm coda. I valori supportati sono
ONDEMAND
oSPOT
. Il valore predefinito èONDEMAND
.Nota
Se lo imposti su
SPOT
,CapacityType
il tuo account deve avere un ruolo collegato alAWSServiceRoleForEC2Spot
servizio. È possibile creare questo ruolo utilizzando il comando seguente AWS CLI .$
aws iam create-service-linked-role --aws-service-name spot.amazonaws.comPer 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.
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 utilizza
CapacityType = ONDEMAND
, EC2 Fleet utilizza il prezzo per determinare l'ordine e avvia prima le istanze con il prezzo più basso. -
Se lo utilizzi
CapacityType = 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 impostata
CapacityType = CAPACITY_BLOCK
, non esistono strategie di allocazione, pertanto ilAllocationStrategy
parametro non può essere configurato.
-
capacity-optimized
-
-
Se impostato
CapacityType = ONDEMAND
,capacity-optimized
non è disponibile. -
Se impostata
CapacityType = SPOT
, EC2 Fleet lancia le istanze dai pool di istanze Spot con una capacità ottimale per il numero di istanze da avviare.
-
Nota
AllocationStrategy
è supportato a partire dalla versione 3.3.0. AWS ParallelCluster JobExclusiveAllocation
(Facoltativo,String
)-
Se impostato su
true
, ilOverSubscribe
flag Slurm della partizione è impostato su.EXCLUSIVE
WhenOverSubscribe
=EXCLUSIVE
, i job nella partizione hanno accesso esclusivo a tutti i nodi allocati. Per ulteriori informazioni, vedete EXCLUSIVEnella 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 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.
CustomSlurmSettings
Per informazioni sui parametri di Slurm configurazione non elencati, vedere. Non inserito nell'elencoSlurmparametri di configurazione perCustomSlurmSettingsAWS 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.
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
/Gpu
nei nodi che utilizzano sistemi operativialinux2
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
.
Gpu
comportamento dei controlli sanitari-
Se
Gpu
/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 delloGpu
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 lodcgmi
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:-
Rileva se i
nvidia-fabricmanager
servizinvidia-dcgm
and sono in esecuzione. -
Se questi servizi non sono in esecuzione, il controllo
Gpu
sanitario li avvia. -
Rileva se la modalità di persistenza è abilitata.
-
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, ilGpu
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
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-1
e nonsubnet-2
possono essere entrambi in AZ-1.subnet-1
può essere in AZ-1 esubnet-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, definisci
ComputeResources
/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
efalse
. 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. 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
Enabled
(Facoltativo,)Boolean
-
Indica se viene utilizzato un gruppo di posizionamento per la Slurm coda. Il valore predefinito è
false
. 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.
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 unName
oId
definito, 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:
string
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.
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
Image
Proprietà
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
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
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'
arm64
architetturax86_64
or.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
.InstanceType
Per 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 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.
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
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.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.
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.
-
Diverse dimensioni 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 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.
-
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
MaxCount
(Facoltativo,Integer
)-
Il numero massimo di istanze utilizzate dalla risorsa di Slurm calcolo. Il valore predefinito è 10.
Quando viene utilizzato
CapacityType = CAPACITY_BLOCK
,MaxCount
deve essere ugualeMinCount
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'utilizzo
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
Weight
configurazione 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
DynamicNodePriority
viene 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
Weight
configurazione 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 ParallelClusterPolitica 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.
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 Guida per l'utente di Amazon EC2.
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 diAPI 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 daitipi 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
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
/Gpu
nei nodi che utilizzano sistemi operativialinux2
ARM. Queste piattaforme non supportano NVIDIA Data Center GPU Manager (DCGM).
Gpu
comportamento 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
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 delloGpu
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 lodcgmi
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:-
Rileva se i
nvidia-fabricmanager
servizinvidia-dcgm
and sono in esecuzione. -
Se questi servizi non sono in esecuzione, il controllo
Gpu
sanitario li avvia. -
Rileva se la modalità di persistenza è abilitata.
-
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, ilGpu
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
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.
GdrSupport
(Boolean
Facoltativo,)-
(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
,centos7
ubuntu1804
, o).ubuntu2004
Il valore predefinito è false.
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).
-
Se
PlacementGroup
è abilitato in SlurmQueues/Networkingo SlurmQueues/ComputeResources/Networking, AWS ParallelCluster seleziona un gruppo di risorse destinato al tipo di istanza e a una risorsaPlacementGroup
di calcolo, se esistente.PlacementGroup
Deve avere come target uno dei tipi di istanze definiti in. ComputeResources -
Se
PlacementGroup
non è 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
CapacityReservationTarget
viene aggiunto con la AWS ParallelCluster versione 3.3.0. Networking
-
Networking: PlacementGroup: Enabled:
boolean
Name:string
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 su
true
, senza unaName
definizione, a quella risorsa di calcolo viene assegnato un proprio gruppo di posizionamento gestito, indipendentemente dall'impostazione SlurmQueues/Networking/PlacementGroup. -
Se è impostata su
true
, con unaName
definizione, 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
/Enabled
eName
non sono impostati, i rispettivi valori predefiniti sono PlacementGrouple impostazioni SlurmQueues/Networking/. -
ComputeResources
/Networking
/PlacementGroup
viene 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.
CustomSlurmSettings
Per informazioni sui parametri di Slurm configurazione non elencati, vedere. Non inserito nell'elencoSlurmparametri di configurazione perCustomSlurmSettingsAWS 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.
ComputeResource
i 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.
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
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
RootVolume
(Facoltativo)-
Specifica i dettagli del volume principale dei nodi nella Slurm coda.
RootVolume: Size:
integer
Encrypted:boolean
VolumeType:string
Iops:integer
Throughput:integer
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'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
,io2
sc1
,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.
Iops
(Facoltativo,Boolean
)-
Definisce il numero di IOPS e
io1
io2
ilgp3
tipo di volumi.Il valore predefinito, i valori supportati e il
volume_size
rapportovolume_iops
di rapporto variano in base aVolumeType
eSize
.VolumeType
=io1
-
Valore predefinito
Iops
= 100Valori supportati
Iops
= 100—64000 †volume_size
Rapporto massimovolume_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 volumiio2
Block Express) †Size
Rapporto massimoIops
= 500 IOPS per GiB. 5000 IOPS richiedono almeno 10 GiB.Size
VolumeType
=gp3
-
Valore predefinito = 3000
Iops
Valori supportati
Iops
= 3000—16000 †Size
Rapporto 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.
io1
I volumi precedenti potrebbero non raggiungere le massime prestazioni a meno che non si modifichi il volume.io2
I volumi Block Express supportanovolume_iops
valori fino a 256000 sui tipi diR5b
istanza. Per ulteriori informazioni, consulta i volumiio2
Block Express nella Guida per l'utente di Amazon EC2. 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/sIl rapporto tra a non
Iops
può essere superioreThroughput
a 0,25. Il throughput massimo di 1000 MiB/s richiede che l'Iops
impostazione 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.
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
MountDir
(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:
string
Args: -string
Script:string
Args: -string
OnNodeConfigured: Sequence: - Script:string
Args: -string
Script:string
Args: -string
CustomActions
Proprietà
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.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
Sequence
personalizzata. 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
Sequence
viene 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.
Iam
Proprietà
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
impostazioniS3Access
and non possono essere specificate.Si consiglia di specificare una o entrambe
AdditionalIamPolicies
le impostazioniS3Access
e 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.
InstanceProfile
InstanceRole
Il formato èarn:${Partition}:iam::${Account}:role/${RoleName}
.Se è specificato, le
AdditionalIamPolicies
impostazioniS3Access
and non possono essere specificate.Si consiglia di specificare una o entrambe
AdditionalIamPolicies
le impostazioniS3Access
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
impostazioniInstanceProfile
and non possono essere specificate.Si consiglia di specificare una o entrambe
AdditionalIamPolicies
le impostazioniS3Access
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
impostazioniInstanceProfile
and non possono essere specificate.Si consiglia di utilizzarle
AdditionalIamPolicies
perchéAdditionalIamPolicies
vengono aggiunte alle autorizzazioni richieste eInstanceRole
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.
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:
integer
QueueUpdateStrategy:string
EnableMemoryBasedScheduling:boolean
CustomSlurmSettings:[dict]
CustomSlurmSettingsIncludeFile:string
Database: Uri:string
UserName:string
PasswordSecretArn:string
Dns: DisableManagedDns:boolean
HostedZoneId:string
UseEc2Hostnames:boolean
SlurmSettings
Proprietà
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 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:
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
)-
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 Slurmpianificazione 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.conf
AWS 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 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 in
CustomSlurmSettings
, 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 perCustomSlurmSettingsAWS 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 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.
CustomSlurmSettingsIncludeFile
Per informazioni sui parametri di Slurm configurazione non elencati, vedere. Non inserito nell'elencoSlurmparametri di configurazione perCustomSlurmSettingsAWS 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
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.
-
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 insiemeUserName
all'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.
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'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 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.
-
Nota
Database
viene 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
Dns
Proprietà
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 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 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 host EC2 predefinito. SlurmNodeHostName
Viene 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 ParallelClusterprolog
script and:epilog
-
prolog
viene eseguito per aggiungere informazioni/etc/hosts
sui nodi ai nodi di calcolo quando ogni lavoro viene allocato. -
epilog
viene eseguito per pulire i contenuti scritti da.prolog
Per aggiungere
epilog
scriptprolog
o personalizzati, aggiungili rispettivamente alle/opt/slurm/etc/pcluster/epilog.d/
cartelle/opt/slurm/etc/pcluster/prolog.d/
o. -