arrow_back

Develop your Google Cloud Network:挑戰研究室

加入 登录
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Develop your Google Cloud Network:挑戰研究室

Lab 1 小时 universal_currency_alt 5 积分 show_chart 中级
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP321

Google Cloud 自修研究室標誌

引言

在挑戰研究室中,您必須在特定情境下完成一系列任務。挑戰研究室不會提供逐步的操作說明,您必須運用從解決研究室任務中所學到的技巧,自行找出完成任務的方法!自動評分系統 (如本頁面所示) 將根據您是否正確完成任務而提供意見。

在您完成任務的期間,挑戰研究室不會介紹新的 Google Cloud 概念。您須靈活運用所學技巧,例如變更預設值或詳讀並研究錯誤訊息,解決遇到的問題。

若想滿分達標,就必須在時限內成功完成所有任務!

這個研究室適合已完成 Develop your Google Cloud Network 技能徽章課程的學員。準備好迎接挑戰了嗎?

設定

點選「Start Lab」按鈕前的須知事項

請詳閱以下操作說明。研究室活動會計時,而且中途無法暫停。點選「Start Lab」 後就會開始計時,讓您瞭解有多少時間可以使用 Google Cloud 資源。

您將在真正的雲端環境中完成實作研究室活動,而不是在模擬或示範環境。為達此目的,我們會提供新的暫時憑證,讓您用來在研究室活動期間登入及存取 Google Cloud。

如要完成這個研究室活動,請先確認:

  • 您可以使用標準的網際網路瀏覽器 (Chrome 瀏覽器為佳)。
注意:請使用無痕模式或私密瀏覽視窗執行此研究室。這可以防止個人帳戶和學生帳戶之間的衝突,避免個人帳戶產生額外費用。
  • 是時候完成研究室活動了!別忘了,活動一開始將無法暫停。
注意:如果您擁有個人 Google Cloud 帳戶或專案,請勿用於本研究室,以免產生額外費用。

挑戰情境

您是 Jooli 公司的雲端工程師,日前接受 Google Cloud 和 Kubernetes 訓練後接到一項工作,需要協助新團隊 (Griffin) 設定環境。該團隊已執行一些工作,但還是向您請求協助,需要您完成工作。

公司預期您具備執行這些工作所需的技能與知識,因此不會提供逐步指南。

您必須完成以下任務:

  • 手動建立含三個子網路的開發環境虛擬私有雲
  • 手動建立含三個子網路的實際工作環境虛擬私有雲
  • 建立同時連線至上述兩個虛擬私有雲的防禦主機
  • 建立開發環境 Cloud SQL 執行個體並連線,以及準備 WordPress 環境
  • 在 WordPress 的開發環境虛擬私有雲中建立 Kubernetes 叢集
  • 準備 WordPress 環境專用的 Kubernetes 叢集
  • 使用提供的設定建立 WordPress 部署作業
  • 啟用叢集監控功能
  • 授予存取權給其他工程師

您必須遵守下列幾項 Jooli 公司標準:

  • 如未特別指定,所有資源均須建立於 區域和 可用區。
  • 使用專案虛擬私有雲。
  • 名稱通常為「team-resource」,例如執行個體的名稱可以是 kraken-webserver1
  • 分配符合成本效益的資源大小。專案會受到監控。如果超量使用資源,所屬專案就會終止,您的專案也有可能受到影響,因此請特別留意。監控團隊的指引如下:如未特別指定,請使用 e2-medium

您的挑戰

您必須協助團隊完成新專案的幾項初期工作。團隊計劃使用 WordPress 且需要您設定開發環境。部分工作已完成,但其他部分需要您的專業技能。

您坐在桌前開啟新筆電,收到了以下完成任務的要求。祝您好運!

環境

Google Cloud 環境、Griffin 團隊基礎架構圖表

工作 1:手動建立開發環境虛擬私有雲

  • 建立名為 griffin-dev-vpc 的虛擬私有雲,其中僅包含以下子網路:

    • griffin-dev-wp
      • IP 位址區塊:192.168.16.0/20
    • griffin-dev-mgmt
      • IP 位址區塊:192.168.32.0/20

點選「Check my progress」,確認目標已達成。 手動建立開發環境虛擬私有雲

注意:如果沒有綠色勾號,請按一下右上角的「Score」飛出式視窗,然後點選相關步驟的「Check my progress」。系統將開啟彈出式提示視窗,並在其中提供建議。

工作 2:手動建立實際工作環境虛擬私有雲

  • 建立名為 griffin-prod-vpc 的虛擬私有雲,其中僅包含以下子網路:

    • griffin-prod-wp
      • IP 位址區塊:192.168.48.0/20
    • griffin-prod-mgmt
      • IP 位址區塊:192.168.64.0/20

點選「Check my progress」,確認目標已達成。 手動建立實際工作環境虛擬私有雲

注意:如果沒有綠色勾號,請按一下右上角的「Score」飛出式視窗,然後點選相關步驟的「Check my progress」。系統將開啟彈出式提示視窗,並在其中提供建議。

工作 3:建立防禦主機

  • 建立具備兩個網路介面的防禦主機,一個介面連線至 griffin-dev-mgmt,另一個則連線至 griffin-prod-mgmt。請確定可以透過 SSH 連線至主機。

點選「Check my progress」,確認目標已達成。 建立防禦主機

注意:如果沒有綠色勾號,請按一下右上角的「Score」飛出式視窗,然後點選相關步驟的「Check my progress」。系統將開啟彈出式提示視窗,並在其中提供建議。

