[從資料分析到資料產品]:DAY 1 Google Cloud Platform-Visual Machine環境設定

Hector Haung
6 min readApr 15, 2020

--

本系列主要的兩個實做都是以API為最終產出,一個遠端伺服器的環境是絕對需要的,坊間有不少類似服務,但GCP學習資源較多且有提供一年$300美元的免費服務,故本次選擇以GCP作為範例平台。

本章節分三個步驟:

  1. 建立GCP專案
  2. 開啟並設定VM
  3. 用Putty進行SSH連線

第一步:建立GCP專案

首先進入GCP ,請自行註冊+開通1年$300美元的免費方案,這一步驟很重要,一定要先申請開通計費功能(Google不會真的收你錢,免擔心)。這步驟作完後,接著我們來開啟新專案:

這樣我們專案就開好了,以後如果要選擇不同專案,可以回到上圖的第1、2個流程,就可以從已經開好的專案去選擇了。

Google的很多服務都是在GCP專案底下進行整合開發的,包含各類Google API串接、BigQuery等服務,網路上的學習資源也很完整,有需要用到時可以再自行搜尋,本次不特別介紹。

如果想要刪除專案,請點選主頁左上角圖示->找到「IAM與管理」->點選「設定」->點選「關閉」->輸入專案ID->點選「關閉」

第二步:開啟並設定VM

接著我們要設定並開啟遠端虛擬機器(VM),虛擬機器的概念其實很簡單,就是電腦內建立一部電腦。它就像任何其他程式一樣在視窗內執行,在虛擬機器上給予終端使用者的體驗就如同在主機作業系統本身一樣(參見微軟說明)。而在GCP上的VM,就是直接在Google的主機上開啟一台電腦,然後使用者可以透過遠端連線操作,並提供各類我們希望它提供的服務。

點選主頁左上角圖示->找到「Computer Engine」->點選「VM執行個體」->點選「建立執行個體」

接下來我們就要設定VM的規格了:

首先設定名稱,這個限定小寫英文字母、數字、跟連號符(就是”-”,但最不得為最後一個字元);接著選擇server所在區域,這邊我選台灣;然後設定CPU跟記憶體規格,因為本次我的實做案例資料量跟運算量都不大,在這邊我秉持客家精神設定較陽春的規格。

再來是設定要不要用GPU,CPU跟GPU的差別請見(連結),一些主流深度學習框架都有CPU跟GPU版本,如果使用需要GPU的版本,這邊記得要設定(價格會爆增XD),本系列秉持客家精神,不使用GPU。

接著設定開機磁碟大小及作業系統版本(本系列用Ubuntu進行演練),還有防火牆,把「允許HTTP流量」及「允許HTTPS流量」都打勾,然後按「建立」。

接著我們要到「VPC網路」->「外部IP位址」,把IP從動態改為靜態,不然每次VM重開機就會產生新IP,會對連線造成困擾:

噹噹噹,VM這時候就設定好了,平常VM如果不用,可以先停止,GCP是有用才有計費,免費服務的$300老實說沒有很多,如果只是要練習、還沒有要真的把服務上線,最好能省則省。

第三步:用PuTTY進行SSH連線

雲端架好機器了,下一步就是透過我們的本機對遠端VM進行操控,這邊必須要先設定SSH連線(SSH原理請見這裡),這邊我們介紹用Putty這個Client端應用程式來進行。

請先到這邊下載PuTTY,安裝完後先打開PuTTYgen,點選「Generate」(底下的參數維持預設,不用動),

接下來的部分要特別小心了,網路上關於用PuTTY進行SSH連線的文章很多,但不曉得為何在這邊說明的大多不夠完整,我當初在這邊跌進坑裡一段時間出不來,後來是自己亂亂試才搞定的。

上面一個步驟等他跑完後,先在Key comment的地方,在原本的字串後面,填上我們用來登入GCP的Google帳號(不包含 @gmail.com),這點很重要!!

然後把public key跟private key存起來,我們等等主要要用到的是private key。

接著我們把Key欄位中的文字複製下來,貼到「Compute Engine」->「中繼資料」->「安全殼層金鑰」,然後把rsa-key-20200415XXXXX這段文字先複製到記事本(重要!!):

接下來我們要先找到我們VM的對外IP,並複製下來:

接著要打開PuTTY->在「Session」的「Host Name(or IP address)」欄位中,輸入剛剛記下來的rsa-key-20200415XXXXXX,加上@以及剛剛複製的對外IP,大概會長的像這樣:

要開的是PuTTY,不是剛剛的PuTTYgen

然後選「Connection」->「SSH」->「Auth」,把剛剛存下來的private key檔案讀進來,然後點open:

然後就大功告成啦!!第一次登入會跳訊息視窗,直接點確定就好,登入成功後會長這樣:

然後剛剛的登入設定可以存下來,下次可以叫出來直接連線:

連進VM後,這部分的內容就大概到這邊了,接下來會繼續分享如何建立VM中的Python開發環境,謝謝大家。

下一章:DAY 2 遠端Python 開發環境設定- Jupyter Notebook

--

--