实验设置说明和要求
保护您的账号和进度。请务必在无痕浏览器窗口中,使用实验凭证运行此实验。

在 Google Kubernetes Engine 部署、擴充及更新網站

实验 25 分钟 universal_currency_alt 1 积分 show_chart 入门级
info 此实验可能会提供 AI 工具来支持您学习。
此内容尚未针对移动设备进行优化。
为获得最佳体验,请在桌面设备上访问通过电子邮件发送的链接。

GSP663

Google Cloud 自學實驗室標誌

總覽

經營網站和應用程式並不容易。當不該出錯的地方出錯、伺服器當機、需求增加導致使用更多資源,以及在不中斷服務的情況下進行變更,都會使作業變得複雜,令人備感壓力。有了 Kubernetes,您就能完成上述所有作業,甚至還能自動執行!

在本實驗室中,您將扮演虛構公司 Fancy Store 的開發人員,負責管理電子商務網站。由於出現擴充和中斷問題,您必須將應用程式部署到 Google Kubernetes Engine (GKE)。

本實驗室包含多項練習,順序與常見雲端開發作業類似:

  1. 建立 GKE 叢集
  2. 建立 Docker 容器
  3. 將容器部署至 GKE
  4. 透過 Service 公開容器
  5. 將容器擴充至多個副本
  6. 修改網站
  7. 不停機推出新版本

架構圖

架構圖

事前準備

  • 建議先瞭解 DockerKubernetes 的基本概念,才能充分掌握內容。

設定和需求

瞭解以下事項後,再點選「Start Lab」按鈕

請詳閱以下操作說明。實驗室活動會計時,且中途無法暫停。點選「Start Lab」後就會開始計時,顯示可使用 Google Cloud 資源的時間。

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

為了順利完成這個實驗室,請先確認:

  • 可以使用標準的網際網路瀏覽器 (Chrome 瀏覽器為佳)。
注意事項:請使用無痕模式 (建議選項) 或私密瀏覽視窗執行此實驗室,這可以防止個人帳戶和學員帳戶之間的衝突,避免個人帳戶產生額外費用。
  • 是時候完成實驗室活動了!別忘了,活動一旦開始將無法暫停。
注意事項:務必使用實驗室專用的學員帳戶。如果使用其他 Google Cloud 帳戶,可能會產生額外費用。

如何開始研究室及登入 Google Cloud 控制台

  1. 點選「Start Lab」按鈕。如果實驗室會產生費用,畫面上會出現選擇付款方式的對話方塊。左側的「Lab Details」窗格會顯示下列項目:

    • 「Open Google Cloud console」按鈕
    • 剩餘時間
    • 必須在這個研究室中使用的臨時憑證
    • 完成這個實驗室所需的其他資訊 (如有)
  2. 點選「Open Google Cloud console」;如果使用 Chrome 瀏覽器,也能按一下滑鼠右鍵,選取「在無痕視窗中開啟連結」

    接著,實驗室會啟動相關資源,並開啟另一個分頁,顯示「登入」頁面。

    提示:您可以在不同的視窗中並排開啟分頁。

    注意:如果頁面中顯示「選擇帳戶」對話方塊,請點選「使用其他帳戶」
  3. 如有必要,請將下方的 Username 貼到「登入」對話方塊。

    {{{user_0.username | "Username"}}}

    您也可以在「Lab Details」窗格找到 Username。

  4. 點選「下一步」

  5. 複製下方的 Password,並貼到「歡迎使用」對話方塊。

    {{{user_0.password | "Password"}}}

    您也可以在「Lab Details」窗格找到 Password。

  6. 點選「下一步」

    重要事項:請務必使用實驗室提供的憑證,而非自己的 Google Cloud 帳戶憑證。 注意:如果使用自己的 Google Cloud 帳戶來進行這個實驗室,可能會產生額外費用。
  7. 按過後續的所有頁面:

    • 接受條款及細則。
    • 由於這是臨時帳戶,請勿新增救援選項或雙重驗證機制。
    • 請勿申請免費試用。

Google Cloud 控制台稍後會在這個分頁開啟。

注意:如要使用 Google Cloud 產品和服務,請點選「導覽選單」,或在「搜尋」欄位輸入服務或產品名稱。「導覽選單」圖示和搜尋欄位

