技術(shù)
導(dǎo)讀:在云中運(yùn)行工作負(fù)載可以使組織訪問無限的資源。這是一件好事,但前提是組織的IT團(tuán)隊(duì)需要采用良好的容量管理實(shí)踐。
云計(jì)算模型的最大好處之一是它支持高度靈活和動(dòng)態(tài)的資源使用。云計(jì)算用戶根據(jù)需要采用任意數(shù)量的資源,并且可以根據(jù)需求的變化自由調(diào)整其消耗量。
這并不意味著云平臺(tái)能夠自動(dòng)優(yōu)化資源分配。對(duì)于大多數(shù)類型的云計(jì)算服務(wù),由用戶來確定在任何時(shí)刻的云計(jì)算工作負(fù)載將需要多少資源。AWS Aurora是解決這個(gè)問題的一種嘗試,它會(huì)根據(jù)工作負(fù)載需求自動(dòng)分配資源。
云計(jì)算容量管理對(duì)于有效的IT策略至關(guān)重要。它為開發(fā)人員、IT團(tuán)隊(duì)和DevOps工程師提供了所需的見解,以確保其工作負(fù)載具有所需的資源。同時(shí),它減少了以浪費(fèi)預(yù)算和增加不必要的管理開銷的方式來減少過度配置工作負(fù)載的風(fēng)險(xiǎn)。
為什么云計(jì)算需要容量管理
考慮采用托管多個(gè)Web應(yīng)用程序的云計(jì)算服務(wù)器。適當(dāng)?shù)娜萘抗芾砜梢源_保服務(wù)器在虛擬服務(wù)器實(shí)例上運(yùn)行,該實(shí)例具有足夠的CPU、內(nèi)存和存儲(chǔ)資源來支持應(yīng)用程序,但不會(huì)導(dǎo)致大量資源閑置。
容量管理的另一個(gè)方面是確定在共享托管應(yīng)用程序責(zé)任的集群中要采用多少服務(wù)器。在這種情況下,IT團(tuán)隊(duì)必須確保包括足夠多的服務(wù)器來處理應(yīng)用程序上的負(fù)載,并保持足夠的備份系統(tǒng),以確保應(yīng)用程序在某些服務(wù)器崩潰時(shí)仍然可用。
這種平衡行為是容量管理的關(guān)鍵。組織希望避免無法充分執(zhí)行和分配工作負(fù)載的情況,以及避免分配不需要的資源。
Azure為用戶提供了云計(jì)算成本管理工具。但是,有效的容量管理不僅僅是優(yōu)化性能和成本的一種方式。它有助于:深入了解長(zhǎng)期IT規(guī)劃。例如,容量管理可以幫助確定將哪些工作負(fù)載轉(zhuǎn)移到云端。具有快速變化能力的工作負(fù)載是云平臺(tái)的理想選擇,可以在云中輕松地按比例擴(kuò)大和縮小資源分配。確定哪些基礎(chǔ)設(shè)施和應(yīng)用程序體系結(jié)構(gòu)符合組織的需求。例如,如果組織的虛擬服務(wù)器的容量需求經(jīng)常波動(dòng),那么可能會(huì)發(fā)現(xiàn)無服務(wù)器功能將是承載其工作負(fù)載的更好方法。與虛擬服務(wù)器相比,無服務(wù)器功能使組織能夠以更具成本效益、更易于管理的方式在短期內(nèi)分配大量資源。安排合適的人員和工具。這是組織了解需要分配給工作負(fù)載多少資源的第一步。重要的是要確定組織是否具有分配這些資源所必需的資源。組織將需要工作人員來執(zhí)行必要的配置,這些工作人員應(yīng)具有使用組織用來管理資源分配的工具的必要技能。避免對(duì)用戶造成干擾。當(dāng)應(yīng)用程序的工作負(fù)載為特定的問題做好準(zhǔn)備時(shí),以及當(dāng)組織的工作負(fù)載能力得到很好的管理時(shí),就可以將應(yīng)用程序或服務(wù)器發(fā)生故障的風(fēng)險(xiǎn)降到最低。
盡管它已成為IT工作流程的一部分,但自從云計(jì)算出現(xiàn)以來,容量管理就變得尤為重要。這是因?yàn)榭蓴U(kuò)展性是組織決定遷移到云平臺(tái)決策中的關(guān)鍵因素。為了充分利用可擴(kuò)展性,IT團(tuán)隊(duì)必須有效且連續(xù)地管理資源利用率。如果不能,他們將錯(cuò)過云計(jì)算架構(gòu)的主要優(yōu)勢(shì)之一。這樣的組織可能會(huì)堅(jiān)持其采用內(nèi)部部署架構(gòu)。
管理云計(jì)算容量的步驟
云計(jì)算架構(gòu)和服務(wù)的性質(zhì)千差萬別,因此沒有單一或簡(jiǎn)單的方法來處理云計(jì)算容量。但是,總的來說,有效的云計(jì)算容量管理策略將涉及以下幾個(gè)關(guān)鍵步驟:
(1) 評(píng)估基準(zhǔn)容量要求
首先,確定團(tuán)隊(duì)需要多少云計(jì)算服務(wù)器、應(yīng)用程序?qū)嵗?shù)據(jù)庫等來保持足夠的性能。組織需要知道每個(gè)工作負(fù)載需要多少CPU、內(nèi)存和存儲(chǔ)資源——這些是組織的基本容量需求。重要的是要記住,組織不應(yīng)該使用這個(gè)基準(zhǔn)來進(jìn)行資源分配,尤其是在工作負(fù)載的需求經(jīng)常波動(dòng)的情況下。不過,了解基準(zhǔn)為容量規(guī)劃提供了一個(gè)起點(diǎn)。
(2) 評(píng)估可擴(kuò)展性需求
了解了云中運(yùn)行的每個(gè)工作負(fù)載的基準(zhǔn)要求之后,需要檢查它們所需的可擴(kuò)展性。評(píng)估一天中不同時(shí)間、一周中的幾天或一年中不同季節(jié)之間的工作負(fù)載需求發(fā)生了多少變化。組織的某些云計(jì)算工作負(fù)載將比其他云計(jì)算工作負(fù)載具有更高的可擴(kuò)展性要求。例如,用戶群分布全球的網(wǎng)站可能不會(huì)像針對(duì)特定地理位置的用戶的網(wǎng)站那樣出現(xiàn)太大的波動(dòng),而在該地區(qū)的白天時(shí)段,這類網(wǎng)站的需求量可能最多。同樣,提供送餐服務(wù)的網(wǎng)站在進(jìn)餐時(shí)間可能會(huì)比一天中的其他時(shí)間承受更高的負(fù)荷。
(3) 進(jìn)行初始資源分配
對(duì)于尚未在云中運(yùn)行的工作負(fù)載,組織需要在啟動(dòng)它們之前設(shè)置初始資源分配。計(jì)劃為每個(gè)工作負(fù)載分配比基準(zhǔn)要求所指示的資源多出20%的資源。這樣可以在需求突然迅速增長(zhǎng)的情況下提供良好的緩沖,但又不會(huì)導(dǎo)致環(huán)境的過度配置。
(4) 設(shè)置自動(dòng)擴(kuò)展策略
主流公共云提供商允許組織創(chuàng)建所謂的自動(dòng)擴(kuò)展策略。有了這些策略,云平臺(tái)將根據(jù)組織在策略中配置的流量閾值自動(dòng)增加或減少分配給工作負(fù)載的資源。組織可以將自動(dòng)擴(kuò)展策略應(yīng)用于大多數(shù)類型的云計(jì)算工作負(fù)載,包括虛擬機(jī)實(shí)例、數(shù)據(jù)庫、容器和無服務(wù)器功能。但是,某些特定領(lǐng)域的云計(jì)算工作負(fù)載(例如物聯(lián)網(wǎng)設(shè)備)通常無法使用自動(dòng)擴(kuò)展進(jìn)行管理。
(5) 收集和分析容量數(shù)據(jù)
無論組織是否為工作負(fù)載配置自動(dòng)擴(kuò)展,重要的是不斷評(píng)估分配的工作狀況并進(jìn)行相應(yīng)調(diào)整。組織需要考慮以下指標(biāo)和因素:
?組織的自動(dòng)擴(kuò)展策略多久觸發(fā)一次?如果由于組織的工作負(fù)載從未達(dá)到自動(dòng)擴(kuò)展的最低閾值而很少應(yīng)用這些負(fù)載,則這些工作負(fù)載可能已經(jīng)超量配置。現(xiàn)在可能是重新配置閾值的時(shí)候了。
按月賬單反映的實(shí)際云計(jì)算成本與預(yù)期成本相比如何?超出成本預(yù)期是組織管理容量很好的一個(gè)標(biāo)志。當(dāng)組織發(fā)現(xiàn)云計(jì)算支出過高時(shí),可能會(huì)在容量管理方面做得更好。組織多久遇到一次與容量或資源分配有關(guān)的中斷或停機(jī)?組織的團(tuán)隊(duì)多久進(jìn)行一次人工干預(yù)以更正容量問題?組織可以通過更密集的自動(dòng)擴(kuò)展來減少對(duì)人工更改的需求,或者將工作負(fù)載遷移到其他類型的體系結(jié)構(gòu),例如無服務(wù)器。組織為每個(gè)工作負(fù)載確定的基準(zhǔn)工作負(fù)載要求和預(yù)期的可擴(kuò)展性需求是否與實(shí)際性能保持一致?
規(guī)劃長(zhǎng)期的云計(jì)算容量更改
以上策略將幫助組織每天管理云計(jì)算容量。此外,還需要針對(duì)長(zhǎng)期的容量需求進(jìn)行規(guī)劃,以便企業(yè)的IT基礎(chǔ)設(shè)施能夠隨著時(shí)間的推移適當(dāng)?shù)匕l(fā)展,以滿足不斷變化的工作負(fù)載需求。
傳統(tǒng)上,長(zhǎng)期容量管理集中于新服務(wù)器、存儲(chǔ)介質(zhì)和其他內(nèi)部數(shù)據(jù)中心基礎(chǔ)設(shè)施的購(gòu)買和部署過程。這與云計(jì)算無關(guān),在云平臺(tái)中,服務(wù)提供商已經(jīng)進(jìn)行了大規(guī)模的投資,并提供了與任何客戶需求一樣多的基礎(chǔ)設(shè)施。
取而代之的是,云計(jì)算的長(zhǎng)期容量管理應(yīng)著重于如何隨著時(shí)間的推移適應(yīng)不斷變化的容量需求。例如,如果現(xiàn)在只使用一個(gè)云平臺(tái),需要評(píng)估組織對(duì)長(zhǎng)期工作負(fù)載的期望,并考慮采用多云策略來滿足未來的容量需求是否有意義。或者,組織可能決定通過重構(gòu)應(yīng)用程序使其在容器內(nèi)作為微服務(wù)運(yùn)行,從而提高組織的長(zhǎng)期容量效率。
云計(jì)算容量管理工具
云計(jì)算容量管理是一個(gè)復(fù)雜的、多方面的過程,沒有一種萬能的工具可以滿足組織所有的容量規(guī)劃需求。多種工具可以幫助組織完成此過程,其中包括:
監(jiān)視和日志管理。通過監(jiān)視和日志記錄工具(例如AWS CloudWatch、Azure Monitor和第三方監(jiān)視平臺(tái))收集的數(shù)據(jù)可以幫助組織跟蹤性能趨勢(shì),并提醒不斷變化的容量需求?;A(chǔ)設(shè)施即代碼。基礎(chǔ)設(shè)施即代碼工具可自動(dòng)進(jìn)行基礎(chǔ)設(shè)施設(shè)置和資源分配,因此,根據(jù)容量變化重新配置分配變得更加容易和快捷。成本計(jì)算器。為了管理容量規(guī)劃的財(cái)務(wù)方面,云計(jì)算提供商提供的成本預(yù)測(cè)工具非常有用。他們可以幫助評(píng)估與不同資源分配或工作負(fù)載類型相關(guān)的成本。調(diào)整大小和成本管理。云計(jì)算提供商提供了旨在幫助預(yù)測(cè)容量需求的工具。AWS和Microsoft Azure都提供成本管理工具。一些第三方應(yīng)用程序性能管理(APM)工具還提供了調(diào)整大小的功能。
容量管理在任何IT環(huán)境中都很重要,但是如果組織希望充分利用云計(jì)算環(huán)境,這一點(diǎn)尤其重要。盡管沒有一個(gè)萬能的云計(jì)算容量規(guī)劃方法,但多種技術(shù)和策略的組合將幫助組織確保準(zhǔn)確評(píng)估容量需求,即使是對(duì)于在云計(jì)算基礎(chǔ)設(shè)施上運(yùn)行的快速變化的工作負(fù)載也是如此。