GCP號稱是CP值最高的公有雲,這是真的嗎?許多對上雲有興趣,或是已經在認真評估上雲選項的人來說,選雲端就像選對象一樣,選到了好對象,才能走得長久。當然每家大廠都各自有優缺點,但本篇無意討論各家優缺點,僅針對選擇使用GCP的新用戶傳授省錢3招,好好利用就能省荷包!

招式一、善加利用先佔虛擬機器

先佔虛擬機器(preemptible machine)為Google自身將用剩的多餘運算資源,以比一般vm更便宜的價格讓使用者租用,算是Google的獨家創舉。但是既然是屬於Google自己的運算資源,那麼當Google自己有需要的時候,他是會「隨時」把這份資源給收回去的(不過機率很低),而且,先佔虛擬機器一次也只能租用24小時,一旦先佔虛擬機器開機時間達24小時,Google就會把它停掉。

使用先佔虛擬機器的最大的好處就是「便宜」,但是由於上述特性,因此它非適用於人人,不過對於執行下列工作類型來說便十分適合利用這項資源,藉此為幫荷包省下不少費用!

  • 非例行、一次性的任務:跑數據、轉檔、網路爬蟲等。
  • 加快批次性工作處理速度:有點像是增援的概念,開啟先佔虛擬機器幫你處理工作,比起開一般vm來增援會是更划算的選擇(暫時聘請打工人員的概念,不用為了一時需要而聘請全職員工)。

那麼,先佔虛擬機器到底「便宜」在哪裡?首先,它的使用費率較低(根據Google的說法是最高可便宜80%,但實際費率還是要看機器所在區域),而且是固定費率的,對於有預算控制需求的企業來說,相當便利。

以下我們就以台灣機房(asia-east1)作為基準,來比較一下一台普通vm與一台先佔vm在費率上的差異。

GCP vm比較

由上圖可知,同樣規格的主機使用24小時的費率,非先佔的vm費用為5.74美金/月,而先佔vm的費用只有1.15美金/月,差別相當的大!
(請愛用GCP官方計算機:https://cloud.google.com/products/calculator/

此時,你可能會想「便宜」總該有條件的吧?沒錯。除了上面介紹過的那些「不太方便」(對於需要24×365無間斷主機的人而言)的特性之外,先佔虛擬機器在使用上還有以下這些限制,務必注意再注意!

  1. 不是想用就有:因為是剩餘的運算資源,所以也要有剩,才能開放給其他人租用。
  2. 不適用Live Migration:既然是用於處理被停機也不怕的工作性質,失去Live Migration應該也是可以接受的吧。
  3. 不受SLA保障:因為是剩餘資源,所以Google也很難保證什麼啦。

招式二、沒事不要關vm就能讓你省更多的續用折扣(Sustained-use Discount)

一直開機不就會一直花錢嗎?不要關vm就能省更多,這是什麼道理?原來,Google為了獎勵大家節能省碳,只要vm持續開機滿整個月,最高就能「自動」獲得30%的費用折扣!所謂「自動」的意思就是說,你不需要特別「申請」就能享有這個「持續使用」的折扣,GCP系統會自動幫你計算。

那我一定要等到一個月過後才能開始有折扣嗎?其實開機時間只要滿當月25%的時間,Google就會開始給予折扣,並且隨著開機時間的增長,折扣比例也會變高,所以不論何時啟用vm,這個折扣Google都會自行計算並主動給予。

GCP續用折扣

(圖片來源:https://cloud.google.com/compute/docs/sustained-use-discounts

但是由於這個續用折扣會每月重新計算(因為它是依據每月的開機時間來計算折扣比例),所以如果你希望獲得完整的30%的折扣,最好是在1號啟用你的vm,然後讓它開好開滿一個月,這樣你就能獲得原本費率的30%的折扣。

這項由Google主動給予的「持續開機獎勵」其他家可是沒有的唷!這也是Google與市場上其他廠牌相比,在價格更具競爭力的原因之一。至於為何Google能夠提供這樣的續用折扣,其背後的祕密就在於「機房的營運方式」。Google一直以來都堅持以永續環保愛地球的方式來經營它們遍布全球各地的機房,就像我們平時使用家電用品,如果重複開開關關,其實是很浪費電源的,對於Google而言維持機房營運需要負擔的能源成本也較高,所以Google鼓勵用戶沒事不要關機,他們也願意將省下來的費用化為實際的折扣回饋給用戶。

三、承諾使用折扣(Committed Use Discounts)

雲端的概念就是不再需要擁有(或者說是供養)自己的實體主機,而是可以用租的,而且只需要依照自己的實際用量來付租金。有住過Airbnb的朋友或許能夠了解承租期越長,平均單一晚上的費用就會越低;GCP的承諾使用折扣也是同樣的道理:簽約期越長(承諾使用期),主機的費率就能更便宜。

GCP的承諾使用折扣,其概念類似於AWS的RI,一樣有選一年或三年,但不一樣的地方在於:

  1. 以CPU與Memory的使用量來簽約,而非特定機型。好處是萬一哪天需要改規格,也不至於要負擔用不到的剩餘運算資源的費用。CPU與Memory數量抓準一點的話,即使有浪費,失血也會比較小,畢竟主機規格跳升一級,CPU跟Memory的比例也很難剛好符合我們的需求,大部分時候都是太多的。
  2. 不需要預繳費用。一次先付一年或三年的錢財務上也是筆金額,但在GCP你仍是按月付款。

但是,GCP的承諾使用折扣在使用上還是有這些地方需要注意:

  • f1-micro跟g1-small還有sole-tenant機型都不能用!
  • App Engine Flexible Environment, Google Cloud Dataflow還有Google Cloud SQL的VM不能用!
  • 一旦購買,不能取消,就算用不到當初所承諾購買的量,還是得付錢直到期滿!

但如果你的VM用途很固定,不會有什麼變化,而且用量也平穩的話,購買承諾使用折扣絕對會幫你省下一大把銀子;但如果你的用量「有可能」會變動,比方說未來12個月內有改規格(當然指的是升級的情況)的可能性的話,可能就要評估一下是否要簽下去,畢竟一簽動輒就是一年或三年。這邊也分享一個取巧做法:先依照目前用量購買一年,等到規格升級過後,再按照增加的運算資源購買一年,不過這麼做的小壞處就是折扣期間將無法切齊。

許多GCP初心者並不十分了解Google的產品計價方式與折扣提供的方式,就算有心想要了解,礙於官方文件都是密密麻麻的英文,清楚掌握遊戲規則並善加利用也是要下很大的功夫鑽研(查字典),希望這篇能夠幫助剛剛開始使用GCP,甚至是已經使用GCP一段時間的朋友們作為一些參考。

Gmail信件委派功能既可以方便讓他人不需要密碼就能幫你管理郵件,也可以及時地處理緊急事務。坐而言不如起而行,趕快來進行設定吧!

延伸閱讀

GCP無預警關閉很可怕?教您降低被Google停權的可能性
Google Cloud Platform 免費300美金須考慮的風險詳解