Cloud Deploy 可讓您使用所選的監控平台和指標,分析已部署應用程式的效能。您可以根據這些分析結果採取行動,例如自動回溯部署作業。
Cloud Deploy 支援 Google Cloud Observability,並可擴充支援其他監控平台,例如 Datadog 或 Prometheus。
雖然 Cloud Deploy 提供部署驗證功能,可讓您執行任意容器來驗證部署作業,但分析功能可讓您使用 Google Cloud Observability 或所選監控服務的遙測資料,評估應用程式的長期效能。
您可以在任何目標環境 (例如預先發布或正式版) 中執行分析工作。
支援的指標供應商
Cloud Deploy 支援使用下列任一方式提供的指標進行分析:
直接整合 Google Cloud Observability 警告政策,根據 Google Cloud Observability 中的遙測和記錄
與非 Google 指標系統 (例如 Prometheus 或 Datadog) 整合
這類自訂分析需要貴機構提供容器,其中包含支援特定指標系統的功能。
Google Cloud 提供與 Datadog 的整合範例。
Cloud Deploy 分析的運作方式
本節說明 Cloud Deploy 分析如何使用 Google Cloud Observability 警告政策。如果貴機構建立自訂容器來使用其他指標供應商,部分功能會由自訂容器處理。
在所選指標系統中設定指標。
Cloud Deploy 支援 Google Cloud Observability,不需進行任何自訂作業。您也可以建立自訂容器來處理遙測資料,藉此使用所選的指標供應商。
瞭解詳情。
設定快訊政策
如果您使用 Google Cloud Observability 收集遙測資料,可以透過快訊政策偵測遙測資料是否顯示問題。
如果您使用其他指標供應商,警示功能是由該工具或自訂容器負責。
設定分析工作
這包括傳送管道設定檔中的
analysis節。分析工作包含一或多項分析檢查,每項檢查都會根據 Google Cloud Observability 或指標供應商的記錄或指標,評估已部署應用程式的行為。分析工作會在指定時間內執行。
部署應用程式
分析工作會在部署工作之後執行,如果發布版本包含驗證工作,則會在驗證工作之後執行,但會在任何部署後工作之前執行 (如果發布版本包含任何部署後工作)。
分析工作會執行
部署應用程式後 (以及完成任何驗證作業後,如有),指標供應商會收集執行中應用程式的遙測資料。分析工作會等待您設定的時間量 (
duration)。如果觸發快訊 (如果您使用 Google Cloud Observability 做為指標供應商),或自訂容器傳回非零的結束代碼,分析工作就會失敗,推出作業也會失敗。如果所有檢查都未發現問題,分析會在時間到期後完成,推出作業也會成功。
搭配自動化功能使用分析
您可以指定要用於分析作業的自動化動作。
舉例來說,如果想在應用程式部署至 staging後執行分析,並在分析完成且沒有任何快訊時,自動將版本升級至 prod,可以使用promoteReleaseRule自動化。
或者,如果想在分析工作於 prod 中發現問題時,自動回復版本,可以使用 repairRolloutRule 自動化功能。
您不必使用自動化功能,也能執行分析作業並從中獲益。
自訂分析
Cloud Deploy 分析功能支援 Google Cloud Observability 的快訊和指標。不過,您也可以搭配非Google Cloud指標供應商使用 Cloud Deploy 分析。
自訂分析的設定與標準分析的設定類似,但分析中的每項檢查都包含一項工作,該工作會參照您提供的容器、要在該容器上執行的指令,以及要傳遞至該容器的任何適用環境變數。這項自訂分析中的每項檢查也包含頻率,也就是執行檢查的頻率。
瞭解詳情。
使用初期測試進行分析
Cloud Deploy 分析的常見用途是搭配初期測試版部署策略。透過 Canary,您可以使用 Google Cloud Observability 的指標,或選擇的供應商,判斷是否要將推出作業推進至下一個階段。
您也可以搭配使用advanceRolloutRule自動化功能和分析。舉例來說,在初期測試階段之前 stable,您可以納入分析工作,確保正常運作時間,並根據分析結果,使用自動化功能將推出作業推進至 stable 或不推進。
如果您使用自訂或自訂自動化初期測試部署作業,請在要分析的每個階段設定中設定分析工作。
分析工作執行狀態
分析工作執行可能處於下列狀態:
IN_PROGRESS分析作業已開始,目前仍在執行中。除非取消,否則推出作業會繼續進行。
IN_PROGRESSFAILED分析作業偵測到 Google Cloud Observability 的警報,或收到自訂容器的非零結束代碼。推出狀態現在為「
FAILED」。但如果忽略或重試分析工作,推出作業狀態會更新為IN_PROGRESS。SUCCEEDED分析已完成 (
duration已過期),且未收到任何不利指標的跡象。所有其他階段和工作完成後,推出狀態會變更為SUCCEEDED。
後續步驟
請嘗試快速入門導覽課程:使用指標分析應用程式。
瞭解如何使用 Google Cloud Observability 或其他指標供應商設定部署分析。
如要查看分析的設定結構定義,請參閱 Cloud Deploy 設定參考資料。
進一步瞭解部署自動化。
進一步瞭解部署策略。