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

用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的方法和裝置制造方法

文檔序號:7984994閱讀:217來源:國知局
用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的方法和裝置制造方法
【專利摘要】本發(fā)明提供了一種用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的方法和相應(yīng)裝置,該方法包括:接收來自所述云環(huán)境中的節(jié)點上部署的診斷代理的關(guān)于所監(jiān)視的所述軟件產(chǎn)品的運行中的問題;捕獲包含該軟件產(chǎn)品的所述云環(huán)境,并將該云環(huán)境部署在診斷云中,且該步驟包括:將所述云環(huán)境中的每個節(jié)點的映象部署在所述診斷云中;以及使用用于部署在云環(huán)境中的集群系統(tǒng)的相關(guān)配置數(shù)據(jù)對所述診斷云中的每個節(jié)點進行配置。本發(fā)明的方法和裝置可以診斷運行在云環(huán)境中的軟件產(chǎn)品的問題,并重建云環(huán)境來便利問題的診斷。
【專利說明】用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及云計算,具體涉及一種用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的方法和裝置。
【背景技術(shù)】
[0002]在傳統(tǒng)的軟件開發(fā)階段,測試團隊或自動化測試框架運行所有的測試用例,并將軟件缺陷報告給開發(fā)團隊。然后,開發(fā)人員開始診斷問題并試圖解決問題。對于那些僅能在非常特殊的環(huán)境中再現(xiàn)、并且與各種類型的系統(tǒng)配置參數(shù)、環(huán)境變量和各種上下文運行時信息關(guān)聯(lián)的缺陷來說,開發(fā)人員首先需要建立相同的環(huán)境來再現(xiàn)這些缺陷。在大多數(shù)情況下,建立這種相同的環(huán)境需要極大的努力。開發(fā)人員需要收集各種類型的用戶/測試者環(huán)境參數(shù);使用這些參數(shù)建立新的環(huán)境,包括安裝相同版本的操作系統(tǒng)、目標(biāo)軟件產(chǎn)品、補丁包以及所有相關(guān)軟件;調(diào)整用于構(gòu)建整個環(huán)境(包括例如操作系統(tǒng)、JRE等)的運行時參數(shù);持續(xù)調(diào)整用于任何可能的相關(guān)組件的蹤跡(trace)級別以逐步地收集期望的蹤跡。在上述過程中,任何人為錯誤或微小疏忽都將造成問題再現(xiàn)的失敗,從而阻止問題診斷。這顯然成為解決缺陷過程的瓶頸,并增加了無法及時交付產(chǎn)品風(fēng)險。如果這種情況發(fā)生在產(chǎn)品發(fā)布后的用戶環(huán)境中,由于開發(fā)人員不得不在現(xiàn)場工作,并指導(dǎo)用戶收集所有所需信息,這對雙方而言都是耗時和高成本的,且由重建相同環(huán)境造成的問題解決延遲將導(dǎo)致用戶喪失對產(chǎn)品的信心。
[0003]此外,集群系統(tǒng)由于其先進的高可用性特點和巨大的業(yè)務(wù)吞吐量,正變得越來越普遍,并已被部署在云環(huán)境中。然而,由于集群系統(tǒng)的復(fù)雜的環(huán)境因素、復(fù)雜的任務(wù)調(diào)度或多個節(jié)點之間的協(xié)調(diào),集群系統(tǒng)更難以被重建來重現(xiàn)問題。而且,云的彈性(elasticity)特征支持伸縮集群系統(tǒng)以動態(tài)改變節(jié)點的數(shù)量,因此很難捕獲集群的瞬時狀態(tài)以重建用于重現(xiàn)問題的集群系統(tǒng)。
[0004]可見,本領(lǐng)域中需要一種用于監(jiān)視在云環(huán)境中的軟件產(chǎn)品的運行并在云環(huán)境中重建用于重現(xiàn)問題的軟件產(chǎn)品運行環(huán)境以便診斷軟件產(chǎn)品的問題的解決方案。

【發(fā)明內(nèi)容】

[0005]在本發(fā)明的一個方面,提供了一種用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的方法,包括:接收來自云環(huán)境中部署的診斷代理的關(guān)于所監(jiān)視的軟件產(chǎn)品的運行中的問題;捕獲包含軟件產(chǎn)品的整個環(huán)境,并將該環(huán)境部署在診斷云中,包括:將所述云環(huán)境中的每個節(jié)點的映象部署在診斷云中;以及使用用于部署在云環(huán)境中的集群系統(tǒng)的相關(guān)配置數(shù)據(jù)對診斷云中的每個節(jié)點進行配置。
[0006]在本發(fā)明的另一個方面,提供了一種用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的方法,包括:響應(yīng)于一節(jié)點加入云環(huán)境,在該節(jié)點上部署診斷代理;診斷代理判斷是否監(jiān)視到軟件產(chǎn)品運行中的問題;以及響應(yīng)于判斷監(jiān)視到軟件產(chǎn)品運行中的問題,診斷代理向診斷控制器報告。[0007]在本發(fā)明的又一方面,提供了一種用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的裝置,包括:接收模塊,被配置為接收來自云環(huán)境中部署的診斷代理的關(guān)于所監(jiān)視的軟件產(chǎn)品的運行中的問題的報告;捕獲和部署模塊,被配置為根據(jù)所述分析的結(jié)果,捕獲包含軟件產(chǎn)品的整個環(huán)境,并將該環(huán)境部署在診斷云中,且該捕獲和部署模塊包括:部署模塊,被配置為將所述云環(huán)境中的每個節(jié)點的映象部署在診斷云中;以及配置模塊,被配置為使用用于部署在云環(huán)境中的集群系統(tǒng)的相關(guān)配置數(shù)據(jù)對診斷云中的每個節(jié)點進行配置。
[0008]在本發(fā)明的再一個方面,提供了一種用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的裝置,該裝置包括:部署模塊,被配置為響應(yīng)于一節(jié)點加入云環(huán)境,在該節(jié)點上部署診斷代理;判斷模塊,被配置為判斷是否監(jiān)視到軟件產(chǎn)品運行中的問題;以及報告模塊,被配置為響應(yīng)于判斷監(jiān)視到軟件產(chǎn)品運行中的問題,向診斷控制器報告。
[0009]本發(fā)明能夠自動獲取云環(huán)境中軟件產(chǎn)品的問題,并在診斷云中重建該云環(huán)境,從而便利了問題再現(xiàn)和診斷。
【專利附圖】

