欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于確定存儲系統(tǒng)性能下降的原因的方法和設(shè)備與流程

文檔序號:12786239閱讀:325來源:國知局
用于確定存儲系統(tǒng)性能下降的原因的方法和設(shè)備與流程

本公開的實施例總體涉及系統(tǒng)性能,具體涉及一種用于確定存儲系統(tǒng)性能下降的原因的方法和設(shè)備。



背景技術(shù):

對復(fù)雜系統(tǒng)尤其是生產(chǎn)系統(tǒng)的性能下降的原因進行定位是相當(dāng)困難和耗費時間的。盡管一致的性能通常是系統(tǒng)設(shè)計目標(biāo)之一,但是幾乎每個系統(tǒng)在實踐中都會遭受意想不到的性能下降,尤其是那些利用許多組件、層或復(fù)雜邏輯而構(gòu)建的系統(tǒng)。例如,系統(tǒng)性能下降的原因通常包括:設(shè)計和/或?qū)崿F(xiàn)上的缺陷或限制、軟件配置問題和/或硬件限制。設(shè)計和/或?qū)崿F(xiàn)上的缺陷或限制可以是關(guān)于特定組件,諸如鎖定或者關(guān)鍵I/O路徑上的串行化;或者更普遍地可以是若干組件間的意想不到的交互,例如資源沖突或者有限的可擴展性等。例如,典型的企業(yè)級存儲系統(tǒng)包括協(xié)議、緩存、數(shù)據(jù)壓縮、自動精簡配置、快照和越來越多的后臺服務(wù)。任何單個組件或者組件間的交互可能影響用戶可見的性能。軟件配置問題諸如塊大小、緩存大小或者隊列大小等。硬件限制例如包括,特定硬件組件(如網(wǎng)絡(luò)接口卡端口、中央處理單元(CPU)或磁盤)到達其性能上限并且變?yōu)橄到y(tǒng)的瓶頸,使得系統(tǒng)的端到端的性能無法持續(xù)等。

目前確定系統(tǒng)性能下降的原因通常是長期的、事后的過程,該過程通常需要通過人工進行資料搜集并搭建模擬環(huán)境以對問題進行重現(xiàn)。由于不能夠在性能下降時立即捕獲性能表現(xiàn)以及缺乏協(xié)調(diào),上述過程通常是人工的、反復(fù)迭代的過程,導(dǎo)致低效、不確定的準(zhǔn)確性和高昂的成本。

因此,本領(lǐng)域中需要一種更準(zhǔn)確和高效的方法來解決上述問題。



技術(shù)實現(xiàn)要素:

本公開的實施例旨在提供一種用于確定存儲系統(tǒng)性能下降的原因的方法和設(shè)備。

根據(jù)本公開的第一方面,提供了一種用于確定存儲系統(tǒng)的性能下降原因的方法。該方法包括:根據(jù)預(yù)定的策略對存儲系統(tǒng)的性能進行監(jiān)控;針對監(jiān)控的結(jié)果,基于系統(tǒng)性能基線來生成對應(yīng)的性能下降事件;響應(yīng)于性能下降事件,獲得與性能下降有關(guān)的信息;以及對該信息進行離線分析,以確定性能下降的原因。

在一些實施例中,根據(jù)預(yù)定的策略對存儲系統(tǒng)的性能進行監(jiān)控包括:基于預(yù)定的監(jiān)控目標(biāo),對監(jiān)控目標(biāo)的性能指標(biāo)進行監(jiān)控,以獲得監(jiān)控目標(biāo)的原始性能數(shù)據(jù);并且針對監(jiān)控的結(jié)果,基于系統(tǒng)性能基線來生成對應(yīng)的性能下降事件包括:將原始性能數(shù)據(jù)與最新的系統(tǒng)性能基線進行比較;以及基于比較的結(jié)果來生成性能下降事件。

在一些實施例中,基于比較的結(jié)果來生成性能下降事件包括:在原始性能數(shù)據(jù)低于最新的系統(tǒng)性能基線時,生成性能下降事件。

在一些實施例中,該方法還包括:利用四元組來標(biāo)記性能下降事件。其中該四元組包括:最近的性能統(tǒng)計、性能下降的指示、性能下降的程度以及達到該程度的次數(shù)。

在一些實施例中,該方法還包括:檢測存儲系統(tǒng)的正常性能,以生成經(jīng)檢測的系統(tǒng)性能基線;以及基于經(jīng)檢測的系統(tǒng)性能基線,生成最新的系統(tǒng)性能基線。

在一些實施例中,檢測存儲系統(tǒng)的正常性能包括:周期性地檢測存儲系統(tǒng)的正常性能;或者響應(yīng)于存儲系統(tǒng)的配置改變,檢測存儲系統(tǒng)的正常性能。其中配置改變包括以下的至少一種:硬件改變、工作負載改變、存儲系統(tǒng)的啟動以及文件系統(tǒng)掛載。

在一些實施例中,基于經(jīng)檢測的系統(tǒng)性能基線,生成最新的系統(tǒng)性能基線包括:基于當(dāng)前的系統(tǒng)性能基線和經(jīng)檢測的系統(tǒng)性能基線,以加權(quán)的方式生成最新的系統(tǒng)性能基線。

在一些實施例中,響應(yīng)于性能下降事件,獲得與性能下降有關(guān)的 信息包括:基于性能下降的程度,來執(zhí)行第一類動作。其中第一類動作包括以下的至少一種:針對特定層和特定目標(biāo)的分析;針對特定目標(biāo),對多個層的垂直分析;以及針對特定層,對多個目標(biāo)的水平分析。

