Création d'un Canary - Amazon CloudWatch

Création d'un Canary

Important

Assurez-vous que vous utilisez des scripts Canary Synthetics afin de surveiller uniquement les points de terminaison et les API dont vous êtes propriétaire ou pour lesquels vous disposez d'une autorisation. Selon les paramètres de fréquence des scripts Canary, ces points de terminaison peuvent connaître un trafic accru.

Lorsque vous utilisez la console CloudWatch pour créer un script Canary, vous pouvez utiliser un modèle fourni par CloudWatch pour créer votre script Canary ou écrire votre propre script. Pour de plus amples informations, consultez Utilisation des modèles de scripts Canary.

Vous pouvez également créer un script Canary à l'aide d'CloudFormation si vous utilisez votre propre script pour le script Canary. Pour de plus amples informations, veuillez consulter AWS::Synthetics::Canary dans le Guide de l'utilisateur AWS CloudFormation.

Si vous écrivez votre propre script, vous pouvez utiliser plusieurs fonctions que CloudWatch Synthetics a intégrées dans une bibliothèque. Pour de plus amples informations, consultez Versions d'exécution Synthetics.

Note

Lorsque vous créez un script Canary, l’une des couches générées est une couche Synthetics, dont le nom commence par Synthetics. Cette couche appartient au compte de service Synthetics et contient le code d’exécution.