【附圖說明】
[0010]通過結(jié)合附圖對本公開示例性實施方式進行更詳細的描述,本公開的上述以及其它目的、特征和優(yōu)勢將變得更加明顯,其中,在本公開示例性實施方式中,相同的參考標(biāo)號通常代表相同部件。
[0011]圖1表示根據(jù)本發(fā)明一實施例的云計算節(jié)點;
[0012]圖2表示根據(jù)本發(fā)明一實施例的云計算環(huán)境;
[0013]圖3表示根據(jù)本發(fā)明一實施例的抽象模型層;
[0014]圖4示意性地示出了根據(jù)本發(fā)明的一些實施例的用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的系統(tǒng)的體系結(jié)構(gòu);
[0015]圖5示意性地示出了根據(jù)本發(fā)明的一些優(yōu)選實施例的用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的系統(tǒng)的體系結(jié)構(gòu);
[0016]圖6示意性地示出了根據(jù)本發(fā)明的一些優(yōu)選實施例的捕獲集群節(jié)點并將其部署在診斷云中的過程;
[0017]圖7示出了根據(jù)本發(fā)明的一些優(yōu)選實施例的用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的方法的流程圖;
[0018]圖8示出了根據(jù)本發(fā)明的一些優(yōu)選實施例的用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的方法的流程圖;
[0019]圖9示出了根據(jù)本發(fā)明的一些優(yōu)選實施例的用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的裝置;以及
[0020]圖10示出了根據(jù)本發(fā)明的一些優(yōu)選實施例的用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的裝置。
【具體實施方式】
[0021]下面將參照附圖更詳細地描述本公開的優(yōu)選實施方式。雖然附圖中顯示了本公開的優(yōu)選實施方式,然而應(yīng)該理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施方式所限制。相反,提供這些實施方式是為了使本公開更加透徹和完整,并且能夠?qū)⒈竟_的范圍完整的傳達給本領(lǐng)域的技術(shù)人員。
[0022]首先應(yīng)當(dāng)理解,盡管本公開包括關(guān)于云計算的詳細描述,但其中記載的技術(shù)方案的實現(xiàn)卻不限于云計算環(huán)境,而是能夠結(jié)合現(xiàn)在已知或以后開發(fā)的任何其它類型的計算環(huán)境而實現(xiàn)。
[0023]云計算是一種服務(wù)交付模式,用于對共享的可配置計算資源池進行方便、按需的網(wǎng)絡(luò)訪問??膳渲糜嬎阗Y源是能夠以最小的管理成本或與服務(wù)提供者進行最少的交互就能快速部署和釋放的資源,例如可以是網(wǎng)絡(luò)、網(wǎng)絡(luò)帶寬、服務(wù)器、處理、內(nèi)存、存儲、應(yīng)用、虛擬機和服務(wù)。這種云模式可以包括至少五個特征、至少三個服務(wù)模型和至少四個部署模型。
[0024]特征包括:
[0025]按需自助式服務(wù):云的消費者在無需與服務(wù)提供者進行人為交互的情況下能夠單方面自動地按需部署諸如服務(wù)器時間和網(wǎng)絡(luò)存儲等的計算能力。
[0026]廣泛的網(wǎng)絡(luò)接入:計算能力可以通過標(biāo)準(zhǔn)機制在網(wǎng)絡(luò)上獲取,這種標(biāo)準(zhǔn)機制促進了通過不同種類的瘦客戶機平臺或厚客戶機平臺(例如移動電話、膝上型電腦、個人數(shù)字助理PDA)對云的使用。
[0027]資源池:提供者的計算資源被歸入資源池并通過多租戶(mult1-tenant)模式服務(wù)于多重消費者,其中按需將不同的實體資源和虛擬資源動態(tài)地分配和再分配。一般情況下,消費者不能控制或甚至并不知曉所提供的資源的確切位置,但可以在較高抽象程度上指定位置(例如國家、州或數(shù)據(jù)中心),因此具有位置無關(guān)性。
[0028]迅速彈性:能夠迅速、有彈性地(有時是自動地)部署計算能力,以實現(xiàn)快速擴展,并且能迅速釋放來快速縮小。在消費者看來,用于部署的可用計算能力往往顯得是無限的,并能在任意時候都能獲取任意數(shù)量的計算能力。
[0029]可測量的服務(wù):云系統(tǒng)通過利用適于服務(wù)類型(例如存儲、處理、帶寬和活躍用戶帳號)的某種抽象程度的計量能力,自動地控制和優(yōu)化資源效用??梢员O(jiān)測、控制和報告資源使用情況,為服務(wù)提供者和消費者雙方提供透明度。
[0030]服務(wù)模型如下:
[0031]軟件即服務(wù)(SaaS):向消費者提供的能力是使用提供者在云基礎(chǔ)架構(gòu)上運行的應(yīng)用??梢酝ㄟ^諸如網(wǎng)絡(luò)瀏覽器的瘦客戶機接口(例如基于網(wǎng)絡(luò)的電子郵件)從各種客戶機設(shè)備訪問應(yīng)用。除了有限的特定于用戶的應(yīng)用配置設(shè)置外,消費者既不管理也不控制包括網(wǎng)絡(luò)、服務(wù)器、操作系統(tǒng)、存儲、乃至單個應(yīng)用能力等的底層云基礎(chǔ)架構(gòu)。
[0032]平臺即服務(wù)(PaaS):向消費者提供的能力是在云基礎(chǔ)架構(gòu)上部署消費者創(chuàng)建或獲得的應(yīng)用,這些應(yīng)用利用提供者支持的程序設(shè)計語言和工具創(chuàng)建。消費者既不管理也不控制包括網(wǎng)絡(luò)、服務(wù)器、操作系統(tǒng)或存儲的底層云基礎(chǔ)架構(gòu),但對其部署的應(yīng)用具有控制權(quán),對應(yīng)用托管環(huán)境配置可能也具有控制權(quán)。
[0033]基礎(chǔ)架構(gòu)即服務(wù)(IaaS):向消費者提供的能力是消費者能夠在其中部署并運行包括操作系統(tǒng)和應(yīng)用的任意軟件的處理、存儲、網(wǎng)絡(luò)和其他基礎(chǔ)計算資源。消費者既不管理也不控制底層的云基礎(chǔ)架構(gòu),但是對操作系統(tǒng)、存儲和其部署的應(yīng)用具有控制權(quán),對選擇的網(wǎng)絡(luò)組件(例如主機防火墻)可能具有有限的控制權(quán)。
[0034]部署模型如下:
[0035]私有云:云基礎(chǔ)架構(gòu)單獨為某個組織運行。云基礎(chǔ)架構(gòu)可以由該組織或第三方管理并且可以存在于該組織內(nèi)部或外部。
[0036]共同體云:云基礎(chǔ)架構(gòu)被若干組織共享并支持有共同利害關(guān)系(例如任務(wù)使命、安全要求、政策和合規(guī)考慮)的特定共同體。共同體云可以由共同體內(nèi)的多個組織或第三方管理并且可以存在于該共同體內(nèi)部或外部。
[0037]公共云:云基礎(chǔ)架構(gòu)向公眾或大型產(chǎn)業(yè)群提供并由出售云服務(wù)的組織擁有。
[0038]混合云:云基礎(chǔ)架構(gòu)由兩個或更多部署模型的云(私有云、共同體云或公共云)組成,這些云依然是獨特的實體,但是通過使數(shù)據(jù)和應(yīng)用能夠移植的標(biāo)準(zhǔn)化技術(shù)或私有技術(shù)(例如用于云之間的負載平衡的云突發(fā)流量分擔(dān)技術(shù))綁定在一起。
[0039]云計算環(huán)境是面向服務(wù)的,特點集中在無狀態(tài)性、低耦合性、模塊性和語意的互操作性。云計算的核心是包含互連節(jié)點網(wǎng)絡(luò)的基礎(chǔ)架構(gòu)。
[0040]現(xiàn)在參考圖1,其中顯示了云計算節(jié)點的一個例子。圖1顯示的云計算節(jié)點10僅僅是適合的云計算節(jié)點的一個示例,不應(yīng)對本發(fā)明實施例的功能和使用范圍帶來任何限制??傊?,云計算節(jié)點10能夠被用來實現(xiàn)和/或執(zhí)行以上所述的任何功能。
[0041]云計算節(jié)點10具有計算機系統(tǒng)/服務(wù)器12,其可與眾多其它通用或?qū)S糜嬎阆到y(tǒng)環(huán)境或配置一起操作。眾所周知,適于與計算機系統(tǒng)/服務(wù)器12 —起操作的計算系統(tǒng)、環(huán)境和/或配置的例子包括但不限于:個人計算機系統(tǒng)、服務(wù)器計算機系統(tǒng)、瘦客戶機、厚客戶機、手持或膝上設(shè)備、基于微處理器的系統(tǒng)、機頂盒、可編程消費電子產(chǎn)品、網(wǎng)絡(luò)個人電腦、小型計算機系統(tǒng)、大型計算機系統(tǒng)和包括上述任意系統(tǒng)的分布式云計算技術(shù)環(huán)境,等
坐寸ο
[0042]計算機系統(tǒng)/服務(wù)器12可以在由計算機系統(tǒng)執(zhí)行的計算機系統(tǒng)可執(zhí)行指令(諸如程序模塊)的一般語境下描述。通常,程序模塊可以包括執(zhí)行特定的任務(wù)或者實現(xiàn)特定的抽象數(shù)據(jù)類型的例程、程序、目標(biāo)程序、組件、邏輯、數(shù)據(jù)結(jié)構(gòu)等。計算機系統(tǒng)/服務(wù)器12可以在通過通信網(wǎng)絡(luò)鏈接的遠程處理設(shè)備執(zhí)行任務(wù)的分布式云計算環(huán)境中實施。在分布式云計算環(huán)境中,程序模塊可以位于包括存儲設(shè)備的本地或遠程計算系統(tǒng)存儲介質(zhì)上。
[0043]如圖1所示,云計算節(jié)點10中的計算機系統(tǒng)/服務(wù)器12以通用計算設(shè)備的形式表現(xiàn)。計算機系統(tǒng)/服務(wù)器12的組件可以包括但不限于:一個或者多個處理器或者處理單元16,系統(tǒng)存儲器28,連接不同系統(tǒng)組件(包括系統(tǒng)存儲器28和處理單元16)的總線18。
[0044]總線18表示幾類總線結(jié)構(gòu)中的一種或多種,包括存儲器總線或者存儲器控制器,外圍總線,圖形加速端口,處理器或者使用多種總線結(jié)構(gòu)中的任意總線結(jié)構(gòu)的局域總線。舉例來說,這些體系結(jié)構(gòu)包括但不限于工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線,微通道體系結(jié)構(gòu)(MAC)總線,增強型ISA總線、視頻電子標(biāo)準(zhǔn)協(xié)會(VESA)局域總線以及外圍組件互連(PCI)總線。
[0045]計算機系統(tǒng)/服務(wù)器12典型地包括多種計算機系統(tǒng)可讀介質(zhì)。這些介質(zhì)可以是能夠被計算機系統(tǒng)/服務(wù)器12訪問的任意可獲得的介質(zhì),包括易失性和非易失性介質(zhì),可移動的和不可移動的介質(zhì)。
[0046]系統(tǒng)存儲器28可以包括易失性存儲器形式的計算機系統(tǒng)可讀介質(zhì),例如隨機存取存儲器(RAM)30和/或高速緩存存儲器32。計算機系統(tǒng)/服務(wù)器12可以進一步包括其它可移動/不可移動的、易失性/非易失性計算機系統(tǒng)存儲介質(zhì)。僅作為舉例,存儲系統(tǒng)34可以用于讀寫不可移動的、非易失性磁介質(zhì)(圖1未顯示,通常稱為“硬盤驅(qū)動器”)。盡管圖1中未示出,可以提供用于對可移動非易失性磁盤(例如“軟盤”)讀寫的磁盤驅(qū)動器,以及對可移動非易失性光盤(例如⑶-ROM,DVD-ROM或者其它光介質(zhì))讀寫的光盤驅(qū)動器。在這些情況下,每個驅(qū)動器可以通過一個或者多個數(shù)據(jù)介質(zhì)接口與總線18相連。存儲器28可以包括至少一個程序產(chǎn)品,該程序產(chǎn)品具有一組(例如至少一個)程序模塊,這些程序模塊被配置以執(zhí)行本發(fā)明各實施例的功能。
[0047]具有一組(至少一個)程序模塊42的程序/實用工具40,可以存儲在存儲器28中,這樣的程序模塊42包括但不限于操作系統(tǒng)、一個或者多個應(yīng)用程序、其它程序模塊以及程序數(shù)據(jù),這些示例中的每一個或某種組合中可能包括網(wǎng)絡(luò)環(huán)境的實現(xiàn)。程序模塊42通常執(zhí)行本發(fā)明所描述的實施例中的功能和/或方法。
[0048]計算機系統(tǒng)/服務(wù)器12也可以與一個或多個外部設(shè)備14 (例如鍵盤、指向設(shè)備、顯示器24等)通信,還可與一個或者多個使得用戶能與該計算機系統(tǒng)/服務(wù)器12交互的設(shè)備通信,和/或與使得該計算機系統(tǒng)/服務(wù)器12能與一個或多個其它計算設(shè)備進行通信的任何設(shè)備(例如網(wǎng)卡,調(diào)制解調(diào)器等等)通信。這種通信可以通過輸入/輸出(I/O)接口 22進行。并且,計算機系統(tǒng)/服務(wù)器12還可以通過網(wǎng)絡(luò)適配器20與一個或者多個網(wǎng)絡(luò)(例如局域網(wǎng)(LAN),廣域網(wǎng)(WAN)和/或公共網(wǎng)絡(luò),例如因特網(wǎng))通信。如圖所示,網(wǎng)絡(luò)適配器20通過總線18與計算機系統(tǒng)/服務(wù)器12的其它模塊通信。應(yīng)當(dāng)明白,盡管圖中未示出,其它硬件和/或軟件模塊可以與計算機系統(tǒng)/服務(wù)器12—起操作,包括但不限于:微代碼、設(shè)備驅(qū)動器、冗余處理單元、外部磁盤驅(qū)動陣列、RAID系統(tǒng)、磁帶驅(qū)動器以及數(shù)據(jù)備份存儲系統(tǒng)等。
[0049]現(xiàn)在參考圖2,其中顯示了示例性的云計算環(huán)境50。如圖所示,云計算環(huán)境50包括云計算消費者使用的本地計算設(shè)備可以與其相通信的一個或者多個云計算節(jié)點10,本地計算設(shè)備例如可以是個人數(shù)字助理(PDA)或移動電話54A,臺式電腦54B、筆記本電腦54C和/或汽車計算機系統(tǒng)54N。云計算節(jié)點10之間可以相互通信??梢栽诎ǖ幌抻谌缟纤龅乃接性啤⒐餐w云、公共云或混合云或者它們的組合的一個或者多個網(wǎng)絡(luò)中將云計算節(jié)點10進行物理或虛擬分組(圖中未顯示)。這樣,云的消費者無需在本地計算設(shè)備上維護資源就能請求云計算環(huán)境50提供的基礎(chǔ)架構(gòu)即服務(wù)(IaaS)、平臺即服務(wù)(PaaS)和/或軟件即服務(wù)(SaaS)。應(yīng)當(dāng)理解,圖2顯示的各類計算設(shè)備54A-N僅僅是示意性的,云計算節(jié)點10以及云計算環(huán)境50可以與任意類型網(wǎng)絡(luò)上和/或網(wǎng)絡(luò)可尋址連接的任意類型的計算設(shè)備(例如使用網(wǎng)絡(luò)瀏覽器)通信。
[0050]現(xiàn)在參考圖3,其中顯示了云計算環(huán)境50 (圖2)提供的一組功能抽象層。首先應(yīng)當(dāng)理解,圖3所示的組件、層以及功能都僅僅是示意性的,本發(fā)明的實施例不限于此。如圖3所示,提供下列層和對應(yīng)功能:
[0051]硬件和軟件層60包括硬件和軟件組件。硬件組件的例子包括:主機,例如IBM? zSeries?系統(tǒng);基于Rise (精簡指令集計算機)體系結(jié)構(gòu)的服務(wù)器,例如IBM pSeries?系統(tǒng);ibm xSertes?系統(tǒng);iBMBladeC?iter?系統(tǒng);存儲設(shè)備;網(wǎng)
絡(luò)和網(wǎng)絡(luò)組件。軟件組件的例子包括:網(wǎng)絡(luò)應(yīng)用服務(wù)器軟件,例如IBM WebSphere?應(yīng)用服務(wù)器軟件;數(shù)據(jù)庫軟件,例如IBMDB2?數(shù)據(jù)庫軟件。(IBM, zSeries, pSeries, xSeries, BladeCenter, WebSphere以及DB2是國際商業(yè)機器公司在全世界各地的注冊商標(biāo))。
[0052]虛擬層62提供一個抽象層,該層可以提供下列虛擬實體的例子:虛擬服務(wù)器、虛擬存儲、虛擬網(wǎng)絡(luò)(包括虛擬私有網(wǎng)絡(luò))、虛擬應(yīng)用和操作系統(tǒng),以及虛擬客戶端。[0053]在一個示例中,管理層64可以提供下述功能:資源供應(yīng)功能:提供用于在云計算環(huán)境中執(zhí)行任務(wù)的計算資源和其它資源的動態(tài)獲取;計量和定價功能:在云計算環(huán)境內(nèi)對資源的使用進行成本跟蹤,并為此提供帳單和發(fā)票。在一個例子中,該資源可以包括應(yīng)用軟件許可。安全功能:為云的消費者和任務(wù)提供身份認證,為數(shù)據(jù)和其它資源提供保護。用戶門戶功能:為消費者和系統(tǒng)管理員提供對云計算環(huán)境的訪問。服務(wù)水平管理功能:提供云計算資源的分配和管理,以滿足必需的服務(wù)水平。服務(wù)水平協(xié)議(SLA)計劃和履行功能:為根據(jù)SLA預(yù)測的對云計算資源未來需求提供預(yù)先安排和供應(yīng)。
[0054]工作負載層66提供云計算環(huán)境可能實現(xiàn)的功能的示例。在該層中,可提供的工作負載或功能的示例包括:地圖繪制與導(dǎo)航;軟件開發(fā)及生命周期管理;虛擬教室的教學(xué)提供;數(shù)據(jù)分析處理;交易處理;以及移動桌面。
[0055]圖4示意性地示出了根據(jù)本發(fā)明的一些實施例的用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的系統(tǒng)的體系結(jié)構(gòu)。
[0056]如圖所示,在云環(huán)境中部署有診斷代理401,診斷代理401可實時監(jiān)視軟件產(chǎn)品的運行,判斷是否監(jiān)視到軟件產(chǎn)品運行中的問題,以及響應(yīng)于判斷監(jiān)視到軟件產(chǎn)品運行中的問題,診斷代理401向診斷控制器402報告。該診斷控制器402可位于所述云環(huán)境之外。所述云環(huán)境可包括測試云或用戶云。測試云是指在其中進行軟件產(chǎn)品的測試的云環(huán)境;而用戶云是指使用軟件產(chǎn)品的用戶的用于在其中運行軟件產(chǎn)品的云環(huán)境。
[0057]優(yōu)選地,診斷代理401可例如從診斷控制器402獲取診斷配置數(shù)據(jù),診斷配置數(shù)據(jù)優(yōu)選是可由用戶配置的,并可包括觸發(fā)條件。所述診斷配置數(shù)據(jù)可以存儲在由診斷控制器402維護的診斷配置儲存庫403中。診斷代理401可通過判斷軟件產(chǎn)品運行的輸出是否與觸發(fā)條件匹配來判斷是否監(jiān)視到軟件產(chǎn)品運行中的問題。所述軟件產(chǎn)品運行的輸出可以是軟件產(chǎn)品運行中產(chǎn)生的蹤跡/日志,或者產(chǎn)生的異常。相應(yīng)地,所述觸發(fā)條件也可包括軟件產(chǎn)品運行中的異常和/或蹤跡模式(trace pattern)。
[0058]診斷控制器402接收來自診斷代理401的關(guān)于所監(jiān)視的軟件產(chǎn)品的運行中的問題的報告,分析所述報告,并根據(jù)所述分析的結(jié)果,捕獲包含軟件產(chǎn)品的整個環(huán)境(例如,用戶虛擬服務(wù)器映象或測試虛擬服務(wù)器映象),并將該環(huán)境部署在診斷云中,以便在診斷云中再現(xiàn)問題并進行診斷。診斷控制器402可將所捕獲的虛擬服務(wù)器映象首先存儲在一映象儲存庫404中,再將映象儲存庫404中存儲的虛擬服務(wù)器映象部署在診斷云中。
[0059]如本領(lǐng)域技術(shù)人員所知的,在以上描述中實際上公開了根據(jù)本發(fā)明的實施例的用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的方法和相應(yīng)裝置,為簡明起見,這里不再對此描述。
[0060]圖5示意性地示出了根據(jù)本發(fā)明的一些優(yōu)選實施例的用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的系統(tǒng)的體系結(jié)構(gòu)。如圖所示,軟件產(chǎn)品運行在測試云或用戶云中的集群系統(tǒng)中。集群的每個節(jié)點上部署有一診斷代理401。診斷控制器402與各診斷代理401通信,以向各診斷代理401傳送診斷配置信息,并從各診斷代理401接收問題報告,以及用于配置集群系統(tǒng)的相關(guān)信息。所有診斷代理401之間可以相互通信以交換監(jiān)視的診斷信息,以及有關(guān)集群系統(tǒng)的配置信息。此外,診斷控制器402負責(zé)維護診斷配置數(shù)據(jù)庫中的診斷配置數(shù)據(jù),其中包括可由用戶設(shè)置的用于診斷代理401和診斷控制器402的行為規(guī)則(包括觸發(fā)條件和動作等)。[0061]每個節(jié)點中的診斷代理401可以是運行在后臺的程序。診斷代理401的行為可由來自診斷控制器402的診斷配置數(shù)據(jù)定制。診斷配置數(shù)據(jù)定義了觸發(fā)條件類型、觸發(fā)條件以及相應(yīng)的動作。動作可以是在診斷配置數(shù)據(jù)庫中定義和存儲的指令代碼或腳本。
[0062]在大多數(shù)情況下,集群系統(tǒng)中存在多種類型的節(jié)點。例如,在典型的企業(yè)應(yīng)用體系結(jié)構(gòu)中,有web服務(wù)器節(jié)點、應(yīng)用服務(wù)器節(jié)點、數(shù)據(jù)庫節(jié)點。web服務(wù)器節(jié)點負責(zé)接收請求并將請求轉(zhuǎn)發(fā)給應(yīng)用服務(wù)器節(jié)點,應(yīng)用服務(wù)器節(jié)點運行業(yè)務(wù)邏輯并從數(shù)據(jù)庫節(jié)點獲取數(shù)據(jù)。不同類型的節(jié)點承擔(dān)不同的計算任務(wù)和不同級別的工作負荷。因此,在本發(fā)明的實施例中,不同節(jié)點上的診斷代理401被配置以不同的觸發(fā)條件和動作。
[0063]與具有靜態(tài)集群拓撲定義的傳統(tǒng)集群系統(tǒng)相比,云中的集群具有動態(tài)彈性。集群可以隨著工作負荷的變化通過添加或去除節(jié)點來伸縮(這也被稱為動態(tài)水平伸縮)。在本發(fā)明的實施例中,每個診斷代理401具有p2p協(xié)議,且具有與其他節(jié)點上的診斷代理401協(xié)商的能力。當(dāng)新節(jié)點加入集群時,其他節(jié)點可意識到它并與它通信。
[0064]在本發(fā)明的實施例中,每當(dāng)一個節(jié)點啟動時,其診斷代理401可根據(jù)其節(jié)點類型從診斷控制器402獲取相應(yīng)的診斷配置數(shù)據(jù)。診斷代理401可將這些診斷配置數(shù)據(jù)載入節(jié)點的存儲器中。然后,診斷代理401監(jiān)視節(jié)點的運行時數(shù)據(jù)和應(yīng)用系統(tǒng)的日志/蹤跡,并實時分析日志/蹤跡。同時,診斷代理401將所監(jiān)視的這些數(shù)據(jù),特別是異常數(shù)據(jù)(例如,經(jīng)常的存儲器不足、關(guān)鍵組件中的空指針異常、特定的蹤跡模式、CPU長時間空閑、進程死鎖等),與診斷配置數(shù)據(jù)進行實時比較。特別是對于與蹤跡模式相關(guān)的數(shù)據(jù),診斷代理401可通過正則表達式匹配或其他語法和語義工具進行比較。
[0065]診斷配置數(shù)據(jù)可通過診斷控制器402按節(jié)點類型來分類。例如,診斷配置數(shù)據(jù)可以如下所示:
[0066]表一
[0067]·
【權(quán)利要求】
1.一種用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的方法,包括: 接收來自所述云環(huán)境中的節(jié)點上部署的診斷代理的關(guān)于所監(jiān)視的所述軟件產(chǎn)品的運行中的問題; 捕獲包含該軟件產(chǎn)品的所述云環(huán)境,并將該云環(huán)境部署在診斷云中,且該步驟包括: 將所述云環(huán)境中的每個節(jié)點的映象部署在所述診斷云中;以及 使用用于部署在云環(huán)境中的集群系統(tǒng)的相關(guān)配置數(shù)據(jù)對所述診斷云中的每個節(jié)點進行配置。
2.根據(jù)權(quán)利要求1的方法,其中,所述捕獲包含該軟件產(chǎn)品的所述云環(huán)境,并將該云環(huán)境部署在診斷云中的步驟還包括: 捕獲所述軟件產(chǎn)品的所述云環(huán)境中每個節(jié)點的映象;以及 收集來自于部署在所述云環(huán)境中的每個節(jié)點上的診斷代理的用于部署在該云環(huán)境中的集群系統(tǒng)的相關(guān)配置數(shù)據(jù)。
3.根據(jù)權(quán)利要求1的方法,其中,所述用于部署在該云環(huán)境中的集群系統(tǒng)的相關(guān)配置數(shù)據(jù)包括:節(jié)點配置數(shù)據(jù)、集群數(shù)據(jù)庫配置數(shù)據(jù)以及節(jié)點關(guān)聯(lián)配置數(shù)據(jù)。
4.根據(jù)權(quán)利要求1至3中任何一個的方法,其中還包括: 根據(jù)從各節(jié)點收集的數(shù)據(jù)以及該云環(huán)境的診斷控制器的預(yù)定義規(guī)則來判斷是否要復(fù)制該軟件產(chǎn)品的整個云環(huán)境;以及 響應(yīng)于所述判斷為是,捕獲包含該軟件產(chǎn)品的整個云環(huán)境,并將該云環(huán)境部署在所述診斷云中。
5.一種用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的方法,該方法包括: 響應(yīng)于一節(jié)點加入所述云環(huán)境,在該節(jié)點上部署診斷代理; 所述診斷代理判斷是否監(jiān)視到軟件產(chǎn)品運行中的問題;以及 響應(yīng)于判斷監(jiān)視到所述軟件產(chǎn)品運行中的問題,所述診斷代理向診斷控制器報告。
6.根據(jù)權(quán)利要求5的方法,還包括: 響應(yīng)于所述節(jié)點上部署了診斷代理,該診斷代理動態(tài)收集用于部署在云環(huán)境中的集群系統(tǒng)的相關(guān)配置數(shù)據(jù),并將所述用于部署在云環(huán)境中的集群系統(tǒng)相關(guān)配置數(shù)據(jù)發(fā)送到所述診斷控制器。
7.根據(jù)權(quán)利要求6的方法,其中,所述用于部署在云環(huán)境中的集群系統(tǒng)的相關(guān)配置數(shù)據(jù)包括:節(jié)點配置數(shù)據(jù)、集群數(shù)據(jù)庫配置數(shù)據(jù)以及節(jié)點關(guān)聯(lián)配置數(shù)據(jù)。
8.根據(jù)權(quán)利要求5所述的方法,該方法還包括: 所述診斷代理從所述診斷控制器獲取診斷配置數(shù)據(jù),所述診斷配置數(shù)據(jù)包括觸發(fā)條件,且其中,所述診斷代理判斷是否監(jiān)視到所述軟件產(chǎn)品運行中的問題包括:所述診斷代理判斷所述軟件產(chǎn)品運行的輸出是否與所述觸發(fā)條件匹配。
9.根據(jù)權(quán)利要求8的方法,其中,所述觸發(fā)條件包括所述軟件產(chǎn)品運行中的異常和/或蹤跡模式。
10.根據(jù)權(quán)利要求8的方法,其中,所述診斷配置數(shù)據(jù)還包括對應(yīng)于所述觸發(fā)條件的動作,且所述響應(yīng)于判斷監(jiān)視到所述軟件產(chǎn)品運行中的問題,所述診斷代理向診斷控制器報告還包括:響應(yīng)于判斷軟件產(chǎn)品運行的輸出與所述觸發(fā)條件匹配,執(zhí)行所述對應(yīng)于所述觸發(fā)條件的動作。
11.根據(jù)權(quán)利要求8或10的方法,所述響應(yīng)于判斷監(jiān)視到所述軟件產(chǎn)品運行中的問題,所述診斷代理向診斷控制器報告還包括:與該云環(huán)境中的其他節(jié)點上的診斷代理通信,來獲得所述其他節(jié)點上的診斷代理所監(jiān)視的所述軟件產(chǎn)品的運行情況。
12.一種用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的裝置,包括: 接收模塊,被配置為接收來自所述云環(huán)境中的節(jié)點上部署的診斷代理的關(guān)于所監(jiān)視的所述軟件產(chǎn)品的運行中的問題的報告; 捕獲和部署模塊,被配置為捕獲包含該軟件產(chǎn)品的所述云環(huán)境,并將該云環(huán)境部署在診斷云中,且該捕獲和部署模塊包括: 部署模塊,被配置為將所述云環(huán)境中的每個節(jié)點的映象部署在所述診斷云中;以及配置模塊,被配置為使用用于部署在云環(huán)境中的集群系統(tǒng)的相關(guān)配置數(shù)據(jù)對所述診斷云中的每個節(jié)點進行配置。
13.根據(jù)權(quán)利要求12的裝置,其中,所述捕獲和部署模塊還包括: 捕獲模塊,被配置為捕獲所述軟件產(chǎn)品的所述云環(huán)境中每個節(jié)點的映象;以及收集模塊,被配置為收集來自于部署在所述云環(huán)境中的每個節(jié)點上的診斷代理的用于部署在該云環(huán)境中的集群系統(tǒng)的相關(guān)配置數(shù)據(jù)。
14.根據(jù)權(quán)利要求12的裝置,其中,所述用于部署在該云環(huán)境中的集群系統(tǒng)的相關(guān)配置數(shù)據(jù)包括:節(jié)點配置數(shù)據(jù)、集群數(shù)據(jù)庫配置數(shù)據(jù)以及節(jié)點關(guān)聯(lián)配置數(shù)據(jù)。
15.根據(jù)權(quán)利要求12至14中任何一個的裝置,其中還包括: 判斷模塊,被配置為根據(jù)從各節(jié)點的收集的數(shù)據(jù)以及該云環(huán)境的診斷控制器的預(yù)定義規(guī)則來判斷是否要復(fù)制該軟件產(chǎn)品的`整個云環(huán)境; 且其中,所述捕獲和部署模塊被配置為響應(yīng)于所述判斷為是,捕獲包含該軟件產(chǎn)品的整個云環(huán)境,并將該云環(huán)境部署在所述診斷云中。
16.一種用于診斷運行在云環(huán)境中的軟件產(chǎn)品的問題的裝置,該裝置包括: 部署模塊,被配置為響應(yīng)于一節(jié)點加入所述云環(huán)境,在該節(jié)點上部署診斷代理; 判斷模塊,被配置為判斷是否監(jiān)視到軟件產(chǎn)品運行中的問題;以及 報告模塊,被配置為響應(yīng)于判斷監(jiān)視到所述軟件產(chǎn)品運行中的問題,向診斷控制器報生口 ο
17.根據(jù)權(quán)利要求16的裝置,還包括: 收集模塊,被配置為響應(yīng)于所述節(jié)點上部署了診斷代理,由該診斷代理動態(tài)收集用于部署在云環(huán)境中的集群系統(tǒng)的相關(guān)配置數(shù)據(jù),并將所述用于部署在云環(huán)境中的集群系統(tǒng)的相關(guān)配置數(shù)據(jù)發(fā)送到所述診斷控制器。
18.根據(jù)權(quán)利要求17的裝置,其中,所述用于部署在云環(huán)境中的集群系統(tǒng)的相關(guān)配置數(shù)據(jù)包括:節(jié)點配置數(shù)據(jù)、集群數(shù)據(jù)庫配置數(shù)據(jù)以及節(jié)點關(guān)聯(lián)配置數(shù)據(jù)。
19.根據(jù)權(quán)利要求16的裝置,還包括: 獲取模塊,被配置為由所述診斷代理從所述診斷控制器獲取診斷配置數(shù)據(jù),所述診斷配置數(shù)據(jù)包括觸發(fā)條件, 且其中,所述被配置為判斷是否監(jiān)視到所述軟件產(chǎn)品運行中的問題的判斷模塊進一步被配置為:判斷所述軟件產(chǎn)品運行的輸出是否與所述觸發(fā)條件匹配。
20.根據(jù)權(quán)利要求19的裝置,其中,所述觸發(fā)條件包括所述軟件產(chǎn)品運行中的異常和/或蹤跡模式。
21.根據(jù)權(quán)利要求19的裝置,其中,所述診斷配置數(shù)據(jù)還包括對應(yīng)于所述觸發(fā)條件的動作,且所述被配置為響應(yīng)于判斷監(jiān)視到所述軟件產(chǎn)品運行中的問題,向診斷控制器報告的報告模塊還包括:用于響應(yīng)于判斷軟件產(chǎn)品運行的輸出與所述觸發(fā)條件匹配,執(zhí)行所述對應(yīng)于所述觸發(fā)條件的動作的裝置。
22.根據(jù)權(quán)利要求19或21的裝置,其中,所述被配置為響應(yīng)于判斷監(jiān)視到所述軟件產(chǎn)品運行中的問題,向診斷控制器報告的報告模塊還包括:用于與該云環(huán)境中的其他節(jié)點上的診斷代理通信,來獲得所述其他節(jié)點上的診斷代理所監(jiān)視的所述軟件產(chǎn)品的運行情況的 裝直。
【文檔編號】H04L29/08GK103795749SQ201210424375
【公開日】2014年5月14日 申請日期:2012年10月30日 優(yōu)先權(quán)日:2012年10月30日
【發(fā)明者】倪勇, 黎俊鴻, 王海濤, 牛愛杰, 王文俊 申請人:國際商業(yè)機器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
永丰县| 贵溪市| 德江县| 宁远县| 四川省| 茂名市| 莆田市| 淅川县| 怀集县| 仁怀市| 丹棱县| 依安县| 华坪县| 嘉荫县| 南昌市| 崇仁县| 西贡区| 青冈县| 饶河县| 平安县| 阿拉尔市| 柞水县| 安多县| 华亭县| 开平市| 大城县| 灵寿县| 应城市| 晴隆县| 明光市| 马尔康县| 聂拉木县| 调兵山市| 玉林市| 海丰县| 随州市| 左贡县| 通化市| 望奎县| 鱼台县| 沿河|