在一些實施例中,響應(yīng)于性能下降事件,獲得與性能下降有關(guān)的信息還包括:對存儲系統(tǒng)的資源使用情況進行監(jiān)控;基于資源使用情況,執(zhí)行第二類動作;以及執(zhí)行第一類動作,以獲得與性能下降有關(guān)的信息。其中第二類動作包括以下的至少一種:根據(jù)資源使用情況,對使用相應(yīng)資源的對象進行排名;以及限制具有較高排名的特定對象對特定資源的使用。

在一些實施例中,第一類動作由以下的至少一個實體來執(zhí)行:系統(tǒng)內(nèi)置的性能分析工具;插入式的性能分析工具;以及來自第三方的性能分析工具。

在一些實施例中,與性能下降有關(guān)的信息包括以下的一項或多項:相關(guān)的事件信息、系統(tǒng)跟蹤信息、最近的性能統(tǒng)計信息和相關(guān)的系統(tǒng)配置信息。

根據(jù)本公開的第二方面,提供了一種用于確定存儲系統(tǒng)的性能下降原因的設(shè)備,包括:性能監(jiān)控裝置,被配置為根據(jù)預(yù)定的策略對存儲系統(tǒng)的性能進行監(jiān)控;下降檢測裝置,被配置為針對監(jiān)控的結(jié)果,基于系統(tǒng)性能基線來生成對應(yīng)的性能下降事件;性能分析裝置,被配置為響應(yīng)于性能下降事件,獲得與性能下降有關(guān)的信息;以及原因確定裝置,被配置為對該信息進行離線分析,以確定性能下降的原因。

在一些實施例中,性能監(jiān)控裝備被配置為:基于預(yù)定的監(jiān)控目標(biāo),對監(jiān)控目標(biāo)的性能指標(biāo)進行監(jiān)控,以獲得監(jiān)控目標(biāo)的原始性能數(shù)據(jù);并且下降檢測裝置被配置為:將原始性能數(shù)據(jù)與最新的系統(tǒng)性能基線進行比較;以及基于比較的結(jié)果來生成性能下降事件。

在一些實施例中,基于比較的結(jié)果來生成性能下降事件包括:在原始性能數(shù)據(jù)低于最新的系統(tǒng)性能基線時,生成性能下降事件。

在一些實施例中,該設(shè)備還包括:事件標(biāo)記裝置,被配置為利用四元組來標(biāo)記性能下降事件。其中該四元組包括:最近的性能統(tǒng)計、 性能下降的指示、性能下降的程度以及達到該程度的次數(shù)。

在一些實施例中,該設(shè)備還包括:基線檢測裝置,被配置為檢測存儲系統(tǒng)的正常性能,以生成經(jīng)檢測的系統(tǒng)性能基線;以及基線生成裝置,被配置為基于經(jīng)檢測的系統(tǒng)性能基線,生成最新的系統(tǒng)性能基線。

在一些實施例中,基線檢測裝置被配置為:周期性地檢測存儲系統(tǒng)的正常性能;或者響應(yīng)于存儲系統(tǒng)的配置改變,檢測存儲系統(tǒng)的正常性能。其中配置改變包括以下的至少一種:硬件改變、工作負載改變、存儲系統(tǒng)的啟動以及文件系統(tǒng)掛載。

在一些實施例中,基線生成裝置被配置為:基于當(dāng)前的系統(tǒng)性能基線和經(jīng)檢測的系統(tǒng)性能基線,以加權(quán)的方式生成最新的系統(tǒng)性能基線。

在一些實施例中,性能分析裝置被配置為:基于性能下降的程度,來執(zhí)行第一類動作。其中第一類動作包括以下的至少一種:針對特定層和特定目標(biāo)的分析;針對特定目標(biāo),對多個層的垂直分析;以及針對特定層,對多個目標(biāo)的水平分析。

在一些實施例中,性能分析裝置還被配置為:對存儲系統(tǒng)的資源使用情況進行監(jiān)控;基于資源使用情況,執(zhí)行第二類動作;以及執(zhí)行第一類動作,以獲得與性能下降有關(guān)的信息。其中第二類動作包括以下的至少一種:根據(jù)資源使用情況,對使用相應(yīng)資源的對象進行排名;以及限制具有較高排名的特定對象對特定資源的使用。

在一些實施例中,第一類動作由以下的至少一個實體來執(zhí)行:系統(tǒng)內(nèi)置的性能分析工具;插入式的性能分析工具;以及來自第三方的性能分析工具。

在一些實施例中,與性能下降有關(guān)的信息包括以下的一項或多項:相關(guān)的事件信息、系統(tǒng)跟蹤信息、最近的性能統(tǒng)計信息和相關(guān)的系統(tǒng)配置信息。

根據(jù)本公開的第三方面,提供了一種用于確定存儲系統(tǒng)性能下降的原因的計算機程序產(chǎn)品,該計算機程序產(chǎn)品被有形地存儲在非瞬態(tài) 計算機可讀介質(zhì)上并且包括計算機可執(zhí)行指令,該計算機可執(zhí)行指令在被執(zhí)行時使得計算機執(zhí)行方法的任意步驟。

與現(xiàn)有技術(shù)相比,根據(jù)本公開的實施例的用于確定存儲系統(tǒng)性能下降的原因的方法和設(shè)備,能夠有效地對系統(tǒng)性能下降進行持續(xù)的管理,使得運行開銷最小化,并且經(jīng)由插入的方式能夠支持現(xiàn)有的性能分析工具。

