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.
Exemple : exécutez des opérations de démarrage anticipées à l'aide d'un boothook d'initialisation cloud
Indiquez ce script comme valeur de "userData" dans votre modèle de lancement. Pour plus d’informations, consultez Utilisation des données utilisateur Amazon EC2 pour AWS PIÈCES.
Certaines configurations doivent être exécutées au tout début de la séquence de démarrage, avant le démarrage du AWS PCS et avant qu'un service n'utilise le matériel. Les cas typiques sont les commandes de configuration GPU qui ne peuvent pas prendre effet tant que les processus les maintiennent, comme l'activation du mode NVIDIA Multi-Instance GPU (MIG), et les opérations qui nécessitent un redémarrage pour prendre effet, telles que la modification du mode GPU ECC. Un redémarrage à ce stade est sûr, car le bootstrap du AWS PCS n'a pas encore démarré. Ne redémarrez pas plus tard dans le processus de démarrage, par exemple à partir d'un script d'action sur le cycle de vie d'un nœud : un redémarrage interrompt la séquence d'amorçage du AWS PCS. Pour plus d’informations, consultez Meilleures pratiques pour les actions relatives au cycle de vie des nœuds dans AWS PIÈCES.
Pour créer le boot hook, ajoutez un bloc avec le type de contenu text/cloud-boothook à vos données utilisateur. Le bloc contient le script lui-même. Un boothook est le premier hook disponible dans les données utilisateur : il l'cloud-initexécute dès qu'il traite le bloc, avant les cloud-config directives telles que bootcmd et avant les blocs de données utilisateur AWS PCS qui enregistrent le nœud. Un boothook s'exécute à chaque démarrage, y compris au redémarrage qu'il peut lui-même déclencher. Le script doit donc être idempotent : vérifiez d'abord l'état actuel et ignorez les tâches déjà effectuées. Pour plus d’informations, consultez la documentation cloud-init
L'exemple suivant active le mode MIG sur tous les GPU et crée les instances MIG à chaque démarrage. Aucun client GPU n'ayant encore démarré, le changement de mode prend effet immédiatement et aucun redémarrage n'est nécessaire.
MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="==MYBOUNDARY==" --==MYBOUNDARY== Content-Type: text/cloud-boothook; charset="us-ascii" #!/bin/bash if ! nvidia-smi -i 0 -q | grep -A1 'MIG Mode' | grep -q 'Current.*Enabled'; then nvidia-smi -mig 1 fi if [ -z "$(nvidia-smi -L | grep MIG)" ]; then for i in 0 1 2 3 4 5 6 7; do nvidia-smi mig -i $i -cgi 9,14,19,19 -C done fi --==MYBOUNDARY==--
Si votre opération indique qu'un redémarrage est nécessaire, redémarrez à partir du même crochet de démarrage après le changement d'état. Au démarrage suivant, les contrôles d'idempotence détectent le travail déjà effectué, de sorte que le nœud continue normalement dans le bootstrap du AWS PCS.