Pour créer un script Canary
  1. Ouvrez la console CloudWatch à l’adresse https://console.aws.amazon.com/cloudwatch/.

  2. Dans le volet de navigation, sélectionnez Vigie applicative, Scripts Canary Synthetics.

  3. Choisissez Create Canary (Créer un script Canary).

  4. Sélectionnez l'une des méthodes suivantes :

    • Pour baser votre script Canary sur un modèle de script, choisissez Use a blueprint (Utiliser un modèle), puis le type de script Canary que vous souhaitez créer. Pour de plus amples informations sur les activités de chaque type de modèle, veuillez consulter Utilisation des modèles de scripts Canary.

    • Pour télécharger votre propre script Node.js afin de créer un script Canary personnalisé, choisissez Upload a script (Charger un script).

      Vous pouvez ensuite faire glisser votre script dans la zone Script ou choisir Browse files (Parcourir les fichiers) pour accéder au script dans votre système de fichiers.

    • Pour importer votre script à partir d'un compartiment S3, choisissez Import from S3 (Importer à partir de S3). Sous Source location (Emplacement source), saisissez le chemin d'accès complet à votre script Canary ou choisissez Browse S3 (Parcourir S3).

      Vous devez disposer d'autorisations s3:GetObject et s3:GetObjectVersion pour le compartiment S3 que vous utilisez. Le compartiment doit se trouver dans la même région AWS que celle où vous créez le script Canary.

  5. Sous Nom, entrez le nom du script Canary. Le nom est utilisé sur de nombreuses pages, donc nous vous recommandons de lui donner un nom descriptif qui le distingue des autres scripts Canary.

  6. Sous Application or endpoint URL (URL de l'application ou du point de terminaison), entrez l'URL que vous souhaitez tester avec le script Canary. Cette URL doit inclure le protocole (par exemple, https://).

    Si vous voulez que le script Canary teste un point de terminaison sur un VPC, vous devez également saisir des informations sur votre VPC plus loin dans cette procédure.

  7. Si vous utilisez votre propre script pour le script Canary, sous le Lambda handler (Gestionnaire Lambda), saisissez le point d'entrée à partir duquel le script Canary doit commencer. Pour plus d’informations sur le format du gestionnaire Lambda, consultez Versions d’exécution Synthetics.

  8. Sous Éditeur de script, dans Version d’exécution, sélectionnez la version d’exécution Synthetics que le script Canary doit utiliser. Pour plus d’informations sur les versions d’exécution Synthetics, consultez Versions d’exécution Synthetics.

    Dans Configuration du navigateur, vous pouvez activer un navigateur pour tester le script Canary. Vous devez sélectionner au moins un navigateur.

  9. Si vous utilisez des variables d'environnement dans votre script, choisissez Environment variables (Variables d'environnement), puis spécifiez une valeur pour chaque variable d'environnement définie dans votre script. Pour de plus amples informations, consultez Variables d'environnement.

  10. Sous Schedule (Planification), choisissez si vous souhaitez exécuter ce script Canary une seule fois, l'exécuter en continu à l'aide d'une expression rate ou le planifier à l'aide d'une expression cron.

    • Lorsque vous utilisez la console CloudWatch pour créer un script Canary qui est exécuté en continu, vous pouvez choisir une fréquence comprise entre une fois par minute et une fois par heure.

  11. (Facultatif) Pour définir une valeur de délai d'attente pour le canary, choisissez Configuration supplémentaire puis spécifiez la valeur du délai d'attente. Ne pas dépasser 15 secondes pour permettre les démarrages à froid Lambda et le temps nécessaire pour démarrer l'instrumentation canary.

  12. Sous Conservation des données, spécifiez la durée de conservation des informations sur les exécutions de scripts Canary échouées et réussies. La plage va de 1 à 455 jours.

    Ce paramètre affecte la quantité d’informations renvoyées par les opérations GetCanaryRuns, ainsi que sur la quantité d’informations affichées dans la console Synthetics.

    Cela n'affecte pas les données stockées dans vos compartiments Amazon S3, ni les journaux ou les mesures publiés par Canary.

    Quelle que soit la période de conservation des données du script Canary, la quantité d’informations affichées dans la console est soumise à certaines limites. Dans la vue d’accueil de la console Synthetics, les plages de temps relatives et absolues sont limitées à sept jours. Dans la vue d’un script Canary spécifique de la console Synthetics, la plage de temps relative est limitée à sept jours et la plage de temps absolue est limitée à 30 jours.

  13. Sous Stockage de données, sélectionnez le compartiment Amazon S3 à utiliser pour stocker les données provenant des exécutions des tests du script Canary. Le nom du compartiment ne peut pas contenir de point (.). Si vous laissez ce champ vide, un compartiment Amazon S3 par défaut est utilisé ou créé.

  14. (Facultatif) Par défaut, les scripts canarys stockent leurs artefacts sur Amazon S3, et les artefacts sont chiffrés au repos à l'aide d'une clé AWS KMS gérée par AWS. Vous pouvez utiliser une autre option de chiffrement en choisissant Additional configuration (Configuration supplémentaire) dans la section Data Storage (Stockage de données). Vous pouvez ensuite choisir le type de clé à utiliser pour le chiffrement. Pour de plus amples informations, consultez Chiffrement des artefacts de script Canary.

  15. Sous Access permissions (Autorisations d'accès), choisissez si vous souhaitez créer un rôle IAM pour exécuter le script Canary ou utiliser un rôle existant.

    Si CloudWatch Synthetics crée le rôle, il inclut automatiquement toutes les autorisations nécessaires. Si vous souhaitez créer le rôle vous-même, consultez Rôles et autorisations requis pour les scripts Canary pour plus d'informations sur les autorisations nécessaires.

    Si vous utilisez la console CloudWatch pour créer un rôle pour un script Canary lors de création de ce dernier, vous ne pouvez pas réutiliser le rôle pour d'autres scripts Canary, car ces rôles sont spécifiques à un seul script Canary. Vous pouvez utiliser un rôle existant, si vous avez créé manuellement un rôle qui fonctionne pour plusieurs scripts Canary.

    Pour utiliser un rôle existant, vous devez avoir l'autorisation iam:PassRole de transmettre ce rôle à Synthetics et à Lambda. Vous devez également avoir l'autorisation iam:GetRole.

  16. (Facultatif) Sous Alarms (alertes), choisissez si vous souhaitez créer des alertes CloudWatch par défaut pour ce script Canary. Si vous choisissez de créer des alertes, elles sont créées selon la convention de nom suivante :Synthetics-Alarm-canaryName-index

    index est un numéro représentant chaque alerte créée pour ce script Canary. La première alerte a un index de 1, la deuxième alerte a un index de 2, et ainsi de suite.

  17. (Facultatif) Pour que ce script Canary teste un point de terminaison figurant sur un VPC, choisissez VPC settings (Paramètres VPC) et procédez comme suit :

    1. Sélectionnez le VPC qui héberge le point de terminaison.

    2. Sélectionnez un ou plusieurs sous-réseaux sur votre VPC. Vous devez sélectionner un sous-réseau privé, car une instance Lambda ne peut pas être configurée pour s'exécuter dans un sous-réseau public lorsqu'une adresse IP ne peut pas être attribuée à l'instance Lambda lors de l'exécution. Pour de plus amples informations, veuillez consulter Configuration d'une fonction Lambda pour accéder aux ressources d'un VPC.

    3. Sélectionnez un ou plusieurs groupes de sécurité sur votre VPC.

    4. Pour autoriser le trafic sortant IPv6 pour ce script Canary, cochez Autoriser le trafic IPv6 pour les sous-réseaux à double pile. Cela permet au script Canary de surveiller les points de terminaison accessibles uniquement en IPv6 ainsi que ceux compatibles avec la double pile via le protocole IPv6.

      Vous pouvez également surveiller des points de terminaison externes à votre VPC en donnant au script Canary un accès Internet et en configurant les sous-réseaux du VPC de manière appropriée. Pour de plus amples informations, consultez Exécution d'un script Canary sur un VPC.

    Si le point de terminaison se trouve sur un VPC, vous devez activer votre script Canary pour qu'il envoie des informations à CloudWatch et à Amazon S3. Pour de plus amples informations, consultez Exécution d'un script Canary sur un VPC.

  18. (Facultatif ) Sous Tags (Balises), ajoutez une ou plusieurs paires clé/valeur comme balises pour ce script Canary. Les étiquettes peuvent vous aider à identifier et à organiser vos ressources AWS et à suivre vos coûts AWS. Pour de plus amples informations, consultez Étiquette de vos ressources Amazon CloudWatch.

    Si vous souhaitez que les balises appliquées au script Canary soient également répliquées sur la fonction Lambda utilisée par ce script Canary, sélectionnez Fonction Lambda sous Réplication des balises. Si vous sélectionnez cette option, CloudWatch Synthetics maintient automatiquement la synchronisation des balises entre le script Canary et la fonction Lambda :

    • Synthetics applique les mêmes balises que vous définissez ici à la fois au script Canary et à la fonction Lambda.

    • Si vous modifiez ultérieurement les balises du script Canary tout en gardant cette option activée, Synthetics mettra également à jour les balises de la fonction Lambda afin de les maintenir synchronisées avec le script Canary.

  19. (Facultatif) Sous Active tracing (Suivi actif), choisissez d'activer ou non le suivi X-Ray actif pour ce script Canary. Le suivi actif est disponible uniquement pour les exécutions Puppeteer et Java. Pour de plus amples informations, consultez Scripts Canary et suivi X-Ray.

Ressources créées pour les scripts Canary

Lorsque vous créez un script Canary, les ressources suivantes sont créées :

  • Un rôle IAM portant le nom CloudWatchSyntheticsRole-canary-name-uuid (si vous utilisez la console CloudWatch pour créer le script Canary et que vous spécifiez un nouveau rôle à créer pour le script Canary)

  • Une stratégie IAM portant le nom CloudWatchSyntheticsPolicy-canary-name-uuid.

  • Un compartiment S3 portant le nom cw-syn-results-accountID-region.

  • Des alertes portant le nom Synthetics-Alarm-MyCanaryName (si vous voulez créer des alertes pour le script Canary)

  • Fonctions et couches Lambda, si vous utilisez un modèle pour créer le script Canary. Ces ressources ont le préfixe cwsyn-MyCanaryName.

  • Groupes de journaux CloudWatch Logs avec le nom /aws/lambda/cwsyn-MyCanaryName-randomId.