附圖說明

在此所述的附圖用來提供對本公開的進一步理解,構(gòu)成本公開的一部分,本公開的示意性實施例及其說明用于解釋本公開,并不構(gòu)成對本公開的不當(dāng)限定。在附圖中:

圖1圖示了用于實施本公開的實施例的示例性存儲系統(tǒng)100的示意圖;

圖2圖示了用于實施本公開的實施例的示例性存儲系統(tǒng)200的示意圖;

圖3圖示了根據(jù)本公開的實施例的用于確定存儲系統(tǒng)性能下降的原因的系統(tǒng)框圖;

圖4圖示了根據(jù)本公開的實施例的以加權(quán)方式生成最新系統(tǒng)性能基線的示意圖;

圖5圖示了根據(jù)本公開的實施例的示例性可調(diào)整的系統(tǒng)性能基線和系統(tǒng)性能下降事件的示意圖;

圖6圖示了根據(jù)本公開的實施例的用于物理環(huán)境中以自頂向下的方式進行性能分析的示意圖;

圖7圖示了根據(jù)本公開的實施例的用于虛擬化(容器)環(huán)境中以自底向上的方式進行性能分析的示意圖;

圖8圖示了根據(jù)本公開的實施例的用于確定存儲系統(tǒng)性能下降的原因的方法800的流程圖;

圖9圖示了根據(jù)本公開的實施例的用于確定存儲系統(tǒng)性能下降的原因的設(shè)備900的框圖;以及

圖10圖示了適于實現(xiàn)本公開的實施例的計算機系統(tǒng)1000的框圖。

在各個附圖中,相同或?qū)?yīng)的標(biāo)號表示相同或?qū)?yīng)的部分。

具體實施方式

在下文中,將參考附圖詳細描述本公開的各個示例性實施例。應(yīng)當(dāng)注意,這些附圖和描述涉及的僅僅是作為示例性的實施例。應(yīng)該指出的是,根據(jù)隨后描述,很容易設(shè)想出此處公開的結(jié)構(gòu)和方法的替換實施例,并且可以在不脫離本公開要求保護的原理的情況下使用這些替代實施例。

應(yīng)當(dāng)理解,給出這些示例性實施例僅僅是為了使本領(lǐng)域技術(shù)人員能夠更好地理解進而實現(xiàn)本公開,而并非以任何方式限制本公開的范圍。

在此使用的術(shù)語“包括”、“包含”及類似術(shù)語應(yīng)該被理解為是開放性的術(shù)語,即“包括/包含但不限于”。術(shù)語“基于”是“至少部分地基于”。術(shù)語“一個實施例”表示“至少一個實施例”;術(shù)語“另一實施例”表示“至少一個另外的實施例”。其他術(shù)語的相關(guān)定義將在下文描述中給出。

圖1和圖2分別圖示了兩種用于實施本公開的實施例的示例性存儲系統(tǒng)。其中,圖1圖示了運行在物理環(huán)境上的示例性存儲系統(tǒng)100。如圖1所示,存儲系統(tǒng)100可以包括協(xié)議層(諸如以太網(wǎng)協(xié)議、互聯(lián)網(wǎng)小型計算機接口協(xié)議、光纖通道協(xié)議、無限帶寬協(xié)議等)、文件系統(tǒng)層、緩存層、卷池(volume pool)層和位于底層的磁盤。應(yīng)當(dāng)理解,圖1所示出的存儲系統(tǒng)僅出于簡化說明的目的而不是對本公開的實施例所能夠?qū)嵤┑沫h(huán)境加以限制,在實踐中本公開的實施例也可以被實施在具有其他層次結(jié)構(gòu)的存儲系統(tǒng)中。此外還應(yīng)當(dāng)理解,在圖1的每層中所示出的對象的數(shù)目僅是示例性的,而不是代表真實存儲系統(tǒng)中的實際對象的數(shù)目。圖2圖示了運行在虛擬化(容器)環(huán)境上的另一示例性存儲系統(tǒng)200。與圖1中所示的存儲系統(tǒng)100不同的是,存儲系統(tǒng)200包括容器層,并且該容器層可以創(chuàng)建于虛擬機層上。此外,存儲系統(tǒng)200也包括諸如協(xié)議層、文件系統(tǒng)層、緩存層、卷池層等多 個層次,并且可以提供諸如數(shù)據(jù)去重、壓縮、自動精簡配置和快照等許多數(shù)據(jù)服務(wù)以及諸如再平衡、磁盤碎片整理、完整性驗證和故障重建等越來越多的后臺服務(wù)。在圖1所示的存儲系統(tǒng)100和圖2所示的存儲系統(tǒng)200中,任何單個組件或者組件間的交互可能影響用戶可見的性能。除了系統(tǒng)本身設(shè)計和/或?qū)崿F(xiàn)上的缺陷或限制以外,諸如塊大小、緩存大小或者隊列大小等軟件配置問題和例如特定硬件組件(如網(wǎng)絡(luò)接口卡端口、中央處理單元或磁盤)到達其性能上限而成為系統(tǒng)的瓶頸的硬件限制也將導(dǎo)致用戶可見的性能下降。