啟動 Cloud Shell

Cloud Shell 是搭載多項開發工具的虛擬機器,提供永久的 5 GB 主目錄,而且在 Google Cloud 中運作。Cloud Shell 提供指令列存取權,方便您使用 Google Cloud 資源。

  1. 點按 Google Cloud 控制台頂端的「啟用 Cloud Shell」圖示 「啟動 Cloud Shell」圖示

  2. 系統顯示視窗時,請按照下列步驟操作:

    • 繼續操作 Cloud Shell 視窗。
    • 授權 Cloud Shell 使用您的憑證發出 Google Cloud API 呼叫。

連線建立完成即代表已通過驗證,而且專案已設為您的 Project_ID。輸出內容中有一行文字,宣告本工作階段的 Project_ID

Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}

gcloud 是 Google Cloud 的指令列工具,已預先安裝於 Cloud Shell,並支援 Tab 鍵自動完成功能。

  1. (選用) 您可以執行下列指令來列出使用中的帳戶:
gcloud auth list
  1. 點按「授權」

輸出內容:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (選用) 您可以使用下列指令來列出專案 ID:
gcloud config list project

輸出內容:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} 注意:如需 gcloud 的完整說明,請前往 Google Cloud 參閱 gcloud CLI 總覽指南

設定可用區

  • 設定預設可用區和專案:
gcloud config set compute/zone {{{project_0.default_zone|lab zone}}}

詳情請參閱區域和可用區說明文件

工作 1:建立 GKE 叢集

您需要 Kubernetes 叢集才能部署網站。首先,請確認已啟用適當的 API。

  1. 執行下列指令,建立名為 fancy-cluster 的 GKE 叢集,包含 3 個節點:
gcloud container clusters create fancy-cluster --num-nodes 3 注意:如果收到未指定區域/可用區的錯誤訊息,請參閱環境設定一節,確認已設定預設運算可用區。

叢集會在幾分鐘內建立完畢。

  1. 執行下列指令,查看叢集的三個 worker VM 執行個體:
gcloud compute instances list

輸出內容

NAME: gke-fancy-cluster-default-pool-fb932da6-4sk6 ZONE: us-central1-f MACHINE_TYPE: e2-medium PREEMPTIBLE: INTERNAL_IP: 10.128.0.3 EXTERNAL_IP: 34.172.106.173 STATUS: RUNNING NAME: gke-fancy-cluster-default-pool-fb932da6-d6qc ZONE: us-central1-f MACHINE_TYPE: e2-medium PREEMPTIBLE: INTERNAL_IP: 10.128.0.4 EXTERNAL_IP: 34.133.99.176 STATUS: RUNNING NAME: gke-fancy-cluster-default-pool-fb932da6-ztnh ZONE: us-central1-f MACHINE_TYPE: e2-medium PREEMPTIBLE: INTERNAL_IP: 10.128.0.5 EXTERNAL_IP: 34.136.180.45 STATUS: RUNNING
  1. 在控制台中找出 Kubernetes 叢集和相關資訊。

  2. 依序點選「導覽選單」圖示 「導覽選單」圖示 >「Kubernetes Engine」>「叢集」

您應該會看到名為「fancy-cluster」的叢集。

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

工作 2:複製來源存放區

這是現成的網站,您只需要複製原始碼,就能專心建立 Docker 映像檔並部署至 GKE。

  1. 執行下列指令,將 Git 存放區複製到 Cloud Shell 執行個體:
cd ~ git clone https://github.com/googlecodelabs/monolith-to-microservices.git
  1. 切換至適當的目錄。

  2. 安裝 NodeJS 依附元件,在部署前測試應用程式:

cd ~/monolith-to-microservices ./setup.sh

請稍候幾分鐘,等待指令碼執行完畢。

  1. 確認 Cloud Shell 執行的是最新版 npm
nvm install --lts
  1. 切換至適當的目錄,然後執行下列指令,啟動網路伺服器並測試應用程式:
cd ~/monolith-to-microservices/monolith npm start

輸出內容

Monolith listening on port 8080!
  1. 點選「網頁預覽」圖示,接著選取「透過以下通訊埠預覽:8080」,即可預覽應用程式:

