Programar e executar um cron job usando o Google Cloud console
Neste guia de início rápido, mostramos como usar o Google Cloud console para realizar algumas operações básicas usando o Cloud Scheduler.
Neste guia de início rápido, você fará as seguintes tarefas:
- Criar um tópico do Pub/Sub para configurar como destino do job do Cloud Scheduler.
- Criar um cron job usando o Cloud Scheduler e configurar uma programação recorrente para o job.
- Executar o job.
- Verificar se o job foi concluído com sucesso.
O Cloud Scheduler tem um nível sem custo financeiro. Não convém executar este guia de início rápido. resultar em custos. Para mais informações, consulte Preços.
Para seguir as instruções detalhadas desta tarefa diretamente no Google Cloud console, clique em Orientação:
Antes de começar
- Faça login na sua Google Cloud conta do. Se você começou a usar o Google Cloudagora, crie uma conta para avaliar o desempenho dos nossos produtos em situações reais. Clientes novos também recebem US $300 em créditos para executar, testar e implantar cargas de trabalho.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Scheduler and Pub/Sub APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Scheduler and Pub/Sub APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
Funções exigidas
Para conseguir as permissões necessárias a fim de concluir o guia de início rápido, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:
- Administrador do Cloud Scheduler (
roles/cloudscheduler.admin) - Editor do Pub/Sub (
roles/pubsub.editor)
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias usando personalizados papéis ou outros predefinidos papéis.
Criar um tópico e uma assinatura do Pub/Sub
Um tópico do Pub/Sub é um recurso para o qual os editores podem enviar mensagens. Para receber as mensagens publicadas em um tópico, crie uma assinatura para ele.
No Google Cloud console, acesse a página Pub/Sub.
Selecione Criar tópico.
No campo Código do tópico, insira cron-topic como o ID do tópico.
Mantenha os padrões, incluindo a opção Adicionar uma assinatura padrão.
Não selecione nenhuma outra opção.
Clique em Criar.
Isso cria um tópico do Pub/Sub chamado cron-topic e uma
assinatura para esse tópico chamado cron-topic-sub.
Criar um cron job usando o Cloud Scheduler
Configure uma unidade de trabalho programada conhecida como cron job que é enviada a um destino em uma programação recorrente.
No Google Cloud console, acesse a página Cloud Scheduler.
Clique em Criar job.
Dê um nome ao job.
Na lista Região, selecione uma região para o job.
Especifique uma Frequência para o job usando um formato baseado em unix-cron. Exemplo:
30 16 * * 7Para mais informações, consulte Configurar programações de cron job.
Na lista Fuso horário, selecione um fuso horário.
Em alguns fusos horários, o horário de verão pode fazer com que os jobs sejam executados ou não sejam executados inesperadamente. Para mais informações, consulte Fuso horário.
Clique em Continuar.
Na lista Tipo de destino, selecione Pub/Sub.
Selecione o tópico que você criou anteriormente:
cron-topic.No campo Corpo da mensagem, insira uma string a ser enviada ao tópico de destino do Pub/Sub. Por exemplo: "Olá, mundo!"
Clique em Criar.
Você criou um job que envia uma mensagem para um tópico do Pub/Sub às 16h30 aos domingos. Agora você pode executar o job.
Executar o job
Além de executar de acordo com a programação especificada, você pode forçar a execução imediata do job.
No Google Cloud console, acesse a página Cloud Scheduler.
O job será listado.
Na linha do job, clique em Ações > Forçar execução.
Observe que, devido a algumas configurações iniciais, a execução do primeiro job criado em um projeto pode levar alguns minutos.
Na coluna Status da última execução, o status
Successindica que o cron job foi executado com sucesso.
Em seguida, você pode verificar se o Pub/Sub recebeu a mensagem.
Verifique os resultados no Pub/Sub
Verifique se o tópico do Pub/Sub está recebendo mensagens do job extraindo mensagens do Pub/Sub da assinatura.
No Google Cloud console, acesse a página Assinaturas do Pub/Sub.
Clique na assinatura do tópico do Pub/Sub.
Clique na guia Mensagens.
Clique em Pull.
Você verá a mensagem publicada, com o corpo da mensagem, Hello world, e o horário em que a mensagem foi publicada.
Limpar
Para evitar cobranças na conta do Google Cloud pelos recursos usados nesta página, siga as etapas abaixo.
Exclua o cron job criado:
No console Google Cloud , acesse a página Cloud Scheduler.
Marque a caixa de seleção do seu job.
Clique em Delete (Excluir) e confirme a exclusão.
Exclua o tópico Pub/Sub:
No console Google Cloud , acesse a página Pub/Sub.
Marque a caixa de seleção do seu tópico.
Clique em Delete (Excluir) e confirme a exclusão.
Exclua a assinatura do Pub/Sub:
No Google Cloud console, acesse a página **Pub/Sub**.
Marque a caixa de seleção da assinatura.
Clique em Delete (Excluir) e confirme a exclusão.
Como alternativa, se você tiver criado um novo projeto para saber mais sobre o Cloud Scheduler e não precisar mais dele, exclua o projeto:
- No Google Cloud console, acesse a página Gerenciar recursos.
- Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir.
- Na caixa de diálogo, digite o ID do projeto e clique em Desligar para excluir o projeto.
A seguir
- Saiba mais sobre o Cloud Scheduler
- Saiba como visualizar registros do Cloud Scheduler