為了解決上述問題,本公開的實施例提出一種用于確定存儲系統(tǒng)性能下降的原因的解決方案。例如,圖3圖示了根據(jù)本公開的實施例的用于確定存儲系統(tǒng)性能下降的原因的系統(tǒng)框圖。根據(jù)本公開的實施例,如圖3所示,可以將確定存儲系統(tǒng)性能下降的過程分為四個階段:監(jiān)控、性能下降檢測、性能分析和原因確定。

在監(jiān)控階段,例如可以針對預(yù)定的(例如,由用戶指定的或者系統(tǒng)默認(rèn))目標(biāo)和性能指標(biāo)進行監(jiān)控,其中該目標(biāo)例如可以是圖1和/或圖2中示出的一個或多個特定的文件系統(tǒng)、卷、虛擬機和/或容器。例如,所監(jiān)控的性能指標(biāo)也可以由用戶指定,該性能指標(biāo)可以包括每秒輸入輸出操作(IOPS)、延遲、帶寬、讀請求或者寫請求,或者前述的任意組合,例如在卷1上的寫延遲。監(jiān)控階段的輸出可以是原始性能數(shù)據(jù)或者經(jīng)過性能聚合器生成的實時性能圖表。根據(jù)本公開的實施例,用于實現(xiàn)性能監(jiān)控的模塊(例如,包括性能聚合器)可以是在內(nèi)存中持續(xù)運行的輕量級軟件模塊,其持續(xù)跟蹤用戶指定的目標(biāo)的性能指標(biāo)以發(fā)現(xiàn)任何早期的性能下降。

在性能下降檢測階段,可以針對監(jiān)控階段輸出的原始性能數(shù)據(jù),基于系統(tǒng)性能基線來生成性能下降事件。

系統(tǒng)性能基線用于指示關(guān)于特定指標(biāo)的正常系統(tǒng)性能表現(xiàn)。應(yīng)當(dāng)注意,系統(tǒng)性能基線不代表服務(wù)質(zhì)量,而僅是用于合理區(qū)分正常性能和非正常性能的穩(wěn)定性能標(biāo)準(zhǔn)。例如,初始的系統(tǒng)性能基線可以由用戶指定。此外,系統(tǒng)性能基線可能由于以下原因而動態(tài)地變化:硬件 資源(諸如中央處理單元、存儲器、磁盤或網(wǎng)卡等)的增加或減少(包括故障)、工作負載的改變(例如,更多或更少的客戶端、線程、請求,以及讀/寫比率、I/O大小或I/O模式上的改變等)以及系統(tǒng)設(shè)計或?qū)崿F(xiàn)上的限制等。

因為系統(tǒng)性能基線可能由于不同原因而發(fā)生變化,為了利用準(zhǔn)確的系統(tǒng)性能基線來生成性能下降事件,可以對系統(tǒng)性能基線進行動態(tài)調(diào)整。例如,系統(tǒng)性能基線的動態(tài)調(diào)整可以按照如下方式進行。首先,可以在存儲系統(tǒng)較空閑的時候檢測存儲系統(tǒng)的正常性能,以生成經(jīng)檢測的系統(tǒng)性能基線??梢灾芷谛缘貦z測存儲系統(tǒng)的正常性能,例如可以根據(jù)用戶配置的周期(諸如每2小時)進行檢測;或者可以響應(yīng)于存儲系統(tǒng)的配置改變來檢測該存儲系統(tǒng)的正常性能。例如,存儲系統(tǒng)的配置改變可以包括:硬件改變,例如增加或減少存儲器、磁盤或者網(wǎng)卡等;工作負載改變,例如在最近的5秒內(nèi)的讀請求數(shù)比過去30秒增加了50%或者I/O大小改變;存儲系統(tǒng)的啟動或者文件系統(tǒng)掛載等??梢曰诋?dāng)前的系統(tǒng)性能基線和經(jīng)檢測的系統(tǒng)性能基線,以加權(quán)的方式生成最新的系統(tǒng)性能基線。例如,圖4圖示了根據(jù)本公開的實施例的以加權(quán)方式生成最新系統(tǒng)性能基線的示意圖。如圖4所示,可以對經(jīng)檢測的系統(tǒng)性能基線和當(dāng)前系統(tǒng)性能基線以及可選地用戶預(yù)測的系統(tǒng)性能基線以加權(quán)的方式進行合并,以生成最新的系統(tǒng)基線。在圖4中,例如,向經(jīng)檢測的系統(tǒng)性能基線分配了50%的權(quán)重,向當(dāng)前系統(tǒng)性能基線分配了30%的權(quán)重以及向用戶預(yù)測的系統(tǒng)性能基線分配了20%的權(quán)重。圖4僅示出了用于生成最新系統(tǒng)性能基線的一種方式,然而應(yīng)當(dāng)理解,根據(jù)本公開的實施例,還可以根據(jù)其他的方式來生成最新的系統(tǒng)性能基線,包括但不限于加權(quán)的方式,并且加權(quán)的對象可以是可選的。

返回圖3。如圖3所示,可以根據(jù)用戶指定的策略來生成性能下降事件,例如,當(dāng)由原始性能數(shù)據(jù)所表示的當(dāng)前系統(tǒng)性能低于最新的系統(tǒng)性能基線時,可以生成性能下降事件。就此而言,圖5圖示了根據(jù)本公開的實施例的示例性可調(diào)整的系統(tǒng)性能基線和系統(tǒng)性能下降 事件的示意圖。如圖5所示,橫坐標(biāo)軸代表時間,縱坐標(biāo)軸代表性能指標(biāo)(例如,延遲)。圖5中示出了兩個系統(tǒng)性能基線:基線1和基線2,并且用星形標(biāo)記指示了性能下降事件。根據(jù)本公開的實施例,可以利用四元組來標(biāo)記性能下降事件。例如,四元組可以包括:最的性能統(tǒng)計,例如最近3-5秒的聚合的性能統(tǒng)計;性能下降的指示,例如下降或者未下降;性能下降的程度,例如相對于最新的系統(tǒng)性能基線所下降的百分比;以及達到該程度的次數(shù)或者事件,例如30秒內(nèi)或者達到兩次等。因此,一個完整的性能下降事件例如可以被描述為:最近3秒的寫延遲2次達到比最新的系統(tǒng)性能基線差20%的程度。

返回圖3。在性能分析(profiling)階段,響應(yīng)于性能下降事件,獲得與性能下降有關(guān)的信息。根據(jù)本公開的實施例,針對存儲系統(tǒng)的不同類型,可以采用不同的方式來進行性能分析。

針對如圖1所示的在物理環(huán)境上運行的存儲系統(tǒng)100,例如,可以以面向應(yīng)用的自頂向下的方式來進行性能分析。圖6圖示了根據(jù)本公開的實施例的用于物理環(huán)境中以自頂向下的方式進行性能分析的示意圖。如圖6所示的性能分析方式包括兩種類型:垂直分析和水平分析。垂直分析是指針對特定目標(biāo),對所有層以垂直的方向進行跟蹤(如圖6中的虛箭頭所指示的);水平分析是指針對特定層上的所有目標(biāo)(或?qū)ο?進行跟蹤,而不管其上層的目標(biāo)或者更下層的目標(biāo)。根據(jù)本公開的實施例,可以首先進行垂直分析,以進行快速的分類和排序,然后將排名較前的系統(tǒng)瓶頸的范圍縮小到特定的一個或多個層上,然后在特定層上進行水平分析,以獲得更多的細節(jié)信息。根據(jù)本公開的實施例,響應(yīng)于性能下降事件,可以基于性能下降的程度來執(zhí)行對應(yīng)的性能分析動作。例如,表1示出了基于性能下降的不同程度而執(zhí)行的不同動作。根據(jù)本公開的實施例,表1中的動作可以由以下的至少一個實體來執(zhí)行:系統(tǒng)內(nèi)置的性能分析工具(例如,針對EMCTM公司的VNX產(chǎn)品的JTrace);插入式的性能分析工具;以及來自第三方的性能分析工具(例如,來自英特爾TM公司的VTuneTM性能分析器等)。

表1

針對如圖2所示的在虛擬化(容器)環(huán)境上運行的存儲系統(tǒng)200,由于其資源在多個應(yīng)用/文件系統(tǒng)/存儲卷之間共用,這些轉(zhuǎn)而增加了額外的系統(tǒng)軟件(容器和管理程序)并且有可能在應(yīng)用性能下降前成為新的瓶頸。因此,在檢測到性能下降事件時,密切地監(jiān)控這種存儲系統(tǒng)的底層是合理的。針對這樣的系統(tǒng),例如,可以以自底向上的方式來進行性能分析。圖7圖示了根據(jù)本公開的實施例的用于虛擬化(容器)環(huán)境中以自底向上的方式進行性能分析的示意圖。如圖7中的箭頭所示的性能分析方式可以包括以下步驟:對存儲系統(tǒng)(容器)的資源使用情況(例如,存儲器、中央處理單元、磁盤或者網(wǎng)絡(luò))進行監(jiān)控,然后基于資源使用情況來執(zhí)行對應(yīng)的動作。例如,可以分別針對CPU的使用持續(xù)5s超過其限額的75%、存儲器的使用持續(xù)10s超過其限額的80%以及I/O持續(xù)30s超過其限額的90%來執(zhí)行對應(yīng)的動作。根據(jù)本公開的實施例,可以根據(jù)上述資源使用情況,對使用相應(yīng)資源的對象(例如,卷池2)進行排名,從而縮小造成性能下降的原因的 范圍;然后可以限制具有較高排名的特定對象對特定資源的使用(諸如通過排隊和配置更低優(yōu)先級的方式來限制卷池2的I/O使用等),以降低其對其他對象的影響;此外,還可以基于性能下降的程度來執(zhí)行如表1中所示的對應(yīng)的性能分析動作,以獲得與性能下降有關(guān)的信息。

如上所述,根據(jù)本公開的實施例,針對沒有任何虛擬化或容器的物理環(huán)境,可以使用面向應(yīng)用的自頂向下的性能分析方式;而在虛擬化/容器環(huán)境中,可以使用自底向上的性能分析方式,或者可以響應(yīng)于性能下降的程度率先被滿足(例如,預(yù)定的資源使用情況的情況尚未滿足)來使用面向應(yīng)用的自頂向下的性能分析方式,或者可以在不同時段應(yīng)用兩種方式中的任一種方式。

返回圖3。如圖3所示,性能分析(profiling)階段的輸出是與性能下降有關(guān)的詳細信息,例如,這些信息可以包括相關(guān)的事件信息(諸如以基于JavaScript語言的輕量級的數(shù)據(jù)交換格式的文件)、系統(tǒng)跟蹤信息(例如,VTuneTM性能分析器生成的跟蹤文件)、最近的性能統(tǒng)計信息和相關(guān)的系統(tǒng)配置信息等。這些信息可以用作存儲系統(tǒng)性能表現(xiàn)的快照,多個性能快照按照時間排序可以形成存儲系統(tǒng)性能的時間線(timeline)。

然后,可以將上述收集的系統(tǒng)性能快照上傳至單獨的存儲庫(諸如,單獨的主機、支持中心或者云),并且可以自動地或者人工地運行配置的離線分析來確定導(dǎo)致系統(tǒng)性能下降的原因。

圖8圖示了根據(jù)本公開的實施例的用于確定存儲系統(tǒng)性能下降的原因的方法800的流程圖。方法800可以包括步驟S801至S804。

在步驟S801,根據(jù)預(yù)定的策略對存儲系統(tǒng)的性能進行監(jiān)控。

根據(jù)本公開的實施例,步驟S801可以包括基于預(yù)定的監(jiān)控目標(biāo),對監(jiān)控目標(biāo)的性能指標(biāo)進行監(jiān)控,以獲得監(jiān)控目標(biāo)的原始性能數(shù)據(jù)。

然后,方法800進行至步驟S802。在步驟S802,針對監(jiān)控的結(jié)果,基于系統(tǒng)性能基線來生成對應(yīng)的性能下降事件。

根據(jù)本公開的實施例,步驟S802可以包括將原始性能數(shù)據(jù)與最 新的系統(tǒng)性能基線進行比較;以及基于比較的結(jié)果來生成性能下降事件。

根據(jù)本公開的實施例,可以檢測存儲系統(tǒng)的正常性能,來生成經(jīng)檢測的系統(tǒng)性能基線;然后基于經(jīng)檢測的系統(tǒng)性能基線,生成最新的系統(tǒng)性能基線。其中,檢測存儲系統(tǒng)的正常性能可以包括周期性地檢測存儲系統(tǒng)的正常性能;或者響應(yīng)于存儲系統(tǒng)的配置改變,檢測存儲系統(tǒng)的正常性能,其中配置改變可以包括以下的至少一種:硬件改變、工作負載改變、存儲系統(tǒng)的啟動以及文件系統(tǒng)掛載。

根據(jù)本公開的實施例,基于經(jīng)檢測的系統(tǒng)性能基線來生成最新的系統(tǒng)性能基線可以包括基于當(dāng)前的系統(tǒng)性能基線和經(jīng)檢測的系統(tǒng)性能基線,以加權(quán)的方式生成最新的系統(tǒng)性能基線。其中,基于比較的結(jié)果來生成性能下降事件可以包括在原始性能數(shù)據(jù)低于最新的系統(tǒng)性能基線時,生成性能下降事件。

根據(jù)本公開的實施例,可以包括利用四元組來標(biāo)記性能下降事件,其中該四元組包括:最近的性能統(tǒng)計、性能下降的指示、性能下降的程度以及達到該程度的次數(shù)。

然后,方法800進行至步驟S803。在步驟S803,響應(yīng)于性能下降事件,獲得與性能下降有關(guān)的信息。

根據(jù)本公開的實施例,步驟S803可以包括基于性能下降的程度,來執(zhí)行第一類動作。其中,第一類動作包括以下的至少一種:針對特定層和特定目標(biāo)的分析;針對特定目標(biāo),對多個層的垂直分析;以及針對特定層,對多個目標(biāo)的水平分析。此外,第一類動作可以由以下的至少一個實體來執(zhí)行:系統(tǒng)內(nèi)置的性能分析工具;插入式的性能分析工具;以及來自第三方的性能分析工具。

根據(jù)本公開的實施例,步驟S803還可以包括對存儲系統(tǒng)的資源使用情況進行監(jiān)控;基于資源使用情況,執(zhí)行第二類動作;以及執(zhí)行第一類動作,以獲得與性能下降有關(guān)的信息。其中,第二類動作包括以下的至少一種:根據(jù)資源使用情況,對使用相應(yīng)資源的對象進行排名;以及限制具有較高排名的特定對象對特定資源的使用。

根據(jù)本公開的實施例,與性能下降有關(guān)的信息包括以下的一項或多項:相關(guān)的事件信息、系統(tǒng)跟蹤信息、最近的性能統(tǒng)計信息和相關(guān)的系統(tǒng)配置信息。

然后,方法800進行至步驟S804。在步驟S804,對該信息進行離線分析,以確定性能下降的原因。

至此,方法800結(jié)束。

出于清楚的目的,在圖8中沒有示出方法800的某些可選步驟。然而,應(yīng)當(dāng)理解,上文參考圖3-7所描述的各個特征同樣適用于方法800。

特別地,根據(jù)本公開的實施例,參考圖8描述的方法800可以被實現(xiàn)為計算機軟件程序。例如,本公開的實施例包括一種計算機程序產(chǎn)品,該計算機程序產(chǎn)品被有形地存儲在非瞬態(tài)計算機可讀介質(zhì)上并且包括計算機可執(zhí)行指令,該計算機可執(zhí)行指令在被執(zhí)行時使得計算機執(zhí)行方法800的任意步驟。

圖9圖示了根據(jù)本公開的實施例的用于確定存儲系統(tǒng)性能下降的原因的設(shè)備900的框圖。設(shè)備900可以包括:性能監(jiān)控裝置901,被配置為根據(jù)預(yù)定的策略對存儲系統(tǒng)的性能進行監(jiān)控;下降檢測裝置902,被配置為針對監(jiān)控的結(jié)果,基于系統(tǒng)性能基線來生成對應(yīng)的性能下降事件;性能分析裝置903,被配置為響應(yīng)于性能下降事件,獲得與性能下降有關(guān)的信息;以及原因確定裝置904,被配置為對該信息進行離線分析,以確定性能下降的原因。

