簡介
在本文實作練習中,將會透過 Deploy Your Website on Cloud Run | Google Cloud Skills Boost 主題,學習如何在 GCP 雲端環境中,如何透過 Cloud Run (Serverless) 技術,部署和管理組織和企業的網站。在上一篇文章中,更新 NodeJS 網站內容後,重新建構和部署 Docker 容器之外,並更新版本標籤為 2.0.0。本文為此系列文章的最後一篇,將會實作如何在不干擾使用者的情況下,更新網站內容。下圖為本文實作環境的 Cloud Run 運作架構示意圖:
Task 6、零停機情況下更新網站內容
事實上,在 Cloud Run 運作架構中,會將每個部署動作視為新版本,每當建構和部署新版本並上線後,系統便會自動將使用者請求流量,重新導向至新版本。
同時,在預設情況下,系統將會分配新版本 100% 的 Inbound 網路流量。但是,管理人員可以透過「路由」(Routes) 機制,組態設定不同百分比的 Inbound 網路流量,將不同的網路流量分配給不同的運作版本。
請執行「gcloud run deploy monolith --image us-central1-docker.pkg.dev/${GOOGLE_CLOUD_PROJECT}/monolith-demo/monolith:2.0.0 --region us-central1」指令,重新部署服務至新版本。
重新部署服務的動作執行完成後,請執行「gcloud run services describe monolith --platform managed --region us-central1」指令,驗證部署是否已經更新完成。接著,執行「gcloud beta run services list」指令,條列出服務資訊及 URL 網址。
此時,可以直接點選 URL 網址,可以看到網站的主要頁面文字已經順利修改 (更新至新版本)。
透過這個線上實作環境,相信可以讓企業和組織的管理人員,能夠理解如何使用 Cloud Run 運作環境,來輕鬆管理企業和組織的網站。同樣的,在完成實作練習結束前,記得確認是否通過所有的檢查程序,才能確保獲得這個實作課程的積分。