醒目顯示的「透過以下通訊埠預覽:8080」

系統會開啟新視窗,顯示 Fancy Store 的實際運作情形!

Fancy Store 歡迎頁面

請保持這個分頁開啟,稍後在本實驗室中會返回這個分頁。

  1. 在 Cloud Shell 中按下 CTRL+C 鍵,停止網路伺服器程序。

工作 3:使用 Cloud Build 建立 Docker 容器

準備好原始碼檔案後,就可以開始將應用程式 Docker 化了!

一般來說,您必須採取兩個步驟:建構 Docker 容器,然後將容器推送至存放區,以便儲存映像檔供 GKE 提取。Cloud Build 可讓您透過單一指令建構 Docker 容器,並將映像檔放入 Artifact Registry!

Google Cloud Build 會壓縮目錄中的檔案,並將檔案移至 Google Cloud Storage bucket。接著,會從 bucket 擷取所有檔案,並使用 Dockerfile 執行 Docker 建構程序。您在 Docker 映像檔中指定了 --tag 旗標,並將主機設為 gcr.io,產生的 Docker 映像檔會推送至 Artifact Registry。

  1. 首先,請執行下列指令,確認已啟用 Cloud Build API:
gcloud services enable cloudbuild.googleapis.com
  1. 執行下列指令,即可啟動建構程序:
cd ~/monolith-to-microservices/monolith gcloud builds submit --tag gcr.io/${GOOGLE_CLOUD_PROJECT}/monolith:1.0.0 .
  1. 這項程序需要幾分鐘才能完成。

終端機將顯示類似的輸出內容:

ID CREATE_TIME DURATION SOURCE IMAGES STATUS 1ae295d9-63cb-482c-959b-bc52e9644d53 2019-08-29T01:56:35+00:00 33S gs://_cloudbuild/source/1567043793.94-abfd382011724422bf49af1558b894aa.tgz gcr.io//monolith:1.0.0 SUCCESS
  1. 如要查看建構記錄或即時監看程序,請點選「導覽選單」,向下捲動至「CI/CD」部分,然後依序點選「Cloud Build」 >「記錄」。這裡會列出您先前建立的所有版本。

  2. 點選建構作業名稱,即可查看該建構作業的所有詳細資料,包括記錄輸出內容。

自行選擇:在「建構資訊」頁面,依序點選「建構詳細資料」頁面中的「建構作業摘要」>「執行作業詳細資料」>「映像檔名稱」,即可查看容器映像檔:

「執行作業詳細資料」分頁式頁面,圖片名稱醒目顯示

點選「Check my progress」,確認目標已達成。 使用 Cloud Build 建立 Docker 容器

工作 4:將容器部署至 GKE

您已將網站容器化,並將容器推送至 Artifact Registry,現在該部署至 Kubernetes 了!

如要在 GKE 叢集上部署和管理應用程式,您必須與 Kubernetes 叢集管理系統進行通訊。一般來說,此操作會透過 kubectl 指令列工具進行。

Kubernetes 會以 Pod 的形式呈現應用程式;Pod 是容器/緊耦合容器群組的單位,也是 Kubernetes 中最小的可部署單位。在本實驗室中,每個 Pod 只包含單體容器。

如要部署應用程式,請建立一個 Deployment 資源。Deployment 會管理應用程式的多個副本,並將這些副本安排在叢集的各個節點上執行。在本實驗室中,Deployment 只會執行應用程式的一個 Pod。Deployment 會建立 ReplicaSet,確保 Pod 數量符合預期。ReplicaSet 負責確保指定數量的副本隨時都在執行。

您接下來要使用的 kubectl create deployment 指令,會讓 Kubernetes 在叢集上建立名為 monolith 的 Deployment,並包含 1 個副本。

  • 執行下列指令來部署應用程式:
kubectl create deployment monolith --image=gcr.io/${GOOGLE_CLOUD_PROJECT}/monolith:1.0.0 注意:最佳做法是使用 YAML 檔案和 GitHub 等原始碼控管系統來儲存這些變更。如要進一步瞭解這些資源,請參閱 Deployment 說明文件

點選「Check my progress」,確認目標已達成。 將容器部署至 GKE

驗證 Deployment

  1. 確認 Deployment 已建立:
kubectl get all

重複執行指令,直到 Pod 狀態為「Running」。

輸出內容

NAME READY STATUS RESTARTS AGE pod/monolith-7d8bc7bf68-htm7z 1/1 Running 0 6m21s NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/kubernetes ClusterIP 10.27.240.1 443/TCP 24h NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE deployment.apps/monolith 1 1 1 1 20m NAME DESIRED CURRENT READY AGE replicaset.apps/monolith-7d8bc7bf68 1 1 1 20m

輸出內容會顯示幾項資訊:

  • 目前的 Deployment
  • 所需的 Pod 數量為 1 的 ReplicaSet
  • 正在執行的 Pod

看來全都建好了!

提示:如要透過控制台查看 Kubernetes 的 Deployment,請依序開啟「導覽選單」>「Kubernetes Engine」>「工作負載」 注意:如果看到錯誤或非預期的狀態,可以使用下列指令對資源偵錯,查看詳細資訊:

kubectl describe pod monolith

kubectl describe pod/monolith-7d8bc7bf68-2bxts

kubectl describe deployment monolith

kubectl describe deployment.apps/monolith

在輸出內容的結尾可以看到錯誤事件清單和資源的詳細資訊。

自行選擇:您也可以對部署作業個別執行指令:

# Show pods kubectl get pods # Show deployments kubectl get deployments # Show replica sets kubectl get rs #You can also combine them kubectl get pods,deployments

如要充分瞭解 Kubernetes 的優點,請刪除 Pod 來模擬伺服器當機,看看會發生什麼事!

  1. 複製前一個指令的 Pod 名稱,執行下列指令時使用該名稱來刪除 Pod:
kubectl delete pod/<POD_NAME>

「工作負載」頁面可查看刪除作業。

  1. 點選工作負載名稱 (很快就會出現)。

  2. 如果動作夠快,可以再次執行 get all,應該會看到兩個 Pod:一個正在終止,另一個正在建立或執行:

kubectl get all

輸出內容

NAME READY STATUS RESTARTS AGE pod/monolith-7d8bc7bf68-2bxts 1/1 Running 0 4s pod/monolith-7d8bc7bf68-htm7z 1/1 Terminating 0 9m35s NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/kubernetes ClusterIP 10.27.240.1 443/TCP 24h NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE deployment.apps/monolith 1 1 1 1 24m NAME DESIRED CURRENT READY AGE replicaset.apps/monolith-7d8bc7bf68 1 1 1 24m

為什麼會發生這種情形?ReplicaSet 發現 Pod 正在終止,因此觸發建立新的 Pod,以維持所需的副本數量。稍後您將瞭解如何擴充規模,確保有多個執行個體運作,這樣即使其中一個執行個體故障,使用者也不會遇到停機時間!

工作 5:公開 GKE Deployment

您已在 GKE 上部署應用程式,但無法從叢集外部存取。根據預設,您在 GKE 上執行的容器無法從網際網路存取,因為這些容器沒有外部 IP 位址。您必須透過 Service 資源,明確將應用程式公開至網際網路傳出的流量。Service 可為應用程式的 Pod 提供網路和 IP 支援。GKE 會為應用程式建立外部 IP 和負載平衡器。

  • 執行下列指令,將網站公開至網際網路:
kubectl expose deployment monolith --type=LoadBalancer --port 80 --target-port 8080

存取 Service

GKE 會將外部 IP 位址指派給 Service 資源,而非 Deployment。

  1. 如果您想要找出 GKE 為應用程式佈建的外部 IP,則可透過 kubectl get service 指令檢查該 Service:
kubectl get service

輸出內容

NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE monolith 10.3.251.122 203.0.113.0 80:30877/TCP 3d

