您可以在工作流程中執行 Cloud Run 工作,以便進行更複雜的資料處理作業,或以系統化的方式自動調度管理現有工作。
本教學課程說明如何使用 Workflows 執行 Cloud Run 工作,以處理傳遞至工作的環境變數中的資料,藉此回應 Cloud Storage 中的事件。
請注意,您也可以將事件資料儲存在 Cloud Storage 值區中,並使用客戶管理的加密金鑰加密資料。詳情請參閱「執行 Cloud Run 工作,處理儲存在 Cloud Storage 中的事件資料」。
目標
教學課程內容:
- 建立 Cloud Run 工作,處理 Cloud Storage 值區中的資料檔案。
- 部署可執行下列作業的工作流程:
- 接受 Cloud Storage 事件做為引數。
- 檢查事件中指定的 Cloud Storage bucket 是否與 Cloud Run 工作使用的 bucket 相同。
- 如果是,則使用 Cloud Run Admin API 連接器執行 Cloud Run 工作。
- 建立 Eventarc 觸發條件,在影響 Cloud Storage bucket 的事件發生時執行工作流程。
- 更新 Cloud Storage bucket 中的輸入資料檔案,即可觸發工作流程。
費用
在本文件中,您會使用下列 Google Cloud的計費元件:
如要根據預測用量估算費用,請使用 Pricing Calculator。
事前準備
貴機構定義的安全性限制,可能會導致您無法完成下列步驟。如需疑難排解資訊,請參閱「在受限的 Google Cloud 環境中開發應用程式」。
控制台
- 登入 Google Cloud 帳戶。如果您是 Google Cloud新手,歡迎 建立帳戶,親自評估產品在實際工作環境中的成效。新客戶還能獲得價值 $300 美元的免費抵免額,可用於執行、測試及部署工作負載。
-
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.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Artifact Registry, Cloud Build, Cloud Run, Cloud Storage, Eventarc, and Workflows 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.-
Create a service account:
-
Ensure that you have the Create Service Accounts IAM role
(
roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles. -
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.
In the Service account description field, enter a description. For example,
Service account for quickstart. - Click Create and continue.
-
Grant the following roles to the service account: Cloud Run Admin, Eventarc Event Receiver, Logs Writer, Workflows Invoker.
To grant a role, find the Select a role list, then select the role.
To grant additional roles, click Add another role and add each additional role.
- Click Continue.
-
Click Done to finish creating the service account.
-
Ensure that you have the Create Service Accounts IAM role
(
-
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.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Artifact Registry, Cloud Build, Cloud Run, Cloud Storage, Eventarc, and Workflows 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.-
Create a service account:
-
Ensure that you have the Create Service Accounts IAM role
(
roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles. -
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.
In the Service account description field, enter a description. For example,
Service account for quickstart. - Click Create and continue.
-
Grant the following roles to the service account: Cloud Run Admin, Eventarc Event Receiver, Logs Writer, Workflows Invoker.
To grant a role, find the Select a role list, then select the role.
To grant additional roles, click Add another role and add each additional role.
- Click Continue.
-
Click Done to finish creating the service account.
-
Ensure that you have the Create Service Accounts IAM role
(
- 如要為 Cloud Storage 的直接事件建立觸發條件,請先將 Pub/Sub 發布者角色 (
roles/pubsub.publisher) 授予 Cloud Storage 服務代理人:- 前往 Google Cloud 控制台的「IAM」頁面。
- 勾選「包含 Google 提供的角色授予項目」核取方塊。
- 在「主體」欄中,找出格式為
service-PROJECT_NUMBER@gs-project-accounts.iam.gserviceaccount.com的 Cloud Storage 服務代理程式,然後按一下對應資料列中的「編輯主體」。 - 按一下 「新增角色」或 「新增其他角色」。
- 在「Select a role」(選取角色) 清單中,篩選「Pub/Sub Publisher」(Pub/Sub 發布者),然後選取該角色。
- 按一下 [儲存]。
- 前往 Google Cloud 控制台的「IAM」頁面。
- 如果您是在 2021 年 4 月 8 日當天或之前啟用 Cloud Pub/Sub 服務代理,請將服務帳戶權杖建立者角色 (
roles/iam.serviceAccountTokenCreator) 授予服務代理,以支援已驗證的 Pub/Sub 推送要求。否則,系統會預設授予這個角色:- 前往 Google Cloud 控制台的「IAM」頁面。
- 勾選「包含 Google 提供的角色授予項目」核取方塊。
- 在「Name」(名稱) 欄中找到「Cloud Pub/Sub Service Account」(Cloud Pub/Sub 服務帳戶),然後按一下對應資料列中的 「Edit principal」(編輯主體)。
- 按一下 「新增角色」或 「新增其他角色」。
- 在「Select a role」(選取角色) 清單中,篩選「Service Account Token Creator」(服務帳戶憑證建立者),然後選取該角色。
- 按一下 [儲存]。
- 前往 Google Cloud 控制台的「IAM」頁面。
-
在 Google Cloud 控制台中啟用 Cloud Shell。
Google Cloud 主控台底部會開啟一個 Cloud Shell 工作階段,並顯示指令列提示。Cloud Shell 是已安裝 Google Cloud CLI 的殼層環境,並已針對您目前的專案設定好相關值。工作階段可能要幾秒鐘的時間才能初始化。
Cloud Shell 支援本教學課程中的
/dev/urandom 指令,可產生虛擬隨機數。gcloud
如要使用已設定 gcloud CLI 的線上終端機,請啟用 Cloud Shell:
頁面底部會開啟 Cloud Shell 工作階段,並顯示指令列提示。工作階段可能要幾秒鐘的時間才能初始化。
Cloud Shell 支援本教學課程中的
/dev/urandom指令,可產生虛擬隨機數。- 建立或選取 Google Cloud 專案。
-
建立 Google Cloud 專案:
gcloud projects create PROJECT_ID
-
選取您建立的 Google Cloud 專案:
gcloud config set project PROJECT_ID
-
- 請確認您已為 Google Cloud 專案啟用計費功能。
- 啟用 Artifact Registry、Cloud Build、Cloud Run、Cloud Storage、Eventarc 和 Workflows API:
gcloud services enable artifactregistry.googleapis.com \ cloudbuild.googleapis.com \ eventarc.googleapis.com \ run.googleapis.com \ storage.googleapis.com \ workflows.googleapis.com
- 建立服務帳戶,供工作流程用於驗證其他 Google Cloud 服務,並授予適當的角色。
- 建立服務帳戶:
gcloud iam service-accounts create SERVICE_ACCOUNT_NAME
將
SERVICE_ACCOUNT_NAME替換為服務帳戶的名稱。 - 將角色授予您在上一個步驟中建立的使用者管理服務帳戶。針對下列每個 IAM 角色執行一次下列指令,或在單一指令中多次使用
--role旗標:roles/eventarc.eventReceiver:接收事件roles/logging.logWriter:寫入記錄roles/run.admin:執行 Cloud Run 作業roles/workflows.invoker:用於叫用工作流程
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \ --role=ROLE
更改下列內容:
PROJECT_ID:您建立服務帳戶的專案 IDROLE:要授予使用者管理服務帳戶的角色
- 建立服務帳戶:
- 建立 Cloud Storage 直接事件的觸發條件前,請先將 Pub/Sub 發布者角色 (
roles/pubsub.publisher) 授予 Cloud Storage 服務代理:SERVICE_ACCOUNT="$(gcloud storage service-agent --project=PROJECT_ID)" gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:${SERVICE_ACCOUNT}" \ --role='roles/pubsub.publisher'
- 如果您是在 2021 年 4 月 8 日當天或之前啟用 Cloud Pub/Sub 服務代理,請將服務帳戶權杖建立者角色 (
roles/iam.serviceAccountTokenCreator) 授予服務代理,以支援已驗證的 Pub/Sub 推送要求。否則,系統會預設授予這個角色:gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-pubsub.iam.gserviceaccount.com \ --role=roles/iam.serviceAccountTokenCreator
將 PROJECT_NUMBER 替換為 Google Cloud專案編號。您可以在 Google Cloud 控制台的「歡迎」頁面找到專案編號,也可以執行下列指令:
gcloud projects describe PROJECT_ID --format='value(projectNumber)'
Terraform
如要使用已設定 gcloud CLI 的線上終端機,請啟用 Cloud Shell:
頁面底部會開啟 Cloud Shell 工作階段,並顯示指令列提示。工作階段可能要幾秒鐘的時間才能初始化。
Cloud Shell 支援本教學課程中的
/dev/urandom指令,可產生虛擬隨機數。- 建立或選取 Google Cloud 專案。
-
建立 Google Cloud 專案:
gcloud projects create PROJECT_ID
-
選取您建立的 Google Cloud 專案:
gcloud config set project PROJECT_ID
-
- 請確認您已為 Google Cloud 專案啟用計費功能。
- 啟用 Artifact Registry、Cloud Build、Cloud Run、Cloud Storage、Eventarc 和 Workflows API:
gcloud services enable artifactregistry.googleapis.com \ cloudbuild.googleapis.com \ eventarc.googleapis.com \ run.googleapis.com \ storage.googleapis.com \ workflows.googleapis.com
建立服務帳戶,供工作流程用於驗證其他 Google Cloud 服務,並授予適當角色。此外,如要支援 Cloud Storage 的直接事件,請將 Pub/Sub 發布者角色 (
roles/pubsub.publisher) 授予 Cloud Storage 服務代理。修改
main.tf檔案,如下列範例所示。詳情請參閱 適用於 Terraform 的 Google provider 說明文件。如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。
請注意,在一般的 Terraform 工作流程中,您會一次套用整個計畫。不過,在本教學課程中,您可以指定特定資源。例如:
terraform apply -target="google_service_account.workflows"- 如果您是在 2021 年 4 月 8 日當天或之前啟用 Cloud Pub/Sub 服務代理,請將服務帳戶權杖建立者角色 (
roles/iam.serviceAccountTokenCreator) 授予服務代理,以支援已驗證的 Pub/Sub 推送要求。否則,系統會預設授予這個角色:gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-pubsub.iam.gserviceaccount.com \ --role=roles/iam.serviceAccountTokenCreator
將 PROJECT_NUMBER 替換為 Google Cloud專案編號。您可以在 Google Cloud 控制台的「歡迎」頁面找到專案編號,也可以執行下列指令:
gcloud projects describe PROJECT_ID --format='value(projectNumber)'
建立 Cloud Run 工作
本教學課程使用 GitHub 中的範例 Cloud Run 作業。這項作業會從 Cloud Storage 的輸入檔案讀取資料,並對檔案中的每一行執行任意處理作業。
將範例應用程式存放區複製到本機電腦,即可取得範例程式碼:
git clone https://github.com/GoogleCloudPlatform/jobs-demos.git
您也可以下載 ZIP 格式的範例,然後解壓縮該檔案。
變更為包含範例程式碼的目錄:
cd jobs-demos/parallel-processing
建立 Cloud Storage bucket,用於儲存可寫入的輸入檔案並觸發事件:
控制台
- 前往 Google Cloud 控制台的「Cloud Storage bucket」頁面。
- 按一下「新增」「建立」。
- 在「建立 bucket」頁面中,輸入 bucket 名稱:
將input-PROJECT_ID
PROJECT_ID替換為專案 ID。 Google Cloud - 保留其他預設值。
- 點選「建立」。
gcloud
執行
gcloud storage buckets create指令:gcloud storage buckets create gs://input-PROJECT_ID
如果要求成功,指令會傳回下列訊息:
Creating gs://input-PROJECT_ID/...
Terraform
如要建立 Cloud Storage bucket,請使用
google_storage_bucket資源,並按照下列範例修改main.tf檔案。如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。
請注意,在典型的 Terraform 工作流程中,您會一次套用整個計畫。不過,在本教學課程中,您可以指定特定資源。例如:
terraform apply -target="random_id.bucket_name_suffix"
和
terraform apply -target="google_storage_bucket.default"- 前往 Google Cloud 控制台的「Cloud Storage bucket」頁面。
建立 Artifact Registry 標準存放區,用於儲存容器映像檔:
控制台
前往 Google Cloud 控制台的 Artifact Registry「Repositories」頁面:
按一下 「建立存放區」。
輸入存放區名稱,例如
my-repo。專案中每個存放區位置的存放區名稱不得重複。保留預設格式,應為「Docker」。
保留預設模式,應為「標準」。
選取「us-central1 (Iowa)」(us-central1 (愛荷華州)) 做為區域。
保留其他所有預設值。
點選「建立」。
gcloud
執行下列指令:
gcloud artifacts repositories create REPOSITORY \ --repository-format=docker \ --location=us-central1
將
REPOSITORY替換為存放區的專屬名稱,例如my-repo。專案中每個存放區位置的存放區名稱不得重複。Terraform
如要建立 Artifact Registry 存放區,請使用
google_artifact_registry_repository資源,並按照下列範例修改main.tf檔案。請注意,在一般的 Terraform 工作流程中,您會一次套用整個計畫。不過,在本教學課程中,您可以指定特定資源。例如:
terraform apply -target="google_artifact_registry_repository.default"使用預設 Google Cloud 建構套件建構容器映像檔:
export SERVICE_NAME=parallel-job gcloud builds submit \ --pack image=us-central1-docker.pkg.dev/PROJECT_ID/REPOSITORY/${SERVICE_NAME}
將
REPOSITORY替換為 Artifact Registry 存放區的名稱。建構作業可能需要幾分鐘才能完成。
建立 Cloud Run 工作,部署容器映像檔:
控制台
前往 Google Cloud 控制台的「Cloud Run」頁面:
按一下「建立工作」,顯示「建立工作」表單。
- 在表單中,選取
us-central1-docker.pkg.dev/PROJECT_ID/REPOSITORY/parallel-job:latest做為 Artifact Registry 容器映像檔網址。 - 選用:輸入工作名稱
parallel-job。 - 選用:選取「us-central1 (Iowa)」(us-central1 (愛荷華州))。
- 如要指定工作執行的任務數量,請輸入
10。所有工作都必須成功,工作才會視同成功。依預設,工作會平行執行。
- 在表單中,選取
展開「Container, Variables & Secrets, Connections, Security」(容器、變數和密鑰、連線、安全性) 區段,保留所有預設值,但下列設定除外:
按一下「一般」分頁標籤。
- 在容器指令中輸入
python。 - 在容器引數中輸入
process.py。
- 在容器指令中輸入
按一下「變數與密鑰」分頁標籤。
- 按一下「新增變數」,然後輸入
INPUT_BUCKET做為名稱,並輸入input-PROJECT_ID做為值。 - 按一下「新增變數」,然後在名稱中輸入
INPUT_FILE,並在值中輸入input_file.txt。
- 按一下「新增變數」,然後輸入
如要建立工作,請按一下「建立」。
gcloud
設定預設 Cloud Run 區域:
gcloud config set run/region us-central1
建立 Cloud Run 工作:
gcloud run jobs create parallel-job \ --image us-central1-docker.pkg.dev/PROJECT_ID/REPOSITORY/parallel-job:latest \ --command python \ --args process.py \ --tasks 10 \ --set-env-vars=INPUT_BUCKET=input-PROJECT_ID,INPUT_FILE=input_file.txt
請注意,如果您未指定映像檔標記,Artifact Registry 會尋找具有預設
latest標記的映像檔。如需建立工作時可用的完整選項清單,請參閱 gcloud run jobs create 指令列說明文件。
工作建立完成後,畫面上應會顯示成功訊息。
Terraform
如要建立 Cloud Run 工作,請使用
google_cloud_run_v2_job資源,並按照下列範例修改main.tf檔案。請注意,在一般的 Terraform 工作流程中,您會一次套用整個計畫。不過,在本教學課程中,您可以指定特定資源。例如:
terraform apply -target="google_cloud_run_v2_job.default"
部署執行 Cloud Run 工作的工作流程
定義及部署工作流程,執行您剛建立的 Cloud Run 工作。工作流程定義是由一系列步驟組成,這些步驟使用 Workflows 語法描述。
控制台
前往 Google Cloud 控制台的「Workflows」頁面:
按一下「建立」。
輸入新工作流程的名稱,例如
cloud-run-job-workflow。選取「us-central1 (Iowa)」(us-central1 (愛荷華州)) 做為區域。
在「Service account」(服務帳戶) 欄位中,選取您先前建立的服務帳戶。
服務帳戶做為工作流程的身分。您應已將 Cloud Run 管理員角色授予服務帳戶,工作流程才能執行 Cloud Run 工作。
點選「下一步」。
在工作流程編輯器中,輸入下列工作流程定義:
點選「Deploy」(部署)。
gcloud
為工作流程建立原始碼檔案:
touch cloud-run-job-workflow.yaml將下列工作流程定義複製到原始碼檔案:
輸入下列指令來部署工作流程:
gcloud workflows deploy cloud-run-job-workflow \ --location=us-central1 \ --source=cloud-run-job-workflow.yaml \ --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
更改下列內容:
SERVICE_ACCOUNT_NAME:您先前建立的服務帳戶名稱PROJECT_ID:您的Google Cloud 專案 ID
服務帳戶做為工作流程的身分。您應該已將
roles/run.admin角色授予服務帳戶,工作流程才能執行 Cloud Run 工作。
Terraform
如要建立工作流程,請使用 google_workflows_workflow 資源,並按照下列範例修改 main.tf 檔案。
如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。
請注意,在一般的 Terraform 工作流程中,您會一次套用整個計畫。不過,在本教學課程中,您可以指定特定資源。例如:
terraform apply -target="google_workflows_workflow.default"
工作流程會執行下列作業:
init步驟:接受 Cloud Storage 事件做為引數,然後設定必要變數。check_input_file步驟:檢查事件中指定的 Cloud Storage bucket 是否為 Cloud Run 工作使用的 bucket。- 如果是,工作流程會繼續執行
run_job步驟。 - 如果沒有,工作流程會終止,停止任何後續處理程序。
- 如果是,工作流程會繼續執行
run_job步驟:使用 Cloud Run Admin API 連接器的googleapis.run.v1.namespaces.jobs.run方法執行作業。Cloud Storage 值區和資料檔案名稱會從工作流程以覆寫變數的形式傳遞至作業。finish步驟:傳回工作執行作業的相關資訊,做為工作流程的結果。
為工作流程建立 Eventarc 觸發條件
如要在輸入資料檔案更新時自動執行工作流程和 Cloud Run 工作,請建立 Eventarc 觸發程序,回應包含輸入資料檔案的值區中的 Cloud Storage 事件。
控制台
前往 Google Cloud 控制台的「Workflows」頁面:
按一下工作流程名稱,例如
cloud-run-job-workflow。在「Workflow details」(工作流程詳細資料) 頁面中,按一下 「Edit」(編輯)。
在「Edit workflow」(編輯工作流程) 頁面的「Triggers」(觸發條件) 區段中,依序點選「Add new trigger」(新增觸發條件) >「Eventarc」。
「Eventarc trigger」(Eventarc 觸發條件) 窗格隨即開啟。
在「觸發條件名稱」欄位中,輸入觸發條件的名稱,例如
cloud-run-job-workflow-trigger。在「Event provider」清單中,選取「Cloud Storage」。
在「Event」(事件) 清單中,選取「google.cloud.storage.object.v1.finalized」。
在「Bucket」(值區) 欄位中,選取包含輸入資料檔案的值區。Bucket 名稱的格式為
input-PROJECT_ID。在「Service account」(服務帳戶) 欄位中,選取您先前建立的服務帳戶。
服務帳戶會做為觸發程序的 ID。您應該已將下列角色授予服務帳戶:
- Eventarc 事件接收者:接收事件
- 工作流程叫用者:執行工作流程
按一下「儲存觸發條件」。
現在「編輯工作流程」頁面的「觸發條件」部分會顯示 Eventarc 觸發條件。
點選「下一步」。
點選「Deploy」(部署)。
gcloud
執行下列指令,建立 Eventarc 觸發條件:
gcloud eventarc triggers create cloud-run-job-workflow-trigger \ --location=us \ --destination-workflow=cloud-run-job-workflow \ --destination-workflow-location=us-central1 \ --event-filters="type=google.cloud.storage.object.v1.finalized" \ --event-filters="bucket=input-PROJECT_ID" \ --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
更改下列內容:
PROJECT_ID:您 Google Cloud 專案的 IDSERVICE_ACCOUNT_NAME:您先前建立的服務帳戶名稱。
服務帳戶會做為觸發程序的 ID。您應該已將下列角色授予服務帳戶:
roles/eventarc.eventReceiver:接收事件roles/workflows.invoker:執行工作流程
Terraform
如要建立觸發程序,請使用 google_eventarc_trigger 資源,並按照下列範例修改 main.tf 檔案。
如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。
請注意,在一般的 Terraform 工作流程中,您會一次套用整個計畫。不過,在本教學課程中,您可以指定特定資源。例如:
terraform apply -target="google_eventarc_trigger.default"
每當輸入資料檔案所在的 Cloud Storage bucket 上傳或覆寫檔案時,系統都會以相應的 Cloud Storage 事件做為引數,執行工作流程。
觸發工作流程
更新 Cloud Storage 中的輸入資料檔案,測試端對端系統。
為輸入檔案產生新資料,並上傳至 Cloud Storage,位置應與 Cloud Run 工作預期的位置相同:
base64 /dev/urandom | head -c 100000 >input_file.txt gcloud storage cp input_file.txt gs://input-PROJECT_ID/input_file.txt
如果您使用 Terraform 建立 Cloud Storage bucket,可以執行下列指令來擷取 bucket 名稱:
gcloud storage buckets list gs://input*
Cloud Run 工作可能需要幾分鐘才能執行完畢。
查看工作執行作業,確認 Cloud Run 工作是否如預期執行:
gcloud config set run/region us-central1 gcloud run jobs executions list --job=parallel-job
輸出內容應該會顯示工作執行成功,表示
10/10工作已完成。
進一步瞭解如何透過事件或 Pub/Sub 訊息觸發工作流程。
清除所用資源
如果您是為了這個教學課程建立新專案,請刪除專案。如果您已使用現有專案,並想保留專案,但不要本教學課程新增的變更,請刪除為本教學課程建立的資源。
刪除專案
如要避免付費,最簡單的方法就是刪除您為了本教學課程所建立的專案。
刪除專案的方法如下:
- 前往 Google Cloud 控制台的「Manage resources」(管理資源) 頁面。
- 在專案清單中選取要刪除的專案,然後點選「Delete」(刪除)。
- 在對話方塊中輸入專案 ID,然後按一下 [Shut down] (關閉) 以刪除專案。
刪除教學課程資源
刪除您在本教學課程中建立的資源:
刪除 Eventarc 觸發條件:
gcloud eventarc triggers delete cloud-run-job-workflow-trigger --location=us
刪除工作流程:
gcloud workflows delete cloud-run-job-workflow --location=us-central1
刪除 Cloud Run 工作:
gcloud run jobs delete parallel-job
刪除為輸入資料建立的 Cloud Storage bucket:
gcloud storage rm --recursive gs://input-PROJECT_ID/
刪除 Artifact Registry 存放區:
gcloud artifacts repositories delete REPOSITORY --location=us-central1