云效率的三個方面:成本、性能和速度
本文將更好地定義云效率及其三個組成部分——成本、性能和速度,并為實現云效率的所有方面提供建議。
此外,本文將討論Kubernetes中經常被大家忽略的問題以及如何克服其固有的復雜性。首先,需要通過一些背景信息來了解云中效率低下的一些根源。
在云計算出現之前的“舊時代”,本地數據中心的預算和采購需要預先購買硬件和軟件許可證等,然后安裝它們,這需要很長的準備時間,通常是三個月或更長時間,中央財政控制著這種方式。
隨著云計算的出現,這種模式發生了巨大變化。首先,它是按需提供的,因此企業只需在使用時付費。它也更具動態性,因此也可以隨意打開和關閉應用程序和資源。
其次,它打破了中央財政采購模式。云計算允許單個開發人員啟動或關閉它,而這一切都可以在財務人員不知情的情況下進行。它的動態環境對企業來說是一個巨大的文化轉變。
它還增加了復雜性。例如,企業不僅要在四種不同的節點類型和四種不同的節點大小之間進行選擇,還要準確地選擇每個節點用于 CPU 的比例和用于內存的比例。企業將在不同節點之間共享所有資源,這將增加難題的困難程度。
系統的動態特性使這一切變得十分復雜。如果企業運營者查看云提供商,會發現他們的計費流程非常復雜。
你想要什么節點類型?想要現場實例、按需實例、預留實例嗎?需要預付多少錢?如何混合保留實例和按需實例?
擴展是需要考慮的一個重要方面,因為企業可以通過在需要之前添加資源來提高性能以避免延遲峰值。
由于云的復雜性,人們通常會默認過度配置云或通過反復試驗手動調整。這是一個陷阱:必須在成本效率或損害客戶績效之間做出選擇。造成這個陷阱的一個重要原因是缺乏可見性。除了成本和性能權衡之外,還有速度。企業可能能夠實現性能和成本效率,但這需要大量艱苦的手動工作。
盡管復雜,但仍能實現云成本效率
實現云效率的第一步是了解問題。了解企業自身在哪里花錢,并確定它是否提供了所需的投資回報 (ROI)。這種理解不僅僅只看花費;在某些情況下,降低成本并不是首要任務。如果一個工程團隊的花費是另一個團隊的 10 倍,那么需要了解其中是否存在問題還是合理現象。
他們是否支持更多流量?他們是否故意過度配置,以便團隊可以更快地行動并將新產品推向市場?
了解自身的支出并確保企業獲得投資回報可能需要付出巨大的努力,但企業在優化之前需要踏出第一步。例如,團隊可能決定最初為穩定性而過度配置,雖然代價高昂,但生產負荷不多,首要任務是將產品推向市場。
之后,一旦產品進入市場,負載更大,成本不斷膨脹,就在不犧牲性能的情況下,將工程時間投入到降低成本上。
第二,明確自己的目標。例如,查找孤立的實例——員工創建并遺忘了它,然后離開了公司,可是它仍然在無限期地運行。這是一個非常普遍的問題,并且可能是削減成本的最簡單方法之一。
如果以削減成本為目標,企業有兩個基本選擇:使用更少的資源或使用相同的資源,但支付更少的費。最終,企業必須開始調整工作負載的規模,這需要可見性。部分成本管理供應商可以識別企業的云支出并允許企業關閉閑置資源。
關于可見性,云成本失控的部分原因是沒有人注意到這個問題。這并不意味著工程師不在乎,他們只是不了解具體情況。大多數工程師,如果問題暴露出來,他們也會嘗試自己修復它,這就是普銳斯效應。
一項研究表明,據觀察和記錄,大部分 Prius 駕駛員會對車輛電池功率的可見性數據做出反應,以減少燃料消耗。如果開發人員意識到他們對云的使用和支出,他們會嘗試改進它。
第三,云效率超越成本。云效率應定義為最大限度地使用企業請求的資源。它考慮了性能和成本,也考慮了開發人員進行管理云資源所需的手動維護所需的時間。真正的云效率是在正確的時間擁有正確的資源。
隨著云計算在企業中的快速應用,云效率的考慮是至關重要的,需要超越對成本的基本分析。如果企業希望充分利用其云基礎架構,則必須考慮云效率另外兩個組成部分,即性能和速度。