Agende e execute uma tarefa cron com a CLI gcloud
Este início rápido mostra como usar a CLI gcloud para realizar algumas operações básicas com o Cloud Scheduler.
Neste início rápido:
- Crie um tópico do Pub/Sub para configurar como destino da tarefa do Cloud Scheduler.
- Crie uma tarefa cron com o Cloud Scheduler e configure uma programação recorrente para a tarefa.
- Execute a tarefa.
- Verifique se a tarefa foi executada com êxito.
O Cloud Scheduler tem um nível gratuito e a execução deste início rápido não deve incorrer em custos. Para mais informações, consulte a secção Preços.
Antes de começar
- 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.
-
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro, tem de iniciar sessão na CLI gcloud com a sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
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.
-
-
Verify 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.
-
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro, tem de iniciar sessão na CLI gcloud com a sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
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.
-
-
Verify 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 Configure um tópico do Pub/Sub para usar como destino do seu trabalho cron:
gcloud pubsub topics create cron-topic
Esta ação cria um tópico denominado
cron-topic
.Para receber mensagens e ver os resultados da sua tarefa, crie uma subscrição do Pub/Sub:
gcloud pubsub subscriptions create cron-sub --topic cron-topic
Extraia mensagens do Pub/Sub de uma subscrição:
gcloud pubsub subscriptions pull cron-sub --limit 5
Se não forem extraídas mensagens inicialmente, execute o comando novamente.
Veja os resultados da execução da tarefa. O resultado deve ser semelhante ao seguinte:
DATA: Hello world! MESSAGE_ID: 5028933846601543 ORDERING_KEY: ATTRIBUTES: DELIVERY_ATTEMPT: ACK_ID: RFAGFixdRkhRNxkIaFEOT14jPzUgKEUQAgVPAihdeTFXLkFacGhRDRlyfWB9[...]
Elimine a tarefa cron. No Cloud Shell ou na máquina onde instalou a CLI gcloud, execute o comando:
gcloud scheduler jobs delete MY_JOB \ --location="LOCATION"
Substitua o seguinte:
MY_JOB
: o nome da tarefa a eliminar.LOCATION
: a localização do trabalho. Por predefinição, usa a localização da app do App Engine do projeto atual se existir uma app associada.
Elimine o tópico Pub/Sub. No Cloud Shell ou na máquina onde instalou a CLI gcloud, execute o comando:
gcloud pubsub topics delete TOPIC_ID
Substitua
TOPIC_ID
pelo ID do tópico do Pub/Sub a eliminar.Elimine a subscrição do Pub/Sub. No Cloud Shell ou na máquina onde instalou a CLI gcloud, execute o comando:
gcloud pubsub subscriptions delete SUBSCRIPTION_ID
Substitua
SUBSCRIPTION_ID
pelo ID da subscrição do Pub/Sub a eliminar.Saiba mais sobre o Cloud Scheduler
Saiba como ver os registos do Cloud Scheduler
Crie um tópico e uma subscrição do Pub/Sub
Um tópico Pub/Sub é um recurso para o qual os publicadores podem enviar mensagens. Para receber mensagens publicadas num tópico, tem de criar uma subscrição desse tópico.
Crie uma tarefa cron com o Cloud Scheduler
Use o comando gcloud scheduler jobs create pubsub
para configurar uma unidade de trabalho conhecida como tarefa cron que é enviada para um destino do Pub/Sub num horário recorrente. O horário é especificado
através de um formato baseado no unix-cron. Para mais informações, consulte o artigo
Formato de tarefa cron e fuso horário.
gcloud scheduler jobs create pubsub my-cron-job \
--schedule="30 16 * * 7" \
--topic=cron-topic \
--location="us-central1" \
--message-body="Hello world"
Criou uma tarefa que envia uma mensagem "Olá, mundo" para o seu tópico do Pub/Sub às 16:30 aos domingos.
Agora, pode executar a tarefa.
Execute a tarefa
Além de ser executado de acordo com a programação especificada, pode forçar a execução imediata da tarefa:
gcloud scheduler jobs run my-cron-job --location="us-central1"
Tenha em atenção que, devido a alguma configuração inicial, a primeira tarefa criada num projeto pode demorar alguns minutos a ser executada.
Em seguida, pode verificar se o seu tópico do Pub/Sub recebeu a mensagem.
Valide os resultados no Pub/Sub
Verifique se o tópico do Pub/Sub está a receber mensagens da tarefa.
Limpar
Para evitar incorrer em custos na sua Google Cloud conta pelos recursos usados nesta página, elimine o Google Cloud projeto com os recursos.
Delete a Google Cloud project:
gcloud projects delete PROJECT_ID
Em alternativa, elimine os recursos que criou para este início rápido: