Planifier et exécuter une job Cron à l'aide de la gcloud CLI
Ce guide de démarrage rapide vous montre comment utiliser la gcloud CLI pour effectuer des opérations de base à l'aide de Cloud Scheduler.
Dans le cadre de ce guide démarrage rapide, vous allez effectuer les étapes suivantes :
- Créer un sujet Pub/Sub à configurer en tant que Cloud Scheduler cible du job.
- Créez un job Cron à l'aide de Cloud Scheduler et configurez un calendrier récurrent pour ce job.
- Exécutez votre tâche.
- vérifier que la tâche a bien été exécutée.
Une version gratuite de Cloud Scheduler est disponible. Par conséquent, l'exécution de ce démarrage rapide ne vous coûtera rien. Pour en savoir plus, reportez-vous à la page Tarifs.
Avant de commencer
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Scheduler, Pub/Sub APIs:
gcloud services enable cloudscheduler.googleapis.com
pubsub.googleapis.com - Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Scheduler, Pub/Sub APIs:
gcloud services enable cloudscheduler.googleapis.com
pubsub.googleapis.com
Créer un sujet et un abonnement Pub/Sub
Un sujet Pub/Sub est une ressource à laquelle les éditeurs peuvent envoyer des messages. Pour recevoir des messages publiés dans un sujet, vous devez créer un abonnement associé à ce sujet.
Configurez un sujet Pub/Sub à utiliser comme cible pour votre tâche Cron :
gcloud pubsub topics create cron-topic
Cette opération crée un sujet appelé
cron-topic
.Pour recevoir des messages et afficher les résultats de votre job, créez un Abonnement Pub/Sub:
gcloud pubsub subscriptions create cron-sub --topic cron-topic
Créer un job Cron à l'aide de Cloud Scheduler
Utilisez le gcloud scheduler jobs create pubsub
pour configurer une unité de travail appelée tâche Cron qui est envoyée
une cible Pub/Sub selon un calendrier récurrent. Le calendrier est spécifié
dans un format basé sur unix-cron. Pour en savoir plus, consultez la section Format et fuseau horaire des tâches Cron.
gcloud scheduler jobs create pubsub my-cron-job \
--schedule="30 16 * * 7" \
--topic=cron-topic \
--location="us-central1" \
--message-body="Hello world"
Vous avez créé un job qui envoie un message "Hello world" à votre serveur Pub/Sub, à 16h30 le dimanche.
Vous pouvez maintenant exécuter la tâche.
Exécuter votre tâche
En plus de l'exécuter selon la planification spécifiée, vous pouvez forcer l'exécution immédiate de votre tâche :
gcloud scheduler jobs run my-cron-job --location="us-central1"
Notez qu'en raison d'une configuration initiale, l'exécution de la première tâche créée dans un projet peut prendre quelques minutes.
Vous pouvez ensuite vérifier que votre sujet Pub/Sub a reçu le message.
Vérifier les résultats dans Pub/Sub
Vérifiez que votre sujet Pub/Sub reçoit les messages de votre tâche.
Extrayez des messages Pub/Sub d'un abonnement :
gcloud pubsub subscriptions pull cron-sub --limit 5
Si aucun message n'a été initialement récupéré, exécutez de nouveau la commande.
Consultez les résultats de l'exécution de votre tâche. Le résultat doit ressembler à ce qui suit :
DATA: Hello world! MESSAGE_ID: 5028933846601543 ORDERING_KEY: ATTRIBUTES: DELIVERY_ATTEMPT: ACK_ID: RFAGFixdRkhRNxkIaFEOT14jPzUgKEUQAgVPAihdeTFXLkFacGhRDRlyfWB9[...]
Effectuer un nettoyage
Pour éviter que les ressources utilisées sur cette page ne soient facturées sur votre compte Google Cloud, supprimez le projet Google Cloud contenant les ressources.
Delete a Google Cloud project:
gcloud projects delete PROJECT_ID
Vous pouvez également supprimer les ressources que vous avez créées pour ce démarrage rapide :
Supprimez la tâche Cron. Dans Cloud Shell ou sur la machine sur laquelle vous avez installé la gcloud CLI, exécutez la commande suivante :
gcloud scheduler jobs delete MY_JOB \ --location="LOCATION"
Remplacez les éléments suivants :
MY_JOB
: nom de la tâche à supprimer.LOCATION
: lieu de l'offre d'emploi. Par défaut, utilise l'emplacement de l'application App Engine du projet en cours si une application est associée.
Supprimez le sujet Pub/Sub. Dans Cloud Shell ou sur le machine sur laquelle vous avez installé la gcloud CLI, exécutez la commande suivante:
gcloud pubsub topics delete TOPIC_ID
Remplacez
TOPIC_ID
par l'ID du sujet Pub/Sub à supprimer.Supprimez l'abonnement Pub/Sub. Dans Cloud Shell ou sur la machine sur laquelle vous avez installé la gcloud CLI, exécutez la commande suivante:
gcloud pubsub subscriptions delete SUBSCRIPTION_ID
Remplacez
SUBSCRIPTION_ID
par l'ID de Abonnement Pub/Sub à supprimer.
Étape suivante
Découvrez Cloud Scheduler.
Découvrez comment afficher les journaux de Cloud Scheduler.