Exécution de documents à partir d'emplacements distants - AWS Systems Manager

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.

Exécution de documents à partir d'emplacements distants

Vous pouvez exécuter des documents AWS Systems Manager (SSM) à partir de sites distants en utilisant le SSM document AWS-RunDocument prédéfini. Ce document prend en charge l'exécution de SSM documents stockés dans les emplacements suivants :

  • GitHubRéférentiels publics et privés (GitHub Enterprisenon pris en charge)

  • Compartiments Amazon S3

  • Systems Manager

Bien que vous puissiez également exécuter des documents distants en utilisant State Manager ou Automation, les fonctionnalités de AWS Systems Manager, la procédure suivante décrit uniquement comment exécuter SSM des documents distants AWS Systems Manager Run Command à l'aide de la console Systems Manager.

Note

AWS-RunDocumentpeut être utilisé pour exécuter uniquement des SSM documents de type commande, pas d'autres types tels que les runbooks d'automatisation. AWS-RunDocument utilise aws:downloadContent. Pour plus d'informations sur le plugin aws:downloadContent, consultez aws:downloadContent.

Avant de commencer

Avant d'exécuter un document distant, vous devez effectuer les tâches suivantes :

  • Créez un document de SSM commande et enregistrez-le dans un emplacement distant. Pour plus d’informations, consultez Création du contenu d'SSMun document.

  • Si vous envisagez d'exécuter un document distant stocké dans un GitHub référentiel privé, vous devez créer un SecureString paramètre Systems Manager pour votre jeton d'accès GitHub de sécurité. Vous ne pouvez pas accéder à un document distant dans un GitHub dépôt privé en transmettant manuellement votre jetonSSH. Le jeton d'accès doit être transmis en tant que paramètre Systems Manager SecureString. Pour plus d'informations sur la création d'un paramètre SecureString, consultez Création de paramètres Systems Manager.

Exécuter un document distant (console)

Pour exécuter un document distant
  1. Ouvrez la AWS Systems Manager console à l'adresse https://console.aws.amazon.com/systems-manager/.

  2. Dans le panneau de navigation, sélectionnez Run Command.

  3. Sélectionnez Run Command (Exécuter la commande).

  4. Dans la liste Document, sélectionnez AWS-RunDocument.

  5. Dans Paramètres de commande, pour Type de source, sélectionnez une option.

    • Si vous le souhaitez GitHub, spécifiez les informations sur la source au format suivant :

      { "owner": "owner_name", "repository": "repository_name", "path": "path_to_document", "getOptions":"branch:branch_name", "tokenInfo": "{{ssm-secure:secure-string-token}}" }

      Par exemple :

      { "owner":"TestUser", "repository":"GitHubTestExamples", "path":"scripts/python/test-script", "getOptions":"branch:exampleBranch", "tokenInfo":"{{ssm-secure:my-secure-string-token}}" }
      Note

      getOptions sont des options supplémentaires pour récupérer le contenu d'une branche autre que master ou d'un commit spécifique dans le référentiel. getOptions peut être omise si vous utilisez la dernière validation dans la branche maître. Le branch paramètre n'est obligatoire que si votre SSM document est stocké dans une branche autre quemaster.

      Pour utiliser la version de votre SSM document dans un commit spécifique de votre dépôt, utilisez commitID with getOptions au lieu debranch. Par exemple :

      "getOptions": "commitID:bbc1ddb94...b76d3bEXAMPLE",
    • Si vous sélectionnez S3, spécifiez les informations source au format suivant :

      {"path":"URL_to_document_in_S3"}

      Par exemple :

      {"path":"https://s3.amazonaws.com/amzn-s3-demo-bucket/scripts/ruby/mySSMdoc.json"}
    • Si vous le souhaitez SSMDocument, spécifiez les informations sur la source au format suivant :

      {"name": "document_name"}

      Par exemple :

      {"name": "mySSMdoc"}
  6. Dans le champ Paramètres du document, entrez les paramètres du SSM document distant. Par exemple, si vous exécutez le document AWS-RunPowerShell, vous pouvez spécifier ce qui suit :

    {"commands": ["date", "echo \"Hello World\""]}

    Si vous exécutez le document AWS-ConfigureAWSPack, vous pouvez spécifier ce qui suit :

    { "action":"Install", "name":"AWSPVDriver" }
  7. Dans la section Targets (Cibles), sélectionnez les nœuds gérés sur lesquels vous souhaitez exécuter cette opération en spécifiant des balises, en sélectionnant des instances ou des appareils de périphérie manuellement ou en spécifiant un groupe de ressources.

    Astuce

    Si, contrairement à vos attentes, un nœud géré ne figure pas dans la liste, consultez Résolution des problèmes de disponibilité des nœuds gérés pour obtenir des conseils de dépannage.

  8. Pour Autres paramètres :

    • Pour Comment (Commentaire), saisissez des informations à propos de cette commande.

    • Pour Délai (secondes), précisez le nombre de secondes durant lesquelles le système doit attendre avant de mettre en échec l'exécution de la commande globale.

  9. Pour Rate control (Contrôle de débit) :

    • Dans Concurrency (Simultanéité), spécifiez un nombre ou un pourcentage de nœuds gérés sur lesquels exécuter simultanément la commande.

      Note

      Si vous avez sélectionné des cibles en spécifiant les balises appliquées aux nœuds gérés ou en spécifiant des groupes de ressources AWS , et que vous n'êtes pas certain du nombre de nœuds gérés ciblés, limitez le nombre de cibles autorisées à exécuter simultanément le document en indiquant un pourcentage.

    • Dans Error threshold (Seuil d'erreur), indiquez quand arrêter l'exécution de la commande sur les autres nœuds gérés après l'échec de celle-ci sur un certain nombre ou un certain pourcentage de nœuds. Si, par exemple, vous spécifiez trois erreurs, Systems Manager cesse d'envoyer la commande à la réception de la quatrième erreur. Les nœuds gérés sur lesquels la commande est toujours en cours de traitement peuvent également envoyer des erreurs.

  10. (Facultatif) Pour Output options (Options de sortie), pour enregistrer la sortie de la commande dans un fichier, cochez la case Write command output to an S3 bucket (Écrire la sortie de commande vers un compartiment S3). Saisissez les noms de compartiment et de préfixe (dossier) dans les zones.

    Note

    Les autorisations S3 qui permettent d'écrire les données dans un compartiment S3 sont celles du profil d'instance (pour les EC2 instances) ou du rôle de IAM service (machines activées par des hybrides) attribué à l'instance, et non celles de l'IAMutilisateur effectuant cette tâche. Pour plus d'informations, consultez Configurer les autorisations d'instance requises pour Systems Manager ou Créer un rôle de IAM service pour un environnement hybride. En outre, si le compartiment S3 spécifié se trouve dans un autre compartiment Compte AWS, assurez-vous que le profil d'instance ou le rôle de IAM service associé au nœud géré dispose des autorisations nécessaires pour écrire dans ce compartiment.

  11. Dans la section SNSdes notifications, si vous souhaitez que des notifications soient envoyées concernant le statut de l'exécution de la commande, cochez la case Activer SNS les notifications.

    Pour plus d'informations sur la configuration SNS des notifications Amazon pourRun Command, consultezSurveillance des changements d'état du Systems Manager à l'aide des notifications Amazon SNS.

  12. Cliquez sur Exécuter.

Note

Pour plus d'informations sur le redémarrage des serveurs et des instances en appelant des scripts à l'aide de Run Command, consultez Gestion des redémarrages lors de l'exécution de commandes.