重複執行指令,直到 Service 取得外部 IP 位址。

  1. 確認應用程式的外部 IP 位址後,請複製這個 IP 位址,然後將瀏覽器指向該網址 (例如「http://203.0.113.0」),檢查應用程式是否能存取。

您應該會看到先前測試的網站。現在您的網站已完全是在 Kubernetes 上運作!

點選「Check my progress」,確認目標已達成。 公開 GKE Deployment

工作 6:擴充 GKE Deployment

現在您的應用程式已在 GKE 中執行,並公開發布到網際網路。假設您的網站變得非常熱門,您需要將應用程式擴充至多個執行個體,才能處理所有流量。接下來,您將學會如何將應用程式擴充至 3 個副本。

  1. 在 Cloud Shell 執行下列指令,將 Deployment 擴充至 3 個副本:
kubectl scale deployment monolith --replicas=3
  1. 確認 Deployment 已擴充:
kubectl get all

輸出內容

NAME READY STATUS RESTARTS AGE pod/monolith-7d8bc7bf68-2bxts 1/1 Running 0 36m pod/monolith-7d8bc7bf68-7ds7q 1/1 Running 0 45s pod/monolith-7d8bc7bf68-c5kxk 1/1 Running 0 45s NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/kubernetes ClusterIP 10.27.240.1 443/TCP 25h service/monolith LoadBalancer 10.27.253.64 XX.XX.XX.XX 80:32050/TCP 6m7s NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE deployment.apps/monolith 3 3 3 3 61m NAME DESIRED CURRENT READY AGE replicaset.apps/monolith-7d8bc7bf68 3 3 3 61m

現在應該會看到 3 個 Pod 執行個體。請注意,Deployment 和 ReplicaSet 現在的所需數量都是 3。

點選「Check my progress」,確認目標已達成。 擴充 GKE Deployment

工作 7:變更網站內容

情境:您的行銷團隊想請您變更網站首頁,希望包含更多公司簡介與銷售產品等資訊。

任務:在首頁加入一些文字,符合行銷團隊要求。看來有某位開發人員已做了變更,檔案名稱為 index.js.new。您可以直接將這個檔案複製到 index.js,網站應該就會反映新內容。按照下方說明操作,變更適當內容。

  1. 執行下列指令,將更新後的檔案複製為正確檔名:
cd ~/monolith-to-microservices/react-app/src/pages/Home mv index.js.new index.js
  1. 顯示檔案內容來確認變更:
cat ~/monolith-to-microservices/react-app/src/pages/Home/index.js

顯示的程式碼應如下所示:

/* Copyright 2019 Google LLC Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at https://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. \*/ import React from "react"; import { makeStyles } from "@material-ui/core/styles"; import Paper from "@material-ui/core/Paper"; import Typography from "@material-ui/core/Typography"; const useStyles = makeStyles(theme => ({ root: { flexGrow: 1 }, paper: { width: "800px", margin: "0 auto", padding: theme.spacing(3, 2) } })); export default function Home() { const classes = useStyles(); return (
Fancy Fashion & Style Online
Tired of mainstream fashion ideas, popular trends and societal norms? This line of lifestyle products will help you catch up with the Fancy trend and express your personal style. Start shopping Fancy items now!
); }

React 元件已更新,但還得建構 React 應用程式,才能產生靜態檔案。

  1. 執行下列指令即可建構 React 應用程式,並將其複製到單體公開目錄:
cd ~/monolith-to-microservices/react-app npm run build:monolith

程式碼更新完畢後,您需要重建 Docker 容器,並發布至 Artifact Registry。使用與先前相同的指令,但這次請更新版本標籤。

  1. 執行下列指令,使用更新後的映像檔版本 2.0.0 觸發新的 Cloud Build:
cd ~/monolith-to-microservices/monolith gcloud builds submit --tag gcr.io/${GOOGLE_CLOUD_PROJECT}/monolith:2.0.0 .

在下一節中,您將使用這個映像檔在不停機的情況下更新應用程式。

點選「Check my progress」,確認目標已達成。 變更網站內容

工作 8:更新網站,完全不必停機

變更完成,行銷團隊對您更新的內容非常滿意!現在是更新網站的好時機,而且不會影響使用者體驗。

GKE 具備滾動式更新機制,如此一來,即使系統將舊容器映像檔的執行個體換成新的容器映像檔,您的應用程式在所有運作中的副本之間仍然可用,且可正常運作。

  • 輸入下列指令,告知 Kubernetes 您要將 Deployment 的映像檔更新為新版本:
kubectl set image deployment/monolith monolith=gcr.io/${GOOGLE_CLOUD_PROJECT}/monolith:2.0.0

驗證 Deployment

  1. 執行下列指令,即可驗證 Deployment 更新:
kubectl get pods

輸出內容

NAME READY STATUS RESTARTS AGE monolith-584fbc994b-4hj68 1/1 Terminating 0 60m monolith-584fbc994b-fpwdw 1/1 Running 0 60m monolith-584fbc994b-xsk8s 1/1 Terminating 0 60m monolith-75f4cf58d5-24cq8 1/1 Running 0 3s monolith-75f4cf58d5-rfj8r 1/1 Running 0 5s monolith-75f4cf58d5-xm44v 0/1 ContainerCreating 0 1s

您會看到 3 個新 Pod 正在建立,舊 Pod 則關閉。從運作時間就能判斷哪些是新影片,哪些是舊影片。最後,您會再次看到 3 個 Pod,也就是 3 個更新後的 Pod。

  1. 執行下列指令啟動網路伺服器,測試應用程式:
npm start
  1. 如要驗證變更,請返回應用程式網頁分頁並重新整理頁面。注意一下,您目前的應用程式已更新。

現在,您的網站應該會顯示您剛才新增至首頁元件的文字!

Fancy Store 首頁

  1. 在 Cloud Shell 中按下 CTRL+C 鍵,停止網路伺服器程序。

點選「Check my progress」,確認目標已達成。 更新網站,完全不必停機

工作 9:清除所用資源

雖然完成本實驗室後,所有資源都會刪除,但在自己的環境中,最好還是移除不再需要的資源。

  1. 刪除 Git 存放區:
cd ~ rm -rf monolith-to-microservices
  1. 刪除 Artifact Registry 映像檔:
# Delete the container image for version 1.0.0 of the monolith gcloud container images delete gcr.io/${GOOGLE_CLOUD_PROJECT}/monolith:1.0.0 --quiet # Delete the container image for version 2.0.0 of the monolith gcloud container images delete gcr.io/${GOOGLE_CLOUD_PROJECT}/monolith:2.0.0 --quiet
  1. 從 Google Cloud Storage 刪除 Google Cloud Build 構件:
# The following command will take all source archives from all builds and delete them from cloud storage # Run this command to print all sources: # gcloud builds list | awk 'NR > 1 {print $4}' gcloud builds list | grep 'SOURCE' | cut -d ' ' -f2 | while read line; do gsutil rm $line; done
  1. 刪除 GKE Service:
kubectl delete service monolith kubectl delete deployment monolith
  1. 刪除 GKE 叢集:
gcloud container clusters delete fancy-cluster {{{project_0.default_region | lab region}}}
  1. 輸入 Y 鍵確認這項操作。可能需要一點時間。

恭喜!

您已成功在 GKE 部署、調度資源及更新網站。您已有使用 Docker 和 Kubernetes 的經驗!

後續步驟/瞭解詳情

使用手冊上次更新日期:2024 年 4 月 26 日

實驗室上次測試日期:2024 年 2 月 21 日

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

准备工作

  1. 实验会创建一个 Google Cloud 项目和一些资源,供您使用限定的一段时间
  2. 实验有时间限制,并且没有暂停功能。如果您中途结束实验,则必须重新开始。
  3. 在屏幕左上角,点击开始实验即可开始

使用无痕浏览模式

  1. 复制系统为实验提供的用户名密码
  2. 在无痕浏览模式下,点击打开控制台

登录控制台

  1. 使用您的实验凭证登录。使用其他凭证可能会导致错误或产生费用。
  2. 接受条款,并跳过恢复资源页面
  3. 除非您已完成此实验或想要重新开始,否则请勿点击结束实验,因为点击后系统会清除您的工作并移除该项目

此内容目前不可用

一旦可用,我们会通过电子邮件告知您

太好了!

一旦可用,我们会通过电子邮件告知您

一次一个实验

确认结束所有现有实验并开始此实验

使用无痕浏览模式运行实验

使用无痕模式或无痕浏览器窗口是运行此实验的最佳方式。这可以避免您的个人账号与学生账号之间发生冲突,这种冲突可能导致您的个人账号产生额外费用。