并不是所有的工作負(fù)載都是相同的——有些需要更多的CPU資源,而其他的一些則需要更多的內(nèi)存資源。值得慶幸的是,谷歌云實例類型為企業(yè)用戶提供了眾多選項。
但是,公共云中預(yù)配置資源的廣泛選項卻導(dǎo)致了一個所謂的選擇悖論:分類種類越多,卻讓用戶越難以選擇。
如果做出錯誤的決策那么就可能會產(chǎn)生嚴(yán)重的后果,例如系統(tǒng)運行性能不佳或費用支出過多等。
與其他的公共云供應(yīng)商一樣,除了自定義機器類型以外,谷歌云平臺還為用戶提供了一系列可供選擇的實例類型。以下是一些實例類型選擇指南,可幫助用戶根據(jù)他們的實際工作負(fù)載情況來選擇最好的谷歌云實例類型。
工作負(fù)載的資源需求與標(biāo)準(zhǔn)機器類型
就如同將物理服務(wù)器分配給特定應(yīng)用程序一樣,在選擇谷歌云虛擬實例時有著三個參數(shù)指標(biāo):CPU、內(nèi)存以及本地存儲性能。由于計算與內(nèi)存的需求通常都是相互關(guān)聯(lián)的,所以谷歌與亞馬遜網(wǎng)絡(luò)服務(wù)(AWS)以及Azure一樣,會以RAM和虛擬CPU(vCPU) 的固定比率來對實例進(jìn)行預(yù)先配置。但是,由于一些工作負(fù)載需要更多的CPU周期或內(nèi)存,所以公司提供了三種谷歌云實例類型:
標(biāo)準(zhǔn)機器類型——每個vCPU配備了3.75GB內(nèi)存;
高內(nèi)存機型——每個vCPU配備了6.5GB內(nèi)存;
高CPU機型——每個vCPU配備了0.9GB內(nèi)存;
谷歌還提供了內(nèi)核共享的機器類型,即由多個工作負(fù)載共同使用一個vCPU,但是當(dāng)系統(tǒng)資源可用時可在短時間內(nèi)使用額外的vCPU。
標(biāo)準(zhǔn)型機器配有1到32個vCPU,并配有雙數(shù)(例如2、4、6、8、16等等),而高內(nèi)存型和高CPU型則是從2個vCPU開始。谷歌所謂的n1 vCPU是一個合成的標(biāo)準(zhǔn),對應(yīng)于2.6 GHz 英特爾Xeon E5 (Sandy Bridge)、 2.5 GHz英特爾Xeon E5 v2 (Ivy Bridge)、2.3 GHz 英特爾Xeon E5 v3 (Haswell) 或 2.2 GHz英特爾Xeon E5 v4 (Broadwell)上的單核超線程。
Broadwell E5的單核性能要比第一代Sandy Bridge高出20%到25%,而谷歌使用的頻率比為1.18:1,所以對于大多數(shù)工作負(fù)載來說,Broadwell vCPU應(yīng)當(dāng)在速度上稍快。但是,在配置實例時,用戶是無法直接選擇CPU實施的,因為谷歌在不同區(qū)域使用了不同的系統(tǒng)。例如,谷歌在美國西部地區(qū)將vCPU升級至最新的v4版Broadwell處理器,而在美國中部地區(qū)則混合使用了第一代、第二代和第三代的CPU。
在選擇谷歌云實例類型之前,用戶必須深入了解應(yīng)用需求。對于大多數(shù)工作負(fù)載來說,標(biāo)準(zhǔn)機器類型是最適合的選項,而共享的突發(fā)實例則更適用于小型化、輕量級或后臺運行的應(yīng)用程序。在沒有對應(yīng)用進(jìn)行分析的情況下選擇vCPU與內(nèi)存組合將是有問題的,但是谷歌提供了一個基于Stackdriver的推薦引擎,該引擎可收集系統(tǒng)指標(biāo)以生成具體的vCPU與內(nèi)存組合選擇指南。
根據(jù)如下原則可使用之前八天的數(shù)據(jù)得出選擇建議:
在大多數(shù)時間中,CPU使用率較低的實例應(yīng)選擇較少的vCPU,而具有較高CPU使用率的實例則應(yīng)選擇較多的vCPU。
不使用大塊可用內(nèi)存的實例應(yīng)選擇配備較少內(nèi)存的機器,而那些具有持續(xù)較高內(nèi)存使用率的實例則應(yīng)使用具有較高內(nèi)存的機器配置。
谷歌自定義機器與本地存儲
在谷歌標(biāo)準(zhǔn)配置無法適用于特定工作負(fù)載的情況下,谷歌公司還支持自定義的實例類型。自定義實例可選擇1至32個vCPU(偶數(shù)),每個vCPU的內(nèi)存配置比率為0.9到6.5 GB,單位增量為0.25GB。
谷歌云實例類型還支持持久性塊存儲,可分別使用傳統(tǒng)硬盤驅(qū)動器(HDD)或固態(tài)存儲驅(qū)動器(SSD)。每種類型都可支持高達(dá)64TB的容量,而實例可為每個單核分配16個硬盤 ,最多可為8個以上的內(nèi)核配備16個硬盤驅(qū)動器。硬盤運行性能與容量大小成正比,但是SSD可比HDD提供八倍的讀取速率、高出67%的寫操作IOPS,以及每個實例50%至100%的讀寫吞吐量。
一般而言,具有大量小型讀寫操作的交易型工作負(fù)載更適于使用SSD,而諸如內(nèi)容交付或多媒體軟件的應(yīng)用則應(yīng)當(dāng)堅持使用傳統(tǒng)HDD。谷歌公司可自動管理持久性存儲資源,但它也支持本地連接的、用戶管理的iSCSI或可提供更高性能的NVMe SSD。
建議
由于谷歌提供了各種標(biāo)準(zhǔn)谷歌云實例類型以及CPU、內(nèi)存和本地存儲自定義配置的功能,才讓用戶們擁有了眾多的選項。一般來說,請首先考慮預(yù)配置實例類型并使用谷歌的自動推薦來確定選擇。當(dāng)生產(chǎn)實踐和性能數(shù)據(jù)表明需要使用非標(biāo)的CPU-內(nèi)存組合配置時,才可考慮使用自定義的機器類型。
雖然自定義機器可以在用戶需要兩個預(yù)定義類型之間的配置時節(jié)省了費用,但是谷歌是根據(jù)vCPU數(shù)量和所使用內(nèi)存的時間按小時收費的,這一點不同于在標(biāo)準(zhǔn)類型中是按分鐘收費的。