Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Corriger les AMI et remplacer les EC2 instances
Pour garantir que tous les nœuds de calcul de cluster lancés dynamiquement se comportent de manière cohérente, AWS ParallelCluster désactivez les mises à jour automatiques du système d'exploitation des instances de cluster. De plus, un ensemble spécifique de AWS ParallelCluster AMIs est créé pour chaque version de AWS ParallelCluster et pour la CLI associée. Cet ensemble spécifique AMIs reste inchangé et ils ne sont pris en charge que par la AWS ParallelCluster version pour laquelle ils ont été conçus. AWS ParallelCluster AMIscar les versions publiées ne sont pas mises à jour.
Toutefois, en raison de problèmes de sécurité émergents, les clients souhaiteront peut-être y ajouter des correctifs, AMIs puis mettre à jour leurs clusters avec l'AMI corrigée. Cela s'aligne sur le modèle de responsabilitéAWS ParallelCluster partagée.
Pour afficher l'ensemble spécifique AWS ParallelCluster AMIs pris en charge par la version de la AWS ParallelCluster CLI que vous utilisez actuellement, exécutez :
$
pcluster version
Affichez ensuite le fichier amis.txt
Le nœud AWS ParallelCluster principal est une instance statique et vous pouvez le mettre à jour manuellement. Le redémarrage et le redémarrage du nœud principal sont entièrement pris en charge à partir de AWS ParallelCluster la version 2.11, si le type d'instance ne possède pas de magasin d'instance. Pour plus d'informations, consultez la section Types d'instances avec volumes de stockage d'instance dans le Guide de EC2 l'utilisateur Amazon pour les instances Linux. Vous ne pouvez pas mettre à jour une AMI pour un cluster existant.
Le redémarrage du nœud principal et le redémarrage avec les mises à jour de l'AMI des instances de calcul du cluster sont entièrement pris en charge à partir de AWS ParallelCluster la version 3.0.0. Envisagez de passer à la version la plus récente pour utiliser ces fonctionnalités.
Mise à jour ou remplacement de l'instance du nœud principal
Dans certains cas, il peut vous être demandé de redémarrer ou de redémarrer le nœud principal. Par exemple, cela est nécessaire lorsque vous mettez à jour manuellement le système d'exploitation ou lorsqu'une mise hors service planifiée d'une AWS instance impose le redémarrage de l'instance du nœud principal.
Si votre instance ne possède pas de lecteurs éphémères, vous pouvez l'arrêter et la redémarrer à tout moment. En cas de mise hors service planifiée, le démarrage de l'instance arrêtée permet de la faire migrer pour utiliser le nouveau matériel.
De même, vous pouvez arrêter et démarrer manuellement une instance qui ne possède pas de magasins d'instances. Pour ce cas et pour les autres cas d'instances sans volumes éphémères, passez à. Arrêter et démarrer le nœud principal d'un cluster
Si votre instance possède des disques éphémères et qu'elle a été arrêtée, les données du magasin d'instances sont perdues. Vous pouvez déterminer si le type d'instance utilisé pour le nœud principal comporte des magasins d'instance à partir du tableau figurant dans la section Volumes de stockage d'instance.
Les sections suivantes décrivent les limites liées à l'utilisation d'instances avec des volumes de stockage d'instance.
Limites du stockage d'instances
Les limites liées à l'utilisation de AWS ParallelCluster la version 2.11 et des types d'instance avec un magasin d'instances sont les suivantes :
-
Lorsque les lecteurs éphémères ne sont pas chiffrés (le encrypted_ephemeralparamètre est défini sur
false
ou non), une AWS ParallelCluster instance ne peut pas démarrer après son arrêt. Cela est dû au fait que des informations sur d'anciennes données éphémères inexistantes sont enregistréesfstab
et que le système d'exploitation essaie de monter un stockage inexistant. -
Lorsque les lecteurs éphémères sont chiffrés (le encrypted_ephemeralparamètre est défini sur
true
), une AWS ParallelCluster instance peut être démarrée après un arrêt, mais les nouveaux lecteurs éphémères ne sont pas configurés, montés ou disponibles. -
Lorsque les disques éphémères sont chiffrés, une AWS ParallelCluster instance peut être redémarrée, mais les anciens disques éphémères (qui survivent au redémarrage de l'instance) ne sont pas accessibles car la clé de chiffrement est créée dans la mémoire perdue lors du redémarrage.
Le seul cas pris en charge est le redémarrage de l'instance, lorsque les disques éphémères ne sont pas chiffrés. Cela est dû au fait que le lecteur survit au redémarrage et qu'il est remonté grâce à fstab
l'entrée écrite.
Solutions de contournement des limites du stockage d'instances
Enregistrez d'abord vos données. Pour vérifier si certaines données doivent être conservées, consultez le contenu du ephemeral_dir dossier (/scratch
par défaut). Vous pouvez transférer les données vers le volume racine ou vers les systèmes de stockage partagés connectés au cluster, tels qu'Amazon FSx, Amazon EFS ou Amazon EBS. Notez que le transfert de données vers un stockage à distance peut entraîner des coûts supplémentaires.
La cause première de ces limitations réside dans la logique AWS ParallelCluster utilisée pour formater et monter les volumes de stockage d'instance. La logique ajoute une entrée /etc/fstab
au formulaire :
$
/dev/vg.01/lv_ephemeral ${ephemeral_dir} ext4 noatime,nodiratime 0 0
${ephemeral_dir}
est la valeur du ephemeral_dir paramètre du fichier de configuration de pcluster (par défaut). /scratch
Cette ligne est ajoutée afin que si ou lorsqu'un nœud est redémarré, les volumes de stockage d'instance soient automatiquement remontés. Cela est souhaitable car les données contenues dans les disques éphémères persistent après le redémarrage. Cependant, les données des disques éphémères ne sont pas conservées pendant un cycle de démarrage ou d'arrêt. Cela signifie qu'ils sont formatés et montés sans aucune donnée.
Le seul cas pris en charge est le redémarrage de l'instance lorsque les disques éphémères ne sont pas chiffrés. Cela est dû au fait que le lecteur survit au redémarrage et est remonté parce qu'il est écritfstab
.
Pour préserver les données dans tous les autres cas, vous devez supprimer l'entrée de volume logique avant d'arrêter l'instance. Par exemple, supprimez /dev/vg.01/lv_ephemeral
de /etc/fstab
avant d'arrêter l'instance. Ensuite, vous démarrez l'instance sans monter les volumes éphémères. Cependant, le montage du magasin d'instance ne sera à nouveau plus disponible après l'arrêt ou le démarrage de l'instance.
Après avoir enregistré vos données, puis supprimé l'fstab
entrée, passez à la section suivante.
Arrêter et démarrer le nœud principal d'un cluster
Note
À partir de AWS ParallelCluster la version 2.11, l'arrêt et le démarrage du nœud principal ne sont pris en charge que si le type d'instance ne possède pas de magasin d'instance.
-
Vérifiez qu'aucune tâche n'est en cours d'exécution dans le cluster.
Lorsque vous utilisez un Slurm planificateur :
-
Si l'
sbatch
--no-requeue
option n'est pas spécifiée, les tâches en cours d'exécution sont requises. -
Si l'
--no-requeue
option est spécifiée, les tâches en cours d'exécution échouent.
-
-
Demandez l'arrêt d'un parc de calcul en cluster :
$
pcluster stop
cluster-name
Compute fleet status is: RUNNING. Submitting status change request. Request submitted successfully. It might take a while for the transition to complete. Please run 'pcluster status' if you need to check compute fleet status
-
Attendez que l'état du parc informatique soit le suivant
STOPPED
:$
pcluster status
cluster-name
... ComputeFleetStatus: STOP_REQUESTED
$
pcluster status
cluster-name
... ComputeFleetStatus: STOPPED
-
Pour les mises à jour manuelles avec redémarrage du système d'exploitation ou redémarrage d'une instance, vous pouvez utiliser le AWS Management Console ou AWS CLI. Voici un exemple d'utilisation du AWS CLI.
$
aws ec2 stop-instances --instance-ids
1234567890abcdef0
{ "StoppingInstances": [ { "CurrentState": { "Name": "stopping" ... }, "InstanceId": "i-1234567890abcdef0", "PreviousState": { "Name": "running" ... } } ] }
$
aws ec2 start-instances --instance-ids
1234567890abcdef0
{ "StartingInstances": [ { "CurrentState": { "Name": "pending" ... }, "InstanceId": "i-1234567890abcdef0", "PreviousState": { "Name": "stopped" ... } } ] }
-
Démarrez le parc de calcul du cluster :
$
pcluster start
cluster-name
Compute fleet status is: STOPPED. Submitting status change request. Request submitted successfully. It might take a while for the transition to complete. Please run 'pcluster status' if you need to check compute fleet status