Google Kubernetes Engine(GKE)是雲端版的代管式 Kubernetes(K8s)。在雲端上,將它搭配 Google Cloud 的工具可讓 DevOps 的實踐變得更簡單!
CI/CD 工具是實踐 DevOps 不可或缺的一環,因為它的概念就是要自動化軟體交付與架構變更,讓構建、測試與軟體發布能更敏捷、頻繁且可靠。
Cloud Source Repository
Cloud Source Repository 是 Google Cloud 提供的原始碼管理庫,功能與 GitHub 相似,是利於多人協作開發的代碼庫,可用來儲存與同步多個開發人員的程式碼更動。
Cloud Build
Cloud Build 是 Google Cloud 提供的無伺服器 CI/CD 服務,能夠支援各種程式設計語言版本的應用程式。主要的運作模式是透過設定觸發器(Trigger)來監控目標代碼庫(Repository),並根據代碼庫的更動來進行創建、保存與部署 Image 等行為。
Artifact Registry
Artifact Registry 的功能是儲存容器要使用的 Image。上述提到 Cloud Build 在偵測到 Source Repository 更新後會自動創建 Image,而這個 Image 就會被存到指定的 Artifact Registry,且每次創建都會留下對應的版本,確保部署新功能導致服務出現問題時能快速退回上一個可正常運行的版本。
Cloud Deploy
Cloud Deploy 是全代管式的 CD 工具,與 Cloud Build 不同的是其主要功能在於建立不同 Cluster 間的 CD Pipeline。透過 Pipeline,正式部署前我們可先在測試用的 Cluster 確認新服務的運行狀態,當服務順利運行後再推送到用於實際生產環境的 Cluster。
CI/CD 工具提供的是自動化的整合與部署,但在這之上還須加入維運與監控才是完整的 DevOps,而 Google Cloud 上就有 Cloud Operation Tools 這一系列的維運監控工具。
Cloud Operation Tools
Cloud Operation Tools 在創建 GKE 時會自動被啟用,而其中最主要的工具是 Cloud Mointoring 與 Cloud Logging。Cloud Monitoring 提供了客製化的指標,使用者可根據需求設置對應的指標來創建 Dashbroad 以進行監控,且能針對各個指標設置對應的閾值,一旦超出範圍就會發出警告。而 Cloud Logging 則保留了所有操作紀錄,讓我們除了發生錯誤時可透過 Log 排除故障,也能針對特定 Log 設置警告,讓相同錯誤發生時能快速收到相關消息。
如有 DevOps 架構導入需求,歡迎與我們聯繫:https://tw.cloud-ace.com/contact/