本發明涉及云計算領域,尤其涉及一種故障處理方法、虛擬架構管理系統、業務管理系統和虛擬化計算機系統。
背景技術:
在云計算領域,各個行業的業務系統正在實施虛擬化或云化部署。目前,業務系統中的業務運行在虛擬機上,虛擬機部署在作為共享資源池的硬件設備上,即業務不再采用傳統的專用硬件或物理服務器部署,以實現軟件硬件解耦和提高資源利用率。
目前,當設備(如物理主機、存儲設備等)發生故障后,會把故障設備的故障通過故障告警消息發送給虛擬架構管理系統,虛擬架構管理系統再把故障告警消息發送給業務管理系統,由業務管理系統根據故障告警消息確定受影響的虛擬機和業務應用,并對受影響的業務應用執行故障處理操作。這使得業務管理系統需要感知硬件和硬件故障對應的業務應用,才能對業務應用執行故障處理,這樣會使得業務管理系統不能快速地將故障設備通知給故障設備所影響的業務應用,影響業務應用可靠性。
技術實現要素:
本發明提供一種故障處理方法、虛擬架構管理系統業務管理系統和虛擬化計算機系統,能夠快速地將硬件故障對虛擬機的影響通知給受影響的虛擬機所影響的業務,從而提高業務可靠性。
第一方面,本發明提供了一種故障處理方法。該故障處理方法用于在虛擬化計算機系統中進行故障處理,該虛擬化計算機系統包括:虛擬架構管理系統、業務管理系統以及至少一個虛擬機,至少一個虛擬機運行在至少一臺物理設備上,至少一個虛擬機用于執行業務應用,業務管理系統用于管理業務應用,虛擬架構管理系統用于管理至少一個虛擬機和至少一臺物理設備。該故障處理方法包括:虛擬架構管理系統獲取故障告警消息,故障告警消息攜帶故障設備的標識信息和故障類型;虛擬架構管理系統根據故障告警消息確定第一虛擬機集合,第一虛擬機集合包括受所述故障設備影響的至少一個第一虛擬機;虛擬架構管理系統向業務管理系統發送狀態告警消息,狀態告警消息攜帶第一虛擬機集合的信息。
該故障處理方法中,虛擬架構管理系統獲取到故障設備上的故障告警消息后,直接對該故障告警消息進行分析處理,獲取故障設備影響的一個或多個虛擬機,并向業務管理系統發送這些虛擬機的信息,使得業務管理系統可以直接根據這些虛擬機的信息分析得到受影響的業務應用,進而可以對受影響的業務應用進行處理。與現有技術相比,由虛擬架構管理系統直接根據故障設備的故障告警消息確定受故障設備影響的虛擬機的信息,使得業務管理系統可以直接根據第一虛擬機集合的狀態告警消息分析得到受影響的業務應用,而不是根據故障設備的告警消息去分析得到受影響的虛擬機、再分析受影響的業務應用。從而使得業務管理系統不需要直接感知硬件故障,進而可以快速觸發業務應用的影響處理,降低業務損失,提高業務應用的可靠性。
在一種可能的實現方式中,所述故障處理方法還包括:虛擬架構管理系統根據故障硬件的故障告警消息確定第一虛擬機集合的影響信息,該影響信息用于指示故障設備對第一虛擬機集合中的第一虛擬機產生的影響的類型和/或級別;相應地,狀態告警消息還可以攜帶第一虛擬機集合的影響信息。
該故障處理方法中,虛擬架構管理系統根據故障設備的故障告警信息除了可以獲取受影響的至少一個虛擬機,還可以獲取故障設備發生的故障對這些虛擬機的影響的類型和/或級別,然后在向業務管理系統發送的狀態告警消息中還攜帶用于指示故障設備對第一虛擬機集合中的第一虛擬機產生的影響的類型和/或級別的影響信息,從而使得業務管理系統或業務系統可以更加根據該影響信息對業務應用進行處理,進一步提高業務應用的可靠性。
可選地,狀態告警信息還可以包括第一虛擬機集合中的第一虛擬機的標識信息、告警標識信息、告警名稱信息、告警對象類型信息、告警類型信息、告警產生時間信息、告警部件類型信息、告警部件標識信息和告警部件名稱信息。
可選地,所述狀態告警信息可以包括故障設備的故障類型信息。
在一種可能的實現方式中,故障設備對第一虛擬機集合中的第一虛擬機產生的影響的類型包括故障、高風險、中風險、低風險或無影響中的一種或多種類型。
可選地,故障設備對第一虛擬機集合中的第一虛擬機產生的影響的級別包括緊急、重要或不重要。
在一種可能的實現方式中,該故障處理方法還包括:虛擬架構管理系統接收業務管理系統發送的第一請求消息,第一請求消息用于指示待恢復的虛擬機,該待恢復的虛擬機為第一虛擬機集合中一個子集;虛擬架構管理系統根據第一請求信息優先恢復該待恢復的虛擬機。
該故障處理方法中,虛擬架構管理系統可以根據業務管理系統的請求,根據業務管理系統指示的優先級,對受故障設備的故障所影響的第一虛擬機集合中的至少一個虛擬機進行恢復處理。
可選地,虛擬架構管理系統對虛擬機進行的恢復處理可以包括:虛擬機熱遷移。
在一種可能的實現方式中,該故障處理方法還包括:若虛擬架構管理系統在預置時間閾值內未接收到業務管理系統發送的第一請求信息,則按照預置虛擬機恢復策略恢復第一虛擬機集合中的第一虛擬機。
該故障處理方法可以保證在業務管理系統沒有信息指示虛擬架構管理系統如何恢復第一虛擬機集合中的虛擬機時,虛擬架構管理系統可以主動根據預先配置的恢復策略對第一虛擬機集合中的第一虛擬機進行恢復。
在一種可能的實現方式中,該故障處理方法還包括:虛擬架構管理系統向業務管理系統發送狀態告警清除消息。
該故障處理方法中,虛擬架構管理系統對虛擬機進行恢復處理后,向業務管理系統發送狀態告警清除消息,使得業務管理系統可以根據該狀態告警清除消息清除之前接收的相關的狀態告警消息,從而避免業務管理系統對已經恢復的虛擬機相關的狀態告警消息進行分析處理。
第二方面,本發明提供了一種虛擬架構管理系統,所述虛擬架構管理系統包括用于執行第一方面或第一方面任一種可能實現方式中的故障處理方法的各個模塊。
本發明提供的虛擬架構管理系統,獲取到故障設備上的故障告警消息后,直接對該故障告警消息進行分析處理,獲取故障設備影響的一個或多個虛擬機,并向業務管理系統發送這些虛擬機的信息,使得業務管理系統可以直接根據這些虛擬機的信息分析得到受影響的業務應用,進而可以受影響的業務應用進行處理。與現有技術相比,由虛擬架構管理系統直接根據故障設備的故障告警消息確定受故障設備影響的虛擬機的信息,使得業務管理系統可以直接根據第一虛擬機集合的狀態告警消息分析得到受影響的業務應用,而不是根據故障設備的告警消息去分析得到受影響的虛擬機、再分析受影響的業務應用。從而使得業務管理系統不需要直接感知硬件故障,進而可以快速觸發業務應用的影響處理,降低業務損失,提高業務應用的可靠性。
第三方面,本發明提供一種虛擬架構管理系統,所述虛擬架構管理系統包括處理器、存儲器、通信接口和總線。其中,處理器、存儲器、通信接口通過總線進行通信,也可以通過無線傳輸等其他手段實現通信。該存儲器用于存儲指令,該處理器用于執行該存儲器存儲的指令。該存儲器存儲程序代碼,且處理器可以調用存儲器中存儲的程序代碼執行第一方面及第一方面任一種可能實現方式中的故障處理方法。
第四方面,本發明提供了一種計算機可讀介質,所述計算機可讀介質存儲用于虛擬架構管理系統執行的程序代碼,所述程序代碼包括用于執行第一方面及第一方面任一種可能實現方式中的故障處理方法的指令。
第五方面,本發明還提供了一種故障處理方法,該故障處理方法用于在虛擬化計算機系統中進行故障處理,虛擬化計算機系統包括:虛擬架構管理系統、業務管理系統以及至少一個虛擬機,該至少一個虛擬機運行在至少一臺物理設備上,該至少一個虛擬機用于執行業務應用,業務管理系統用于管理業務應用,虛擬架構管理系統用于管理該至少一個虛擬機和該至少一臺物理設備;該故障處理方法包括:業務管理系統接收虛擬架構管理系統發送的狀態告警消息,該狀態告警消息攜帶受故障設備影響的第一虛擬機集合的信息,第一虛擬機集合中包括至少一個第一虛擬機;業務管理系統根據狀態告警消息確定至少一個第一虛擬機關聯的業務應用;業務管理系統對關聯的業務應用執行處理操作。
該故障處理方法中,業務管理系統從虛擬架構管理系統接收到受故障設備影響的第一虛擬機集合中的虛擬機的信息后,可以直接根據這些虛擬機的信息分析得到受影響的業務應用,進而可以對受影響的業務應用進行處理。與現有技術相比,業務管理系統可以直接根據第一虛擬機集合的狀態告警消息分析得到受影響的業務應用,而不是根據故障設備的告警消息去分析得到受影響的虛擬機、再分析受影響的業務應用。從而使得業務管理系統不需要直接感知硬件故障,進而可以快速觸發業務應用的影響處理,降低業務損失,提高業務應用的可靠性。
在一種可能的實現方式中,第一虛擬機集合的狀態告警消息還攜帶第一虛擬機集合的影響信息,該影響信息用于指示故障設備對第一虛擬機集合中的至少一個第一虛擬機產生的影響的類型和/或級別。相應地,業務管理系統對業務應用執行處理操作包括:業務管理系統根據第一虛擬機集合的影響信息對業務應用執行處理操作。
該故障處理方法中,業務管理系統從虛擬架構管理系統接收的第一虛擬機集合的狀態告警消息中還攜帶用于指示故障設備對第一虛擬機集合中的第一虛擬機產生的影響的類型和/或級別的影響信息,從而使得業務管理系統或業務系統可以更加根據該影響信息對業務應用進行處理,進一步提高業務應用的可靠性。
可選地,狀態告警信息還可以包括第一虛擬機集合中的第一虛擬機的標識信息、告警標識信息、告警名稱信息、告警對象類型信息、告警類型信息、告警產生時間信息、告警部件類型信息、告警部件標識信息和告警部件名稱信息。
可選地,所述狀態告警信息可以包括故障設備的故障類型信息。
在一種可能的實現方式中,第一虛擬機集合產生的影響的類型包括故障、高風險、中風險、低風險或無影響中的一種或多種類型。
可選地,故障設備對第一虛擬機集合中的第一虛擬機產生的影響的級別包括緊急、重要或不重要。
在一種可能的實現方式中,處理操作包括以下方式中的至少一種:
業務管理系統將至少一個第一虛擬機關聯的業務應用切換至未受故障設備影響的虛擬機執行;或
業務管理系統將至少一個第一虛擬機的應用狀態信息標識為隔離狀態,隔離狀態用于指示至少一個第一虛擬機停止執行至少一個第一虛擬機關聯的業務應用;或
業務管理系統向虛擬架構管理系統發送第一請求消息,第一請求消息用于指示待恢復的虛擬機,待恢復的虛擬機為第一虛擬機集合中一個子集;或
業務管理系統向至少一個第一虛擬機關聯的業務應用的控制節點發送狀態告警消息,以使得控制節點根據狀態告警消息將至少一個第一虛擬機關聯的業務應用切換至未受故障設備影響的虛擬機執行或將至少一個第一虛擬機的應用狀態信息標識為隔離狀態。
在一種可能的實現方式中,該故障處理方法還包括:業務管理系統根據第一虛擬機集合的影響信息確定第一請求消息。
該故障處理方法中,業務管理系統可以根據第一虛擬機的影響信息確定第一虛擬機集合中需要虛擬架構管理系統恢復的待恢復的虛擬機的優先級,并向虛擬機架構管理發送用于指示這些待恢復的虛擬機的恢復優先級的第一請求消息,使得虛擬架構管理系統可以根據業務管理系統指示的優先級,對受故障設備的故障所影響的第一虛擬機集合中的至少一個虛擬機進行恢復處理。
在一種可能的實現方式中,業務管理系統向虛擬架構管理系統發送用于指示待恢復的虛擬機的恢復優先級的第一請求消息的一種具體實現方式可以為:業務管理系統根據業務應用的優先級向虛擬架構管理系統發送第一請求消息。
該故障處理方法中,業務管理系統根據第一虛擬機集合中的第一虛擬機相關聯的業務應用的優先級,即根據故障設備影響的業務應用的優先級指示虛擬架構管理系統對第一虛擬機集合中的待恢復的虛擬機進行恢復處理,從而可以保證高優先級的業務應用可以優先得到恢復,進一步保證業務應用的可靠性。
可選地,業務管理系統可以根據第一虛擬機集合的影響信息和相關聯的業務應用的優先級向虛擬架構管理系統發送第一請求消息。
在一種可能的實現方式中,業務管理系統向虛擬架構管理系統發送第一請求消息的一種具體實現方式為:業務管理系統根據業務應用的部署模式向虛擬架構管理系統發送第一請求消息,業務應用的部署模式包括主備模式、負荷分擔模式和單虛擬機模式中的至少一種。
該故障處理方法中,業務管理系統根據業務應用的部署模式,即根據故障設備影響的業務應用的部署模式指示虛擬架構管理系統對第一虛擬機集合中的待恢復的虛擬機進行恢復處理。
可選地,業務管理系統可以根據第一虛擬機集合的影響信息和業務應用的部署模式向虛擬架構管理系統發送第一請求消息,或可以根據業務應用的部署模式和業務應用的優先級向虛擬架構管理系統發送第一請求消息,或可以根據第一虛擬機集合的影響信息、業務應用的部署模式和業務應用的優先級向虛擬架構管理系統發送第一請求消息。
在一種可能的實現方式中,該故障處理方法還包括:業務管理系統接收虛擬架構管理系統發送的狀態告警清除消息;業務管理系統根據該狀態告警清除消息清除之前接收的相關的狀態告警消息。
該故障處理方法中,業務管理系統可以根據虛擬架構管理系統發送的狀態告警清除消息清除之前接收的相關的狀態告警消息,從而避免對已經恢復的虛擬機相關的狀態告警消息進行分析處理。
第六方面,本發明提供了一種業務管理系統,所述業務管理系統包括用于執行第五方面或第五方面的任一可能的實現方式中的故障處理方法的各個模塊。
第七方面,本發明提供了一種業務管理系統,所述業務管理系統包括處理器、存儲器、通信接口和總線。其中,處理器、存儲器、通信接口通過總線進行通信,也可以通過無線傳輸等其他手段實現通信。該存儲器用于存儲指令,該處理器用于執行該存儲器存儲的指令。該存儲器存儲程序代碼,且處理器可以調用存儲器中存儲的程序代碼執行第五方面及第五方面任一種可能實現方式中的故障處理方法。
第八方面,本發明提供了一種計算機可讀介質,所述計算機可讀介質存儲用于業務管理系統執行的程序代碼,所述程序代碼包括用于執行第五方面或第五方面的任一可能的實現方式中的故障處理方法的指令。
第九方面,本發明提供了一種虛擬化計算機系統,包括虛擬管理節點和業務管理節點,該虛擬化管理節點用于執行第一方面或第一方面的任一可能的實現方式中的故障處理方法,該業務管理節點用于執行第五方面或第五方面的任一可能的實現方式中的故障處理方法。
附圖說明
為了更清楚地說明本發明實施例的技術方案,下面將對本發明實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面所描述的附圖僅僅是本發明的一些實施例的附圖。
圖1A是應用本發明實施例的故障處理方法的示意性系統結構圖。
圖1B是應用本發明實施例的故障處理方法的另一種示意性系統結構圖。
圖2是本發明一個實施例的故障處理方法的示意性流程圖。
圖3是本發明另一個實施例的故障處理方法的示意性流程圖。
圖4是本發明另一個實施例的故障處理方法的示意性流程圖。
圖5是本發明一個實施例的虛擬架構管理系統的示意性結構圖。
圖6是本發明一個實施例的業務管理系統的示意性結構圖。
圖7是本發明另一個實施例的虛擬架構管理系統的示意性結構圖。
圖8是本發明另一個實施例的業務管理系統的示意性結構圖。
具體實施方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。
為了便于理解,先從整體上描述能夠實施本發明實施例的故障處理方法的系統架構的示例圖。應理解,本發明實施例并不限于圖1A和圖1B所示的虛擬化計算機系統中,此外,圖1A和圖1B中的裝置可以是硬件,也可以是從功能上劃分的軟件或者以上二者的結合。
硬件資源(Hardware Resources)110可以包括一個或多個設備,每個設備可以為X86服務器、存儲設備、網絡設備等硬件設備資源,可用于提供計算、存儲、網絡等硬件功能。
虛擬化層(Virtualization Layer)120通過虛擬化技術對計算、存儲、網絡等硬件資源進行虛擬化,其中,虛擬化技術可以使用Xen,HyperV,也可以使用KVM,本發明不作限制。
虛擬資源(Virtual Resources)130是指通過虛擬化技術對硬件資源110進行虛擬化形成的虛擬資源,如虛擬計算、虛擬網絡、虛擬存儲等。
硬件資源110、虛擬化層120和虛擬資源130又可以成為虛擬架構層(Virtualized Infrastructure Layer),為上層業務提供虛擬資源或虛擬資源池等基礎設施層。
業務系統140中部署一個或多個業務應用功能,每個業務應用部署在一個或多個虛擬機上,即這些虛擬機用于執行業務應用。虛擬機部署在硬件資源110中的設備上。
每個業務應用有對應的控制節點。控制節點用于對對應的業務應用進行管理。控制節點也可稱為仲裁節點。控制節點可以部署在業務系統中,一個控制節點可以分別管理對應的一個業務應用,如圖1A所示;一個控制節點也可以管理多個業務應用,如圖1B所示。控制節點可以指用于對對應的業務應用進行管理的硬件裝置,也可以指業務應用運行的多個虛擬機中的一個虛擬機。
虛擬架構管理(Virtualized Infrastructure Manager)系統150實現虛擬化基礎設施的管理,負責對物理硬件(即硬件資源110)虛擬化資源和部署在硬件資源110中的設備上的虛擬機進行統一管理、監控、資源調度、故障處理等,為業務系統運行提供資源支持,并提供開放接口等。虛擬化架構管理系統150也可以稱為是虛擬化層的組成部分。
業務管理系統160,用于對運行在虛擬機上的業務應用進行管理,如創建業務應用、發放業務應用、業務應用中虛擬資源調度、及關閉業務應用等。業務管理系統可以管理一個或多個業務應用。業務管理系統調用虛擬架構管理系統提供的接口,為業務應用運行提供資源,實現業務應用發放、部署等。業務管理系統160與虛擬架構管理系統150對接。當然,業務管理系統可以與多個虛擬架構管理系統對接。
其中,業務管理系統160和業務系統140又可統稱為應用層。業務管理系統160和業務系統140可以是邏輯分開的系統,如圖1A和1B所示,也可以由一個系統實現二者的功能。本發明實施例的以下具體描述中以圖1A所示虛擬化計算機系統為例進行具體描述。
由上述內容可知,業務系統運行在虛擬資源130中的虛擬機上,業務系統不需要關心具體的硬件設備,也不需要知道業務應用所在的虛擬機具體在哪個硬件設備上運行,業務管理系統和業務系統均不需要直接感知設備及故障設備對業務應用的影響。
因此本發明提出新的故障處理方法、虛擬架構管理系統、業務管理系統和虛擬化計算機系統,使得業務管理系統不用直接感知設備以及設備故障對業務應用的影響,而是可以從虛擬架構管理系統獲知設備故障對VM的影響,從而可以快速地獲知受影響的業務應用,進而使得受影響的業務應用能夠快速地得到處理。
下面以圖1A所示的虛擬化計算機系統為例對本發明實施例的故障處理方法進行詳細的介紹。
圖2為本發明實施例的故障處理方法的示意性流程圖。應理解,圖2示出了故障處理方法的步驟或操作,但這些步驟或操作僅是示例,本發明實施例還可以執行其他操作或者圖2中的各個操作的變形。此外,圖2中的各個步驟可以按照與圖2呈現的不同的順序來執行,并且有可能并非要執行圖2中的全部操作。
S210,虛擬架構管理系統獲取故障告警消息,故障告警消息攜帶故障設備的標識信息和故障類型。
其中,故障設備可以是圖1A中所示硬件資源110中任意一種或多種設備,故障類型包括整機故障或部分硬件故障。
例如,若故障設備為X86服務器,則故障類型可以為X86服務器整機故障,也可以是X86服務器中CPU、內存、網卡、磁盤中至少一種硬件故障。
本發明實施例中,故障設備(如服務器、存儲設備等)可以快速檢測自身故障,然后虛擬架構管理系統可以通過多種方式或協議獲取故障設備的故障告警消息,如故障設備可以通過簡單網絡管理協議(Simple Network Management Protocol,SNMP)向虛擬架構管理系統上報故障設備的故障告警消息,或者虛擬架構管理系統可以通過表述性狀態傳遞(Representational State Transfer,REST)接口查詢故障設備的故障告警消息。
S220,虛擬架構管理系統根據故障設備的故障告警消息確定第一虛擬機集合,第一虛擬機集合包括受故障設備影響的至少一個第一虛擬機。
虛擬架構管理系統獲取到故障設備的故障告警消息后,根據該故障告警消息確定受故障設備影響的第一虛擬機集合。虛擬架構管理系統獲取到故障設備的故障告警消息后,根據該故障告警消息確定第一虛擬機集合確定第一虛擬機集合的具體實現方式可以是:虛擬架構管理系統根據故障設備的標識信息和故障類型,從虛擬架構管理系統的數據庫中,查詢部署在該故障設備上且受該故障設備發生的故障所影響的全部或部分虛擬機的信息。為了后續描述方便,可以將受到影響的虛擬機中的每個虛擬機稱為第一虛擬機,所有的第一虛擬機組成第一虛擬機集合。
S230,虛擬架構管理系統向業務管理系統發送狀態告警消息其中,狀態告警消息攜帶第一虛擬機集合的信息。
當虛擬架構管理系統為多個第一虛擬機分別生成一條狀態告警消息時,虛擬架構管理系統可以一次將這些狀態告警消息發送給業務管理系統,也可以分多次發送給業務管理系統。
當然,虛擬架構管理系統也可以為所有受影響的虛擬機生成一個狀態告警消息,即第一虛擬機集合中所有第一虛擬機生成一個狀態告警消息,本發明對此不作限制。
業務管理系統接收虛擬架構管理系統發送的第一虛擬機集合的狀態告警消息后,可以存儲將該狀態告警消息,如將該狀態告警消息記錄或保存在業務管理系統的數據庫中。
S240,業務管理系統根據第一虛擬機集合的狀態告警消息確定第一虛擬機集合中至少一個第一虛擬機關聯的業務應用。
業務管理系統接收到虛擬架構管理系統發送的第一虛擬機集合的狀態告警消息后,將該狀態告警信息和業務應用關聯,識別具體受影響的業務應用,具體實現方式可以為:根據第一虛擬機集合的狀態告警消息中攜帶的受影響的第一虛擬機的信息,從業務管理系統的數據庫或配置文件中,查詢第一虛擬機和業務應用的對應關系,識別出具體受影響的業務應用。
S250,業務管理系統對第一虛擬機集合中的至少一個第一虛擬機關聯的業務應用執行處理操作。
具體而言,業務管理系統對第一虛擬機集合中的第一虛擬機關聯的業務應用執行處理操作的一種實現方式可以是:業務管理系統向業務應用對應的控制節點發送第一虛擬機集合的信息。其中,第一虛擬機集合的信息用于指示控制節點對該業務應用進行恢復處理。
可選地,業務管理系統對第一虛擬機集合中的至少一個第一虛擬機關聯的業務應用執行處理操作包括以下方式中的至少一種:
方式一:業務管理系統將受影響的至少一個第一虛擬機關聯的業務應用切換至未受所述故障設備影響的虛擬機執行
方式二:業務管理系統將將所述至少一個第一虛擬機的應用狀態信息標識為隔離狀態,所述隔離狀態用于指示所述至少一個第一虛擬機停止執行所述至少一個第一虛擬機關聯的業務應用,即在業務應用中隔離受影響的虛擬機。
方式三:業務管理系統向虛擬架構管理系統發送第一請求消息,第一請求消息用于指示待恢復的虛擬機,待恢復的虛擬機為所述第一虛擬機集合中一個子集。
方式四:業務管理系統向至少一個第一虛擬機關聯的業務應用的控制節點發送狀態告警消息,以使得控制節點根據所述狀態告警消息將至少一個第一虛擬機關聯的業務應用切換至未受所述故障設備影響的虛擬機執行或將所述至少一個第一虛擬機的應用狀態信息標識為所述隔離狀態。
本發明實施例中,虛擬架構管理系統獲取到故障設備上的故障告警消息后,直接對該故障告警消息進行分析處理,獲取故障設備影響的一個或多個虛擬機,并向業務管理系統發送這些虛擬機的信息。業務管理系統可以直接根據這些虛擬機的信息分析得到受影響的業務應用,進而可以對受影響的業務應用進行處理。與現有技術相比,由虛擬架構管理系統直接根據故障設備的故障告警消息確定受故障設備影響的虛擬機的信息,使得業務管理系統可以直接根據第一虛擬機集合的狀態告警消息分析得到受影響的業務應用,而不是根據故障設備的告警消息去分析得到受影響的虛擬機、再分析受影響的業務應用。從而使得業務管理系統不需要直接感知硬件故障,進而可以快速觸發業務應用的影響處理,降低業務損失,提高業務應用的可靠性。
本發明實施例中,可選地,虛擬架構管理系統可以根據故障設備的故障告警消息確定第一虛擬機集合的影響信息,該影響信息用于指示故障設備對第一虛擬機集合中至少一個第一虛擬機產生的影響的類型和/或級別。對應地,虛擬機架構管理系統向業務管理系統發送的狀態告警消息還可以攜帶該影響信息,業務管理系統從虛擬架構管理系統出接收的狀態告警消息可以攜帶該影響信息。然后業務管理系統根據第一虛擬機集合的影響信息對所述第一虛擬機集合中的第一虛擬機關聯的業務應用執行處理操作。
用戶可以根據需求定義虛擬機受到故障設備的故障所影響的類型和/或級別,下面是本發明實施例的虛擬機受到故障設備的影響的類型和級別的示例。
當物理服務器發生整機故障(包括物理服務器下電、主機操作系統故障等不能提供計算資源的故障)、存儲設備故障(存儲設備下電、全部斷鏈等情況)、以及其他硬件故障導致虛擬機無法運行、為業務提供服務時,則虛擬機受影響的類型可設置為故障,級別可設置為緊急。對于網卡或其他硬件故障,若導致虛擬機無法正常工作時,則虛擬機受影響的類型可以為故障,級別可以設置為緊急。
當物理服務器發生部件故障,如中央處理器(Central Processing Unit,CPU)、內存、部分網卡發生故障時,若暫時不影響虛擬機運行,但存在運行風險的情況,則虛擬機受影響的類型可以設置為高風險,級別可設置為重要。
當存儲設備發生部件故障,如部分鏈路中斷、部分控制器故障等,若暫時不影響虛擬機運行,但存在運行風險的情況,則虛擬機受影響的類型可以設置為中風險,級別可以設置為次要。
通常情況下,凡是硬件故障導致虛擬機無法運行或無法對外提供服務時,虛擬機受影響的類型均可以設置為故障,級別均可以設置為緊急。
而對于不影響任何虛擬機運行的硬件故障,則可以不設置虛擬機的受影響的類型和級別,或者可以設置虛擬機受影響的類型為低風險或無風險,級別為提示。
通過上面內容的描述可知,虛擬架構管理系統向業務管理系統發送的狀態告警消息可以包括第一虛擬機集合的信息,即受影響的至少一個第一虛擬機的標識。還可以包括第一虛擬機集合的影響信息,即故障設備對第一虛擬機集合中至少一個第一虛擬機產生的影響的類型和/或級別。
可選地,告警狀態消息還可以包括產生時間、清除時間、告警同步號、告警名稱、告警對象類型等。除了上述信息,虛擬機的狀態告警消息還可以攜帶故障設備的故障原因等信息。當然,虛擬機的狀態告警消息包括的信息不限于上述列舉的內容。
上述虛擬架構管理系統執行的方法中,虛擬架構管理系統雖然只是對故障設備的告警消息進行分析處理,并向業務管理系統提供分析得到的信息,但是虛擬架構管理系統執行的該故障處理方法是后續對受故障影響的虛擬機進行處理或后續對受故障影響的業務應用的處理之前行之有效的方法,因此可以毫無意義地將其稱為故障處理方法。
本發明實施例中,可選地,業務管理系統可以調用虛擬架構管理系統提供的接口,請求虛擬架構管理系統對受影響的虛擬機進行處理。具體而言,業務管理系統可以根據第一虛擬機集合的影響信息確定用于指示需要優先恢復的待恢復的虛擬機的第一請求消息,該待恢復的虛擬機虛擬機為第一虛擬機集合中一個子集。然后業務管理系統向虛擬架構管理系統發送該第一請求消息。
業務管理系統根據第一虛擬機的影響信息確定第一虛擬機集合中需要虛擬架構管理系統恢復的虛擬機的優先級,并向虛擬機架構管理發送用于指示待恢復的虛擬機的恢復優先級的第一請求消息,使得虛擬架構管理系統可以根據業務管理系統指示的優先級,對受故障設備的故障所影響的第一虛擬機集合中的至少一個虛擬機進行恢復處理。
可選地,業務管理系統向虛擬架構管理系統發送用于指示待恢復的虛擬機的恢復優先級的第一請求消息的另一種具體實現方式可以為:業務管理系統根據業務應用的優先級向虛擬架構管理系統發送第一請求消息。
具體而言,業務管理系統根據第一虛擬機集合中的第一虛擬機相關聯的業務應用的優先級,即根據故障設備影響的業務應用的優先級指示虛擬架構管理系統對第一虛擬機集合中的待恢復的虛擬機進行恢復處理,從而可以保證高優先級的業務應用可以優先得到恢復,進一步保證業務應用的可靠性。
如業務管理系統可以通過第一請求消息指示虛擬機架構管理系統優先恢復第一虛擬機集合中優先級高的第一虛擬機。
可選地,業務管理系統可以根據第一虛擬機集合的影響信息和相關聯的業務應用的優先級向虛擬架構管理系統發送第一請求消息。
可選地,業務管理系統向虛擬架構管理系統發送第一請求消息的一種具體實現方式為:業務管理系統根據業務應用的部署模式向虛擬架構管理系統發送第一請求消息,業務應用的部署模式包括主備模式、負荷分擔模式和單虛擬機模式中的至少一種。
具體而言,業務管理系統根據業務應用的部署模式,即根據故障設備影響的業務應用的部署模式指示虛擬架構管理系統對第一虛擬機集合中的待恢復的虛擬機進行恢復處理。
如業務管理系統可以通過第一請求消息指示虛擬架構管理系統優先恢復部署模式為主備模式的業務應用的主備虛擬機中的主虛擬機。
可選地,業務管理系統可以根據第一虛擬機集合的影響信息和業務應用的部署模式向虛擬架構管理系統發送第一請求消息,或可以根據業務應用的部署模式和業務應用的優先級向虛擬架構管理系統發送第一請求消息,或可以根據第一虛擬機集合的影響信息、業務應用的部署模式和業務應用的優先級向虛擬架構管理系統發送第一請求消息。
虛擬架構管理系統接收業務管理系統發送的第一請求消息后,可以根據第一請求消息的指示對第一虛擬機集合中的待恢復的虛擬機按照一定的優先級進行恢復處理。虛擬架構管理系統對虛擬機的具體恢復形式可以是虛擬機遷移,即將虛擬機從故障設備遷移到其他正常設備;還可以是利用虛擬機快照在其他正常設備上恢復該虛擬機。
可選地,若虛擬架構管理系統在預置時間閾值內未接收到業務管理系統發送的用于指示第一虛擬機集合中需要優先恢復的虛擬機的第一請求信息,則按照預置虛擬機恢復策略恢復第一虛擬機集合中的第一虛擬機。
這樣可以保證在業務管理系統沒有信息指示虛擬架構管理系統如何恢復第一虛擬機集合中的虛擬機時,虛擬架構管理系統可以主動根據預置虛擬機恢復策略對第一虛擬機集合中的至少一個第一虛擬機進行恢復。
可選地,無論是業務管理系統請求虛擬架構管理系統對受影響的虛擬機進行處理,還是虛擬架構管理系統主動對受影響的虛擬機進行處理,虛擬架構管理系統對受影響的虛擬機處理完后,均可以給業務管理系統發送狀態告警清除消息,以指示業務管理系統可以清除之前接收到的、與該進行處理的虛擬機對應的狀態告警消息。
業務管理系統收到虛擬架構管理系統發送的狀態告警清除消息后,可以將對應的虛擬機的狀態告警消息清除,減少業務管理系統對已恢復告警的維護工作,從而可以節省資源,提高效率。
業務管理系統清除狀態告警消息的具體形式可以是將存儲的狀態告警消息刪掉,也可以是修改狀態告警消息中的某個信息,使得該信息指示該狀態告警消息對應的虛擬機已經恢復了。
本發明實施例中,可選地,業務管理系統根據第一虛擬機集合的信息確定第一虛擬機集合中的第一虛擬機關聯的業務應用后,可以向業務應用關聯的控制節點發送第一虛擬機集合的信息。
當業務應用的控制節點接收到業務管理系統發送的第一虛擬機集合的信息后,可以根據第一虛擬機集合中的第一虛擬機的信息對受影響的業務應用進行處理。
可選地,業務應用的控制節點還可以根據業務應用的部署模式對業務應用進行處理。如當業務應用為主備模式部署時,若主虛擬機故障,則控制節點需要進行主備切換;若備VM故障,控制節點不需要主備切換。如當業務應用為負荷分擔模式部署時,控制節點將受影響的VM隔離。
可選地,業務應用的控制節點可以根據業務應用的部署模式和第一虛擬機集合的影響信息對業務應用進行處理。如當第一虛擬機集合的影響信息指示故障設備對第一虛擬機的影響的類型為故障、級別為緊急,且業務應用為主備模式部署,若主VM故障,則控制節點需要進行主備切換,若備VM故障或業務應用不重要,則控制節點可以不作處理,即控制節點不需要主備切換。應了解,上述根據虛擬機受影響的類型、級別及部署模式等對業務應用進行處理的方式只是示例性說明,其具體實現可以根據用戶的需求來定義,本發明對此不作限制。
可選地,業務應用的控制節點對業務應用處理完成后,可以向業務管理系統發送業務處理反饋消息,告知業務管理系統其對業務應用的處理結果。
下面結合圖3,以物理主機故障為例,詳細介紹本發明實施例的故障處理方法。如圖3所示,其中包括三個設備,分別為計算節點1、計算節點2和計算節點3。計算節點1、計算節點2和計算節點3可以分別為圖1A或圖1B中的設備1、設備2和設備3。
在虛擬化計算機系統中部署了2種業務應用(Application,APP)。一種應用為App1,與VM1和VM2關聯,采用主備模式部署。其中,VM1部署在計算節點1上,為APP1的主用虛擬機;VM2部署在計算節點2上,為APP1的備用虛擬機。另一種應用為App2,與VM3和VM4關聯,采用負荷分擔模式部署,VM3部署在服務器計算節點2上,VM4部署在計算節點3上。
S402,當計算節點1發生掉電故障時,計算節點1通過SNMP協議向虛擬架構管理上報計算節點1的故障告警消息。
S404,虛擬架構管理接收到故障告警消息,根據該故障告警消息,確定受故障影響的虛擬機,并產生虛擬機的狀態告警消息,具體步驟如下。
(1)虛擬架構管理系統收到計算節點1的硬件故障告警消息,從虛擬架構管理系統的數據庫中查詢計算節點1上運行的虛擬機列表,獲取到受影響的虛擬機有VM1,得到VM1的ID等信息。
(2)由于計算節點1掉電故障導致VM1故障,VM1無法運行提供服務,因此可以將VM1受影響的類型設置為故障,VM1受影響的級別設置為緊急。
(3)虛擬架構管理系統產生VM1的狀態告警消息,其攜帶信息包括:VM1ID、VM1受影響的類型(為故障)、產生時間、VM1受影響的級別(為緊急)、故障設備的故障類型(為計算節點1整機故障)等。
S406,虛擬架構管理系統向業務管理系統發送VM1的狀態告警消息。
S408,業務管理系統接收虛擬架構管理系統發送的虛擬機的狀態告警消息,獲得VM1的ID等信息,從業務管理系統的數據庫查詢出VM1和業務應用的對應關系,得到受影響的業務應用為App1。
業務管理系統向App1的控制節點發送通知消息,通知VM1的故障。然后該控制節點根據通知消息確定把VM2升為主用服務器。
S410,業務管理系統調用虛擬架構管理系統提供的接口,向虛擬架構管理系統發送第一請求消息,請求虛擬架構管理系統快速恢復VM1。
S412,虛擬架構管理系統將VM1遷移到計算節點3中,此時,VM1變為App1的備用虛擬機。
此時,在具體實施過程中,虛擬架構管理系統還可以對計算節點1進行故障隔離。
S414,虛擬架構管理系統把VM1恢復后,給業務管理發送VM1狀態告警清除消息。
經過故障處理后,業務系統中的應用的部署情況如圖4所示。其中,App1采用主備模式部署,VM2部署在計算節點2上為主用虛擬機,VM1部署在計算節點3上為備用虛擬機。App2采用負荷分擔模式部署,VM3部署在計算節點2上,VM4部署在計算節點3上。計算節點1故障,從資源池隔離。
上述實施例中,計算節點1發生故障后,向虛擬架構管理系統發送告警消息,虛擬架構管理系統根據告警消息確定受影響的虛擬機為VM1,且確定VM1受到的影響的類型和級別。業務管理系統不用直接對硬件的告警消息進行處理,即可直接從虛擬架構管理系統處獲取受影響的VM1的信息和VM1受到的影響信息,進而確定VM1上運行的業務應用為App1,業務管理系統通知App1的控制節點對App1進行處理,并請求虛擬架構管理系統對VM1進行恢復。虛擬架構管理系統根據業務管理系統的請求將VM1遷移到計算節點3上。App1的控制節點從業務管理系統處獲取VM1的信息及VM1受到的影響信息后,將App1原來的備虛擬機VM2切換為主虛擬機,并將遷移到計算節點3上的VM1設置為備用虛擬機,從而保證App1的運行,提高App1的可靠性。
上面結合圖2至圖4介紹了本發明實施例的故障處理方法,下面結合圖5至圖8介紹本發明實施例的虛擬架構管理系統和業務管理系統。
圖5為本發明一個實施例的虛擬架構管理系統的示意性結構圖。應理解,圖5示出的虛擬架構管理系統500僅是示例,本發明實施例的虛擬架構管理系統還可包括其他模塊或單元,或者包括與圖5中的各個模塊的功能相似的模塊,或者并非要包括圖5中的所有模塊。
獲取模塊510,用于獲取故障告警消息,所述故障告警消息攜帶故障設備的標識信息和故障類型。
確定模塊520,用于根據所述故障告警消息確定第一虛擬機集合,所述第一虛擬機集合包括受所述故障設備影響的至少一個第一虛擬機。
發送模塊530,用于向所述業務管理系統發送狀態告警消息,所述狀態告警消息攜帶所述第一虛擬機集合的信息。
本發明實施例中,虛擬架構管理系統獲取到故障設備上的故障告警消息后,直接對該故障告警消息進行分析處理,獲取故障設備影響的一個或多個虛擬機,并向業務管理系統發送這些虛擬機的信息,使得業務管理系統可以直接根據這些虛擬機的信息分析得到受影響的業務應用,進而可以對受影響的業務應用進行處理。與現有技術相比,由虛擬架構管理系統直接根據故障設備的故障告警消息確定受故障設備影響的虛擬機的信息,使得業務管理系統可以直接根據第一虛擬機集合的狀態告警消息分析得到受影響的業務應用,而不是根據故障設備的告警消息去分析得到受影響的虛擬機、再分析受影響的業務應用。從而使得業務管理系統不需要直接感知硬件故障,進而可以快速觸發業務應用的影響處理,降低業務損失,提高業務應用的可靠性。
可選地,作為一個實施例,所述確定模塊還用于根據所述故障告警消息確定所述第一虛擬機集合的影響信息,所述影響信息用于指示所述故障設備對所述至少一個第一虛擬機產生的影響的類型和/或級別。則所述虛擬架構管理系統向所述業務管理系統發送狀態告警消息還攜帶所述第一虛擬機集合的影響信息。
本發明實施例中,虛擬架構管理系統根據故障設備的故障告警信息除了可以獲取受影響的至少一個虛擬機,還可以獲取故障設備發生的故障對這些虛擬機的影響的類型和/或級別,然后在向業務管理系統發送的狀態告警消息中還攜帶用于指示故障設備對第一虛擬機集合中的第一虛擬機產生的影響的類型和/或級別的影響信息,從而使得業務管理系統或業務系統可以更加根據該影響信息對業務應用進行處理,進一步提高業務應用的可靠性。
可選地,作為一個實施例,所述故障設備對所述至少一個第一虛擬機產生的影響的類型包括以下至少一種:故障、高風險、中風險、低風險或無影響。
可選地,作為一個實施例,所述虛擬架構管理系統還包括接收模塊和恢復模塊。所述接收模塊用于接收所述業務管理系統發送的第一請求消息,所述第一請求消息用于指示需要優先恢復的待恢復的虛擬機,所述待恢復的虛擬機為所述第一虛擬機集合中一個子集。所述恢復模塊用于根據所述第一請求信息優先恢復待恢復的虛擬機。
本發明實施例中,虛擬架構管理系統可以根據業務管理系統的請求,根據業務管理系統指示的優先級,對受故障設備的故障所影響的第一虛擬機集合中的至少一個虛擬機進行恢復處理。
可選地,作為一個實施例,所述恢復模塊還用于在預置時間閾值內未接收到所述業務管理系統發送的所述第一請求信息時,按照預置虛擬機恢復策略恢復所述至少一個第一虛擬機。
本發明實施例可以保證在業務管理系統沒有信息指示虛擬架構管理系統如何恢復第一虛擬機集合中的虛擬機時,虛擬架構管理系統可以主動根據預先配置的恢復策略對第一虛擬機集合中的第一虛擬機進行恢復。
可選地,作為一個實施例,所述發送模塊還用于向所述業務管理系統發送狀態告警清除消息,所述狀態告警清除消息用于指示所述業務管理系統清除所述業務管理系統中的所述狀態告警消息。
本發明實施例中,虛擬架構管理系統對虛擬機進行恢復處理后,向業務管理系統發送狀態告警清除消息,使得業務管理系統可以根據該狀態告警清除消息清除之前接收的相關的狀態告警消息,從而避免業務管理系統對已經恢復的虛擬機相關的狀態告警消息進行分析處理。
應理解的是,本發明實施例的虛擬架構管理系統500可以通過專用集成電路(Application Specific Integrated Circuit,ASIC)實現,或可編程邏輯器件(Programmable Logic Device,PLD)實現,上述PLD可以是復雜程序邏輯器件(Complex Programmable Logic Device,CPLD),現場可編程門陣列(Field-Programmable Gate Array,FPGA),通用陣列邏輯(Generic Array Logic,GAL)或其任意組合。通過軟件實現圖2所示的故障處理方法中由虛擬架構管理系統執行的步驟時,虛擬架構管理系統500及其各個模塊也可以為軟件模塊。
應理解,圖5所示的虛擬架構管理系統500可對應于圖2所示故障處理方法中的虛擬架構管理系統,并且虛擬架構管理系統500中的各個單元的上述和其它操作和/或功能分別為了實現圖2中的故障處理方法的相應流程,為了簡潔,在此不再贅述。
圖6為本發明一個實施例的業務管理系統的示意性結構圖。應理解,圖6示出的業務管理系統600僅是示例,本發明實施例的業務系統還可包括其他模塊或單元,或者包括與圖6中的各個模塊的功能相似的模塊,或者并非要包括圖6中的所有模塊。
接收模塊610,用于接收所述虛擬架構管理系統發送的狀態告警消息,所述狀態告警消息攜帶受故障設備影響的第一虛擬機集合的信息,所述第一虛擬機集合中包括至少一個第一虛擬機。
確定模塊620,用于根據所述狀態告警消息確定所述至少一個第一虛擬機關聯的業務應用。
處理模塊630,用于對所述至少一個第一虛擬機關聯的業務應用執行處理操作。
本發明實施例中,業務管理系統從虛擬架構管理系統接收到受故障設備影響的第一虛擬機集合中的虛擬機的信息后,可以直接根據這些虛擬機的信息分析得到受影響的業務應用,進而可以對受影響的業務應用進行處理。與現有技術相比,業務管理系統可以直接根據第一虛擬機集合的狀態告警消息分析得到受影響的業務應用,而不是根據故障設備的告警消息去分析得到受影響的虛擬機、再分析受影響的業務應用。從而使得業務管理系統不需要直接感知硬件故障,進而可以快速觸發業務應用的影響處理,降低業務損失,提高業務應用的可靠性。
可選地,作為一個實施例,所述狀態告警消息還攜帶所述第一虛擬機集合的影響信息,所述影響信息用于指示所述故障設備對所述至少一個第一虛擬機產生的影響的類型和/或級別。其中,所述處理模塊具體用于根據所述第一虛擬機集合的影響信息對所述至少一個第一虛擬機關聯的業務應用執行處理操作。
本發明實施例中,業務管理系統從虛擬架構管理系統接收的第一虛擬機集合的狀態告警消息中還攜帶用于指示故障設備對第一虛擬機集合中的第一虛擬機產生的影響的類型和/或級別的影響信息,從而使得業務管理系統或業務系統可以更加根據該影響信息對業務應用進行處理,進一步提高業務應用的可靠性。
可選地,作為一個實施例,所述第一虛擬機集合產生的影響的類型包括以下至少一種:故障、高風險、中風險、低風險或無影響。
可選地,作為一個實施例,所述處理操作包括以下方式中的至少一種:
所述業務管理系統將所述至少一個第一虛擬機關聯的業務應用切換至未受所述故障設備影響的虛擬機執行;或
所述業務管理系統將所述至少一個第一虛擬機的應用狀態信息標識為隔離狀態,所述隔離狀態用于指示所述至少一個第一虛擬機停止執行所述至少一個第一虛擬機關聯的業務應用;或
所述業務管理系統向所述虛擬架構管理系統發送第一請求消息,所述第一請求消息用于指示待恢復的虛擬機,所述待恢復的虛擬機為所述第一虛擬機集合中一個子集;或
所述業務管理系統向所述至少一個第一虛擬機關聯的業務應用的控制節點發送所述狀態告警消息,以使得所述控制節點根據所述狀態告警消息將所述至少一個第一虛擬機關聯的業務應用切換至所述未受所述故障設備影響的虛擬機執行或將所述至少一個第一虛擬機的應用狀態信息標識為所述隔離狀態。
可選地,作為一個實施例,所述確定模塊還用于根據所述第一虛擬機集合的影響信息確定第一請求消息,所述第一請求消息用于指示需要優先恢復的待恢復的虛擬機,所述待恢復的虛擬機為所述第一虛擬機集合中一個子集。所述業務管理系統還包括發送模塊,用于向所述虛擬架構管理系統發送所述第一請求消息。
本發明實施例中,業務管理系統可以根據第一虛擬機的影響信息確定第一虛擬機集合中需要虛擬架構管理系統恢復的待恢復的虛擬機的優先級,并向虛擬機架構管理發送用于指示這些待恢復的虛擬機的恢復優先級的第一請求消息,使得虛擬架構管理系統可以根據業務管理系統指示的優先級,對受故障設備的故障所影響的第一虛擬機集合中的至少一個虛擬機進行恢復處理。
可選地,作為一個實施例,所述發送模塊還用于根據所述至少一個第一虛擬機關聯的業務應用的優先級向所述虛擬架構管理系統發送所述第一請求消息。
本發明實施例中,業務管理系統根據第一虛擬機集合中的第一虛擬機相關聯的業務應用的優先級,即根據故障設備影響的業務應用的優先級指示虛擬架構管理系統對第一虛擬機集合中的待恢復的虛擬機進行恢復處理,從而可以保證高優先級的業務應用可以優先得到恢復,進一步保證業務應用的可靠性。
可選地,作為一個實施例,所述發送模塊還用于根據所述至少一個第一虛擬機關聯的業務應用的部署模式向所述虛擬架構管理系統發送所述第一請求消息,所述至少一個第一虛擬機關聯的業務應用的部署模式包括主備模式、負荷分擔模式和單虛擬機模式中的至少一種。
本發明實施例中,業務管理系統根據受影響的業務應用的部署模式,即根據故障設備影響的業務應用的部署模式指示虛擬架構管理系統對第一虛擬機集合中的待恢復的虛擬機進行恢復處理。
可選地,作為一個實施例,所述接收模塊還用于接收所述虛擬架構管理系統發送的狀態告警清除消息,所述處理模塊還用于根據所述狀態告警清除消息清除所述狀態告警消息。
本發明實施例中,業務管理系統可以根據虛擬架構管理系統發送的狀態告警清除消息清除之前接收的相關的狀態告警消息,從而避免對已經恢復的虛擬機相關的狀態告警消息進行分析處理。
應理解的是,本發明實施例的業務管理系統600可以通過專用集成電路實現,或可編程邏輯器件實現,上述PLD可以是復雜程序邏輯器件,現場可編程門陣列,通用陣列邏輯或其任意組合。通過軟件實現圖2所示的故障處理方法中由業務管理系統執行的步驟時,業務管理系統600及其各個模塊也可以為軟件模塊。
應理解,圖6所示的業務管理系統600可對應于圖2所示故障處理方法中的業務管理系統,并且業務管理系統600中的各個單元的上述和其它操作和/或功能分別為了實現圖2中的故障處理方法的相應流程,為了簡潔,在此不再贅述。
圖7是本發明另一個實施例的虛擬架構管理系統700的示意性結構圖。虛擬架構管理系統700包括處理器710、存儲器720、通信接口730和總線740。其中,處理器710、存儲器720、通信接口730通過總線740進行通信,也可以通過無線傳輸等其他手段實現通信。該存儲器720用于存儲指令,該處理器710用于執行該存儲器720存儲的指令。該存儲器720存儲程序代碼,且處理器710可以調用存儲器720中存儲的程序代碼執行以下操作:
獲取故障告警消息,所述故障告警消息攜帶故障設備的標識信息和故障類型;根據所述故障告警消息確定第一虛擬機集合,所述第一虛擬機集合包括受所述故障設備影響的至少一個第一虛擬機;向所述業務管理系統發送狀態告警消息,所述狀態告警消息攜帶所述第一虛擬機集合的信息。
本發明實施例中,虛擬架構管理系統獲取到故障設備上的故障告警消息后,直接對該故障告警消息進行分析處理,獲取故障設備影響的一個或多個虛擬機,并向業務管理系統發送這些虛擬機的信息,使得業務管理系統可以直接根據這些虛擬機的信息分析得到受影響的業務應用,進而可以對受影響的業務應用進行處理。與現有技術相比,由虛擬架構管理系統直接根據故障設備的故障告警消息確定受故障設備影響的虛擬機的信息,使得業務管理系統可以直接根據第一虛擬機集合的狀態告警消息分析得到受影響的業務應用,而不是根據故障設備的告警消息去分析得到受影響的虛擬機、再分析受影響的業務應用。從而使得業務管理系統不需要直接感知硬件故障,進而可以快速觸發業務應用的影響處理,降低業務損失,提高業務應用的可靠性。
可選地,作為一個實施例,處理器710還可以調用存儲器720中存儲的程序代碼執行以下操作:根據所述故障告警消息確定所述第一虛擬機集合的影響信息,所述影響信息用于指示所述故障設備對所述至少一個第一虛擬機產生的影響的類型和/或級別。其中,所述狀態告警消息還攜帶所述影響信息。
本發明實施例中,虛擬架構管理系統根據故障設備的故障告警信息除了可以獲取受影響的至少一個虛擬機,還可以獲取故障設備發生的故障對這些虛擬機的影響的類型和/或級別,然后在向業務管理系統發送的狀態告警消息中還攜帶用于指示故障設備對第一虛擬機集合中的第一虛擬機產生的影響的類型和/或級別的影響信息,從而使得業務管理系統或業務系統可以更加根據該影響信息對業務應用進行處理,進一步提高業務應用的可靠性。
可選地,作為一個實施例,所述故障設備對所述至少一個第一虛擬機產生的影響的類型包括以下至少一種:故障、高風險、中風險、低風險或無影響。
可選地,作為一個實施例,處理器710可以調用存儲器720中存儲的程序代碼執行以下操作:接收所述業務管理系統發送的第一請求消息,所述第一請求消息用于指示需要優先恢復的待恢復的虛擬機,所述待恢復的虛擬機為所述第一虛擬機集合中一個子集。所述處理器還用于根據所述第一請求信息優先恢復所述待恢復的虛擬機。
本發明實施例中,虛擬架構管理系統可以根據業務管理系統的請求,根據業務管理系統指示的優先級,對受故障設備的故障所影響的第一虛擬機集合中的至少一個虛擬機進行恢復處理。
可選地,作為一個實施例,處理器710可以調用存儲器720中存儲的程序代碼執行以下操作:在預置時間閾值內未接收到所述業務管理系統發送的所述第一請求信息時,按照預置虛擬機恢復策略恢復所述至少一個第一虛擬機。
本發明實施例可以保證在業務管理系統沒有信息指示虛擬架構管理系統如何恢復第一虛擬機集合中的虛擬機時,虛擬架構管理系統可以主動根據預先配置的恢復策略對第一虛擬機集合中的第一虛擬機進行恢復。
可選地,作為一個實施例,處理器710可以調用存儲器720中存儲的程序代碼執行以下操作:向所述業務管理系統發送狀態告警清除消息,所述狀態告警清除消息用于指示所述業務管理系統清除所述業務管理系統中的所述狀態告警消息。
本發明實施例中,虛擬架構管理系統對虛擬機進行恢復處理后,向業務管理系統發送狀態告警清除消息,使得業務管理系統可以根據該狀態告警清除消息清除之前接收的相關的狀態告警消息,從而避免業務管理系統對已經恢復的虛擬機相關的狀態告警消息進行分析處理。
應理解,圖7所示本發明實施例的虛擬架構管理系統可對應于圖5所示的虛擬架構管理系統,并且本發明實施例的虛擬架構管理系統中的各個單元的上述和其它操作和/或功能分別為了實現圖2所示的故障處理方法中由虛擬架構管理系統執行的相應流程,為了簡潔,在此不再贅述。
圖8是本發明另一個實施例的業務管理系統800的示意性結構圖。業務管理系統800包括處理器810、存儲器820、通信接口830和總線840。其中,處理器810、存儲器820、通信接口830通過總線840進行通信,也可以通過無線傳輸等其他手段實現通信。該存儲器820用于存儲指令,該處理器810用于執行該存儲器820存儲的指令。該存儲器820存儲程序代碼,且處理器810可以調用存儲器820中存儲的程序代碼執行以下操作:
接收所述虛擬架構管理系統發送的狀態告警消息,所述狀態告警消息攜帶受故障設備影響的第一虛擬機集合的信息,所述第一虛擬機集合中包括至少一個第一虛擬機;根據所述狀態告警消息確定所述至少一個第一虛擬機關聯的業務應用;對所述至少一個第一虛擬機關聯的業務應用執行處理操作。
本發明實施例中,業務管理系統從虛擬架構管理系統接收到受故障設備影響的第一虛擬機集合中的虛擬機的信息后,可以直接根據這些虛擬機的信息分析得到受影響的業務應用,進而可以對受影響的業務應用進行處理。與現有技術相比,業務管理系統可以直接根據第一虛擬機集合的狀態告警消息分析得到受影響的業務應用,而不是根據故障設備的告警消息去分析得到受影響的虛擬機、再分析受影響的業務應用。從而使得業務管理系統不需要直接感知硬件故障,進而可以快速觸發業務應用的影響處理,降低業務損失,提高業務應用的可靠性。
可選地,作為一個實施例,所述狀態告警消息還攜帶所述第一虛擬機集合的影響信息,所述影響信息用于指示所述故障設備對所述至少一個第一虛擬機產生的影響的類型和/或級別。其中,所述處理器具體用于根據所述第一虛擬機集合的影響信息對所述至少一個第一虛擬機關聯的業務應用執行處理操作。
本發明實施例中,業務管理系統從虛擬架構管理系統接收的第一虛擬機集合的狀態告警消息中還攜帶用于指示故障設備對第一虛擬機集合中的第一虛擬機產生的影響的類型和/或級別的影響信息,從而使得業務管理系統或業務系統可以更加根據該影響信息對業務應用進行處理,進一步提高業務應用的可靠性。
可選地,作為一個實施例,所述第一虛擬機集合產生的影響的類型包括以下至少一種:故障、高風險、中風險、低風險或無影響。
可選地,作為一個實施例,所述處理操作包括以下方式中的至少一種:
所述業務管理系統將所述至少一個第一虛擬機關聯的業務應用切換至未受所述故障設備影響的虛擬機執行;或
所述業務管理系統將所述至少一個第一虛擬機的應用狀態信息標識為隔離狀態,所述隔離狀態用于指示所述至少一個第一虛擬機停止執行所述至少一個第一虛擬機關聯的業務應用;或
所述業務管理系統向所述虛擬架構管理系統發送第一請求消息,所述第一請求消息用于指示待恢復的虛擬機,所述待恢復的虛擬機為所述第一虛擬機集合中一個子集;或
所述業務管理系統向所述至少一個第一虛擬機關聯的業務應用的控制節點發送所述狀態告警消息,以使得所述控制節點根據所述狀態告警消息將所述至少一個第一虛擬機關聯的業務應用切換至所述未受所述故障設備影響的虛擬機執行或將所述至少一個第一虛擬機的應用狀態信息標識為所述隔離狀態。
可選地,作為一個實施例,處理器710可以調用存儲器720中存儲的程序代碼執行以下操作:根據所述第一虛擬機集合的影響信息確定第一請求消息。所述發送器840用于向所述虛擬架構管理系統發送所述第一請求消息。
本發明實施例中,業務管理系統可以根據第一虛擬機的影響信息確定第一虛擬機集合中需要虛擬架構管理系統恢復的待恢復的虛擬機的優先級,并向虛擬機架構管理發送用于指示這些待恢復的虛擬機的恢復優先級的第一請求消息,使得虛擬架構管理系統可以根據業務管理系統指示的優先級,對受故障設備的故障所影響的第一虛擬機集合中的至少一個虛擬機進行恢復處理。
可選地,作為一個實施例,處理器710可以調用存儲器720中存儲的程序代碼執行以下操作:根據所述至少一個第一虛擬機關聯的業務應用的優先級向所述虛擬架構管理系統發送所述第一請求消息。
本發明實施例中,業務管理系統根據第一虛擬機集合中的第一虛擬機相關聯的業務應用的優先級,即根據故障設備影響的業務應用的優先級指示虛擬架構管理系統對第一虛擬機集合中的待恢復的虛擬機進行恢復處理,從而可以保證高優先級的業務應用可以優先得到恢復,進一步保證業務應用的可靠性。
可選地,作為一個實施例,處理器710可以調用存儲器720中存儲的程序代碼執行以下操作:根據所述至少一個第一虛擬機關聯的業務應用的部署模式向所述虛擬架構管理系統發送所述第一請求消息,所述至少一個第一虛擬機關聯的業務應用的部署模式包括主備模式、負荷分擔模式和單虛擬機模式中的至少一種。
本發明實施例中,業務管理系統根據業務應用的部署模式,即根據故障設備影響的業務應用的部署模式指示虛擬架構管理系統對第一虛擬機集合中的待恢復的虛擬機進行恢復處理。
可選地,作為一個實施例,處理器710可以調用存儲器720中存儲的程序代碼執行以下操作:接收所述虛擬架構管理系統發送的狀態告警清除消息,所述處理器還用于根據所述狀態告警清除消息清除所述狀態告警消息。
本發明實施例中,業務管理系統可以根據虛擬架構管理系統發送的狀態告警清除消息清除之前接收的相關的狀態告警消息,從而避免對已經恢復的虛擬機相關的狀態告警消息進行分析處理。
應理解,圖8所示本發明實施例的業務管理系統可對應于圖6所示的業務管理系統,并且本發明實施例的業務管理系統中的各個單元的上述和其它操作和/或功能分別為了實現圖2所示的故障處理方法中由業務管理系統執行的相應流程,為了簡潔,在此不再贅述。
可以理解,本發明實施例中的處理器可以是一種集成電路芯片,具有信號的處理能力。在實現過程中,上述方法實施例的各步驟可以通過處理器中的硬件的集成邏輯電路或者軟件形式的指令完成。上述的處理器可以是通用處理器、數字信號處理器(Digital Signal Processor,DSP)、專用集成電路(Application Specific Integrated Circuit,ASIC)、現成可編程門陣列(Field Programmable Gate Array,FPGA)或者其他可編程邏輯器件、分立門或者晶體管邏輯器件、分立硬件組件。可以實現或者執行本發明實施例中的公開的各方法、步驟及邏輯框圖。通用處理器可以是微處理器或者該處理器也可以是任何常規的處理器等。結合本發明實施例所公開的方法的步驟可以直接體現為硬件譯碼處理器執行完成,或者用譯碼處理器中的硬件及軟件模塊組合執行完成。軟件模塊可以位于隨機存儲器,閃存、只讀存儲器,可編程只讀存儲器或者電可擦寫可編程存儲器、寄存器等本領域成熟的存儲介質中。該存儲介質位于存儲器,處理器讀取存儲器中的信息,結合其硬件完成上述方法的步驟。
可以理解,本發明實施例中的存儲器可以是易失性存儲器或非易失性存儲器,或可包括易失性和非易失性存儲器兩者。其中,非易失性存儲器可以是只讀存儲器(Read-Only Memory,ROM)、可編程只讀存儲器(Programmable ROM,PROM)、可擦除可編程只讀存儲器(Erasable PROM,EPROM)、電可擦除可編程只讀存儲器(Electrically EPROM,EEPROM)或閃存。易失性存儲器可以是隨機存取存儲器(Random Access Memory,RAM),其用作外部高速緩存。通過示例性但不是限制性說明,許多形式的RAM可用,例如靜態隨機存取存儲器(Static RAM,SRAM)、動態隨機存取存儲器(Dynamic RAM,DRAM)、同步動態隨機存取存儲器(Synchronous DRAM,SDRAM)、雙倍數據速率同步動態隨機存取存儲器(Double Data Rate SDRAM,DDR SDRAM)、增強型同步動態隨機存取存儲器(Enhanced SDRAM,ESDRAM)、同步連接動態隨機存取存儲器(Synchlink DRAM,SLDRAM)和直接內存總線隨機存取存儲器(Direct Rambus RAM,DR RAM)。應注意,本文描述的系統和方法的存儲器旨在包括但不限于這些和任意其它適合類型的存儲器。
另外,本文中術語“系統”和“網絡”在本文中常被可互換使用。本文中術語“和/或”,僅僅是一種描述關聯對象的關聯關系,表示可以存在三種關系,例如,A和/或B,可以表示:單獨存在A,同時存在A和B,單獨存在B這三種情況。另外,本文中字符“/”,一般表示前后關聯對象是一種“或”的關系。
應理解,在本發明實施例中,“與A相應的B”表示B與A相關聯,根據A可以確定B。但還應理解,根據A確定B并不意味著僅僅根據A確定B,還可以根據A和/或其它信息確定B。
本領域普通技術人員可以意識到,結合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計算機軟件和電子硬件的結合來實現。這些功能究竟以硬件還是軟件方式來執行,取決于技術方案的特定應用和設計約束條件。專業技術人員可以對每個特定的應用來使用不同方法來實現所描述的功能,但是這種實現不應認為超出本發明的范圍。
所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統、裝置和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。
在本申請所提供的幾個實施例中,應該理解到,所揭露的系統、裝置和方法,可以通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統,或一些特征可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。
另外,在本發明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。
所述功能如果以軟件功能單元的形式實現并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基于這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執行本發明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(Read-Only Memory,ROM)、隨機存取存儲器(Random Access Memory,RAM)、磁碟或者光盤等各種可以存儲程序代碼的介質。