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.
Commencer à utiliser EventBridge Scheduler
Cette rubrique décrit la création d'un nouveau calendrier du EventBridge planificateur. Vous utilisez la console EventBridge Scheduler AWS Command Line Interface (AWS CLI) ou AWS SDKs pour créer un calendrier avec un modèle de cible AmazonSQS. Vous allez ensuite configurer la journalisation, configurer les nouvelles tentatives et définir une durée de rétention maximale pour les tâches ayant échoué. Après avoir créé le calendrier, vous allez vérifier qu'il invoque correctement la cible et envoie un message à la file d'attente cible.
Note
Pour suivre ce guide, nous vous recommandons de configurer IAM les utilisateurs avec les autorisations minimales requises décrites dansUtilisation de politiques basées sur l'identité dans le planificateur EventBridge . Après avoir créé et configuré un utilisateur, exécutez la commande suivante pour définir vos informations d'accès. Vous aurez besoin de votre identifiant de clé d'accès et de votre clé d'accès secrète pour configurer le AWS CLI.
$
aws configure
AWS Access Key ID [None]:AKIAIOSFODNN7EXAMPLE
AWS Secret Access Key [None]:wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
Default region name [None]:us-west-2
Default output format [None]:json
Pour plus d'informations sur les différentes manières de définir vos informations d'identification, consultez la section Paramètres de configuration et priorité dans le Guide de l'AWS Command Line Interface utilisateur de la version 2.
Rubriques
Prérequis
Avant de suivre les étapes décrites dans cette section, vous devez effectuer les opérations suivantes :
-
Effectuez les tâches décrites dans Configuration d'Amazon EventBridge Scheduler
Création d'un calendrier à l'aide de la console EventBridge Scheduler
Pour créer une planification à l'aide de la console
-
Note
Vous pouvez changer de région Région AWS en utilisant le sélecteur AWS Management Console de région.
-
Sur la page Planifications, choisissez Créer une planification.
-
Sur la page Spécifier le détail de la planification, dans la section Nom et description de la planification, procédez comme suit :
-
Pour Nom de la planification, saisissez un nom à attribuer à votre planification. Par exemple,
MyTestSchedule
-
Dans Description (facultatif), entrez une description pour votre planning. Par exemple,
My first schedule
. -
Pour le groupe de planification, choisissez un groupe de planification dans les options du menu déroulant. Si vous n'avez encore créé aucun groupe de planning, vous pouvez choisir le
default
groupe correspondant à votre planning. Pour créer un nouveau groupe de planning, cliquez sur le lien « Créez votre propre planning » dans la description de la console. Vous utilisez des groupes de planifications pour leur ajouter des balises.
-
-
Dans la section Schéma de planification, procédez comme suit :
-
Pour Occurrence, choisissez l'une des options de modèle suivantes. Les options de configuration changent en fonction du modèle que vous sélectionnez.
-
Calendrier ponctuel : un calendrier ponctuel n'invoque un objectif qu'une seule fois, à la date et à l'heure que vous spécifiez.
Pour Date et heure, entrez une date valide dans le
YYYY/MM/DD
format. Spécifiez ensuite un horodatage au format 24 heureshh:mm
. Enfin, choisissez un fuseau horaire dans les options du menu déroulant. -
Calendrier récurrent : un calendrier récurrent invoque un objectif à un taux que vous spécifiez à l'aide d'une cron expression ou d'une expression de taux.
Choisissez la planification basée sur Cron pour configurer une planification à l'aide d'une cron expression. Pour utiliser une expression de taux, choisissez Planification basée sur le taux et entrez un nombre positif pour Valeur, puis choisissez une unité dans les options déroulantes.
Pour plus d'informations sur l'utilisation des expressions cron et rate, consultezTypes d'horaires dans le EventBridge planificateur.
-
-
Pour la fenêtre horaire flexible, choisissez Désactivé pour désactiver l'option, ou choisissez l'une des fenêtres temporelles prédéfinies dans la liste déroulante. Par exemple, si vous choisissez15 minutes et que vous définissez une planification récurrente pour invoquer son objectif une fois par heure, la planification s'exécute dans les 15 minutes suivant le début de chaque heure.
-
-
Si vous avez choisi Calendrier récurrent à l'étape précédente, dans la section Période, spécifiez un fuseau horaire et définissez éventuellement une date et une heure de début, ainsi qu'une date et une heure de fin pour le calendrier. Un calendrier récurrent sans date de début commence dès qu'il est créé et disponible. Un planning récurrent sans date de fin continuera à invoquer son objectif indéfiniment.
-
Choisissez Suivant.
-
Sur la page Sélectionner une cible, procédez comme suit :
-
Sélectionnez des cibles modélisées et choisissez une cibleAPI. Pour cet exemple, nous allons choisir la cible SQS
SendMessage
modélisée par Amazon. -
SendMessageDans la section « SQSfile d'attente », choisissez une SQS file d'attente Amazon existante,
arn:aws:sqs:
par ARN exemple dans la liste déroulante. Pour créer une nouvelle file d'attente, choisissez Create new SQS queue pour accéder à la SQS console Amazon. Après avoir créé une file d'attente, revenez à la console du EventBridge planificateur et actualisez le menu déroulant. Votre nouvelle file d'attente ARN apparaît et peut être sélectionnée.us-west-2
:123456789012
:TestQueue
-
Pour Target, entrez la charge utile que EventBridge Scheduler doit envoyer à la cible. Pour cet exemple, nous allons envoyer le message suivant à la file d'attente cible :
Hello, it's EventBridge Scheduler.
-
-
Choisissez Suivant, puis sur la page Paramètres - facultatif, procédez comme suit :
-
-
Dans la section État de la planification, pour Activer la planification, activez ou désactivez la fonctionnalité à l'aide du commutateur. Par défaut, le EventBridge planificateur active votre planning.
-
Dans la section Action une fois le planning terminé, configurez l'action que le EventBridge planificateur exécute une fois le planning terminé :
-
Choisissez DELETEsi vous souhaitez que le planning soit automatiquement supprimé. Pour les plannings ponctuels, cela se produit une fois que le planning a invoqué la cible une fois. Pour les plannings récurrents, cela se produit après le dernier appel planifié du planning. Pour plus d'informations sur la suppression automatique, consultezSuppression une fois le planning terminé.
-
Choisissez NONEou ne choisissez pas une valeur si vous ne souhaitez pas que le EventBridge planificateur prenne des mesures une fois le planning terminé.
-
-
Dans la section Politique de réessai et file d'attente de lettres mortes (DLQ), pour la politique de réessai, activez Réessayer pour configurer une politique de nouvelle tentative adaptée à votre calendrier. Avec les politiques de nouvelle tentative, si un calendrier ne parvient pas à invoquer sa cible, le EventBridge planificateur le réexécute. Si elle est configurée, vous devez définir la durée de rétention maximale et les nouvelles tentatives pour la planification.
-
Pour Âge maximum de l'événement (facultatif), entrez le nombre maximum d'heures et de minutes pendant lequel le EventBridge planificateur doit conserver un événement non traité.
Note
La valeur maximale est de 24 heures.
-
Pour Nombre maximum de tentatives, entrez le nombre maximum de fois que le EventBridge planificateur réessaie le calendrier si la cible renvoie une erreur.
Note
La valeur maximale est 185 nouvelles tentatives.
-
Pour Dead-letter queue (DLQ), choisissez l'une des options suivantes :
-
Aucun — Choisissez cette option si vous ne souhaitez pas configurer unDLQ.
-
Sélectionnez une SQS file d'attente Amazon dans mon AWS compte sous la forme DLQ : choisissez cette option, puis sélectionnez une file d'attente ARN dans la liste déroulante, configurez DLQ la même Compte AWS que celle dans laquelle vous créez le calendrier.
-
Spécifiez une SQS file d'attente Amazon dans un autre AWS compte comme DLQ suit : choisissez cette option, puis entrez la configuration ARN de la file d'attente comme suitDLQ, si la file d'attente se trouve dans un autre compte Compte AWS. Vous devez saisir le nom exact ARN de la file d'attente pour pouvoir utiliser cette option.
-
-
Dans la section Chiffrement, choisissez Personnaliser les paramètres de chiffrement (avancés) pour utiliser une KMS clé gérée par le client afin de chiffrer votre entrée cible. Si vous choisissez cette option, entrez une KMS clé existante ARN ou choisissez Créer une AWS KMS clé pour accéder à la AWS KMS console. Pour plus d'informations sur la façon dont EventBridge Scheduler chiffre vos données au repos, consultez. Chiffrement au repos dans le EventBridge planificateur
-
Pour Autorisations, choisissez Utiliser le rôle existant, puis sélectionnez le rôle que vous avez créé lors de la procédure de configuration dans la liste déroulante. Vous pouvez également choisir Accéder à IAM la console pour créer un nouveau rôle.
Si vous souhaitez que le EventBridge planificateur crée un nouveau rôle d'exécution pour vous, choisissez plutôt Créer un nouveau rôle pour ce calendrier. Ensuite, saisissez un nom pour Nom du rôle. Si vous choisissez cette option, le EventBridge planificateur ajoute au rôle les autorisations requises pour votre cible modélisée.
-
-
Choisissez Suivant.
-
Sur la page Examiner et créer une planification, examinez les détails de votre planification. Dans chaque section, choisissez Modifier pour revenir à cette étape et modifier ses détails.
-
Choisissez Créer un planning pour terminer la création de votre nouveau planning. Vous pouvez consulter la liste de vos planifications nouvelles et existantes sur la page Planifications. Sous la colonne État, vérifiez que votre nouvelle planification est activée.
-
Pour vérifier que votre planning invoque l'SQSobjectif Amazon, ouvrez la SQS console Amazon et procédez comme suit :
-
Choisissez la file d'attente cible dans la liste des files d'attente.
-
Choisissez Envoyer et recevoir des messages.
-
Sur la page Envoyer et recevoir des messages, sous Recevoir des messages, choisissez Solling for messages pour récupérer les messages de test que votre planning a envoyés à la file d'attente cible.
-
Créez un calendrier à l'aide du AWS CLI
L'exemple suivant montre comment utiliser la AWS CLI commande create-schedule
--name — Entrez un nom pour le calendrier.
RoleArn— Entrez le ARN rôle d'exécution que vous souhaitez associer au planning.
Arn — Entrez le nom ARN de la cible. Dans ce cas, la cible est une file d'SQSattente Amazon.
Entrée — Entrez un message que le EventBridge planificateur envoie à la file d'attente cible.
$
aws scheduler create-schedule --name
sqs-templated-schedule
--schedule-expression 'rate(5 minutes)' \ --target '{"RoleArn": "ROLE_ARN
", "Arn": "QUEUE_ARN
", "Input": "TEST_PAYLOAD
" }' \ --flexible-time-window '{ "Mode": "OFF"}'
Créez un calendrier à l'aide du EventBridge planificateur SDKs
Dans l'exemple suivant, vous utilisez le EventBridge planificateur SDKs pour créer un calendrier avec un EventBridge modèle de cible Amazon. SQS
Exemple Python SDK
import boto3 scheduler = boto3.client('scheduler') flex_window = { "Mode": "OFF" } sqs_templated = { "RoleArn": "<ROLE_ARN>", "Arn": "<QUEUE_ARN>", "Input": "Message for scheduleArn: '<aws.scheduler.schedule-arn>', scheduledTime: '<aws.scheduler.scheduled-time>'" } scheduler.create_schedule( Name="sqs-python-templated", ScheduleExpression="rate(5 minutes)", Target=sqs_templated, FlexibleTimeWindow=flex_window)
Exemple Java SDK
package com.example; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.scheduler.SchedulerClient; import software.amazon.awssdk.services.scheduler.model.*; public class MySchedulerApp { public static void main(String[] args) { final SchedulerClient client = SchedulerClient.builder() .region(Region.US_WEST_2) .build(); Target sqsTarget = Target.builder() .roleArn("<ROLE_ARN>") .arn("<QUEUE_ARN>") .input("Message for scheduleArn: '<aws.scheduler.schedule-arn>', scheduledTime: '<aws.scheduler.scheduled-time>'") .build(); CreateScheduleRequest createScheduleRequest = CreateScheduleRequest.builder() .name("<SCHEDULE NAME>") .scheduleExpression("rate(10 minutes)") .target(sqsTarget) .flexibleTimeWindow(FlexibleTimeWindow.builder() .mode(FlexibleTimeWindowMode.OFF) .build()) .build(); client.createSchedule(createScheduleRequest); System.out.println("Created schedule with rate expression and an Amazon SQS templated target"); } }
Quelle est la prochaine étape ?
-
Pour plus d'informations sur la gestion de votre planning à l'aide de la console ou du EventBridge planificateurSDK, consultez. AWS CLIGérer un planning dans le EventBridge planificateur
-
Pour plus d'informations sur la configuration de cibles modélisées et sur l'utilisation du paramètre de cible universel, consultezGestion des cibles dans le EventBridge planificateur.
-
Pour plus d'informations sur les types de données et les API opérations du EventBridge planificateur, consultez la référence du EventBridge planificateur API.