JP6354901B2 - 仮想マシンの故障検知および回復用管理システム - Google Patents

仮想マシンの故障検知および回復用管理システム Download PDF

Info

Publication number
JP6354901B2
JP6354901B2 JP2017518275A JP2017518275A JP6354901B2 JP 6354901 B2 JP6354901 B2 JP 6354901B2 JP 2017518275 A JP2017518275 A JP 2017518275A JP 2017518275 A JP2017518275 A JP 2017518275A JP 6354901 B2 JP6354901 B2 JP 6354901B2
Authority
JP
Japan
Prior art keywords
virtual machine
traffic
heartbeat
failure
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2017518275A
Other languages
English (en)
Other versions
JP2017532682A (ja
Inventor
レイ ソン
レイ ソン
伸也 宮川
伸也 宮川
真樹 菅
真樹 菅
鈴木 順
順 鈴木
佑樹 林
佑樹 林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JP2017532682A publication Critical patent/JP2017532682A/ja
Application granted granted Critical
Publication of JP6354901B2 publication Critical patent/JP6354901B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/203Failover techniques using migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • G06F11/1484Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/508Monitor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)

Description

本発明は、高可用性(High Availability;HA)の技術分野における管理システム、管理方法および管理プログラムに関し、特に仮想システム環境における仮想マシン(Virtual Machine;VM)の高可用性を提供する管理システム、管理方法および管理プログラムに関する。
電気通信ネットワークは、通常様々な専用のハードウェア機器で構成されている。新しいネットワークサービスを配置するためには、ネットワーク内の処理対象のハードウェア機器と、関連する他の多くのハードウェア機器との両方を考慮することが求められる。例えば、これらのハードウェア機器をどのように統合および配置すればよいかという考慮が求められる。さらに、技術革新が加速するにつれてハードウェアのライフサイクルはより短くなっており、その結果新しいサービスを配置することへの投資に対する見返りが減少し、電気通信ネットワーク分野における技術革新が抑圧されている。
非特許文献1に記載されているネットワーク機能の仮想化(Network Functions Virtualization;NFV)は、工業標準の高容量サーバ、スイッチおよび記憶装置に多くのネットワーク設備の種類を合併する標準IT仮想化技術を発展させることによって上記の課題に取り組むことを目的とする技術である。NFVは、工業標準のサーバハードウェアの範囲において実行可能なようにソフトウェアにおけるネットワーク機能を配備する。
電気通信ネットワークは、高度に修正された専用のレガシーハードウェア機器によって支援されている高可用性を有することが知られている。一方、NFVの環境では、ソフトウェアで実現される機器(仮想マシンとしても知られる)が、修正された専用のハードウェア機器の代わりに使用される。よって、NFVにおいてソフトウェアで実現される機器(仮想マシン)の高可用性をどのように強化するかは、注目の話題になっている。
仮想マシンのようなソフトウェアで実現される機器は、ホストコンピュータ装置のグループまたはホストコンピュータ装置のクラスタで実行され得る。現在のデータセンタの設計概念において、ホストコンピュータ装置は企業向けサーバである。一方、リソースを分散させるという設計概念の下で、ホストコンピュータ装置は、コンピュータのリソースプール(中央処理装置(Central Processing Unit;CPU)プールとしても知られる)に問い合わせている。
VMwareは、非特許文献4に記載されているように、vSphereの仮想マシンモニタ(Virtual Machine Monitor;VMM)層における仮想マシンの故障を検知し回復させるという特徴を有する。図1は、非特許文献4に記載されているVMM層における高可用性のシステムの設計概念を示す説明図である。
図1に示す設計概念によると、(企業向けサーバを参照する)各ノードにはHAエージェントが存在する。図1に示す複数のノードには、1つの選択された親ノードが存在し、残りのノードは全て子ノードである。親ノード内のHAエージェントは、各場所の仮想マシンの能力の監視を担当しており、子ノードの能力を確認するために他の子ノードのHAエージェントと連絡をとる。よって、高可用仮想マシンが機能しなくなると、他の利用可能なノードが選択され、選択されたノードで高可用仮想マシンが立ち上げられる。
非特許文献5に記載されている最大配置マニュアルによると、VMM層における高可用性の解決方法は拡張性に悩まされている。VMM層に設定可能なノードの最大値は32である。高可用性のオプションが有効にされると、32個のノードが配置された環境において、各ノードに最大で64個の高可用仮想マシンが設定可能である。一方、高可用性のオプションが無効にされると、32個のノードが配置された環境において、各ノードに最大で100個の仮想マシンが設定可能である。
特開2008−181387号公報
Sangjin Han, Norbert Egi, Aurojit Panda, Sylvia Ratnasamy, Guangyu Shi, and Scott Shenker, "Network Support for Resource Disaggregation in Next-Generation Data Centers," ACM HotNets 2013, pp. 1-7. "ExpEther (Express Ethernet) Consortium"、[online]、ExpEther Consortium、[平成26年 9月22日検索]、インターネット<http://www.expether.org/etechnology.html> ETSI, "Network Functions Virtualization Technology Leaflet," 2014, pp. 1-2. vmware, "vSphere Availability Guide, ESXi 5.5, vCenter Server 5.5," 2013, pp.1-56. vmware, "Configuration Maximums, vSphere 5.5," 2013, pp.1-10. "I/O Virtualization: SR-IOV"、[online]、PCI-SIG、[平成26年 9月22日検索]、インターネット<http://www.pcisig.com/specifications/iov>
存在する解決すべき課題は、以下の2点にまとめられる。
1.高可用性によるシステムのオーバヘッドを起因とする設定可能な仮想マシンの縮小
非特許文献5に記載されている最大配置マニュアルでは、高可用性の機能が有効にされると、36%のオーバヘッドがクラスタシステム全体に導入されると結論付けられている。その理由は主に、VMMのシステムパフォーマンスがボトルネックとなるためである。各ノードのHAエージェントは監視対象の仮想マシンが稼働している同じノードで実行されるソフトウェアとして実装されているため、HAエージェントの稼働はノードのCPUリソースも消費させる。すなわち、高可用性のオプションが有効にされると、HAエージェントはノードのCPUリソースを消費するため、結果的に設定可能な仮想マシンの最大値が100から64に減少する。
2.拡張性の縮小
VMM層における高可用性の機能の実装は、設計概念における拡張性も縮小させる。ノードの数が増えると、HAエージェントがシステムパフォーマンスのボトルネックになる。さらに、HAエージェントが仮想マシンと同じノードで稼働しているため、HAエージェントと仮想マシンは同じCPUリソースを消費する。
特許文献1に記載されているI/Oバスシステムは、トラヒックモニタ部140がCPUおよびI/Oデバイスから独立しているため、上記の問題を解決できる。特許文献1に記載されているトラヒックモニタ部140は、CPUとI/Oデバイスの間のトラヒックを監視する。
しかし、特許文献1には回復、診断、または他の拡張された動作は記載されていない。特許文献1に記載されているI/Oバスシステムは、より正確にトラヒックを測定するためにグループ情報を抽出することに重点を置いているため、監視だけで十分とされている。また、特許文献1に記載されているトラヒックモニタ部140は、PCI-over-Ethernetパケットのヘッダのみを監視している。
そこで、本発明は、リソースを分散させるという設計概念に基づいたデータセンタにおいて故障が発見された時に仮想マシンの故障を検知し対応する動作を誘発できる管理システム、管理方法および管理プログラムを提供することを目的とする。
本発明による管理システムは、リソースを分散させるという設計概念に基づいたデータセンタにおいて故障が発見された時に仮想マシンの故障を検知し対応する動作を誘発する管理システムであって、複数の仮想マシンが稼働しているハードウェアの要素として動作するリソースプールと、様々なリソースプール同士を接続する相互接続ネットワークと、対象の仮想マシンの故障を検知するために相互接続ネットワークの全てのトラヒックを詮索し故障が検知された時に対応する動作を誘発する高可用マネージャとを含むことを特徴とする。
本発明による管理方法は、リソースを分散させるという設計概念に基づいたデータセンタにおいて故障が発見された時に仮想マシンの故障を検知し対応する動作を誘発する、複数の仮想マシンが稼働しているハードウェアの要素として動作するリソースプールと、様々なリソースプール同士を接続する相互接続ネットワークとを含む仮想化システムに含まれているデバイスにおいて実行される管理方法であって、対象の仮想マシンの故障を検知するために相互接続ネットワークの全てのトラヒックを詮索し、故障が検知された時に対応する動作を誘発することを特徴とする。
本発明による管理プログラムは、リソースを分散させるという設計概念に基づいたデータセンタにおいて故障が発見された時に仮想マシンの故障を検知し対応する動作を誘発する、複数の仮想マシンが稼働しているハードウェアの要素として動作するリソースプールと、様々なリソースプール同士を接続する相互接続ネットワークとを含む仮想化システムに含まれているコンピュータにおいて実行される管理プログラムであって、コンピュータに、対象の仮想マシンの故障を検知するために相互接続ネットワークの全てのトラヒックを詮索する詮索処理、および故障が検知された時に対応する動作を誘発する誘発処理を実行させることを特徴とする。
本発明によれば、リソースを分散させるという設計概念に基づいたデータセンタにおいて故障が発見された時に仮想マシンの故障を検知でき、対応する動作を誘発できる。
非特許文献4に記載されているVMM層における高可用性のシステムの設計概念を示す説明図である。 本発明による仮想化システムの実施形態の構成例を示すブロック図である。 コンピュータデバイスにおいて稼働する高可用仮想マシンの構成例を示すブロック図である。 HAマネージャ400の構成例を示すブロック図である。 仮想化システム100による高可用仮想マシンの開始処理および登録処理の動作を示すフローチャートである。 仮想化システム100によるパケット詮索処理およびハートビートタイムスタンプ更新処理の動作を示すフローチャートである。 ハートビートタイムアウトの調整方法とハートビートとI/Oトラヒックの監視中の状態遷移の過程の例を示す状態遷移図である。 3種類のパケットからの抽出を要する情報の例を示す説明図である。 仮想化システム1000の使用例を示す説明図である。 仮想化システム1100の他の使用例を示す説明図である。 本発明による管理システムの概要を示すブロック図である。
以下では、本発明が完全に理解されるために、説明する目的で多くの詳細な仕様が記載されている。以下、目的、特徴、および利点の例を説明するために、本発明の実施形態を図面を参照して詳細に説明する。
図2は、本発明による仮想化システムの実施形態の構成例を示すブロック図である。図2に示す仮想化システム100は、CPUプール200と、I/Oデバイスプール300と、HAマネージャ400と、相互接続ネットワーク500とを含む。仮想化システム100は、リソースが分散されたデータセンタとしての機能を有する。図2には、リソースを分散させるという設計概念において配置された構成要素であるHAマネージャ400が示されている。
リソースを分散させるという設計概念に基づいたデータセンタは、CPUリソースプール、ストレージプール、様々なI/Oデバイスプール等の、様々なリソースプールで構成されている。構成要素の説明を明快にするために、図2にはCPUプール200とI/Oデバイスプール300のみが記載されている。CPUプール200には、コンピュータデバイス201〜コンピュータデバイス202のように複数のコンピュータデバイスが存在する。コンピュータデバイス201、コンピュータデバイス202はそれぞれ、相互接続ネットワーク500を介して対応するI/Oデバイス301、I/Oデバイス302と接続されている。
図2はリソースを分散させるという設計概念に基づいたデータセンタを示すが、VMMはハードウェア(CPUおよびRAM(Random Access Memory))において稼働しており、複数の仮想マシンおよび仮想マシンのマネージャ(VM-mgr)はVMMにおいて稼働している。VM-mgrは、(少なくとも1つの)HAマネージャ400から送信された制御コマンドによって誘発され得る事前に定義された仮想マシンの様々な動作を含む。事前に定義された動作は、仮想マシンの停止、起動、再起動等の動作である。なお、事前に定義された動作は上記の動作に限定されず、さらに拡張可能である。
HAマネージャ400は2つの通信ネットワークと接続されている。1つは相互接続ネットワーク500である。もう1つはVM-mgrと接続するための管理ネットワークである。図2に示す実線の矢印のように、相互接続ネットワーク500を介して、HAマネージャ400は全てのハートビートメッセージを詮索できる。また、HAマネージャ400は、メッセージと、CPUとI/Oデバイスの間の全てのI/Oトラヒックを制御できる。トラヒックは、例えばコンピュータデバイス201とI/Oデバイス301の間のトラヒックである。さらに、VM-mgrと接続するための管理ネットワークを介して、HAマネージャ400は、対応する事前に定義された動作が誘発されるように対象のVM-mgrに制御コマンドを送信できる。
なお、HAマネージャ400はリソースが分散されたデータセンタから完全に独立しており、データセンタの能力を測定するために全てのトラヒックを詮索するため、仕事量と負荷が平衡するようにHAマネージャ400を拡張することは妨げられない。例えば、HAマネージャは、仮想LAN(VLAN;Virtual Local Area Network)用に構成可能である。
図3は、コンピュータデバイスにおいて稼働する高可用仮想マシンの構成例を示すブロック図である。図3に示す典型的なコンピュータデバイスは、例えば図2に示すコンピュータデバイス201やコンピュータデバイス202、または対応するデバイスの組である。典型的なコンピュータデバイス600のように、デバイスは通常仮想化されているので、1つの物理機能インタフェース(PF)と、複数の仮想機能インタフェース(VF)とを有する。例えば、非特許文献5に記載されているSR-IOVは、恐らく最もよく知られたI/O仮想化の実装である。
I/O仮想化は、ハードウェアデバイス層においてサポートされており、デバイスドライバにおいて構成され得る。特に、非特許文献3に記載されているNFVの環境において、電気通信サービスは仮想マシンの内部で稼働しており、仮想マシンサービスと呼ばれる。最良のパフォーマンスを達成するために、仮想マシンサービスは通常、I/OデバイスのVFインタフェースを直接使用するように構成される。例えば、図3に示すように、VM(1)は、直接VF(1)を使用するように構成されている。
図4は、HAマネージャ400の構成例を示すブロック図である。図4に示すHAマネージャ400は、パケット(Pkt)詮索モジュール402と、HAデータベース(DB)403と、VMマネージャ404と、ヘルスチェックモジュール405と、アクションモジュール406と、Pkt解析モジュール409と、Pkt分析モジュール410とを有する。
図4に示すように、HAマネージャ400は、リソースを分散させるという設計概念に配置されている。少なくとも1つのHAマネージャは、リソースを分散させるという設計概念に配置される。参考技術の例として、ExpEtherは、相互接続の技術として使用され、ネットワークインタフェースカード(Network Interface Card;NIC)はI/Oデバイスの代表として選択される。
図4には、2種類のワークフローが示されている。点線のワークフローは、実行が検知される前の開始および登録の処理を表すが、詳細を以下に述べる。図4には、仮想マシンが起動される前に、VMマネージャ404が最初に関連情報をHAデータベース403に保存することが示されている。関連情報は、Node_Id(CPUプールのID)と、VM_Id(仮想マシンのID)と、Device_Id(デバイスプールのID)と、Image_Id(仮想マシンによって使用される画像のID)と、NW_Address(仮想マシンによって使用されるネットワークアドレス)と、NW_Id(仮想マシンによって使用されるネットワークのID)と、Heartbeat_Stateと、Heartbeat_Timeoutと、Timestamp_Valueとを含む。VMマネージャ404は、仮想マシンを起動させるためにVM-mgr211に制御コマンドを送信する。
実線のワークフローは、ランタイムパケットの詮索および誘発行動の処理を表すが、詳細を以下に述べる。実行時、Pkt詮索モジュール402は、全ての関係するトラヒックに対する詮索を継続して行う。例えば、トラヒックは、特定のVLANタグを伴う。トラヒックは、ハートビートメッセージでもよいし、他の制御メッセージでもよい。詮索対象のトラヒックには、CPUとI/Oデバイス間の全てのデータのトラヒックが該当する。図4に示す例では、ExpEtherが相互接続の技術の例として選択されている。その結果、全てのトラヒックは、PCI-over-Ethernetパケットになるはずである。
Pkt解析モジュール409は、ペイロード(ExpEther環境におけるPCI-over-Ethernetパケットのペイロード)から対応する情報を抽出する。Pkt分析モジュール410は、以下のように抽出された情報を処理する。1)もし情報がハートビートメッセージであれば、Pkt分析モジュール410は、heartbeat_timestampを更新する。2)もし情報が通常のI/Oトラヒックのデータであれば、Pkt分析モジュール410は、traffic_timestampを更新する。3)もし情報が診断トラヒックであれば、Pkt分析モジュール410は、対応する診断情報を処理する。2種類のタイムスタンプは全てHAデータベース403に保存されているが、それらのタイムスタンプは開始および登録の処理中に既に生成されている。
ヘルスチェックモジュール405は、2つのタイムスタンプを周期的に確認するという個別のタスクを担う。もしハートビートのタイムアウトかI/Oアクティビティのタイムアウトのいずれかが検知されたら、ヘルスチェックモジュール405は、アクションモジュール406に通知する。アクションモジュール406は、最終的にVM-mgr212に制御コマンドを送信する。
図7は、状態遷移図である。以下より詳細に、次のセクションにおいて、「使用事例1:故障の検出と再設定」と、「使用事例2:故障の検出と診断」の2つの使用事例を説明する。
なお、本実施形態のPkt詮索モジュール402、VMマネージャ404、ヘルスチェックモジュール405、アクションモジュール406、Pkt解析モジュール409、およびPkt分析モジュール410は、例えば、非一時的でコンピュータが読み取り可能な記録媒体に格納されているプログラムによる制御に従って処理を実行するCPUによって実現される。
以下、本実施形態の仮想化システム100の動作を図5〜図6を参照して説明する。図5は、仮想化システム100による高可用仮想マシンの開始処理および登録処理の動作を示すフローチャートである。
仮想マシンを起動させるコマンドが受信された後(ステップS101)、VMマネージャ404は、最初に仮想マシンの制御情報を解析する(ステップS102)。関連情報は、Node_Id(CPUプールのID)と、VM_Id(仮想マシンのID)と、Device_Id(デバイスプールのID)と、Image_Id(仮想マシンによって使用される画像のID)と、NW_Address(仮想マシンによって使用されるネットワークアドレス)と、NW_Id(仮想マシンによって使用されるネットワークのID)と、Heartbeat_Stateと、Heartbeat_Timeoutと、最新のTimestamp_Valueとを含む。次いで、VMマネージャ404は、上記の情報を基にHAデータベース403内を検索する(ステップS103)。
HAデータベース403から記録が発見された場合(ステップS103におけるYes)、VMマネージャ404は、対象のノードに制御コマンドを直接送信する(ステップS105)。HAデータベース403から記録が発見されなかった場合(ステップS103におけるNo)、VMマネージャ404は、HAデータベース403内に新しい項目を生成する(ステップS104)。次いで、VMマネージャ404は、仮想マシンを起動させるために対象のノードに制御コマンドを直接送信する(ステップS105)。送信した後、仮想化システム100は、開始処理および登録処理を終了する。
図6は、仮想化システム100によるパケット詮索処理およびハートビートタイムスタンプ更新処理の動作を示すフローチャートである。
Pkt詮索モジュール402がパケットを受信した後(ステップS201)、Pkt解析モジュール409は、最初にパケットを解析し、パケットがハートビートメッセージのパケットであるか、通常のデータトラヒックのパケットであるかを決定する(ステップS202)。パケットがハートビートメッセージのパケットである場合(ステップS202におけるYes)、Pkt解析モジュール409は、ハートビートメッセージを解析する(ステップS203)。パケットが通常のデータトラヒックのパケットである場合(ステップS202におけるNo)、Pkt解析モジュール409は、通常のデータトラヒックのパケットを解析する(ステップS204)。ステップS203およびステップS204の両方の処理において、Pkt分析モジュール410は、さらにVM_Idをパケットから抽出し、HAデータベース403内を検索する(ステップS205)。最終的に、Pkt分析モジュール410は、対応するタイムスタンプ(heartbeat_timestampかtraffic_timestamp)を更新する(ステップS206)。更新した後、仮想化システム100は、パケット詮索処理およびハートビートタイムスタンプ更新処理を終了する。
図7は、ハートビートタイムアウトの調整方法とハートビートとI/Oトラヒックの監視中の状態遷移の過程の例を示す状態遷移図である。以下、処理全体の詳細を説明する。
図7に示すように、I/O traffic_timeoutの初期値はT1であり、heartbeat_timeoutの初期値はT2であり、復元時間の値はT3である。また、図7は、対象の仮想マシンの状態として、H(正常)、D(I/Oトラヒックが遅延)、F(故障)の3つの状態があることを示す。実行時、I/Oトラヒックのデータは詮索および解析され、関連情報がtraffic_timestampの更新のために抽出される。
状態Hの場合:もしI/Oトラヒックの遅延が何ら生じていなければ、仮想マシンの状態はH(正常)のままである。
状態Hから状態Dへ遷移する場合:一旦I/Oトラヒックが遅延すると、対象の仮想マシンの状態はD(I/Oトラヒックが遅延)へ遷移し、ハートビートおよび診断の設定が有効になる。状態D(I/Oトラヒックが遅延)は、I/Oトラヒックが遅延している(ハートビートメッセージは時間通りに到達しているかもしれないが)ことを意味しており、遅延はNFV環境における高い作業負荷が原因で生じている可能性がある。状態Dにおいて、診断作業の実行が対象のVM-mgrに通知される。例えば、VM-mgrに仮想マシンからシステムの状態を示す情報をより収集し、アクションモジュールに報告させるように通知される。
状態Dから状態Hへ遷移する場合:状態Dにおいて、I/OトラヒックがT3の時間間隔よりも長い間継続して時間通りに到達した場合、状態はH(正常)に戻り、かつハートビートおよび診断の設定も無効になる。
状態Dから状態Fへ遷移する場合:状態Dにおいて、ハートビートの遅延が生じた場合、状態はF(故障)へ遷移する。状態F(故障)は、ハートビートメッセージのタイマとI/Oトラヒックのタイマの両方が切れたことを意味しているため、対象の仮想マシンは利用不可能であると確信される。
状態Fの場合:状態Fにおいて、回復作業の実行が対象のVM-mgrに通知される。
特許文献1に記載されている先行特許において、CPUとI/Oデバイスの間のトラヒックを監視する同様の方法も提案されている。主な差異は、以下の2点である。
1.監視の面では、PCI-over-Ethernetパケットのヘッダを監視し、ヘッダからグループ管理情報を抽出する点に差異が存在する。本特許では、全てのトラヒックのパケットが詮索され、システムの能力やシステムリソースの有用性に関連する情報を抽出するためにパケットのペイロードが解析される。図8は、3種類のパケットからの抽出を要する情報の例を示す説明図である。図8は、3種類のパケットからの抽出を要する情報の詳細を示す。
ExpEtherがリソースを分散させるという設計概念に基づいたデータセンタにおける相互接続ネットワークの例として選択されているため、パケットのフォーマットは図8に示す通りである。パケットのフォーマットには多くのデータ領域が存在するが、Pkt解析モジュール409がパケットのペイロードをどのように解析するかを示すために関連する領域(図8に示す影付きのデータ領域)のみを説明する。なお、データ領域やExpEtherのパケットフォーマットのより詳細な情報は非特許文献2に記載されている。Pkt解析モジュール409によるパケット解析処理は以下のようにまとめられる。
(1)仮想マシン、VLAN、およびデバイスの識別情報の抽出
仮想マシンはMAC(Media Access Control)アドレスで識別されるため、Ethernetヘッダにおける送信元アドレス(Source Address;SA)や送信先アドレス(Destination Address;DA)のデータ領域のデータで識別される。VLANの情報はTPID(Tag Protocol Identifier)に提示されており、デバイスは図8に示すFLOWID_DAやFLOWID_SAで識別される。
(2)データフレームのフラグの確認
PCI-over-Ethernetパケットには多くの種類が存在する。EFE_SUB_TYPEは、ペイロード(TLP)がデータフレームであるか他の種類であるかを示す。
(3)ペイロードからの情報の抽出
データフレームに関して、タイプおよびデータのフォーマットは拡張される。データフレームのタイプはハートビート、診断、またはI/Oトラヒックのいずれかであるが、タイプの種類は限定されずどのような種類でもよい。また、ペイロードのレイアウトは、ペイロードのタイプに依存する。ペイロードのタイプがハートビートのタイプである場合、データはハートビートのタイムスタンプを参照する。また、ペイロードのタイプが診断のタイプである場合、システムリソースの有用性が提供される。例えば、CPUの有用性や、ネットワークインタフェースの有用性や、メモリの有用性が提供される。また、ペイロードのタイプがI/Oトラヒックのタイプである場合、データはTLPのデータおよびそのタイムスタンプを参照する。
2.動作の面では、回復/診断、または他の拡張可能な動作は特許文献1には記載されていない。先行特許はより正確にトラヒックを測定するためにグループ情報を抽出することに焦点を置いているため、監視だけで十分とされている。一方本特許では、検知およびその後の動作によりシステムの可用性を強化することを目的にしている。さらに、検知モジュールと動作モジュールの協力により、I/Oトラヒックが存在する時、仮想マシンのI/Oトラヒックを詮索することによってハートビートの負荷が減少する。なお、ある時間帯だけI/Oトラヒックが存在しない場合、ハートビートメッセージが対象の仮想マシンの可用性を検知するために使用される。
本実施形態の仮想化システムは、仮想マシンの故障を検知し、さらに対応する動作を誘発する方法を含む。特に、仮想化システムは、非特許文献1に記載されているようなリソースを分散させるという設計概念において(少なくとも1つの)監視モジュールと、(少なくとも1つの)動作モジュールとを含む。監視モジュールは、故障の検知を担当しており、動作モジュールは、個々の故障に対応する動作の実行を担当している。
リソースを分散させるという設計概念は、CPUリソースプール、ストレージリソースプール等の、個々のリソースプールで構成されており、これらのリソースプールは非特許文献2に記載されているようなExpEtherのような相互接続の技術を介して接続されている。慣習的なハートビートメッセージの代わりにCPUとI/Oデバイスの間の仮想マシンのI/Oトラヒックの監視に基づいて、仮想マシンの可用性の評価要因が見積もられる。仮想マシンの可用性の評価要因の結果に従って、対応する動作が誘発される。
例えば、I/Oトラヒックもハートビートメッセージも両方存在しない場合、取られる動作は、他の物理サーバの利用不可能な仮想マシンの再起動になる。また、もし特定の時間帯だけI/Oトラヒックが存在しない場合、取られる動作は、可用性を確認するための診断メッセージの仮想マシンへの送信であり、ハートビートメッセージを有効にすることである。なお、取られる動作は上記の2種類の動作に限定されず、他の動作でもよい。
「使用事例1:故障の検出と再設定」
図9は、仮想化システム1000の使用例を示す説明図である。図9は、対象の仮想マシンの故障が検知され、同じ仮想マシンの新たなインスタンスが他のノードで起動される時の使用事例を示す。
本特許は、仮想マシンの故障の検知を実行し、リソースを分散させるという設計概念に基づいたデータセンタにおける相互接続ネットワークのパケットを詮索することによって仮想マシンの可用性を解析することを提案している。システムの初期化処理中、システムの可用性を評価するためにハートビートメッセージの代わりにI/Oトラヒックを詮索するため、ハートビートメッセージに基づいた慣習的な高可用性の解決方法に比べて本特許が与える負荷は低い。なお、所定の時間間隔だけI/Oトラヒックが遅延している場合、ハートビートおよび診断が有効にされる。
図7は、システムの状態遷移図である。以下、図9を参照して実行時の振る舞いをより詳細に説明する。
1)システムの実行時、Pkt詮索モジュール4002は、全ての関連するトラヒックの詮索を継続して行う。関連するトラヒックは、例えば特定のVLANタグを伴うトラヒックである。詮索されたトラヒックのパケットはPkt解析モジュール4009で解析され、さらにPkt分析モジュール4010で分析される。
2)詮索されたパケットのペイロードはハートビート、通常のI/Oトラヒックデータ、および診断データのいずれかである。図7に示すように、システムの初期化時、ハートビートと診断は無効にされている。すなわち、通常のI/Oトラヒックデータのみ詮索される。I/Oトラヒックがタイムアウトになると、ハートビートと診断は有効にされ、3種類のトラヒックが全て詮索される。種類が異なるパケットのPkt分析モジュール4010による対応する分析処理は、それぞれ以下の通りである。
通常のI/Oトラヒックデータに関して、Pkt分析モジュール4010は、通常のI/Oトラヒックのタイムスタンプを抽出し、HAデータベース4003内の対応する記録を検索し、記録のトラヒックのタイムスタンプ領域を更新する。
ハートビートメッセージに関して、Pkt分析モジュール4010は、ハートビートのタイムスタンプを抽出し、HAデータベース4003内の対応する記録を検索し、記録のハートビートのタイムスタンプ領域を更新する。
診断データに関して、Pkt分析モジュール4010は、診断情報を抽出する。診断情報は、例えばシステムリソースの有用性(CPUの有用性、ネットワークの有用性、メモリの有用性)である。次いで、Pkt分析モジュール4010は、HAデータベース4003内の対応する記録を検索し、記録の診断領域に診断情報を保存する。
3)ヘルスチェックモジュール4005は、HAデータベース4003内の2つのタイムスタンプを周期的に確認するという個別のタスクを行う。図7に示す状態遷移図に従って、ハートビートのタイムアウトとI/Oアクティビティのタイムアウトの両方が検知された場合、ヘルスチェックモジュール4005は、新たなVM-mgr2012を選択し、アクション:リセットモジュール4006に通知する。アクション:リセットモジュール4006は、対象の仮想マシンの新たなインスタンスを起動させるために、最終的にVM-mgr2012にリセットコマンドを送信する。
「使用事例2:故障の検出と診断」
図10は、仮想化システム1100の他の使用例を示す説明図である。図10は、対象の仮想マシンのハートビートの遅延が検知され、ハートビートメッセージが有効にされている時と同様に情報をより収集するためにHAマネージャが診断行動を誘発する時の使用事例を示す。
図9に示す使用事例と比較すると、診断情報はデータセンタのオペレータや管理者にとって、パフォーマンスに不利な条件を理解することや、さらに問題を見つけるために役に立つ。さらに、システムの初期化後、システムの可用性を確認するためにハートビートメッセージの代わりにI/Oトラヒックを詮索するため、ハートビートメッセージに基づいた高可用性の解決方法に比べると本特許が与える負荷は低い。I/Oトラヒックが所定の時間間隔遅延する時、ハートビートと診断は有効にされる。もしI/Oトラヒックの遅延がある時間間隔において消滅した場合、ハートビートと診断は逆に無効にされる。
図7は、システムの状態遷移図である。以下、図10を参照して実行時の振る舞いをより詳細に説明する。
1)システムの実行時、Pkt詮索モジュール4102は、全ての関連するトラヒックの詮索を継続して行う。関連するトラヒックは、例えば特定のVLANタグを伴うトラヒックである。詮索されたトラヒックのパケットはPkt解析モジュール4109で解析され、さらにPkt分析モジュール4110で分析される。
2)詮索されたパケットのペイロードはハートビート、通常のI/Oトラヒックデータ、および診断データのいずれかである。図7に示すように、システムの初期化時、ハートビートと診断は無効にされている。すなわち、通常のI/Oトラヒックデータのみ詮索される。I/Oトラヒックがタイムアウトになると、ハートビートと診断は有効にされ、3種類のトラヒックが全て詮索される。種類が異なるパケットのPkt分析モジュール4110による対応する分析処理は、それぞれ以下の通りである。
ハートビートメッセージに関して、Pkt分析モジュール4110は、ハートビートのタイムスタンプを抽出し、HAデータベース4103内の対応する記録を検索し、記録のハートビートのタイムスタンプ領域を更新する。
通常のI/Oトラヒックデータに関して、Pkt分析モジュール4110は、通常のI/Oトラヒックのタイムスタンプを抽出し、HAデータベース4103内の対応する記録を検索し、記録のトラヒックのタイムスタンプ領域を更新する。
診断データに関して、Pkt分析モジュール4110は、診断情報を抽出する。診断情報は、例えばシステムリソースの有用性(CPUの有用性、ネットワークの有用性、メモリの有用性)である。次いで、Pkt分析モジュール4110は、HAデータベース4103内の対応する記録を検索し、記録の診断領域に診断情報を保存する。
3)ヘルスチェックモジュール4105は、HAデータベース4103内の2つのタイムスタンプを周期的に確認するという個別のタスクを行う。図7に示す状態遷移図に従って、I/Oトラヒックのタイムアウトのみが検知された場合、ヘルスチェックモジュール4105は、アクション:診断モジュール4106に通知し、アクション:診断モジュール4106は、対象の仮想マシンの診断情報をより要求するために、VM-mgr2111に診断コマンドをさらに送信する。診断情報は、例えばシステムリソースの有用性であるが、これに限られない。さらに、アクション:診断モジュール4106は、対象の仮想マシンのハートビートメッセージを有効にする。
次に、本発明の概要を説明する。図11は、本発明による管理システムの概要を示すブロック図である。本発明による管理システム10は、リソースを分散させるという設計概念に基づいたデータセンタにおいて故障が発見された時に仮想マシンの故障を検知し対応する動作を誘発する管理システムであって、複数の仮想マシンが稼働しているハードウェアの要素として動作するリソースプール11〜リソースプール11(例えば、CPUプール200やI/Oデバイスプール300)と、様々なリソースプール同士を接続する相互接続ネットワーク12(例えば、相互接続ネットワーク500)と、対象の仮想マシンの故障を検知するために相互接続ネットワーク12の全てのトラヒックを詮索し故障が検知された時に対応する動作を誘発する高可用マネージャ13(例えば、HAマネージャ400)とを含む。
そのような構成により、管理システムは、リソースを分散させるという設計概念に基づいたデータセンタにおいて故障が発見された時に仮想マシンの故障を検知でき、対応する動作を誘発できる。
また、高可用マネージャ13は、相互接続ネットワーク12の全てのトラヒックを詮索する詮索モジュール(例えば、Pkt詮索モジュール402)と、詮索されたパケットを解析しヘッダおよびペイロードから情報を抽出するパケット解析モジュール(例えば、Pkt解析モジュール409)と、同一のコンピュータデバイスにおける仮想マシンに対する基本的な操作を提供する仮想マシンマネージャ(例えば、VMマネージャ404)と、局所の仮想マシンマネージャに所定のコマンドを送信する動作モジュール(例えば、アクションモジュール406)と、全ての対象の仮想マシンの記録を保存する高可用データベース(例えば、HAデータベース403)とを有し、パケット解析モジュールは、仮想マシンからのハートビートメッセージを時間通りに到達、遅延、または消失のいずれかに決定し、仮想マシンからのI/Oトラヒックが存在するか否かを決定し、仮想マシンの現在の状態が所定の通常パターンであるか否かを決定し、仮想マシンマネージャは、特定の仮想マシンの新たなインスタンスを開始し、システムリソースの有用性等の特定の仮想マシンの情報をさらに収集し、動作モジュールは、利用不可能であると確信されている対象の仮想マシンの新たなインスタンスを開始し、対象の仮想マシンの情報をより収集するために診断コマンドを送信してもよい。
また、高可用データベースに保存されている記録には、少なくともNode_Id(CPUプールのID)と、VM_Id(仮想マシンのID)と、Device_Id(デバイスのID)と、Image_Id(仮想マシンによって使用される画像のID)と、NW_Address(仮想マシンによって使用されるネットワークアドレス)と、NW_Id(仮想マシンによって使用されるネットワークのID)と、Heartbeat_state(ハートビートメッセージの状態)と、Traffic_state(I/Oトラヒックの状態)と、Heartbeat_timeout(ハートビートのタイムアウトの既定値)と、Traffic_timeout(I/Oトラヒックのタイムアウトの既定値)とが含まれ、NW_Addressは、ExpEtherが使用される時はMACアドレスであり、Heartbeat_stateは、正常か遅延のいずれかであり、Traffic_stateは、正常か遅延のいずれかでもよい。
また、パケット解析モジュールは、ハートビートメッセージから対応する情報を抽出し、通常のI/Oトラヒックのメッセージから対応する情報を抽出し、システムリソースの有用性のメッセージから対応する情報を抽出してもよい。
また、パケット解析モジュールは、ハートビートがタイムアウトしているか否かを決定し、I/Oトラヒックがタイムアウトしているか否かを決定してもよい。
また、動作モジュールは、ハートビートのタイムアウトもI/Oトラヒックのタイムアウトも存在しない場合対応するタイマを単に更新し、I/Oトラヒックがタイムアウトした時に更なる診断のためにシステムリソースの情報を要求し、ハートビートとI/Oトラヒックの両方がタイムアウトした時に回復動作を誘発してもよい。
本発明による非一時的でコンピュータが読み取り可能な記録媒体に格納されている管理プログラムは、リソースを分散させるという設計概念に基づいたデータセンタにおいて故障が発見された時に仮想マシンの故障を検知し対応する動作を誘発する、複数の仮想マシンが稼働しているハードウェアの要素として動作するリソースプールと、様々なリソースプール同士を接続する相互接続ネットワークとを含む仮想化システムに含まれているコンピュータにおいて実行される管理プログラムであって、コンピュータに、対象の仮想マシンの故障を検知するために相互接続ネットワークの全てのトラヒックを詮索する詮索処理、および故障が検知された時に対応する動作を誘発する誘発処理を実行させることを特徴とする。
以上、実施形態(及び実施例)を参照して本願発明を説明したが、本願発明は上記実施形態(及び実施例)に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
10 管理システム
11〜11 リソースプール
12、500 相互接続ネットワーク
13、400、4000、4100 高可用(HA)マネージャ
100、1000、1100 仮想化システム
200 CPUプール
201、202、600、2001、2002、2101、2102 コンピュータデバイス
211、212、2011、2012、2111、2112 VM-mgr
300 I/Oデバイスプール
301、302、3001、3002、3101、3102 I/Oデバイス
402、4002、4102 パケット(Pkt)詮索モジュール
403、4003、4103 高可用(HA)データベース
404 仮想マシン(VM)マネージャ
405、4005、4105 ヘルスチェックモジュール
406 アクションモジュール
409、4009、4109 パケット(Pkt)解析モジュール
410、4010、4110 パケット(Pkt)分析モジュール
4006 アクション:リセットモジュール
4106 アクション:診断モジュール

