技術部落格

集結國內外精選文章,掌握最新雲端技術新知與應用

iKala Cloud / 基礎架構 / 優化雲端成本的最佳實踐(上)

優化雲端成本的最佳實踐(上)

雲端服務最大的優勢之一就是能夠按比例擴展和縮小以滿足需求並減少營運支出。尤其是當你遇到客戶需求的意外變化時。

Google Cloud 的解決方案架構師團隊在此整理優化雲端成本的方法,以及使用者們往往會錯過的一些常識。基本上,遵循這些最佳實踐將幫助您根據業務需求合理地調整雲端成本,從而度過這些充滿挑戰且不可預測的時期。

一、了解計費和成本管理工具

由於雲端的需求導向與易變性質,如果不密切監控成本,成本可能會逐漸上升。了解費用後,就可以開始進行控制並優化支出了。為了解決這個問題,Google Cloud 提供了一套強大的免費帳單和成本管理工具,為您提供與雲端部署保持同步所需的可視性和見解。

從高層次上,您一開始可以練習尋找例如「哪個專案成本最高,為什麼?」之類的資訊,以便根據業務需求開始管理成本,然後使用「帳單」報表深入研究服務以獲得成本總覽。練習如何使用標籤將成本歸因於部門或團隊,並建立自己的自定義資訊中心以獲取更精細的成本視圖,還可以使用配額、預算和警報來密切監控目前的費用趨勢並隨時間進行預測,以減少超支的風險。

如果您不熟悉結算和費用管理工具,也可參閱我們的雲端計費操作手冊,並觀看 Google 的 Beyond Your Bill video series 系列影片。另外,也可查看以下手把手訓練課程:了解你的 Google Cloud 費用並優化 GCP 費用。

點此深入解析:架構師親授的雲端成本優化心法

二、只為必要的運算付費

現在,你可以更好地了解雲端支出,現在該著眼於最昂貴的專案,以確認沒有提供足夠商業價值的計算資源。

確認空閒的 VM(和磁碟):減少 Google Cloud Platform (GCP) 費用的最簡單方法是擺脫不再使用的資源。考慮一下從那以後被取消優先級的那些概念性驗證專案,或者沒人願意刪除的殭屍執行個體。Google Cloud 提供了一些建議,可以幫助你優化這些資源,包括一個空閒的 VM 推薦器,該推薦器可以根據使用情況指標識別不常使用的虛擬機器 (VM) 和永久性磁碟。

但是,刪除虛擬機器時請務必小心。在刪除資源之前,先問自己:「刪除此資源將產生什麼潛在影響,以及在必要時如何重新建立它?」刪除執行個體將擺脫基礎磁碟及其所有資料。 一種最佳實踐是在刪除執行個體之前對其進行快照。另外,您可以選擇簡單地停止 VM,但保留磁碟或 IP 地址之類的資源,直到分離或刪除它們為止。

有關更多資訊,請閱讀推薦功能這份文件。未來,Google 也將在產品組合中增加了更多基於使用情況的推薦器。

自動排程虛擬機器的啟動和停止

Compute Engine 這樣的平台的優勢在於,你只需為使用的運算資源付費。正式環境系統傾向於 24/7 執行;但是處於開發、測試或個人環境中的 VM 往往僅在工作時間內使用,關閉它們可以為你節省很多成本!舉例來說,一個週一至週五每天執行 10 個小時的 VM 與保持執行狀態相比,每月執行成本降低了 75%。

首先,可參考 Google 開發的這個無伺服器模式之解決方案,可幫助您大規模自動化管理虛擬機器關閉。

GCP.jpg

調整合適的虛擬機器大小

在 Google Cloud 上,透過建立具有合適數量的 CPU 和 RAM 的自訂機器類型來滿足你的需求,可以節省大量成本。但是工作負載需求會隨著時間而變化。 曾經優化過的執行個體現在可以為更少的客戶和流量提供服務。為此,Google 的 rightsizing recommendations 可向您展示如何根據 vCPU 和 RAM 使用率的變化,有效地減小虛擬機器類型的尺寸。這些針對你執行個體虛擬機器類型(或代管執行個體群組)的調整建議是使用 Cloud Monitoring 在過去 8 天內收集的系統指標產生的。

Cloud Monitoring.jpg

對於使用基礎架構即程式碼 (Infrastructure as code) 來管理其環境的組織,請查看本操作手冊,該操作手冊將向你展示如何大規模部署 VM 調整建議。