工作 4:建立並設定 Cloud SQL 執行個體

  1. 建立名為 griffin-dev-dbMySQL Cloud SQL 執行個體
  2. 連線至執行個體並執行下列 SQL 指令,準備 WordPress 環境:
CREATE DATABASE wordpress; CREATE USER "wp_user"@"%" IDENTIFIED BY "stormwind_rules"; GRANT ALL PRIVILEGES ON wordpress.* TO "wp_user"@"%"; FLUSH PRIVILEGES;

以上 SQL 陳述式會建立 WordPress 資料庫,以及有權存取 WordPress 資料庫的使用者。

您會在工作 6 中用到使用者名稱和密碼。

點選「Check my progress」,確認目標已達成。 建立並設定 Cloud SQL 執行個體

注意:如果沒有綠色勾號,請按一下右上角的「Score」飛出式視窗,然後點選相關步驟的「Check my progress」。系統將開啟彈出式提示視窗,並在其中提供建議。

工作 5:建立 Kubernetes 叢集

  • griffin-dev-wp 子網路和 可用區,建立名為 griffin-dev 的雙節點叢集 (e2-standard-4)。

點選「Check my progress」,確認目標已達成。 建立 Kubernetes 叢集

注意:如果沒有綠色勾號,請按一下右上角的「Score」飛出式視窗,然後點選相關步驟的「Check my progress」。系統將開啟彈出式提示視窗,並在其中提供建議。

工作 6:準備 Kubernetes 叢集

  1. 在 Cloud Shell 複製 gs://cloud-training/gsp321/wp-k8s 的所有檔案。

WordPress 伺服器需要存取 MySQL 資料庫,過程中會使用您在工作 4 建立的「使用者名稱」和「密碼」

  1. 因此,請將這些值設為 Secret。另外,WordPress 需要將工作檔案儲存至容器外部,因此請建立磁碟區。

  2. 請使用 wp-env.yaml 將以下 Secret 和磁碟區新增至叢集。

  3. 建立設定之前,請務必將「使用者名稱」設為 wp_user,並將「密碼」設為 stormwind_rules

您也需要為已設定的服務帳戶提供金鑰,透過這個服務帳戶存取補充資訊容器的資料庫。

  1. 請使用以下指令建立金鑰,然後將金鑰新增至 Kubernetes 環境:
gcloud iam service-accounts keys create key.json \ --iam-account=cloud-sql-proxy@$GOOGLE_CLOUD_PROJECT.iam.gserviceaccount.com kubectl create secret generic cloudsql-instance-credentials \ --from-file key.json

點選「Check my progress」,確認目標已達成。 準備 Kubernetes 叢集

注意:如果沒有綠色勾號,請按一下右上角的「Score」飛出式視窗,然後點選相關步驟的「Check my progress」。系統將開啟彈出式提示視窗,並在其中提供建議。

工作 7:建立 WordPress 部署作業

現在您已佈建 MySQL 資料庫並設定 Secret 和磁碟區,可以使用 wp-deployment.yaml 建立部署作業。

  1. 建立部署作業前,您需要編輯 wp-deployment.yaml

  2. 請將 YOUR_SQL_INSTANCE 替換成 griffin-dev-db 的執行個體連線名稱

  3. 取得 Cloud SQL 執行個體的執行個體連線名稱

  4. 建立 WordPress 部署作業後,使用 wp-service.yaml 建立服務。

  5. 建立負載平衡器後,您可以前往網站並確認有 WordPress 網站安裝程式。
    此時開發團隊會接手完成安裝作業,您則可繼續下一個工作。

WordPress 網站安裝程式

點選「Check my progress」,確認目標已達成。 建立 WordPress 部署作業

注意:如果沒有綠色勾號,請按一下右上角的「Score」飛出式視窗,然後點選相關步驟的「Check my progress」。系統將開啟彈出式提示視窗,並在其中提供建議。

工作 8:啟用監控功能

  • 建立 WordPress 開發人員網站的運作時間檢查。

點選「Check my progress」,確認目標已達成。 啟用監控功能

注意:如果沒有綠色勾號,請按一下右上角的「Score」飛出式視窗,然後點選相關步驟的「Check my progress」。系統將開啟彈出式提示視窗,並在其中提供建議。

工作 9:授予存取權給其他工程師

  • 有其他工程師要加入作業,而您想確保對方有權存取專案,因此請授予對方專案的編輯者角色。

研究室的第二個使用者帳戶代表另一位工程師。

點選「Check my progress」,確認目標已達成。 授予存取權給其他工程師

注意:如果沒有綠色勾號,請按一下右上角的「Score」飛出式視窗,然後點選相關步驟的「Check my progress」。系統將開啟彈出式提示視窗,並在其中提供建議。

恭喜!

「Develop your Google Cloud Network」技能徽章

取得下一枚技能徽章

這個自修研究室屬於 Develop your Google Cloud Network 技能徽章課程的一部分。完成這個技能徽章課程即可獲得上方的徽章,表彰您的成就。您可以在履歷表和社群平台分享徽章,並使用 #GoogleCloudBadge 公開成就。

這個技能徽章課程是 Google 雲端工程師學習路徑的一部分。如果您已完成這個學習路徑中的其他技能徽章任務,歡迎瀏覽 Google Cloud Skills Boost 目錄,找出其他可以參加的技能徽章課程。

Google Cloud 教育訓練與認證

協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。

使用手冊上次更新日期:2024 年 3 月 22 日

研究室上次測試日期:2023 年 12 月 4 日

Copyright 2024 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。