正在加载…
未找到任何结果。

在 Google Cloud 控制台中运用您的技能

04

Essential Google Cloud Infrastructure: Foundation - 繁體中文

访问 700 多个实验和课程

使用虛擬機器 (VM)

实验 1 小时 30 分钟 universal_currency_alt 5 积分 show_chart 入门级
info 此实验可能会提供 AI 工具来支持您学习。
访问 700 多个实验和课程

總覽

您將在本實驗室中設定一個遊戲應用程式:Minecraft 伺服器。

這個 Minecraft 伺服器軟體將透過 Compute Engine 執行個體運作。

您會使用搭載 10 GB 開機磁碟、2 個虛擬 CPU (vCPU) 和 4 GB RAM 的 e2-medium 機型。根據預設,這種機型執行的是 Debian Linux。

為了確保有充足的空間能夠存放 Minecraft 伺服器的世界資料,您還需要將高效能的 50 GB 永久固態硬碟 (SSD) 連接至執行個體。這個專屬 Minecraft 伺服器最多可支援 50 名玩家。

目標

在本實驗室中,您將瞭解如何執行下列工作:

  • 自訂應用程式伺服器
  • 安裝及設定必要的軟體
  • 設定網路存取權
  • 安排定期備份

設定和需求

每個實驗室都會提供新的 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 產品和服務的選單,請點選左上角的「導覽選單」,或在「搜尋」欄位輸入服務或產品名稱。

工作 1:建立 VM

這項工作中,您會建立 VM 來託管 Minecraft 伺服器及安裝軟體。

使用進階選項定義 VM

  1. 前往 Google Cloud 控制台的「導覽選單」,依序點按「Compute Engine」>「VM 執行個體」
  2. 點按「建立執行個體」
  3. 指定下列屬性,其他設定則保留預設值:
屬性 值 (依指示輸入值或選取選項)
名稱 mc-server
區域
可用區
  1. 點按「OS 和儲存空間」

  2. 確認開機磁碟映像檔顯示為 Debian GNU/Linux 12 (bookworm)。如果不是,請點按「變更」,從「版本」下拉式清單中選擇正確版本,然後按一下「選取」

  3. 點按「新增磁碟」

  4. 指定下列屬性,其他設定則保留預設值:

屬性 值 (依指示輸入值或選取選項)
名稱 minecraft-disk
磁碟來源類型 空白磁碟
磁碟設定 SSD 永久磁碟
大小 (GB) 50
加密 Google 代管的加密金鑰
  1. 點選「儲存」。系統會隨即建立磁碟,並自動將磁碟連接至建立完成的 VM。

  2. 點選「網路」

  3. 指定下列屬性,其他設定則保留預設值:

屬性 值 (依指示輸入值或選取選項)
網路標記 minecraft-server
網路介面 點選「預設」並編輯介面
外部 IPv4 位址 保留靜態外部 IP 位址
名稱 mc-server-ip
  1. 依序點按「保留」>「完成」

  2. 點按「安全性」

  3. 指定下列屬性,其他設定則保留預設值:

屬性 值 (依指示輸入值或選取選項)
身分及 API 存取權 > 存取權範圍 對各個 API 設定存取權
儲存空間 讀寫
  1. 點按「建立」

工作 2:準備資料磁碟

這項工作中,您會格式化並掛接 Minecraft 磁碟。

建立目錄,然後格式化並掛接磁碟

磁碟已連接至執行個體,但尚未掛接或進行格式化。

  1. 點選 mc-server 的「SSH」選項,開啟終端機並進行連線。
  2. 如要建立當做資料磁碟掛接點的目錄,請執行以下指令:
sudo mkdir -p /home/minecraft
  1. 如要將磁碟格式化,請執行以下指令:
sudo mkfs.ext4 -F -E lazy_itable_init=0,\ lazy_journal_init=0,discard \ /dev/disk/by-id/google-minecraft-disk

結果 (這是輸出內容範例)

mke2fs 1.47.0 (5-Feb-2023) Discarding device blocks: done Creating filesystem with 13107200 4k blocks and 3276800 inodes Filesystem UUID: 3d5b0563-f29e-4107-ad1a-ba7bf11dcf7c Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done
  1. 請執行下列指令來掛接磁碟:
sudo mount -o discard,defaults /dev/disk/by-id/google-minecraft-disk /home/minecraft

磁碟掛接完成後不會顯示任何輸出內容。

點選「檢查我的進度」可確認自己是否已達成目標。

建立 VM 並準備資料磁碟

工作 3:安裝並執行應用程式

這項工作中,您會安裝並執行 Minecraft 應用程式。Minecraft 伺服器會在 Java Virtual Machine (JVM) 上運作,因此您必須先執行 Java Runtime Environment (JRE)。伺服器不需要圖形使用者介面,所以要使用無頭版本的 JRE。

這麼做可減少 JRE 的機器資源用量,確保 Minecraft 伺服器有足夠的空間,可視需要增加自身的資源用量。

安裝 Java Runtime Environment (JRE) 和 Minecraft 伺服器

  1. mc-server 的 SSH 終端機中,如要更新 VM 上的 Debian 存放區,請執行以下指令:
sudo apt-get update
  1. 存放區更新完成後,如要安裝無頭 JRE,請執行以下指令:
sudo apt-get install -y default-jre-headless
  1. 如要前往已掛接永久磁碟的目錄,請執行以下指令:
cd /home/minecraft
  1. 如要安裝 wget,請執行以下指令:
sudo apt-get install wget
  1. 如果系統提示您繼續操作,請輸入「Y」

  2. 如要下載目前 Minecraft 伺服器的 JAR 檔案 (1.11.2 JAR),請執行以下指令:

sudo wget https://launcher.mojang.com/v1/objects/d0d0fe2b1dc6ab4c65554cb734270872b72dadd6/server.jar

初始化 Minecraft 伺服器

  1. 如要初始化 Minecraft 伺服器,請執行以下指令:
sudo java -Xmx1024M -Xms1024M -jar server.jar nogui

結果 (輸出內容範例)

[21:01:54] [main/ERROR]: Failed to load properties from file: server.properties [21:01:54] [main/WARN]: Failed to load eula.txt [21:01:54] [main/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info. 注意:您必須接受《使用者授權協議》(EULA) 的條款,Minecraft 伺服器才能運作。

點選「檢查我的進度」可確認自己是否已達成目標。

安裝 Java Runtime Environment (JRE) 和 Minecraft 伺服器
  1. 如要查看系統在 Minecraft 伺服器首次初始化時建立的檔案,請執行以下指令:
sudo ls -l 附註:您可以編輯 server.properties 檔案,變更 Minecraft 伺服器的預設行為。
  1. 如要編輯《使用者授權協議》,請執行以下指令:
sudo nano eula.txt
  1. 將檔案最後一行的 eula=false 變更為 eula=true
  2. 依序按下 Ctrl+OEnter 鍵儲存檔案,然後按下 Ctrl+X 退出 nano。
注意:目前請先不要重新啟動 Minecraft 伺服器,您將在下一個程序中使用其他技巧。

建立虛擬終端機畫面,啟動 Minecraft 伺服器

如果您這時再次啟動 Minecraft 伺服器,伺服器會在 SSH 工作階段的生命週期結束時終止運作。也就是說,如果您關閉 SSH 終端機,就會一併關閉伺服器。如要避免這個問題,您可以透過 screen 應用程式建立虛擬終端機。這類終端機可在「卸離」後成為背景程序,或是在「重新連接」後成為前景程序。當虛擬終端機卸離至背景後,無論您處於登入或登出狀態,該終端機都會繼續執行。

  1. 如要安裝 screen,請執行以下指令:
sudo apt-get install -y screen
  1. 如要在 screen 虛擬終端機中啟動 Minecraft 伺服器,請執行以下指令,並使用 -S 旗標為終端機 mcs 命名:
sudo screen -S mcs java -Xmx1024M -Xms1024M -jar server.jar nogui

結果 (輸出內容範例)

... [21:06:06] [Server-Worker-1/INFO]: Preparing spawn area: 83% [21:06:07] [Server-Worker-1/INFO]: Preparing spawn area: 85% [21:06:07] [Server-Worker-1/INFO]: Preparing spawn area: 86% [21:06:08] [Server-Worker-1/INFO]: Preparing spawn area: 88% [21:06:08] [Server-Worker-1/INFO]: Preparing spawn area: 89% [21:06:09] [Server-Worker-1/INFO]: Preparing spawn area: 91% [21:06:09] [Server-Worker-1/INFO]: Preparing spawn area: 93% [21:06:10] [Server-Worker-1/INFO]: Preparing spawn area: 95% [21:06:10] [Server-Worker-1/INFO]: Preparing spawn area: 98% [21:06:11] [Server-Worker-1/INFO]: Preparing spawn area: 99% [21:06:11] [Server thread/INFO]: Time elapsed: 55512 ms [21:06:11] [Server thread/INFO]: Done (102.484s)! For help, type "help"

從 screen 卸離並關閉 SSH 工作階段

  1. 如要卸離 screen 終端機,請依序按下 Ctrl+ACtrl+D。終端機會繼續在背景執行。如要重新連接終端機,請執行以下指令:
sudo screen -r mcs
  1. 如有需要,請依序按下 Ctrl+ACtrl+D 退出 screen 終端機。
  2. 如要退出 SSH 終端機,請執行以下指令:
exit

恭喜!您已成功設定及自訂 VM,並且安裝及設定了應用程式軟體:Minecraft 伺服器!

工作 4:允許用戶端流量

這項工作中,您會設定防火牆規則,允許用戶端連線至 Minecraft 伺服器。目前伺服器具有外部靜態 IP 位址,但尚未設定防火牆規則,因此無法接收流量。

Minecraft 伺服器預設會使用 TCP 通訊埠 25565。

建立防火牆規則

  1. 前往 Google Cloud 控制台的「導覽選單」,依序點按「虛擬私有雲網路」>「防火牆」
  2. 點按「建立防火牆規則」
  3. 指定下列屬性,其他設定則保留預設值:
屬性 值 (依指示輸入值或選取選項)
名稱 minecraft-rule
目標 指定的目標標記
目標標記 minecraft-server
來源篩選器 IPv4 範圍
來源 IPv4 範圍 0.0.0.0/0
通訊協定和通訊埠 指定的通訊協定和通訊埠
  1. 針對「TCP」,請指定通訊埠 25565
  2. 點選「建立」。使用者現在可以透過自己的 Minecraft 用戶端存取您的伺服器了。

驗證伺服器的可用性

  1. 前往 Cloud 控制台的「導覽選單」,點按「虛擬私有雲網路」
  2. 在左側窗格點按「IP 位址」
  3. 找出並複製 mc-server VM 的外部 IP 位址
  4. 使用 Minecraft Server Status 網站測試 Minecraft 伺服器。

附註:如果上述網站無法使用,您可以改用其他網站或以下 Chrome 擴充功能:

點選「檢查我的進度」可確認自己是否已達成目標。

允許用戶端流量

工作 5:安排定期備份

這項工作中,您會進行一系列設定,讓系統將 Minecraft 世界資料備份至 Cloud Storage。備份應用程式資料是常見的活動。

建立 Cloud Storage bucket

  1. 前往 Google Cloud 控制台的「導覽選單」,依序點按「Compute Engine」>「VM 執行個體」
  2. 點按 mc-server 的「SSH」選項。
  3. 建立全域不重複的值區名稱,並儲存在環境變數 YOUR_BUCKET_NAME 中。如要確保名稱不重複,您可以使用專案 ID。請執行下列指令:
export YOUR_BUCKET_NAME=<在這裡輸入值區名稱>
  1. 使用 echo 進行驗證:
echo $YOUR_BUCKET_NAME
  1. 如要使用 Cloud SDK 的 gcloud storage 工具建立值區,請執行下列指令:
gcloud storage buckets create gs://$YOUR_BUCKET_NAME-minecraft-backup 注意:如果這項指令執行失敗,代表建立的值區名稱可能重複了。在這種情況下,請選擇其他值區名稱並更新環境變數,然後再次嘗試建立值區。 附註:如要讓這個環境變數永久存在,您可以執行以下指令將其新增至根層級的 .profile 中:
echo YOUR_BUCKET_NAME=$YOUR_BUCKET_NAME >> ~/.profile

建立備份指令碼

  1. 在 mc-server SSH 終端機中前往主目錄:
cd /home/minecraft
  1. 如要建立指令碼,請執行以下指令:
sudo nano /home/minecraft/backup.sh
  1. 複製下列指令碼並貼到檔案中:
#!/bin/bash screen -r mcs -X stuff '/save-all\n/save-off\n' /usr/bin/gcloud storage cp -R ${BASH_SOURCE%/*}/world gs://${YOUR_BUCKET_NAME}-minecraft-backup/$(date "+%Y%m%d-%H%M%S")-world screen -r mcs -X stuff '/save-on\n'
  1. 依序按下 Ctrl+OEnter 鍵儲存檔案,然後按下 Ctrl+X 退出 nano 編輯器。
附註:這個指令碼會儲存伺服器世界資料目前的狀態,並暫停伺服器的自動儲存功能。接著,指令碼會備份伺服器的世界資料目錄 (world),並將內容存放在 Cloud Storage bucket 中已加上時間戳記的目錄 (<timestamp>-world)。指令碼完成資料備份後,就會重新啟用 Minecraft 伺服器的自動儲存功能。
  1. 如要將指令碼設為可執行狀態,請執行以下指令:
sudo chmod 755 /home/minecraft/backup.sh

測試備份指令碼並安排 Cron 工作

  1. 在 mc-server SSH 終端機中執行備份指令碼:
. /home/minecraft/backup.sh
  1. 指令碼執行完成後,請返回 Cloud 控制台。
  2. 在「導覽選單」 依序點按「Cloud Storage」>「bucket」,確認備份檔案已編寫完成。
  3. 點按備份 bucket 名稱,您應該會看到名稱包含日期和時間戳記的資料夾。確認備份作業可順利進行後,您可以安排 Cron 工作,讓系統自動執行備份作業。
  4. 在 mc-server SSH 終端機中,開啟 Cron 資料表進行編輯:
sudo crontab -e
  1. 如果系統提示您選取編輯器,請輸入與 nano 對應的數字,然後按下 Enter 鍵
  2. 在 Cron 資料表底部,貼上以下這一行:
0 */4 * * * /home/minecraft/backup.sh 附註:這一行會指示 Cron 每 4 小時備份一次。
  1. 依序按下 Ctrl+OEnter 鍵儲存 Cron 資料表,然後按下 Ctrl+X 退出 nano。
附註:完成上述步驟後,系統每個月會在 Cloud Storage 中進行約 300 次備份作業,因此建議您定期刪除備份檔案,以免產生費用。Cloud Storage 提供物件生命週期管理功能,可讓您為物件設定存留時間 (TTL)、封存舊版物件,或是降低物件的儲存空間級別,藉此管理費用。

點選「檢查我的進度」可確認自己是否已達成目標。

安排定期備份

工作 6:維護伺服器

這項工作中,您會連線到伺服器,並將其關閉來進行維護。

透過 SSH 連線至伺服器,接著停止伺服器並關閉 VM

  1. 在 mc-server SSH 終端機中執行以下指令:
sudo screen -r -X stuff '/stop\n'
  1. 前往 Google Cloud 控制台的「導覽選單」,依序點按「Compute Engine」>「VM 執行個體」
  2. 選取「mc-server」
  3. 點選「Stop」
  4. 在確認對話方塊中,點選「Stop」進行確認。 系統會將您登出 SSH 工作階段。
附註:如要再次啟動執行個體,請前往執行個體頁面並點選「啟動」。如要再次啟動 Minecraft 伺服器,您可以依照先前做過的步驟與執行個體建立 SSH 連線,重新掛接永久磁碟,然後在新的 screen 終端機中啟動 Minecraft 伺服器。

透過開機和關機指令碼自動執行伺服器維護作業

如果不想手動掛接永久磁碟,並透過 screen 啟動伺服器安裝作業,您可以改用中繼資料指令碼,建立開機指令碼和關機指令碼,讓系統自動處理這項流程。

  1. 點選「mc-server」

  2. 點選「編輯」

  3. 在「中繼資料」部分,點選「+ 新增項目」並指定下列設定:

    startup-script-url https://storage.googleapis.com/cloud-training/archinfra/mcserver/startup.sh
    shutdown-script-url https://storage.googleapis.com/cloud-training/archinfra/mcserver/shutdown.sh
附註:您必須點選「新增項目」才能新增 shutdown-script-url。重新啟動執行個體時,開機指令碼會自動將 Minecraft 磁碟掛接到適當目錄,在 screen 工作階段中啟動 Minecraft 伺服器,然後卸離工作階段。停止執行個體時,關機指令碼會先將 Minecraft 伺服器關機再關閉執行個體。建議您將這些指令碼儲存在 Cloud Storage 中。
  1. 點選「儲存」

點選「檢查我的進度」可確認自己是否已達成目標。

維護伺服器

工作 7:回顧

在本實驗室中,您安裝了基本軟體 (無頭 JRE) 和應用程式軟體 (Minecraft 遊戲伺服器),藉此建立自訂虛擬機器執行個體。您還連接及準備了高速 SSD 資料磁碟自訂 VM,並保留靜態外部 IP 讓位址保持一致。接著,您驗證了遊戲伺服器在網路中的可用性。

此外,您也設定了備份系統,將伺服器資料備份至 Cloud Storage bucket,並測試這個備份系統。接著,您安排了 Cron 工作讓系統自動執行備份作業。最後,為了安全啟動及關閉伺服器,您使用中繼資料設定了維護指令碼。

關閉研究室

如果您已完成研究室,請按一下「End Lab」(關閉研究室)。Google Cloud Skills Boost 會移除您使用的資源,並清除所用帳戶。

您可以針對研究室的使用體驗評分。請選取合適的星級評等並提供意見,然後按一下「Submit」(提交)

星級評等代表您的滿意程度:

  • 1 星 = 非常不滿意
  • 2 星 = 不滿意
  • 3 星 = 普通
  • 4 星 = 滿意
  • 5 星 = 非常滿意

如果不想提供意見回饋,您可以直接關閉對話方塊。

如有任何想法、建議或指教,請透過「Support」(支援) 分頁提交。

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

上一步 下一步

准备工作

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

此内容目前不可用

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

太好了!

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

一次一个实验

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

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

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