根據(jù)本公開的實施例,性能監(jiān)控裝置901被配置為基于預(yù)定的監(jiān)控目標(biāo),對監(jiān)控目標(biāo)的性能指標(biāo)進行監(jiān)控,以獲得監(jiān)控目標(biāo)的原始性能數(shù)據(jù);并且下降檢測裝置被配置為將原始性能數(shù)據(jù)與最新的系統(tǒng)性能基線進行比較;以及基于比較的結(jié)果來生成性能下降事件。其中,基于比較的結(jié)果來生成性能下降事件包括在原始性能數(shù)據(jù)低于最新的系統(tǒng)性能基線時,生成性能下降事件。

根據(jù)本公開的實施例,設(shè)備900還可以包括事件標(biāo)記裝置,被配置為利用四元組來標(biāo)記性能下降事件。其中該四元組包括:最近的性 能統(tǒng)計、性能下降的指示、性能下降的程度以及達到該程度的次數(shù)。

根據(jù)本公開的實施例,設(shè)備900還可以包括基線檢測裝置,被配置為檢測存儲系統(tǒng)的正常性能,以生成經(jīng)檢測的系統(tǒng)性能基線。基線檢測裝置被配置為周期性地檢測存儲系統(tǒng)的正常性能;或者響應(yīng)于存儲系統(tǒng)的配置改變,檢測存儲系統(tǒng)的正常性能。其中,配置改變包括以下的至少一種:硬件改變、工作負載改變、存儲系統(tǒng)的啟動以及文件系統(tǒng)掛載。

根據(jù)本公開的實施例,設(shè)備900還可以包括基線生成裝置,被配置為基于經(jīng)檢測的系統(tǒng)性能基線,生成最新的系統(tǒng)性能基線?;€生成裝置被配置為基于當(dāng)前的系統(tǒng)性能基線和經(jīng)檢測的系統(tǒng)性能基線,以加權(quán)的方式生成最新的系統(tǒng)性能基線。

根據(jù)本公開的實施例,性能分析裝置被配置為基于性能下降的程度,來執(zhí)行第一類動作。其中第一類動作包括以下的至少一種:針對特定層和特定目標(biāo)的分析;針對特定目標(biāo),對多個層的垂直分析;以及針對特定層,對多個目標(biāo)的水平分析。此外,第一類動作可以由以下的至少一個實體來執(zhí)行:系統(tǒng)內(nèi)置的性能分析工具;插入式的性能分析工具;以及來自第三方的性能分析工具。

根據(jù)本公開的實施例,性能分析裝置還被配置為對存儲系統(tǒng)的資源使用情況進行監(jiān)控;基于資源使用情況,執(zhí)行第二類動作;以及執(zhí)行第一類動作,以獲得與性能下降有關(guān)的信息。其中第二類動作包括以下的至少一種:根據(jù)資源使用情況,對使用相應(yīng)資源的對象進行排名;以及限制具有較高排名的特定對象對特定資源的使用。

根據(jù)本公開的實施例,與性能下降有關(guān)的信息包括以下的一項或多項:相關(guān)的事件信息、系統(tǒng)跟蹤信息、最近的性能統(tǒng)計信息和相關(guān)的系統(tǒng)配置信息。

出于清楚的目的,在圖9中沒有示出設(shè)備900的某些可選裝置。然而,應(yīng)當(dāng)理解,上文參考本公開的方法所描述的各個特征同樣適用于設(shè)備900。而且,設(shè)備900中的各個裝置可以是硬件模塊,也可以是軟件模塊。例如,在某些實施例中,設(shè)備900可以部分或者全部利 用軟件和/或固件來實現(xiàn),例如被實現(xiàn)為包含在計算機可讀介質(zhì)上的計算機程序產(chǎn)品。備選地或附加地,設(shè)備900可以部分或者全部基于硬件來實現(xiàn),例如被實現(xiàn)為集成電路(IC)、專用集成電路(ASIC)、片上系統(tǒng)(SOC)、現(xiàn)場可編程門陣列(FPGA)等。本公開的范圍在此方面不受限制。

下面參考圖10,其圖示了適于實現(xiàn)本公開的示例實施例的計算機系統(tǒng)1000的框圖。例如,如圖8所示的方法800可以被實施在計算機系統(tǒng)1000上。如圖10所示,計算機系統(tǒng)1000包括中央處理單元(CPU)1001,其可以根據(jù)存儲在只讀存儲器(ROM)1002中的程序或者從存儲部分908加載到隨機訪問存儲器(RAM)1003中的程序而執(zhí)行各種適當(dāng)?shù)膭幼骱吞幚?。在RAM 1003中,還存儲有設(shè)備900操作所需的各種程序和數(shù)據(jù)。CPU 1001、ROM 1002以及RAM 1003通過總線1004彼此相連。輸入/輸出(I/O)接口1005也連接至總線1004。

以下部件連接至I/O接口1005:包括鍵盤、鼠標(biāo)等的輸入部分1006;包括諸如陰極射線管(CRT)、液晶顯示器(LCD)等以及揚聲器等的輸出部分1007;包括硬盤等的存儲部分1008;以及包括諸如LAN卡、調(diào)制解調(diào)器等的網(wǎng)絡(luò)接口卡的通信部分1009。通信部分1009經(jīng)由諸如因特網(wǎng)的網(wǎng)絡(luò)執(zhí)行通信處理。驅(qū)動器1010也根據(jù)需要連接至I/O接口1005。可拆卸介質(zhì)1011,諸如磁盤、光盤、磁光盤、半導(dǎo)體存儲器等等,根據(jù)需要安裝在驅(qū)動器1010上,以便于從其上讀出的計算機程序根據(jù)需要被安裝入存儲部分1008。

