安排并运行 Cron 作业
本快速入门介绍如何使用 Cloud Scheduler 执行一些基本操作。
在本快速入门中,您将执行以下操作:
- 使用 Cloud Scheduler 创建一个 Cron 作业。
- 为作业设置周期性计划。
- 将 Pub/Sub 主题指定为作业目标。
- 运行作业。
- 验证作业是否已成功运行。
Cloud Scheduler 提供免费层级,运行此快速入门不会产生任何费用。如需了解详情,请参阅价格。
如需在 Google Cloud 控制台中直接遵循有关此任务的分步指导,请点击操作演示:
准备工作
- 登录您的 Google Cloud 账号。如果您是 Google Cloud 新手,请创建一个账号来评估我们的产品在实际场景中的表现。新客户还可获享 $300 赠金,用于运行、测试和部署工作负载。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
- 安装 Google Cloud CLI。
-
如需初始化 gcloud CLI,请运行以下命令:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
- 安装 Google Cloud CLI。
-
如需初始化 gcloud CLI,请运行以下命令:
gcloud init
- 如果您未使用 Cloud Shell,请更新 Google Cloud CLI 组件:
gcloud components update
- 使用您的账号登录:
gcloud auth login
启用 Cloud Scheduler 和 Pub/Sub API:
gcloud services enable cloudscheduler.googleapis.com pubsub.googleapis.com
创建 Pub/Sub 主题和订阅
Pub/Sub 主题是发布者可以向其发送消息的资源。如需接收发布到主题的消息,您必须创建对该主题的订阅。
设置 Pub/Sub 主题以用作 cron 作业的目标:
gcloud pubsub topics create cron-topic
这将创建一个名为
cron-topic
的主题。如需查看作业的结果,请创建 Pub/Sub 订阅:
gcloud pubsub subscriptions create cron-sub --topic cron-topic
使用 Cloud Scheduler 创建 Cron 作业
设置一个称为 Cron 作业的计划工作单元,并将其定期发送到目标。
在 Google Cloud 控制台中,转到 Cloud Scheduler 页面。
点击创建作业。
为作业指定名称。
在区域列表中,为您的作业选择一个区域。
使用基于 unix-cron 的格式为您的作业指定频率。例如:
30 16 * * 7
如需了解详情,请参阅配置 Cron 作业时间表。
在时区列表中,选择一个时区。
对于某些时区,夏令时可能会导致作业运行或无法意外运行。如需了解详情,请参阅时区。
点击继续。
在目标类型列表中,选择 Pub/Sub。
选择您之前创建的主题:
cron-topic
。在消息正文字段中,输入要发送到 Pub/Sub 目标主题的字符串。例如:“Hello world!”
点击创建。
您创建了一个在星期日 16:30 向 Pub/Sub 主题发送消息的作业。您现在可以运行该作业了。
运行作业
除了根据指定时间表执行外,您还可以强制立即运行作业。
在 Google Cloud 控制台中,转到 Cloud Scheduler 页面。
系统应该会列出您的作业。
在您的作业所在的行中,点击 > 强制运行作业。
操作请注意,由于需要进行一些初始配置,因此在项目中创建的第一项作业可能需要几分钟时间才能运行完毕。
在上次执行状态列中,
Success
状态表示您已成功运行 Cron 作业。
接下来,您可以验证 Pub/Sub 是否收到了消息。
验证 Pub/Sub 中的结果
验证您的 Pub/Sub 主题是否正在接收来自作业的消息。
从订阅中拉取 Pub/Sub 消息:
gcloud pubsub subscriptions pull cron-sub --limit 5
如果一开始没有拉取到消息,请再次运行该命令。
查看运行作业的结果。输出应类似如下所示:
DATA: Hello world! MESSAGE_ID: 5028933846601543 ORDERING_KEY: ATTRIBUTES: DELIVERY_ATTEMPT: ACK_ID: RFAGFixdRkhRNxkIaFEOT14jPzUgKEUQAgVPAihdeTFXLkFacGhRDRlyfWB9[...]
清理
为避免因本页中使用的资源导致您的 Google Cloud 账号产生费用,请按照以下步骤操作。
删除您创建的 Cron 作业:
在 Google Cloud 控制台中,转到 Cloud Scheduler 页面。
选中您的作业所对应的复选框。
点击删除并确认删除。
删除 Pub/Sub 主题:
在 Google Cloud 控制台中,转到 Pub/Sub 页面。
选中您的主题所对应的复选框。
点击删除并确认删除。
删除项目:
- 在 Google Cloud 控制台中,进入管理资源页面。
- 在项目列表中,选择要删除的项目,然后点击删除。
- 在对话框中输入项目 ID,然后点击关闭以删除项目。
后续步骤
- 详细了解 Cloud Scheduler
- 了解如何查看 Cloud Scheduler 日志