善用先占式虛擬機器

先占式虛擬機器是價格實惠的運算執行個體,最多可執行 24 小時,並且比一般運算執行個體便宜高達 80%。先占式 VM 非常適合容錯工作負載,例如大數據、基因體研究、媒體轉碼、金融模型建立和模擬。您還可以混合使用常規執行個體和先占執行個體,以透過設定專門的代管執行個體群組來更快、更經濟地完成高度運算的工作負載。

此外,您是否知道,不只是 Compute Engine, GPU、GKE 叢集以及 Dataproc 中的次要執行個體也都可以使用可先占式 VM? 現在,你還可以透過使用靈活資源調度功能為常規執行個體增加可先占式 VM 來減少 Cloud Dataflow 串流(和批次)分析成本。

三、最佳化雲端儲存成本與效能

當您在自己的資料中心中執行時,儲存成本在整體基礎架構成本上往往不易衡量,這使得成本管理變得更加困難。不過,在將儲存作為單獨的訂單項計費的雲端中,關注儲存使用率和設定可以節省大量成本。

而且儲存需求總是在變化,例如運算。初次設定環境時選擇的儲存類別可能不再適合給定的工作負載。此外,雲端儲存已經走了很長一段路,它提供了許多一年前才出現的新功能。

如果你想節省儲存空間成本,可以參考以下方法。

儲存空間級別

Cloud Storage 提供了各種儲存空間級別 ── Standard、Nearline、Coldline、Archive,所有這些都各有成本和最佳使用案例。如果您只使用 Standard,則可能是時候查看工作負載並重新評估資料的存取頻率了。根據我們的經驗,許多公司將 Standard 儲存用於歸檔用途,但其實他們可以利用 Nearline 或 Coldline 儲存來減少支出。在某些情況下,如果您要保存物件以進行法律證據揭示之類的較低存取頻率資料使用案例,則 Archive 儲存可能會提供更多的節省。

生命週期規則

除了用不同的儲存空間級別以節省成本,您還可以透過生命週期規則來自動調整儲存空間級別。透過設定生命週期,您可以以程式設定物件以根據一組條件調整其儲存級別,甚至在不再需要時甚至將其完全刪除。例如,假設你和你的團隊在建立的第一個月內分析了數據;除此之外,你為了審計目的就需要它。在這種情況下,只需設定一個策略,即可在物件達到 31 天后將儲存空間調整為 Coldline 或 Archive。

刪除重複資料

儲存環境中另一個常見的浪費來源是重複資料。當然,有時候重複有必要。例如,你可能想要在多個地理區域中複製資料,以便當地團隊可以快速存取。但是,根據我們與客戶打交道的經驗,很多重複的資料是版本控制鬆散的結果,因此,產生的重複資料既麻煩又昂貴。

幸運的是,有很多防止重複資料的方法,以及防止資料被錯誤刪除的工具。這裡有幾件事情要考慮:

  • 如果你嘗試使用單一事實來源來保持彈性,那麼使用多區域儲存值區 (bucket) 而不是在各個儲存值區中建立多個副本可能更有意義。 使用此功能,你將為儲存的物件啟用地理冗餘備份。 這將確保你的數據跨兩個或多個位置非同步複製。這可以防止發生自然災害時發生區域性故障。
  • 沒有正確使用 Cloud Storage 物件版本控制功能會導致大量重複資料。物件版本控制可以防止資料被覆蓋或意外刪除,但是他所建立的副本確實會反應在儲存空間上。你是否真的需要五份資料副本?只要受保護就足夠了。擔心你將無法回復嗎? 你可以設定物件版本控制策略,以確保具有適當數量的副本。還在擔心意外丟失? 考慮使用儲存值區鎖定功能,該功能有助於確保在特定日期或時間之前不會刪除項目。 這對於證明遵守幾個重要法規確實很有用。 簡而言之,如果使用物件版本控制,則可以使用多種功能來確保資料安全,而不會不必要地浪費空間。

透過以上方法,您可以重新檢視並優化您的運算與儲存成本。而下篇文章,我們將繼續說明關於「資料倉儲」與「網路」的成本該如何進行最佳化,請持續追蹤 iKala Cloud 技術部落格文章,如果針對目前執行的專案有疑問,也歡迎聯繫 iKala Cloud 由專人諮詢!

(本文翻譯改編自 Google Cloud。)

分享本文:
FacebookLineTwitter
回到頂端