綜上所述,根據(jù)本公開的實施例,提供了一種用于確定存儲系統(tǒng)性能下降的原因的方法和設(shè)備。與現(xiàn)有技術(shù)相比,本公開的實施例能夠有效地對系統(tǒng)性能下降進行持續(xù)的管理,使得運行開銷最小化,并且經(jīng)由插入的方式能夠支持現(xiàn)有的性能分析工具。

一般而言,本公開的各種示例實施例可以在硬件或?qū)S秒娐?、軟件、邏輯,或其任何組合中實施。某些方面可以在硬件中實施,而其他方面可以在可以由控制器、微處理器或其他計算設(shè)備執(zhí)行的固件或 軟件中實施。當(dāng)本公開的實施例的各方面被圖示或描述為框圖、流程圖或使用某些其他圖形表示時,將理解此處描述的方框、裝置、系統(tǒng)、技術(shù)或方法可以作為非限制性的示例在硬件、軟件、固件、專用電路或邏輯、通用硬件或控制器或其他計算設(shè)備,或其某些組合中實施。

而且,流程圖中的各框可以被看作是方法步驟,和/或計算機程序代碼的操作生成的操作,和/或理解為執(zhí)行相關(guān)功能的多個耦合的邏輯電路元件。例如,本公開的實施例包括計算機程序產(chǎn)品,該計算機程序產(chǎn)品包括有形地實現(xiàn)在機器可讀介質(zhì)上的計算機程序,該計算機程序包含被配置為實現(xiàn)上文描述方法的程序代碼。

在公開的上下文內(nèi),機器可讀介質(zhì)可以是包含或存儲用于或有關(guān)于指令執(zhí)行系統(tǒng)、裝置或設(shè)備的程序的任何有形介質(zhì)。機器可讀介質(zhì)可以是機器可讀信號介質(zhì)或機器可讀存儲介質(zhì)。機器可讀介質(zhì)可以包括但不限于電子的、磁的、光學(xué)的、電磁的、紅外的或半導(dǎo)體系統(tǒng)、裝置或設(shè)備,或其任意合適的組合。機器可讀存儲介質(zhì)的更詳細示例包括帶有一根或多根導(dǎo)線的電氣連接、便攜式計算機磁盤、硬盤、隨機存儲存取器(RAM)、只讀存儲器(ROM)、可擦除可編程只讀存儲器(EPROM或閃存)、光存儲設(shè)備、磁存儲設(shè)備,或其任意合適的組合。

用于實現(xiàn)本公開的方法的計算機程序代碼可以用一種或多種編程語言編寫。這些計算機程序代碼可以提供給通用計算機、專用計算機或其他可編程的數(shù)據(jù)處理裝置的處理器,使得程序代碼在被計算機或其他可編程的數(shù)據(jù)處理裝置執(zhí)行的時候,引起在流程圖和/或框圖中規(guī)定的功能/操作被實施。程序代碼可以完全在計算機上、部分在計算機上、作為獨立的軟件包、部分在計算機上且部分在遠程計算機上或完全在遠程計算機或服務(wù)器上執(zhí)行。

另外,盡管操作以特定順序被描繪,但這并不應(yīng)該理解為要求此類操作以示出的特定順序或以相繼順序完成,或者執(zhí)行所有圖示的操作以獲取期望結(jié)果。在某些情況下,多任務(wù)或并行處理會是有益的。同樣地,盡管上述討論包含了某些特定的實施細節(jié),但這并不應(yīng)解釋 為限制任何發(fā)明或權(quán)利要求的范圍,而應(yīng)解釋為對可以針對特定發(fā)明的特定實施例的描述。本說明書中在分開的實施例的上下文中描述的某些特征也可以整合實施在單個實施例中。相反地,在單個實施例的上下文中描述的各種特征也可以分離地在多個實施例或在任意合適的子組合中實施。

針對前述本公開的示例實施例的各種修改、改變將在連同附圖查看前述描述時對相關(guān)技術(shù)領(lǐng)域的技術(shù)人員變得明顯。任何及所有修改將仍落入非限制的和本公開的示例實施例范圍。此外,前述說明書和附圖存在啟發(fā)的益處,涉及本公開的這些實施例的技術(shù)領(lǐng)域的技術(shù)人員將會想到此處闡明的本公開的其他實施例。

將會理解,本公開的實施例不限于公開的特定實施例,并且修改和其他實施例都應(yīng)包含于所附的權(quán)利要求范圍內(nèi)。盡管此處使用了特定的術(shù)語,但是它們僅在通用和描述的意義上使用,而并不用于限制目的。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
奈曼旗| 东莞市| 汉川市| 凉山| 泗洪县| 保定市| 特克斯县| 庆城县| 沂源县| 阿鲁科尔沁旗| 丰原市| 广宁县| 聂拉木县| 重庆市| 太谷县| 中山市| 石狮市| 泌阳县| 新蔡县| 浦城县| 读书| 荆门市| 莫力| 怀来县| 吴忠市| 罗平县| 石台县| 芦山县| 广州市| 永登县| 建水县| 肃宁县| 瓦房店市| 广宗县| 富蕴县| 乌苏市| 独山县| 江源县| 聂拉木县| 辉南县| 贡觉县|