You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置仅允许内部流量的Google Cloud Function每日19:30 IST定时运行?

实现Google Cloud Function每日IST19:30定时运行并限制内部流量的步骤

一、配置每日定时触发(IST 19:30)

Google Cloud Scheduler支持直接指定时区,无需手动转换UTC,操作步骤如下:

控制台操作

  1. 打开Google Cloud Console,进入「Cloud Functions」页面,找到目标函数。
  2. 切换到「触发器」标签页,点击「添加触发器」。
  3. 触发器类型选择「Cloud Scheduler」,选择与函数一致的区域。
  4. 频率输入Cron表达式:30 19 * * *(对应每日19:30),时区选择「Asia/Kolkata」(即IST时区)。
  5. 选择用于触发的服务账号(可使用默认App Engine服务账号,或自定义服务账号),确保该账号后续具备函数调用权限。
  6. 点击「保存」完成触发器配置。

gcloud命令行操作

执行以下命令(替换占位符为实际信息):

gcloud scheduler jobs create http daily-function-trigger \
  --schedule="30 19 * * *" \
  --time-zone="Asia/Kolkata" \
  --uri=https://REGION-PROJECT_ID.cloudfunctions.net/FUNCTION_NAME \
  --http-method=POST \
  --service-account=SERVICE_ACCOUNT_EMAIL

二、设置Ingress为「仅允许内部流量」

控制台操作

  1. 在函数详情页点击「编辑」按钮。
  2. 滚动到「连接」区域,在「Ingress settings」下拉菜单中选择「Allow internal traffic only」。
  3. 点击「部署」保存更改。

gcloud命令行操作

执行以下命令更新函数配置:

gcloud functions deploy FUNCTION_NAME \
  --region=REGION \
  --ingress-settings=internal-only

三、关键权限配置(必做)

由于Ingress限制为内部流量,必须确保Cloud Scheduler使用的服务账号具备调用函数的权限:

控制台操作

  1. 进入IAM与管理页面,找到触发器使用的服务账号。
  2. 点击账号旁的「编辑」按钮,添加「Cloud Functions Invoker」角色。
  3. 保存权限设置。

gcloud命令行操作

gcloud projects add-iam-policy-binding PROJECT_ID \
  --member="serviceAccount:SERVICE_ACCOUNT_EMAIL" \
  --role="roles/cloudfunctions.invoker"

内容的提问来源于stack exchange,提问作者Mohan Prasath

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 09:51:30