blog post

Day 24 — Terraform/GCP實戰:使用 GCP Console 創建 GCP 無伺服器服務 (Cloud Run)

示範如何使用 GCP Console 創建 Cloud Run ,實現容器化應用部署。

Day 24 — Terraform/GCP實戰:使用 GCP Console 創建 GCP 無伺服器服務 (Cloud Run)
Day 24 — Terraform/GCP實戰:使用 GCP Console 創建 GCP 無伺服器服務 (Cloud Run)

文章同步分享到
blog – https://devops-with-alex.com/day-24-terraform-gcp-console-cloud-run/
ithome – https://ithelp.ithome.com.tw/articles/10337006
Medium – https://medium.com/p/249d826891e0

1. Google 無伺服器服務 — Cloud Run的主要功能和用途

無伺服器運算(Serverless Computing)是一種雲端運算模型,可以執行程式碼,而無需直接管理伺服器或基礎架構。Google Cloud Platform(GCP)中的無伺服器服務之一就是「Cloud Run」,允許開發人員將容器化的應用程序,以下是它的主要功能和用途:

  1. 零管理:Cloud Run 是一種無伺服器平台,不需要您自己管理伺服器。您只需要提供您的容器映像檔,Cloud Run 就會自動處理伺服器、作業系統和其他基礎設施問題。
  2. 自動擴展:Cloud Run 可根據您的應用程式的輸入流量自動擴展,以確保您的應用程式始終能夠處理流量峰值。
  3. 快速部署:使用 Cloud Run,您可以輕鬆地部署您的容器映像檔,而不需要擔心基礎設施的問題。您只需將您的容器映像檔上傳到 Cloud Run,它就會立即開始運行您的應用程式。
  4. 多語言支持:Cloud Run 支持多種編程語言和框架,包括 Node.js、Python、Go、Java、Ruby、PHP 和 .NET。
  5. 自動負載平衡:Cloud Run 可自動處理輸入流量的負載平衡,以確保您的應用程式始終能夠處理流量峰值。
  6. 監控:Cloud Run 可以自動收集和顯示您的應用程式的關鍵性能指標,讓您能夠快速識別和解決問題。
Cloud Run的主要功能和用途

2. Google 無伺服器服務 —Cloud Run的使用情境

Google Cloud Platform 的無伺服器服務 -Cloud Run可在多種場景下使用,以下是一些常見的使用情境:

  1. 快速部署容器化:需要快速部署容器化應用程式並自動擴展處理流量峰值的公司和開發團隊。
  2. 自動負載平衡:需要自動負載平衡和安全性保護的應用程式,如 Web 應用程式和 API。
  3. 減少維護成本:想要減少伺服器和基礎設施的成本和工作量的公司和開發團隊。
  4. 微服務架構:想要使用多種編程語言和框架開發應用程式的開發人員和團隊。

3. GCP 無伺服器服務 — 使用GCP Console創建Cloud Run

在這個章節中,我們將深入探討如何使用GCP Console在Google Cloud Platform上創建Cloud Run。我們將依次進行以下步驟:

  1. 使用已經好的創建 nginx:1.23.4-alpine
  2. 創建對應的cloud run 容器
  3. 設定容器流量的的條件
  4. 登入cloud run 的網址,確認服務啟動

使用GCP Console創建Cloud Run

  • 登入GCP Console:首先,使用您的Google帳戶登入Google Cloud Platform(GCP)Console:https://console.coud.google.com
  • 選擇或創建專案:在GCP Console左上角,點擊專案選單,然後選擇現有的專案或創建一個新專案。
  • 創建Cloud Run 服務
    – 在GCP Console左側的導覽窗格中,點選”Cloud Run”選項。
    – 創建Cloud Run,在Cloud Run頁面點擊”建立服務”按鈕來開始創建一個新的Cloud Run。
選擇 Cloud Run,創建 Cloud Run服務
  • 設定Cloud Run服務的基本設定:
    容器映像檔:nginx:1.23.4-alpine
    服務名稱:為您的Cloud Run指定一個唯一的名稱,cloud-run-demo
    地區:選擇Cloud Run所在的地區。選擇最接近您的使用者或資源的地區,以減少延遲。
    費用摘要:這邊是cloud run的定價,可以檢視你的服務大概的一個月花費。
    輸入控管與驗證:選擇全部去允許的流量,同時允許未經驗證的叫用,因為我們需要公開存取並測試,最後點選容器、網路、安全性。
Cloud Run服務設定 (1/2)
Cloud Run服務設定 (2/2)
  • 設定Cloud Run服務的進階設定:
    – 容器:選擇通訊 port 80,作為nginx的入口
    – 網路連線:維持預設設定。
    – 安全性:選擇Cloud run的服務帳號,決定Cloud Run有哪些權限,建議先選預設的,接著建立。
Cloud Run服務進階設定 — 容器
Cloud Run服務進階設定 — 網路連線
Cloud Run服務進階設定 — 安全性

測試部署的 Cloud Run

創建修改完畢,並看到Cloud Run後,可以點選查看服務的詳細資料。

Cloud Run 總覽

接下來可以嘗試觸發服務,點選觸發條件中的網址,就可以轉發到服務。例如下面的一長串網址,分別會是服務名稱組成的url。

Cloud Run 觸發條件 url
Cloud Run回傳內容

4. 總結 Summary

  1. GCP 無伺服器服務Cloud Run的主要功能和用途:Cloud Run是一個無伺服器管理: 不需管理伺服器,只需提供容器映像檔。自動擴展: 根據流量自動擴展,確保處理高峰流量。快速部署: 輕鬆上傳容器映像檔,無需擔心基礎設施。多語言支援: 支援多種編程語言和框架。自動負載平衡: 自動處理流量平衡。監控: 自動收集性能指標,有助快速解決問題。
  2. GCP 無伺服器服務Cloud Run的使用情境:常見使用情境像是快速部署容器化: 對於需要快速部署容器化應用程式並處理高流量的公司和開發團隊來說,Cloud Run是理想的選擇。自動負載平衡: 對於需要自動負載平衡和安全性保護的應用程式,例如Web應用程式和API。降低維護成本: 適合希望降低伺服器和基礎設施成本和工作量的公司和開發團隊。微服務架構: 適合開發人員和團隊希望使用不同的編程語言和框架開發應用程式。
  3. GCP 無伺服器服務 — 使用GCP Console創建Cloud Run:介紹如何在GCP Console上創建Cloud Run,包括指定名稱、容器映像檔、運算資源、輸入控管與驗證、存儲位置與權限設定等等,最後示範觸發服務看到nginx 服務。

5. 相關連結

  1. Terraform-from-zero-to-hero-10-Lab-GCP-Infrastucture-as-Code — https://github.com/qwedsazxc78/Terraform-from-zero-to-hero-10-Lab-GCP-Infrastucture-as-Code
  2. Terraform-project-best-practice — https://github.com/qwedsazxc78/terraform-project-best-practice
  3. 歡迎訂閱我的udemy課程:Terraform 從零開始 — 10+實戰Lab打造GCP雲端自動化架構課程

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *