本文說明如何設定在專案費用達到或超過預算時,自動停用專案的計費功能。停用專案的計費功能時,系統會終止專案中的所有 Google Cloud 服務,包括免費層服務。如要更精細地控制預算通知,請參閱「透過通知控制資源用量」。
如果您在 Google Cloud的支出有上限,可能就會因此想要限制費用。在這種情況下,當達到預算上限時,您可能願意關閉所有 Google Cloud 服務 Google Cloud 和使用,以停止產生費用。停用專案的計費功能,是避免該專案產生費用的有效方法。
限制
產生費用和接收預算通知之間會有所延遲,因此在所有服務停止時,先前使用的用量可能尚未送達,而會產生更多費用。按照此範例中的步驟進行,仍無法保證您的費用不會超出預算。如果資金有限,請將預算上限設為低於可用資金,以因應帳單延遲。
如果專案已鎖定帳單帳戶,您就無法停用專案的計費功能。如要進一步瞭解如何鎖定及解鎖專案,請參閱「確保專案與帳單帳戶之間的連結安全無虞」。
事前準備
開始之前,請務必完成下列工作:
- 啟用 Cloud Billing API
- 建立預算,範圍限定為單一專案
- 設定程式輔助預算通知
設定 Cloud Run 函式
如要停用專案的 Cloud Billing,請建立 Cloud Run 函式,並將其設定為呼叫 Cloud Billing API。
- 完成「建立 Cloud Run 函式」一文中的步驟。確認「觸發條件類型」設為預算使用的相同 Pub/Sub 主題。
新增下列相依項目:
Node.js
將下列內容複製到
package.json
檔案中:Python
將下列內容複製到
requirements.txt
檔案中:將下列程式碼複製到 Cloud Run 函式:
Node.js
Python
將「進入點」設為要執行的正確函式:
Node.js
將「Entry point」(進入點) 設為
stopBilling
。Python
將「Entry point」(進入點) 設為
stop_billing
。查看自動設定的環境變數清單,判斷是否需要手動將 GOOGLE_CLOUD_PROJECT 變數設為要停用 Cloud Billing 的專案。
按一下「部署」。
設定服務帳戶權限
您的 Cloud Run 函式會以自動建立的服務帳戶執行。如要停用計費功能,請完成下列步驟,將服務帳戶權限授予給專案中需要修改的服務:
- 如要識別正確的服務帳戶,請查看 Cloud Run 函式的詳細資料。服務帳戶會列在頁面底部。
前往 Google Cloud 控制台的「IAM」IAM頁面,設定適當的權限。
如要修改帳單帳戶權限,請前往 Google Cloud 控制台的「帳單帳戶管理」頁面,將服務帳戶新增為 Cloud 帳單帳戶的主體,並設定適當的帳單帳戶權限。
進一步瞭解如何設定 Cloud Billing 帳戶的權限。
測試 Cloud Billing 是否已停用
預算傳送通知後,指定專案就不會再有相關聯的 Cloud Billing 帳戶。如要確保函式正常運作,請按照「測試 Cloud Run 函式」一文中的步驟操作。
如果成功,專案就不會再顯示在 Cloud Billing 帳戶下,且專案中的資源均會停用,包括位於同一專案中的 Cloud Run 函式。
如要繼續使用專案中的 Google Cloud 資源,請在Google Cloud 控制台中,為專案手動重新啟用 Cloud Billing。
後續步驟
請參閱其他程式輔助通知範例,瞭解如何執行下列操作: