检查点
Create a Compute Engine instance and add Nginx Server to your instance with necessary firewall rules.
/ 50
Create a new instance with gcloud.
/ 50
建立虛擬機器 - Creating a Virtual Machine
GSP001
總覽
Compute Engine 可讓您在 Google 基礎架構上建立虛擬機器,以便執行不同作業系統,包括多種 Linux 發行版 (Debian、Ubuntu、Suse、Red Hat、CoreOS) 和 Windows Server。您可以在提供效能同步一致性與飛快速度的系統上執行數千個虛擬 CPU。
在這個實作研究室中,您將透過 Google Cloud 控制台和 gcloud
指令列工具建立多種機器類型的虛擬機器執行個體,並且學習如何將 NGINX 網路伺服器連線至您的虛擬機器。
雖然您可以輕鬆複製研究室中的指令並貼至合適的地方,但我們還是建議您親自輸入指令,進而強化您對核心概念的理解。
要執行的步驟:
-
透過 Cloud 控制台建立虛擬機器。
-
透過
gcloud
指令列工具建立虛擬機器。 -
部署網路伺服器並連線至虛擬機器。
事前準備
-
瞭解如何使用標準 Linux 文字編輯器 (例如
vim
、emacs
或nano
) 會有所幫助。
設定
點選「Start Lab」按鈕前的須知事項
請詳閱以下操作說明。研究室活動會計時,而且中途無法暫停。點選「Start Lab」 後就會開始計時,讓您瞭解有多少時間可以使用 Google Cloud 資源。
您將在真正的雲端環境中完成實作研究室活動,而不是在模擬或示範環境。為達此目的,我們會提供新的暫時憑證,讓您用來在研究室活動期間登入及存取 Google Cloud。
如要完成這個研究室活動,請先確認:
- 您可以使用標準的網際網路瀏覽器 (Chrome 瀏覽器為佳)。
- 是時候完成研究室活動了!別忘了,活動一開始將無法暫停。
如何開始研究室及登入 Google Cloud 控制台
-
按一下「Start Lab」(開始研究室) 按鈕。如果研究室會產生費用,畫面中會出現選擇付款方式的彈出式視窗。左側的「Lab Details」(研究室詳細資料) 面板會顯示下列項目:
- 「Open Google Console」(開啟 Google 控制台) 按鈕
- 剩餘時間
- 必須在這個研究室中使用的暫時憑證
- 完成這個研究室所需的其他資訊 (如有)
-
按一下「Open Google Console」(開啟 Google 控制台)。接著,研究室會啟動相關資源並開啟另一個分頁,當中會顯示「Sign in」(登入) 頁面。
提示:您可以在不同的視窗中並排開啟分頁。
注意事項:如果頁面中顯示了「Choose an account」(選擇帳戶) 對話方塊,請按一下「Use Another Account」(使用其他帳戶)。 -
如有必要,請複製「Lab Details」(研究室詳細資料) 面板中的使用者名稱,然後貼到「Sign in」(登入) 對話方塊。按一下「Next」(下一步)。
-
複製「Lab Details」(研究室詳細資料) 面板中的密碼,然後貼到「Welcome」(歡迎使用) 對話方塊。按一下「Next」(下一步)。
重要注意事項:請務必使用左側面板中的憑證,而非 Google Cloud 技能重點加強的憑證。 注意事項:如果使用自己的 Google Cloud 帳戶來進行這個研究室,可能會產生額外費用。 -
按過後續的所有頁面:
- 接受條款及細則。
- 由於這是臨時帳戶,請勿新增救援選項或雙重驗證機制。
- 請勿申請免費試用。
Cloud 控制台稍後會在這個分頁中開啟。
啟動 Cloud Shell
Cloud Shell 是搭載多項開發工具的虛擬機器,提供永久的 5 GB 主目錄,而且在 Google Cloud 中運作。Cloud Shell 提供指令列存取權,方便您使用 Google Cloud 資源。
- 點按 Google Cloud 控制台上方的「啟用 Cloud Shell」圖示 。
連線完成即代表已通過驗證,且專案已設為您的 PROJECT_ID。輸出內容中有一行宣告本工作階段 PROJECT_ID 的文字:
gcloud
是 Google Cloud 的指令列工具,已預先安裝於 Cloud Shell,並支援 Tab 鍵自動完成功能。
- (選用) 您可以執行下列指令來列出使用中的帳戶:
-
點按「授權」。
-
輸出畫面應如下所示:
輸出內容:
- (選用) 您可以使用下列指令來列出專案 ID:
輸出內容:
輸出內容範例:
gcloud
的完整說明,請前往 Google Cloud 並參閱「gcloud CLI overview guide」(gcloud CLI 總覽指南)。
瞭解區域和可用區
某些 Compute Engine 資源專屬於特定的區域或可用區。「區域」是您可以執行資源的特定地理位置,每個區域會有一或多個「可用區」。舉例來說,us-central1 區域是指美國中部,其中有 us-central1-a
、us-central1-b
、us-central1-c
和 us-central1-f
等多個可用區。
區域 | 可用區 |
---|---|
美國西部 | us-west1-a、us-west1-b |
美國中部 | us-central1-a、us-central1-b、us-central1-d、us-central1-f |
美國東部 | us-east1-b、us-east1-c、us-east1-d |
西歐 | europe-west1-b、europe-west1-c、europe-west1-d |
東亞 | asia-east1-a、asia-east1-b、asia-east1-c |
可用區中的資源稱為「可用區資源」,像是虛擬機器執行個體和永久磁碟。如要將永久磁碟連接至虛擬機器執行個體,這兩項資源都必須位於同一個可用區。同樣地,如要將靜態 IP 位址指派給執行個體,這兩項資源的所在區域也須相同。
工作 1:透過 Cloud 控制台建立新的執行個體
在本節中,您將瞭解如何在 Cloud 控制台中使用 Compute Engine 新建預先定義的機器類型。
-
在 Cloud 控制台中,依序點選「導覽選單」 中的「Compute Engine」>「VM 執行個體」。
第一次執行初始化作業可能需要幾分鐘才能完成。
-
如要建立新執行個體,請點選「建立執行個體」。
-
建立新的執行個體時,您可以設定許多參數。本研究室將使用下列參數:
欄位 | 值 | 其他資訊 |
---|---|---|
名稱 | gcelab | VM 執行個體的名稱 |
區域 | 如要進一步瞭解區域,請參閱 Compute Engine 指南:區域和可用區。 | |
可用區 |
|
注意:請記住您選取的可用區,稍後會用到。如要進一步瞭解可用區,請參閱 Compute Engine 指南:區域和可用區。 |
系列 | E2 | 系列名稱 |
機器類型 | 2 個 vCPU | 這個執行個體是 e2-medium,具備 2 個 CPU 和 4 GB RAM。我們提供多種機器類型,包括 micro 執行個體類型和 32 個核心/208 GB RAM 的執行個體類型。如要瞭解詳情,請參閱 Compute Engine 指南:機器系列簡介。注意:新專案設有預設資源配額,可能會對 CPU 核心數量設限。在本研究室以外的使用情境下處理專案時,您可以申請更多配額。 |
開機磁碟 | 全新 10 GB 已平衡的永久磁碟 OS 映像檔:Debian GNU/Linux 11 (bullseye) | 我們提供多種映像檔,包括 Debian、Ubuntu、CoreOS 和 Red Hat Enterprise Linux 及 Windows Server 等付費映像檔。如要瞭解詳情,請參閱「作業系統」說明文件。 |
防火牆 | 接受 HTTP 流量 | 為了存取您在後續步驟安裝的網路伺服器,請選取這個選項。注意:這麼做會自動建立防火牆規則,以便接受通訊埠 80 的 HTTP 流量。 |
-
按一下「建立」。
機器可能需要一分鐘才能建立完成,隨後新的虛擬機器就會顯示在「VM 執行個體」頁面中。
-
如要透過 SSH 連線至虛擬機器,請點選與機器位於同一列的「SSH」。
這麼做會直接在瀏覽器中執行 SSH 用戶端。
注意:如要進一步瞭解如何透過 SSH 連線至執行個體,請參閱 Compute Engine 指南:使用 Google 工具連線至 Linux VM。
工作 2:安裝 NGINX 網路伺服器
您現在要安裝 NGINX 網路伺服器 (全球最熱門的網路伺服器之一),以便將您的虛擬機器連線至其他位置。
-
更新作業系統:
sudo apt-get update 預期的輸出內容:
Get:1 http://security.debian.org stretch/updates InRelease [94.3 kB] Ign http://deb.debian.org strech InRelease Get:2 http://deb.debian.org strech-updates InRelease [91.0 kB] ... -
安裝 NGINX:
sudo apt-get install -y nginx 預期的輸出內容:
Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: ... -
確認 NGINX 正在執行中:
ps auwx | grep nginx 預期的輸出內容:
root 2330 0.0 0.0 159532 1628 ? Ss 14:06 0:00 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; www-data 2331 0.0 0.0 159864 3204 ? S 14:06 0:00 nginx: worker process www-data 2332 0.0 0.0 159864 3204 ? S 14:06 0:00 nginx: worker process root 2342 0.0 0.0 12780 988 pts/0 S+ 14:07 0:00 grep nginx -
如要查看網頁,請返回 Cloud 控制台,然後點選與機器位於同一列的「外部 IP」 連結,或在新的瀏覽器視窗或分頁中為
http://EXTERNAL_IP/
新增「外部 IP」值。預設網頁應會開啟:
如要查看研究室進度,請點選下方的「Check my progress」。顯示勾號表示您已達成目標。
建立 Compute Engine 執行個體,並透過必要的防火牆規則將 NGINX 伺服器新增至執行個體。
工作 3:透過 gcloud 建立新的執行個體
除了透過 Cloud 控制台建立虛擬機器執行個體之外,您也可以使用 Google Cloud Shell 內建的指令列工具 gcloud
。Cloud Shell 是一種以 Debian 為基礎的虛擬機器,搭載各種您需要的開發工具 (包括 gcloud
、git
等等),而且主目錄提供 5 GB 的永久儲存空間。
-
在 Cloud Shell 中,使用
gcloud
透過以下指令列建立新的虛擬機器執行個體:gcloud compute instances create gcelab2 --machine-type e2-medium --zone {{{project_0.startup_script.project_zone}}} 預期的輸出內容:
Created [...gcelab2]. NAME: gcelab2 ZONE: {{{project_0.startup_script.project_zone}}} MACHINE_TYPE: e2-medium PREEMPTIBLE: INTERNAL_IP: 10.128.0.3 EXTERNAL_IP: 34.136.51.150 STATUS: RUNNING 如要查看研究室進度,請點選下方的「Check my progress」。顯示勾號表示您已達成目標。
透過 gcloud 建立新的執行個體。 新執行個體的預設值如下:
- 最新版 Debian 11 (bullseye) 映像檔。
-
e2-medium
機器類型。 - 名稱與執行個體相同的根永久磁碟;該磁碟會自動連接至執行個體。
處理自己的專案時,您可以指定自訂機器類型。
-
如要查看所有預設值,請執行:
gcloud compute instances create --help 注意:如果您只會在同一個區域/可用區內工作,或是不想每次都附加 --zone
標記,可以將預設區域和可用區設為與gcloud
相同。如要這麼做,請執行下列指令:
gcloud config set compute/zone ...
gcloud config set compute/region ...
-
如要退出
help
,請按 CTRL + C 鍵。 -
在 Cloud 控制台中,依序點選「導覽選單」中的「Compute Engine」>「VM 執行個體」。
畫面上應該會列出 2 個新的執行個體。 -
您也可以使用
gcloud
來透過 SSH 連線至執行個體。請務必新增可用區 (如果已設定通用選項,也可忽略--zone
標記):gcloud compute ssh gcelab2 --zone {{{project_0.startup_script.project_zone}}} __Expected output__: ```output WARNING: The public SSH key file for gcloud does not exist. WARNING: The private SSH key file for gcloud does not exist. WARNING: You do not have an SSH key for gcloud. WARNING: [/usr/bin/ssh-keygen] will be executed to generate a key. This tool needs to create the directory [/home/gcpstaging306_student/.ssh] before being able to generate SSH Keys. ``` -
輸入 Y 繼續操作。
Do you want to continue? (Y/n) -
在通關密語部分中按下 ENTER 鍵,以便將通關密語留空。
Generating public/private rsa key pair. Enter passphrase (empty for no passphrase) -
連線完成後,結束遠端殼層即可中斷 SSH 連線:
exit
工作 4:學以致用
接受測驗,測試您對 Google Cloud 瞭解多少 (如有必要,請選擇多個正確的選項)。
恭喜!
Compute Engine 是 Google Cloud 基礎架構式服務 (IaaS) 的根基。您成功透過 Compute Engine 建立了虛擬機器,現在可以將現有的伺服器基礎架構、負載平衡器和網路拓撲對應至 Google Cloud。
完成您的任務
這個自修研究室是 Google Cloud Essentials 任務的一部分。任務是指一系列相關聯的研究室,構成完整的學習路徑。您可以報名參加這個任務,立即取得本研究室的完成學分,或是查看其他可開始進行的任務。
參加下一個研究室
繼續完成開始使用 Cloud Shell 和 gcloud 任務,或查看其他 Google Cloud 技能重點加強研究室:
後續步驟/瞭解詳情
- 如需 VM 簡介,請參閱虛擬機器執行個體。
- 瞭解如何將 VM 遷移至 Google Cloud。
- 進一步瞭解子網路和網路拓撲。
- 請務必參閱選擇 VM 機器一文,瞭解如何選擇合適的 VM 類型。
Google Cloud 教育訓練與認證
協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。
使用手冊上次更新日期:2022 年 7 月 29 日
研究室上次測試日期:2022 年 7 月 29 日
Copyright 2024 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。