Claims (8)

  1. リソースを分散させるという設計概念に基づいたデータセンタにおいて故障が発見された時に仮想マシンの故障を検知し対応する動作を誘発する管理システムであって、
    複数の仮想マシンが稼働しているハードウェアの要素として動作するリソースプールと、
    様々なリソースプール同士を接続する相互接続ネットワークと、
    対象の仮想マシンの故障を検知するために前記相互接続ネットワークの全てのトラヒックを詮索し故障が検知された時に対応する動作を誘発する高可用マネージャとを含む
    ことを特徴とする管理システム。
  2. 高可用マネージャは、
    相互接続ネットワークの全てのトラヒックを詮索する詮索モジュールと、
    詮索されたパケットを解析しヘッダおよびペイロードから情報を抽出するパケット解析モジュールと、
    同一のコンピュータデバイスにおける仮想マシンに対する基本的な操作を提供する仮想マシンマネージャと、
    局所の仮想マシンマネージャに所定のコマンドを送信する動作モジュールと、
    全ての対象の仮想マシンの記録を保存する高可用データベースとを有し、
    前記パケット解析モジュールは、
    仮想マシンからのハートビートメッセージを時間通りに到達、遅延、または消失のいずれかに決定し、
    仮想マシンからのI/Oトラヒックが存在するか否かを決定し、
    仮想マシンの現在の状態が所定の通常パターンであるか否かを決定し、
    前記仮想マシンマネージャは、
    特定の仮想マシンの新たなインスタンスを開始し、
    システムリソースの有用性およびシステムの能力である特定の仮想マシンの情報をさらに収集し、
    前記動作モジュールは、
    利用不可能であると確信されている対象の仮想マシンの新たなインスタンスを開始し、
    前記対象の仮想マシンの情報をより収集するために診断コマンドを送信する
    請求項1記載の管理システム。
  3. 高可用データベースに保存されている記録には、少なくとも
    CPUプールのIDであるNode_Idと、
    仮想マシンのIDであるVM_Idと、
    デバイスのIDであるDevice_Idと、
    仮想マシンによって使用される画像のIDであるImage_Idと、
    仮想マシンによって使用されるネットワークアドレスであるNW_Addressと、
    仮想マシンによって使用されるネットワークのIDであるNW_Idと、
    ハートビートメッセージの状態であるHeartbeat_stateと、
    I/Oトラヒックの状態であるTraffic_stateと、
    ハートビートのタイムアウトの既定値であるHeartbeat_timeoutと、
    I/Oトラヒックのタイムアウトの既定値であるTraffic_timeoutとが含まれ、
    前記NW_Addressは、ExpEtherが使用される時はMACアドレスであり、
    前記Heartbeat_stateは、正常か遅延のいずれかであり、
    前記Traffic_stateは、正常か遅延のいずれかである
    請求項2記載の管理システム。
  4. パケット解析モジュールは、
    ハートビートメッセージから対応する情報を抽出し、
    通常のI/Oトラヒックのメッセージから対応する情報を抽出し、
    システムリソースの有用性のメッセージから対応する情報を抽出する
    請求項2または請求項3記載の管理システム。
  5. パケット解析モジュールは、
    ハートビートがタイムアウトしているか否かを決定し、
    I/Oトラヒックがタイムアウトしているか否かを決定する
    請求項3記載の管理システム。
  6. 動作モジュールは、
    ハートビートのタイムアウトもI/Oトラヒックのタイムアウトも存在しない場合対応するタイマを単に更新し、
    I/Oトラヒックがタイムアウトした時に更なる診断のためにシステムリソースの情報を要求し、
    ハートビートとI/Oトラヒックの両方がタイムアウトした時に回復動作を誘発する
    請求項5記載の管理システム。
  7. リソースを分散させるという設計概念に基づいたデータセンタにおいて故障が発見された時に仮想マシンの故障を検知し対応する動作を誘発する、複数の仮想マシンが稼働しているハードウェアの要素として動作するリソースプールと、様々なリソースプール同士を接続する相互接続ネットワークとを含む仮想化システムに含まれているデバイスにおいて実行される管理方法であって、
    対象の仮想マシンの故障を検知するために前記相互接続ネットワークの全てのトラヒックを詮索し、
    故障が検知された時に対応する動作を誘発する
    ことを特徴とする管理方法。
  8. リソースを分散させるという設計概念に基づいたデータセンタにおいて故障が発見された時に仮想マシンの故障を検知し対応する動作を誘発する、複数の仮想マシンが稼働しているハードウェアの要素として動作するリソースプールと、様々なリソースプール同士を接続する相互接続ネットワークとを含む仮想化システムに含まれているコンピュータにおいて実行される管理プログラムであって、
    前記コンピュータに、
    対象の仮想マシンの故障を検知するために前記相互接続ネットワークの全てのトラヒックを詮索する詮索処理、および
    故障が検知された時に対応する動作を誘発する誘発処理
    を実行させるための管理プログラム。

JP2017518275A 2014-10-06 2014-10-06 仮想マシンの故障検知および回復用管理システム Expired - Fee Related JP6354901B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/005078 WO2016056035A1 (en) 2014-10-06 2014-10-06 Management system for virtual machine failure detection and recovery

Publications (2)

Publication Number Publication Date
JP2017532682A JP2017532682A (ja) 2017-11-02
JP6354901B2 true JP6354901B2 (ja) 2018-07-11

Family

ID=55652699

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017518275A Expired - Fee Related JP6354901B2 (ja) 2014-10-06 2014-10-06 仮想マシンの故障検知および回復用管理システム

Country Status (3)

Country Link
US (1) US10318392B2 (ja)
JP (1) JP6354901B2 (ja)
WO (1) WO2016056035A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10133619B1 (en) * 2015-06-08 2018-11-20 Nutanix, Inc. Cluster-wide virtual machine health monitoring
US11368372B2 (en) 2016-06-03 2022-06-21 Nutanix, Inc. Detection of outlier nodes in a cluster
CN107133131A (zh) * 2017-05-31 2017-09-05 广州鼎甲计算机科技有限公司 一种基于VMware的虚拟机合成备份方法
US10949306B2 (en) * 2018-01-17 2021-03-16 Arista Networks, Inc. System and method of a cloud service provider virtual machine recovery
CN108958219A (zh) * 2018-06-29 2018-12-07 西安航空学院 用于虚拟仪器设备的保障系统
CN113220462B (zh) * 2021-05-28 2024-02-06 赵庆林 一种基于边缘计算的集中式故障检测方法
CN114095394B (zh) * 2021-11-25 2023-09-19 北京百度网讯科技有限公司 网络节点故障检测方法、装置、电子设备及存储介质
CN114090184B (zh) * 2021-11-26 2022-11-29 中电信数智科技有限公司 一种虚拟化集群高可用性的实现方法和设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7747898B1 (en) * 2006-09-19 2010-06-29 United Services Automobile Association (Usaa) High-availability data center
JP2008181387A (ja) 2007-01-25 2008-08-07 Nec Corp I/oバスシステム及びその管理方法
JP2010198491A (ja) * 2009-02-26 2010-09-09 Yokogawa Electric Corp 仮想メシンサーバおよびこれを用いた仮想マシンネットワーク監視システム
JP5560936B2 (ja) * 2010-06-16 2014-07-30 富士通株式会社 構成情報取得方法、仮想プローブおよび構成情報取得制御装置
US9329947B2 (en) * 2010-06-22 2016-05-03 Red Hat Israel, Ltd. Resuming a paused virtual machine without restarting the virtual machine
US9292329B2 (en) * 2011-02-10 2016-03-22 Microsoft Technology Licensing, Llc Virtual switch interceptor
JP5803502B2 (ja) * 2011-09-27 2015-11-04 富士通株式会社 監視装置、制御方法及び制御プログラム
US9497136B1 (en) * 2011-09-28 2016-11-15 Emc Corporation Method and system for providing usage metrics to manage utilzation of cloud computing resources
US9647909B2 (en) * 2014-09-23 2017-05-09 Uila Networks, Inc. Monitor a data center infrastructure

Also Published As

Publication number Publication date
US10318392B2 (en) 2019-06-11
WO2016056035A1 (en) 2016-04-14
US20170293537A1 (en) 2017-10-12
JP2017532682A (ja) 2017-11-02

Similar Documents

Publication Publication Date Title
JP6354901B2 (ja) 仮想マシンの故障検知および回復用管理システム
JP7362650B2 (ja) タスク処理方法、装置及びシステム
CN108430116B (zh) 断网重连方法、介质、装置和计算设备
CN108039964B (zh) 基于网络功能虚拟化的故障处理方法及装置、系统
US20200104222A1 (en) Systems and methods for managing server cluster environments and providing failure recovery therein
EP2972870B1 (en) Coordinating fault recovery in a distributed system
US11093296B2 (en) System, virtualization control apparatus, method for controlling a virtualization control apparatus, and program
US10541862B2 (en) VNF processing policy determining method, apparatus, and system
US20140032753A1 (en) Computer system and node search method
EP3472971B1 (en) Technique for resolving a link failure
WO2018095414A1 (zh) 虚拟机故障的检测和恢复方法及装置
WO2015058711A1 (zh) 故障快速检测方法及装置
US10353786B2 (en) Virtualization substrate management device, virtualization substrate management system, virtualization substrate management method, and recording medium for recording virtualization substrate management program
CN103607296A (zh) 一种虚拟机故障处理方法和设备
US20200036576A1 (en) Two-channel-based high-availability
JP2016536920A (ja) ネットワークパフォーマンス監視のための機器および方法
US9183092B1 (en) Avoidance of dependency issues in network-based service startup workflows
US11272024B2 (en) Persisting an HTTP connection between application components
CN103731290A (zh) 一种服务器故障切换方法
JP6421516B2 (ja) サーバ装置、冗長構成サーバシステム、情報引継プログラム及び情報引継方法
CN103731315A (zh) 一种服务器故障检测方法
US8036105B2 (en) Monitoring a problem condition in a communications system
WO2017018435A1 (ja) リソース監視装置、仮想ネットワークファンクション管理システム、リソース監視方法及びプログラム
WO2013097176A1 (zh) 一种用户体验指标监控方法及监控虚拟机
JP6364203B2 (ja) システムの稼働状態を監視する監視サーバ及び監視サーバの制御方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171024

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171215

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180515

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180528

R150 Certificate of patent or registration of utility model

Ref document number: 6354901

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees