在云中運營組織的業務與在本地部署數據中心運行相比是根本不同的。當運營不同時,其成本的策略也不同。
從財務角度來說,數據中心需要大量的建筑資本支出,服務器和軟件許可證的額外資本支出,以及為服務器和冷卻系統供電以及維護和管理的雖然較小但重要的運營支出。
在云計算中沒有資本支出。相反,卻有顯著的運營支出,用于服務器虛擬機實例,存儲,網絡流量,軟件許可證和其他細節。
從成本管理的角度來看,將計算負載轉移到云計算上有顯著的好處,但也存在重大風險。
當有人想要在數據中心使用新的服務器機架時,會有批準訂單和思考的理由,整個過程得到了充分的管理。它需要許可。許多公司也需要6個月的時間。一旦機架被安裝,沒有人注意它有多重或不被使用,除非其負載太重以至于不能正常工作,因此推動數據中心中的虛擬機和容器(如Docker)來提高服務器利用率。
如果有人想要在云中建立一個新的虛擬服務器集群,則可能需要幾分鐘的時間才能將其遷移。雖然組織可能需要有新的云計算資源管理審批或對每個部門的云資源進行配額管理的政策,但幾乎所有訪問云賬戶的人都可以在需要時創建自己想要的內容。
這種自由是好還是壞,都取決于組織自己的觀點。從業務靈活性和功能的角度來看,這是很好的。從財務管理的角度來看,如果做到好,可能會很好,否則這是一個潛在的災難。
在文中,將討論如何避免“云標簽震撼”。 將從優化云支出的個人技術策略開始,以云支出管理的主題結束。
(1)資產利用率
據埃森哲公司云計算全球董事總經理Michael Liebow稱,云服務可能導致產生僵尸服務器。僵尸服務器幾乎沒有什么用途:耗費了組織的費用,但卻沒有做任何事情;orphans是使用組織的資源被刪除后剩下的服務;還有超大的虛擬機gluttons。這三種病理狀況如果管理不當,可能會使組織的云計算費用增加20%至40%。
組織及時發現云中未充分利用的資產并不容易。而來自云提供商的賬單每月才提交一次,對于擁有相當大的云產業的大型企業來說,可能會收取巨額的費用。如果組織等到收到賬單,就可能會為虛擬機和其他已經閑置30天的服務支付大量費用,而這些服務很久以前就被關閉或縮減了。
當組織必須管理多個云時,每個云端需要多個賬戶時,這就更加困難。好消息是,組織每天都可以通過電子方式從其云提供商那里獲取賬單信息;壞消息是組織可能需要許可或開發新的工具來管理其云資產。
(2)預購容量
一種減少組織的云資源支出的方法是在一年或幾年內使用其基本容量。每個云提供商都做了一些這樣的工作,并定期更改其計費策略。警告:這是一個令人困惑的領域,即使供應商聲稱對定價透明。
亞馬遜公司解釋了其預購計劃:
與實時定價實例相比,保留實例為組織提供了顯著的折扣(高達75%)。另外,當保留實例被分配到特定的可用區域時,它們提供了容量預留,使組織更有信心在需要時啟動實例的能力。
對于具有穩定狀態或可預測使用的應用程序,與使用按需實例相比,保留實例可以顯著地節省成本。
亞馬遜推薦保留實例:
•穩態使用的應用
•可能需要預留容量的應用程序
•可以承諾在1年或3年任期內使用EC2以減少其計算總成本的客戶
作為一個具體的例子,考慮運行Linux的N. Virginia區域中的計算優化c4.8xlarge 虛擬機實例,每小時按需支付1.591美元,并提供36個虛擬CPU和60GB內存。如果組織保留實例一年并完全支付,其價格可以下降到0.947美元/小時,節省40%的費用。同樣的標準為3年期限,其價格可降至每小時0.621美元,節省61%的費用。對于可兌換3年的期限,可以讓組織更靈活,每小時收費0.739美元,節省54%的費用。前期付款少,有效利率略有上升,但差額大致與時間成本一致。
客戶可以靈活地更改可用性區域,實例大小和標準預留實例的網絡類型。可兌換3年保留實例提供了額外的靈活性,例如在保留實例期限內使用不同實例系列,操作系統或租約的能力。
微軟Azure在其通用D32-v3實例中具有類似大小的虛擬機(采用更少的CPU,更多的內存),它提供32個虛擬CPU和128GB內存,按需支付的費用為每小時1.60美元。微軟Azure不提供保留實例:相反,它提供了一個企業協議,具有降低價格的前期貨幣承諾,盡管折扣級別尚未公布。
谷歌公司提供一個n1-standard-32虛擬機,32個虛擬CPU和120GB內存,每小時1.52美元,每月持續使用折扣。用戶不必承諾延長使用期限以獲得持續使用折扣:相反,它將自動應用于25%,50%和75%使用水平的增量。
谷歌公司還為虛擬機提供了承諾使用折扣,組織可以通過采購承諾合同的一到三年來激活。任何使用折扣的資源都不符合持續使用折扣的條件。通過使用折扣,虛擬機價格比常規虛擬機價格要低57%。折扣適用于區域內CPU或內存的總數,因此不受實例機器類型更改的影響。承諾使用折扣沒有預付費用。組織的賬單每個月都會使用承諾使用折扣。重要的是,無論組織是否使用它們,都將為其承諾支付費用。
(3)Amazon EC2 Spot和低優先級實例
Amazon EC2 Spot實例允許組織對備用的Amazon EC2計算能力進行投標定價。由于Spot實例與按需定價相比經常可以獲得折扣,因此可以顯著降低運行應用程序的成本,增加應用程序的計算容量和吞吐量,從而實現相同的預算,并啟用新型云計算應用程序。
當組織的投標價格超過Spot價格時,即可運行Spot價格,并可按需求提供50-90%的折扣。使用Spot實例,組織將不會收取超過其指定的最高價格的費用。當組織的實例運行時,就收取該期間有效的Spot價格。如果Spot價格超過組織的指定價格,Spot將在終止前收到兩分鐘的通知,組織實例運行的部分時間將不會被收取費用。
如果組織的Spot實例請求包含持續時間要求,組織的實例將繼續運行,直到選擇終止,或者直到指定的持續時間結束為止,由于Spot價格的變化,組織的實例將不會被終止。目前,一臺帶有Linux的c4.8xlarge VM的Spot實例在N. Virginia區域的每小時成本為0.3591美元,而按需每小時1.591美元。
Azure將其等同于AWS Spot實例稱為“低優先級”。當檢查時,在美國東部的區域的低優先級D32-v3實例每小時成本為0.345美元,而按需小時為1.6美元。但是,組織無法在其賬戶中選擇此選項。
谷歌公司相當于Spot實例被稱為“可搶占的實例”。可搶占的虛擬機是一個實例,組織通常以比正常實例低得多的價格創建和運行。但是,如果計算引擎需要訪問其他任務的資源,則可能會終止(搶占)這些實例。可搶占實例的計算引擎容量過大,因此其可用性因使用情況而異。目前,有北弗吉尼亞州區域的一個名為n1-standard-32搶先實例每小時成本為0.3424美元,而全價為每小時1.712美元,持續使用價格為每小時1.52美元。谷歌表示,搶占率通常在每個項目每7天在5%到15%的范圍內變化。
(4)容器
如果組織擁有未充分利用的服務器,或新機架的空間有限,可以將其數據中心的一些專用服務器轉換為虛擬機的主機。然后,當虛擬機主機中的內存使用成為問題時,他們將其部分虛擬機轉換為容器的主機。
虛擬化與容器之間的基本區別在于,除了應用程序軟件之外,虛擬機還包含完整的操作系統和一整套虛擬化硬件,而容器僅包含操作系統的一部分,某些庫和應用軟件。虛擬機和容器都與其他應用程序隔離,虛擬機提供更多的隔離和更好的安全性,盡管內存使用成本很高。
內存是租賃在云中的最昂貴的資源之一,容器通常只需要三分之一的內存來運行與虛擬機相同的軟件。這樣就可以將容器中的云產業運作成為有吸引力的成本主張,只要減少隔離度不成問題。
直到最近,容器的使用才被限制在基于Linux的系統中,并且缺乏對容器的編排,工具支持和檢測。這些都不是一個真正的問題,將組織的負載轉移到云中的容器是簡化操作并減少云支出的好方法。
在AWS的云中,運行容器不需要額外的費用,組織只需支付底層的虛擬機和存儲空間。 微軟Azure可以直接從資源池中創建和使用容器,并為每個創建的實例收取0.0025美元的費用,加上每GB每秒0.0000125美元和每CPU每秒0.0000125美元的費用。例如,如果組織一個月同時運行三個容器,并且每個容器使用1GB的內存和2個CPU,那么組織每月將支付少于300美元的費用。
谷歌容器引擎在計算引擎虛擬機實例之下運行Kubernetes下的集群節點集群,組織為虛擬機付費。 Kubernetes管理部門收取少量費用,6個或更多個節點的集群每小時為0.15美元。
(5)無服務器
無服務器云計算,或者更準確地說是功能即服務,有可能大大降低將負載放入云中所涉及的成本和工作量。AWS Lambda,Bluemix OpenWhisk,Google Cloud Functions和Azure Functions都提供了一個模型,開發人員定義了一個按需運行的功能,為該功能創建觸發器,并設置了該功能的內存分配。云計算基礎架構需要在需要運行時為該功能分配容器,因此開發人員不必擔心容量或可擴展性。
無服務器成本通常基于觸發器的數量,執行時間和使用的內存數量。一個函數調用的運行時間限制為5到10分鐘,具體取決于平臺,但次級運行時間更常見。大多數平臺還限制了可以同時運行的功能數量,并且每個月都可以提供捆綁的可用功能。
作為經驗法則,如果聚合功能執行時間少于每月50萬秒,或大約一個月的20%的時間,則使用無服務器功能比運行小型虛擬機成本要低。提供者的數字有所不同,以及是否將功能與全價或折扣的虛擬機實例進行比較。
在進行成本分析時,組織還需要包括開發人員和操作時間,對于無服務器功能而言通常較低,因為更多的管理被推送到云提供商。在開發和運營成本方面,使用無服務器功能可以比運行小型虛擬機更便宜,即使總功能執行利用率是每月75%。
使用無服務器功能的一個缺點是計費的復雜性。如果組織在虛擬機中托管的功能,那么該虛擬機每個月都會生成一個計費行,無論調用多少次功能。如果組織的無服務器功能為每月400萬次,則在結算日志中將有400萬個事件。
(6)云支出管理
鑒于云定價的復雜性以及與數據中心管理的差異,許多公司將需要采用新的云計算支出管理工具。在互聯網搜索“云支出管理”,“云成本管理”或“云管理平臺”將會產生至少六個可行的可能性,以及一系列無關緊要的結果。雖然組織可以使用其本機的資源標簽和報告功能來管理單個云平臺的使用,但如果使用兩個或多個云提供商的服務,那么就很難保持使用和成本的優勢。
無論組織使用什么工具,管理云支出的主要關鍵是標注資源。如果組織可以查看一個結算行項目,并立即看到它用于與Fizzpop產品相關的開發和測試。如果這個標記進入組織的報告和管理工具,以便組織可以放大圖形中的“僵尸”,并查看其預期目的和組合關系,組織可以關閉循環,并實際執行一些關于未使用的服務器虛擬機。
云成本管理并不容易,而且大多數IT組織對其數據中心的ITIL流程和工具都無法真正做到這一點。為了有效地管理云端產品,組織需要每天監控其成本,并根據需要進行干預,通過關閉資源,縮小資源或將其放在日程表上,而不是一直運行它們。