JP2017528807A - システム障害からのクラウド・ベース・サービスの可用性の回復 - Google Patents

システム障害からのクラウド・ベース・サービスの可用性の回復 Download PDF

Info

Publication number
JP2017528807A
JP2017528807A JP2017505830A JP2017505830A JP2017528807A JP 2017528807 A JP2017528807 A JP 2017528807A JP 2017505830 A JP2017505830 A JP 2017505830A JP 2017505830 A JP2017505830 A JP 2017505830A JP 2017528807 A JP2017528807 A JP 2017528807A
Authority
JP
Japan
Prior art keywords
cloud
customer
based service
recovery action
failure
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.)
Granted
Application number
JP2017505830A
Other languages
English (en)
Other versions
JP6581648B2 (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.)
Microsoft Corp
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2017528807A publication Critical patent/JP2017528807A/ja
Application granted granted Critical
Publication of JP6581648B2 publication Critical patent/JP6581648B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • 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/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/142Reconfiguring to eliminate the error
    • 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
    • G06F11/3414Workload generation, e.g. scripts, playback
    • 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/3438Recording 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 monitoring of user actions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/805Real-time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/86Event-based monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

システム障害からクラウド・ベース・サービスの可用性を回復させる。顧客体験に関連する顧客トランザクションを実行して、クラウド・ベース・サービスにおける顧客体験をシミュレートする。クラウド・ベース・サービスのサブシステムに関連する障害を、顧客トランザクションの出力から検出する。この障害と関連付けられた回復アクションを決定する。サブシステム上で回復アクションを実行し、監視して成功ステータスを判定する。【選択図】図2

Description

[0001] 分散型コンピューティング技術は、複数のコンピューティング・リソースを調整して別個のソリューションを提供することを可能にした。分散型コンピューティングの一例、クラウド・コンピューティングは複数のシステムを纏めて、ユーザーの要望に合ったソリューションを提供する。クラウド・コンピューティングは、莫大なコンピューティング・リソースに及ぶことができる。クラウド・コンピューティング・アプリケーションおよびサービスにおいて利用されるコンピューティング・リソースは、ネットワークおよび場所を跨がって散在する。散在するコンピューティング・リソースは、離れたところから制御および管理される。通常、クラウド・コンピューティング・アセットに対する設置(installation)および構成(configuration)のサポートは、手作業のソリューションによって提供される。広く散在するコンピューティング・リソースの人間構成員(human component)による手作業の設置ソリューションは、価格効率的でない。
[0002] クラウド・コンピューティング・システムに対する従来の回復ソリューションには欠点がある。従来の回復ソリューションは、クラウド・コンピューティング・システムの個々のコンポーネントにおける障害に取り組むのが通例となっている。個々のコンポーネントの健全性がローカルに監視される。個々のコンポーネントの健全性についての通知が中央コントローラーに送信される。また、従来の回復ソリューションはコンポーネントのクラスターも監視する。クラスターにおける個々のコンポーネントに関連する障害を解決するために、回復アクションがクラスターに送信され実行される。
[0003] この摘要は、詳細な説明において以下で更に説明する概念から選択したものを、簡略化した形態で紹介するために設けられている。この摘要は、特許請求する主題の主要な特徴や必須の特徴のみを特定することを意図するのではなく、特許請求する主題の範囲を判断するときの補助として意図するのでもない。
[0004] 実施形態は、システム障害からクラウド・ベース・サービスの可用性を回復させることを目的とする。ある実施形態例では、クラウド・ベース・サービスの管理アプリケーションが、顧客体験に関連する顧客トランザクションをシミュレートする(simulate)することができる。顧客体験は、クラウド・ベース・サービスに関連するユーザー・シナリオを形成する1つ以上の顧客トランザクションを含むことができる。クラウド・ベース・サービスに関連する障害は、シミュレートされた顧客トランザクションの出力から検出することができる。この障害を分析し、障害を回復アクションにマッピングすることによって、回復アクションを決定することができる。回復アクションを実行および監視して、成功ステータスを判定することができる。
[0005] これらおよびその他の特徴ならびに利点は、以下の詳細な説明を読み、添付図面を検討することによって明らかになるであろう。尚、以上の概略的な説明および以下の詳細な説明は解説のためであり、特許請求する態様を限定するのではないことは理解されよう。
図1は、実施形態にしたがって、顧客体験に基づいて、クラウド・ベース・サービスを回復させる例を示す概念図である。 図2は、実施形態にしたがって、顧客体験に基づいてクラウド・ベース・サービスを回復させる方式のコンポーネントを示す。 図3は、実施形態にしたがって、顧客体験に基づいてクラウド・ベース・サービスを回復させる方式の追加のコンポーネントを示す。 図4は、実施形態にしたがって、顧客体験に基づいてクラウド・ベース・サービスを回復させる方式の報告機能(reporting feature)を示す。 図5は、実施形態によるシステムを実現することができるネットワーク接続環境を簡略化したものである。 図6は、システム障害からクラウド・ベース・サービスの可用性を回復させるように構成することができる汎用コンピューティング・デバイスを示す。 図7は、実施形態にしたがって、システム障害からクラウド・ベース・サービスの可用性を回復させるプロセスの論理流れ図を示す。
[0013] 以上で端的に説明したように、クラウド・ベース・サービスに付随する管理アプリケーションによって、システム障害からクラウド・ベース・サービスの可用性を回復させることができる。顧客体験に関連する顧客トランザクションをシミュレートして、顧客体験をシミュレートすることができる。クラウド・ベース・サービスに伴う障害は、顧客トランザクションの出力から検出することができる。この障害に関連付けられる回復アクションを決定することができる。この回復アクションを実行および監視して、成功ステータスを判定することができる。
[0014] 以下の詳細な説明では、その一部を形成する添付図面を参照する。添付図面では、具体的な実施形態または例を例示として示す。本開示の主旨や範囲から逸脱することなく、これらの態様を組み合わせることもでき、他の態様を利用することもでき、構造的変更を行うこともできる。したがって、以下の詳細な説明は、限定的な意味で捕らえてはならず、本発明の範囲は、添付する特許請求の範囲およびその均等物によって定められるものとする。
[0015] 実施形態について、コンピューティング・デバイスのオペレーティング・システム上で実行するアプリケーション・プログラムと共に実行するプログラム・モジュールという一般的なコンテキストで説明するが、他のプログラム・モジュールと組みあわせて態様が実現されてもよいことは当業者には認められよう。
[0016] 一般に、プログラム・モジュールは、ルーチン、プログラム、コンポーネント、データー構造、および他のタイプの構造を含み、特定のタスクを実行するか、または特定の抽象データー型を実装する。更に、実施形態は他のコンピューター・システム構成でも実施できることは、当業者には認められよう。他のコンピューター・システム構成には、ハンドヘルド・デバイス、マルチプロセッサー・システム、マイクロプロセッサー・ベースまたはプログラマブル消費者用電子機器、ミニコンピューター、メインフレーム・コンピューター、および相当のコンピューティング・デバイスが含まれる。また、実施形態は分散型コンピューティング環境においても実施することができ、この場合、通信ネットワークを通じてリンクされたリモート処理デバイスによってタスクが実行される。分散型コンピューティング環境では、プログラム・モジュールは、ローカルおよびリモート双方のメモリー記憶デバイスに配置されてもよい。
[0017] 実施形態は、コンピューター実装プロセス(方法)、コンピューティング・システム、あるいはコンピューター・プログラム製品またはコンピューター読み取り可能媒体のような製品として実現することもできる。コンピューター・プログラム製品とは、コンピューター・システムによって読み取り可能であり、プロセス例(1つまたは複数)をコンピューターまたはコンピューティング・システムに実行させるための命令を含むコンピューター・プログラムをエンコードしたコンピューター記憶媒体とすることができる。コンピューター読み取り可能記憶媒体とは、コンピューター読み取り可能メモリー・デバイスである。コンピューター読み取り可能記憶媒体は、例えば、揮発性コンピューター・メモリー、不揮発性メモリー、ハード・ドライブ、およびフラッシュ・ドライブの内の1つ以上によって実現することができる。
[0018] 本明細書全体を通じて、「プラットフォーム」という用語は、システム障害からクラウド・ベース・サービスの可用性を回復させるためのソフトウェアおよびハードウェア・コンポーネントの組み合わせとすることができる。プラットフォームの例には、複数のサーバーにまたがってホストされ実行されるサービス、1つのコンピューティング・デバイス上で実行されるアプリケーション、および相当するシステムが含まれるが、これらに限定されるのではない。「サーバー」という用語は、一般に、1つ以上のソフトウェア・プログラムを通例ネットワーク接続環境において実行するコンピューティング・デバイスを指す。しかしながら、サーバーは、1つ以上のコンピューティング・デバイス上で実行されネットワーク上でサーバーと見なされる仮想サーバー(ソフトウェア・プログラム)として実現することもできる。これらの技術および実施形態例についてのこれ以上の詳細は、以下の説明において見出すことができる。
[0019] 図1は、実施形態にしたがって、顧客体験に基づいてクラウド・ベース・サービスを回復させる例を示す概念図である。
[0020] ブロック・ダイアグラム100に示すように、クラウド・ベース・サービス106はクライアント・デバイス102を介してサービスを顧客108に提供することができる。クラウド・ベース・サービス106は、クライアント・デバイス102においてクライアント・インターフェースを介して幅広い種々のサービスを提供することができる。サービスは、とりわけ、文書共有、電子メール・サービス、ストレージ・サービスを含むことができる。加えて、顧客108(クライアント・デバイス102とインターフェースすることを許可されている)は、とりわけ、1人の人、複数の人、人のグループ、組織を含むエンティティとすることができる。
[0021] クラウド・ベース・サービス106は、分散型アプリケーションの1つ以上のコンポーネントを実行する1つ以上のコンピューティング・デバイスを介してサービスを提供する分散型アプリケーションであってもよい。1つ以上のコンピューティング・デバイスは、有線またはワイヤレス・インフラストラクチャを使用する1つ以上のネットワークを通じて接続することができる。クラウド・ベース・サービス106の例には、電子メール・サービスを含むことができる。電子メール・サービスは複数のコンピューティング・デバイスにホストすることができる。電子メール・サービスは、各コンピューティング・デバイスの利用可能な処理容量に基づいて、コンピューティング・デバイス間で分割されてもよい。他のシナリオ例では、クラウド・ベース・サービス106が文書共有サービスを含むこともできる。文書共有サービスは、各コンピューティング・デバイスの利用可能な記憶容量に基づいて、格納されている文書を複数のコンピューティング・デバイスに跨がって分散することができる。電子メール・サービスおよび文書共有サービスとしてのクラウド・ベース・サービス106の例は、限定の意味で提示されたのではない。クラウド・ベース・サービス106は、顧客108のような1つ以上の顧客にサービスを提供する、任意の分散型コンピューティング・ソリューションを含むことができる。
[0022] クライアント・デバイス102を介して、顧客108がクラウド・ベース・サービス106と対話処理することを可能にすることができる。クライアント・デバイス102は、とりわけ、デスクトップ・コンピューター、スマート・フォン、ノートブック・コンピューター、タブレット・コンピューターのような、多数のコンピューティング・デバイスを含むことができる。顧客108は、クライアント・デバイス102によって設けられるクラウド・ベース・サービス106のクライアント・インターフェースを介して、クラウド・ベース・サービス106と対話処理することができる。あるいは、クラウド・ベース・サービス106がクライアント・インターフェースを設けてもよく、クライアント・デバイス102はクライアント・アプリケーション内にクライアント・インターフェースをレンダリングするのでもよい。顧客108は、多数の入力様式(modality)によって、クライアント・インターフェースと対話処理することができる。入力様式には、とりわけ、タッチ・ベース・アクション(touch-based action)110、キーボード・ベース入力、マウス・ベース入力を含むことができる。タッチ系アクション110は、とりわけ、タッチ・アクション、スワイプ・アクションのような多数のジェスチャを含むことができる。
[0023] 顧客108とクラウド・ベース・サービス106のクライアント・インターフェースとの1つ以上の対話処理は、顧客体験104の範囲に含むことができる。顧客体験104は、1つ以上の顧客タスクのためのコンテナと考えてもよい。顧客体験104の例には、顧客108が電子メール・サービスのクライアント・インターフェースを起動し、顧客108のユーザー・アカウントに関連する1つ以上の電子メールを読み出すことを含んでもよい。顧客体験104の他の例には、顧客108が文書共有サービスの編集クライアント・インターフェースを起動して文書を編集することを含んでもよい。また、顧客体験104は、顧客108が文書を編集しその文書を保存することを含んでもよい。
[0024] 図1におけるシステム例では、クラウド・ベース・サービス106および顧客体験104を含む具体的なコンポーネントを用いて説明したが、実施形態はこれらのコンポーネントやシステム構成に限定されるのではなく、これらよりも少ないまたは多いコンポーネントを採用する他のシステム構成でも実現することができる。
[0025] 図2は、実施形態にしたがって、顧客体験に基づいてクラウド・ベース・サービスを回復させる方式のコンポーネントを示す。
[0026] ブロック・ダイアグラム200において、顧客体験204に基づいてクラウド・ベース・サービス206を回復させる方式について説明する。管理アプリケーション210は、クラウド・ベース・サービス206のサブシステム208に関連する障害212を判定するために、顧客トランザクション202をシミュレートすることができる。
[0027] 管理アプリケーション210は、クラウド・ベース・サービス206を監視し管理するアプリケーションを含むことができる。管理アプリケーション210は、クラウド・ベース・サービス206のコンポーネントであってもよい。あるいは、管理アプリケーション210は、クラウド・ベース・サービス206と相互作用することが許可されることが可能な単体アプリケーションであってもよい。
[0028] 管理アプリケーション210は、クラウド・ベース・サービス206の健全性監視に関連する1組の顧客体験から、顧客体験を選択することができる。クラウド・ベース・サービス206の健全性監視は、クラウド・ベース・サービス206によって提供される連続動作のためのプロセス(崩壊した機能の監視および解決のような)を含むことができる。加えて、顧客体験204は、使用頻度、過去の使用分布、および顧客体験204の使用の新しさ(recentness)を含む判断基準に基づいて選択されてもよい。シナリオ例では、管理アプリケーション210が、最も頻繁に使用されている顧客体験204を、使用頻度に基づいてソートされた1組の顧客体験から選択するのでもよい。他のシナリオ例では、管理アプリケーション210が、1組の顧客体験の過去の使用分布の最上位にある顧客体験204を選択するのでもよい。更に他のシナリオ例では、管理アプリケーション210が、使用の新しさに基づいてソートされた1組の顧客体験から、最後に使用された顧客体験204を選択するのでもよい。
[0029] あるいは、管理アプリケーション210が、クラウド・ベース・サービス206の健全性監視に関連する1組の顧客体験から、顧客体験204の選択を受けてもよい。この選択は、顧客体験204に関連する顧客を含む利害関係者(stakeholder)またはクラウド・ベース・サービス206の管理者によって行われてもよい。
[0030] 更に、顧客体験204は顧客トランザクション202を格納することもできる。顧客トランザクション202は、サブシステム208を介してクラウド・ベース・サービス206によって実行することができる1つ以上のコマンドを含むことができる。サブシステム208は、顧客トランザクション202のシミュレーション中に出力を生成することができる。この出力は、顧客トランザクション202に関連する障害を判定するために使用することができる。
[0031] また、顧客体験204が、顧客トランザクション202と共に、1つ以上の他の顧客トランザクションも格納できることを、管理アプリケーション210が判断することもできる。1つ以上の他の顧客トランザクションも、障害212またはクラウド・ベース・サービス206に関連する1つ以上の他の障害を検出するために、シミュレートすることができる。クラウド・ベース・サービス206の例として、電子メール・サービスにおける顧客体験204のシミュレーションを含む例も可能である。顧客トランザクション202は、電子メール・インターフェース起動アクションを含むことができる。1つ以上の他の顧客トランザクションは、電子メールの引き出し、および顧客体験204に関連する電子メールのレンダリングを含むことができる。
[0032] クラウド・ベース・サービス206のサブシステム208は、顧客トランザクション202をシミュレートすることができる。障害212は、顧客トランザクション202のシミュレーション中に検出することができる。サブシステム208は、顧客トランザクション202の出力を通じて、障害212を報告することができる。
[0033] あるいは、障害212は、利用状況データー(usage data)から外挿補間することもできる。利用状況データーは受動データーと呼ばれることもある。利用状況データーは、クラウド・ベース・サービス206の使用シナリオの1つ以上の顧客トランザクションの測定値を含むことができる。測定値は、クラウド・ベース・サービス206の使用シナリオに関連するエラーを捕らえることができる。クラウド・ベース・サービス206に関連するクライアント・デバイスは、利用状況データーを取り込み、管理アプリケーション210のような分析アプリケーションにこの利用状況データーを送信することができる。管理アプリケーション210は、利用状況データーを処理して、閾値を超える利用状況データーによって報告されるエラーの数に基づいて、障害212を検出することができる。この閾値は、クラウド・ベース・サービス206の利害関係者によって設定されてもよい。また、利用状況データーを匿名にするために、個人データーを利用状況データーから除去してもよい。個人データーの例には、とりわけ、顧客の場所を含むことができる。また、とりわけ、障害を起こしているクラウド・ベース・サービス206に関連する1つ以上のサブシステムの識別情報のような、共通の判断基準に基づいて、利用状況データーを集計することもできる。
[0034] クライアント・デバイスによって、利用状況データーをログ・ファイル内に取り込み、管理アプリケーション210に送信することができる。管理アプリケーション210は、ログ・ファイルを解析して、障害212に関連する情報を抽出することができる。また、管理アプリケーション210は、クラウド・ベース・サービス206のデバイスのような他のソースから、利用状況データーを引き出すこともできる。クラウド・ベース・サービス206は、顧客に関連する使用シナリオの測定値を取り込むためにリソースを割り当てることができる。測定値は、利用状況データーとして格納して、障害212の監視および分析のために、管理アプリケーション210のような分析アプリケーションに利用可能にすることができる。
[0035] 図3は、実施形態にしたがって、顧客体験に基づいてクラウド・ベース・サービスを回復させる方式の追加のコンポーネントを示す。
[0036] ブロック・ダイアグラム300に示すように、管理アプリケーション310は、クラウド・ベース・サービス306上でシミュレートされた顧客トランザクションの出力314から障害312を判定することができる。また、とりわけ、障害を起こしているクラウド・ベース・サービス306に関連する1つ以上のサブシステムの識別情報のような、共通の判断基準に基づいて、出力314を集計することもできる。障害312を回復アクション316にマッピングすることができ、回復アクション316は、障害312に関連するサブシステム308上で実行することができる。回復アクション316を監視して、回復アクション316の成功ステータス318を判定することができる。
[0037] 管理アプリケーション310は、サブシステム308を健全ステータスに復元する(restore)ために、サブシステム308上で回復アクション316を実行することができる。あるいは、サブシステム308(障害を起こしたサブシステム)に関連する1つ以上のプロセスを、フェイルオーバー機能を備える健全なサブシステムに切り替える(reroute)ために、回復アクション316を実行することもできる。
[0038] ある例によれば、回復アクション316を監視しながら、顧客体験に関連する1つ以上のメトリックを追跡することもできる。1つ以上のメトリックは、クラウド・ベース・サービス306の1つ以上のサブシステム上でシミュレートされた1つ以上の顧客トランザクションに関連する測定値を含むことができる。回復アクション316の間これらのメトリックを監視して、1つ以上のメトリックが成功ステータス318に関連する1つ以上の閾値よりも高いことを判定することができる。
[0039] サブシステム308が顧客体験をシミュレートしているならば、これに関連するメトリックから、可用性数値(availability number)を生成することができる。メトリックは、出力314から判定することができる。障害312は、可用性数値が閾値未満であるという他の判定に応答して判定することもできる。閾値は、クラウド・ベース・サービス306の管理者によって設定することができる。
[0040] また、管理アプリケーション310は、成功ステータス318が負(negative)であるという判定に応答して、障害312に関連付けられた他の回復アクションを決定することもできる。回復アクション316がサブシステム308を健全ステータスに復元することに失敗した場合、管理アプリケーション310は、回復アクションのリストから、障害312に適合する(match)他の回復アクションを引き出し、この他の回復アクションを実行することができる。また、他の回復アクションを監視し、成功ステータス318を判定して、サブシステム308を健全ステータスに復元することもできる。回復アクション316は、第1回復アクションであってもよい。他の回復アクションは第2回復アクションであってもよい。
[0041] 他の例によれば、管理アプリケーション310が、1つ以上の判断基準を判定するために、出力314を分析することができる。判断基準は、とりわけ、障害を起こしているクラウド・ベース・サービス306に関連する1つ以上のサブシステムの識別情報、障害を起こしている1つ以上のサブシステムの数、障害を起こしている1つ以上のサブシステムに関連するパターンを含むことができる。この判断基準を障害312に含めることもできる。判断基準に基づいて、障害312を回復アクション316にマッピングすることができる。
[0042] 図4は、実施形態にしたがって、顧客体験に基づいてクラウド・ベース・サービスを回復させる方式の報告機能を示す。
[0043] ブロック・ダイアグラム400に示すように、管理アプリケーション410は、クラウド・ベース・サービスにおける1つ以上の障害を判定するために、クラウド・ベース・サービスにおける顧客体験のシミュレーションに基づいて、報告420を生成することができる。報告420は、障害412に関連する情報、回復アクション416、または成功ステータス418を含むことができる。報告420は、利害関係者422によって要求されるような、報告様式に一致するように定式化することもできる。
[0044] 利害関係者422は、顧客体験に関連する顧客を含むことができる。また、利害関係者422はクラウド・ベース・システムの管理者を含むこともできる。報告420は、スケジュールに基づいて送信することができる。あるいは、ユーザー体験のシミュレーションの結末、および障害412の解決に基づいて動的に報告420を送信することもできる。
[0045] システム障害からクラウド・ベース・サービスの可用性を回復させることの技術的効果は、サービスの1つ以上のサブシステムで障害状態が検出されたときにおける、クラウド・ベース・サービスの復元の強化(enhancement)を含むことができる。
[0046] 図2および図4におけるシナリオ例や方式は、具体的なコンポーネント、データー型、および構成で示されている。実施形態は、これらの構成例によるシステムに限定されるのではない。システム障害からのクラウド・ベース・サービスの可用性の回復は、アプリケーションおよびユーザー・インターフェースにおいてこれらよりも少ないまたは多いコンポーネントを採用する構成においても実現することができる。更に、図2および図4に示す方式およびコンポーネントの例、ならびにそれらのサブコンポーネントは、本明細書において説明する原理を使用して、他の値を用いても同様に実現することができる。
[0047] 図5は、実施形態を実現することができるネットワーク接続環境例を示す。クラウド・ベース・サービスの顧客に基づく回復に備えるように構成された管理アプリケーションは、ホスト型サービス(hosted service)のような1つ以上のサーバー514にわたって実行されるソフトウェアによって実現することができる。このプラットフォームは、スマート・フォン513、ラップトップ・コンピューター512、またはデスクトップ・コンピューター511(「クライアント・デバイス」)のような個々のコンピューティング・デバイス上のクライアント・アプリケーションと、ネットワーク(1つまたは複数)510を通じて通信することができる。
[0048] クライアント・デバイス511〜513の内任意のものにおいて実行されるクライアント・アプリケーションは、サーバー514によって実行されるアプリケーション(1つまたは複数)を介した通信、または個々のサーバー516上における通信を容易にすることができる。管理アプリケーションは、クラウド・ベース・サービスにおける1つ以上の障害を判定するために、顧客体験をシミュレートすることができる。障害を回復アクションにマッピングすることができ、回復アクションを実行し監視して、回復アクションの成功状態を判定することができる。管理アプリケーションは、障害および回復アクションに関連するデーターをデーター・ストア(1つまたは複数)519に、直接またはデーターベース・サーバー518を介して格納することができる。
[0049] ネットワーク(1つまたは複数)510は、サーバー、クライアント、インターネット・サービス・プロバイダー、および通信媒体の任意のトポロジーを含むことができる。実施形態によるシステムは、固定または動的トポロジーを有することができる。ネットワーク(1つまたは複数)510は、企業ネットワークのような安全なネットワーク、ワイヤレス・オープン・ネットワークのような安全でないネットワーク、またはインターネットを含むことができる。また、ネットワーク(1つまたは複数)510は、公衆電話交換網(PSTN)またはセルラ・ネットワークのような他のネットワークを通じた通信を調整することもできる。更に、ネットワーク(1つまたは複数)510は、Bluetooth(登録商標)または同様のもののような短距離ワイヤレス・ネットワークを含むことができる。ネットワーク(1つまたは複数)510は、本明細書において説明したノード間に通信を提供する。一例として、そして限定ではなく、ネットワーク(1つまたは複数)510は、音響、RF、赤外線、およびその他のワイヤレス媒体のような、ワイヤレス媒体を含むことができる。
[0050] コンピューティング・デバイス、アプリケーション、データー・ソース、およびデーター分散システムの多くの他の構成も、システム障害からクラウド・ベース・サービスの可用性を回復させるために採用することができる。更に、図5において論じたネットワーク接続環境は、例示を目的とするに過ぎない。実施形態は、これらのアプリケーション、モジュール、またはプロセスの例に限定されるのではない。
[0051] 図6は、本明細書において説明した少なくともいくつかの実施形態にしたがって配置され(arranged)、システム障害からクラウド・ベース・サービスの可用性を回復させるように構成する(configure)ことができる汎用コンピューティング・デバイスを示す。
[0052] 例えば、コンピューティング・デバイス600は、システム障害からクラウド・ベース・サービスの可用性を回復させるために使用することができる。基本構成602の例では、コンピューティング・デバイス600は1つ以上のプロセッサー604とシステム・メモリー606とを含むことができる。プロセッサー604とシステム・メモリー606との間の通信のために、メモリー・バス608を使用することができる。基本構成602は、図6では、内側の破線内にあるコンポーネントによって例示することができる。
[0053] 所望の構成に応じて、プロセッサー604は任意のタイプにすることができ、マイクロプロセッサー(μP)、マイクロコントローラー(μC)、ディジタル信号プロセッサー(DSP)、またはこれらの任意の組み合わせを含むが、これらに限定されるのではない。プロセッサー604は、レベル・キャッシュ・メモリー612のような1つ以上のレベルのキャッシング(caching)、プロセッサー・コア614、およびレジスター616を含むことができる。プロセッサー・コア614は、算術論理ユニット(ALU)、浮動小数点ユニット(FPU)、ディジタル信号処理コア(DSPコア)、またはこれらの任意の組み合わせを含むことができる。また、メモリー・コントローラー618は、プロセッサー604と共に使用することもでき、またはある実施態様では、メモリー・コントローラー618はプロセッサー604の一体部分であってもよい。
[0054] 所望の構成に応じて、システム・メモリー606は、任意のタイプにすることができ、揮発性メモリー(RAMのような)、不揮発性メモリー(ROM、フラッシュ・メモリー等のような)、またはこれらの任意の組み合わせを含むが、これらに限定されるのではない。システム・メモリー606は、オペレーティング・システム620、管理アプリケーション622、およびプログラム・データー624を含むことができる。管理アプリケーション622は、顧客体験をシミュレートして、クラウド・ベース・サービスにおける1つ以上の障害を判定することができる。管理アプリケーション622は、障害を回復アクションにマッピングし、この回復アクションを実行して、障害に関連するサブシステムを復元することができる。本明細書において説明したように、プログラム・データー624は、データーの中でもとりわけ、シミュレーション・データー628等を含むことができる。シミュレーション・データー628は、障害および回復アクションに関連する情報を含むことができる。
[0055] コンピューティング・デバイス600は、基本構成602と任意の所望のデバイスおよびインターフェースとの間の通信を容易にするために、追加の機構(feature)または機能(functionality)および追加のインターフェースを有することもできる。例えば、基本構成602と1つ以上のデーター記憶デバイス632との間におけるストレージ・インターフェース・バス634を通じた通信を容易にするために、バス/インターフェース・コントローラー630を使用することもできる。データー記憶デバイス632は、1つ以上のリムーバブル記憶デバイス636、1つ以上の非リムーバブル記憶デバイス638、またはこれらの組み合わせとすることができる。リムーバブル記憶デバイスおよび非リムーバブル記憶デバイスの例には、フレキシブル・ディスク・ドライブおよびハード・ディスク・ドライブ(HDD)のような磁気ディスク・デバイス、コンパクト・ディスク(CD)ドライブまたはディジタル・バーサタイル・ディスク(DVD)ドライブのような光ディスク・ドライブ、ソリッド・ステート・ドライブ(SSD)、ならびにテープ・ドライブ、更にその他数多くを含むことができる。コンピューター記憶媒体の例には、揮発性および不揮発性、リムーバブル、ならびに非リムーバブル媒体を含むことができ、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、またはその他のデーターのような情報の格納のための任意の方法または技術で実現される。
[0056] システム・メモリー606、リムーバブル記憶デバイス636、および非リムーバブル記憶デバイス638は、コンピューター記憶媒体の例としてもよい。コンピューター記憶媒体は、RAM、ROM、EEPROM、フラッシュ・メモリーまたは他のメモリー技術、CD−ROM、ディジタル・バーサタイル・ディスク(DVD)、ソリッド・ステート・ドライブ、あるいは他の光ストレージ、磁気カセット、磁気テープ、磁気ディスク記憶デバイスまたはその他の磁気記憶デバイス、あるいは所望の情報を格納するために使用することができ、コンピューティング・デバイス600によってアクセスすることができる任意の他の媒体を含むことができるが、これらに限定されなくてよい。任意のこのようなコンピューター記憶媒体が、コンピューティング・デバイス600の一部であってもよい。
[0057] また、コンピューティング・デバイス600は、種々のインターフェース・デバイス(例えば、1つ以上の出力デバイス642、1つ以上の周辺インターフェース644、および1つ以上の通信デバイス666)から基本構成602への、バス/インターフェース・コントローラー630を介した通信を容易にするために、インターフェース・バス640も含むことができる。出力デバイス例642の一部は、グラフィクス処理ユニット648およびオーディオ処理ユニット650を含むことができ、これらは、ディスプレイまたはスピーカーのような種々の外部デバイスに、1つ以上のA/Vポート652を介して通信するように構成することができる。1つ以上の周辺インターフェース例644には、シリアル・インターフェース・コントローラー654またはパラレル・インターフェース・コントローラー656を含むことができ、これらは、入力デバイス(例えば、キーボード、マウス、ペン、音声入力デバイス、タッチ入力デバイス等)または他の周辺デバイス(例えば、プリンター、スキャナー等)のような外部デバイスと、1つ以上のI/Oポート658を介して通信するように構成することができる。通信デバイス例666はネットワーク・コントローラー660を含むことができ、ネットワーク・コントローラー660は、1つ以上の他のコンピューティング・デバイス662と、ネットワーク通信リンクを通して、1つ以上の通信ポート664を介して通信し易くするように構成することができる。1つ以上の他のコンピューティング・デバイス662には、サーバー、クライアント機器、および相当するデバイスを含むことができる。
[0058] ネットワーク通信リンクは、通信媒体の一例としてもよい。通信媒体は、搬送波のような変調データー信号または他の移送メカニズムにおいて、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、または他のデーターによって具体化することができ、任意の情報配信媒体を含むことができる。「変調データー信号」とは、その信号内に情報をエンコードするような方法で、変調データー信号特性の内1つ以上が設定または変更された信号とすることができる。一例として、そして限定ではなく、通信媒体は、有線ネットワークまたは直接有線接続のような有線媒体、ならびに音響、無線周波数(RF)、マイクロ波、赤外線(IR)、およびその他のワイヤレス媒体のようなワイヤレス媒体を含むことができる。コンピューター読み取り可能媒体という用語は、本明細書において使用される場合、記憶媒体および通信媒体の双方を含むことができる。
[0059] コンピューティング・デバイス600は、以上の機能の内任意のものを含む汎用または特殊サーバー、メインフレーム、あるいは同様のコンピューターの一部として実現することもできる。また、コンピューティング・デバイス600は、ラップトップ・コンピューターおよびラップトップ以外のコンピューター構成の双方を含むパーソナル・コンピューターとして実現することもできる。
[0060] また、実施形態例は、システム障害からクラウド・ベース・サービスの可用性の回復も含むことができる。これらの方法は、本明細書において説明した構造を含む、任意の数の方法で実現することができる。このような方法の1つは、本開示において説明したタイプのデバイスを使用する、機械動作によるものでもよい。他の随意の方法は、動作の一部を実行する1人以上の人の操作者と共に実行される方法の個々の動作の内1つ以上のためであってもよく、一方他の動作は機械によって実行されてもよい。これらの人の操作者は互いに同じ場所にいる必要はないが、各々が、プログラムの一部を実行する機械と一緒にいればよい。他の例では、機械で自動化することができる判断基準を予め選択しておくことによってというようにして、人の対話処理を自動化することもできる。
[0061] 図7は、実施形態にしたがって、システム障害からクラウド・ベース・サービスの可用性を回復させるプロセスの論理流れ図を示す。プロセス700は、クラウド・ベース・サービスの管理アプリケーション上に実装することができる。
[0062] プロセス700は、動作710から開始し、顧客体験に関連する顧客トランザクションをシミュレートすることができる。顧客トランザクションは、クラウド・ベース・サービスにおいて顧客体験をシミュレートする1つ以上のコマンドを含むことができる。動作720において、クラウド・ベース・サービスに関連する障害を、顧客トランザクションの出力から検出することができる。動作730において、障害に関連する回復アクションを決定することができる。回復アクションのリストにおける照合に基づいて、障害を回復アクションにマッピングすることができる。次に、動作740において回復アクションを実行することができる。動作750において、回復アクションを監視して、回復アクションに関連する成功ステータスを判定することができる。
[0063] プロセス700に含まれる動作は、例示を目的とするに限る。実施形態による管理アプリケーションは、それよりも少ないステップまたは多いステップを有する同様のプロセスによって実現することもでき、更に、本明細書において説明した原理を使用して、異なる順序の動作で実現することもできる。
[0064] ある例によれば、クラウド・ベース・サービスの可用性を障害から回復させるためにコンピューティング・デバイス上で実行される方法について記載することができる。この方法は、顧客体験に関連する顧客トランザクションをシミュレートするステップと、顧客トランザクションの出力から、クラウド・ベース・サービスに関連する障害を検出するステップと、障害に関連付けられた回復アクションを決定するステップと、回復アクションを実行するステップと、回復アクションを監視して、回復アクションに関連する成功ステータスを判定するステップとを含むことができる。
[0065] 他の例によれば、クラウド・ベース・サービスの健全性監視に関連する1組の顧客体験から顧客体験を選択するのでもよく、顧客体験は、使用頻度、過去の使用分布、および使用の新しさという1組からの少なくとも1つを含む判断基準に基づいて選択される。クラウド・ベース・サービスの健全性監視に関連する1組の顧客体験から、顧客体験の選択を受けてもよく、この選択は、顧客体験に関連する1組の顧客からの一人、およびクラウド・ベース・サービスの管理者を含む利害関係者によって行われてもよい。前述の顧客トランザクションを1つ以上の他の顧客トランザクションと共に格納する顧客体験を判定してもよい。1つ以上の他の顧客トランザクションをシミュレートして、クラウド・ベース・サービスに関連する障害または1つ以上の他の障害を検出してもよい。
[0066] 更に他の例によれば、この方法は、更に、障害を、クラウド・ベース・サービスに関連するサブシステムにマッピングするステップと、サブシステムを健全ステータスに復元するために、サブシステム上で回復アクションを実行するステップとを含んでもよい。更に、この方法は、障害を、クラウド・ベース・サービスに関連する障害サブシステムにマッピングするステップと、障害サブシステムに関連する1つ以上のプロセスを、フェイルオーバー機能を備える健全なサブシステムに切り替えるために、回復アクションを実行するステップとを含んでもよい。回復アクションを監視しつつ、顧客体験に関連する1つ以上のメトリックを追跡して、1つ以上のメトリックが、成功ステータスに関連する1つ以上の閾値よりも大きいことを判定してもよい。回復アクションのリストから、障害を回復アクションに引き合わせてもよい。
[0067] 他の例によれば、この方法は、 更に、成功ステータスが負であるという判定に応答して、障害に関連付けられた他の回復アクションを決定するステップと、他の回復アクションを実行するステップとを含んでもよい。他の回復アクションを監視して、他の回復アクションに関連する成功ステータスを判定してもよい。出力を分析することによって、出力から障害を生成し、クラウド・ベース・サービスに関連する1つ以上の障害サブシステムを区別してもよい。
[0068] ある例によれば、クラウド・ベース・サービスの可用性を障害から回復させるコンピューティング・デバイスについて記載することができる。このコンピューティング・デバイスは、メモリーと、メモリーに結合されたプロセッサーとを含むことができる。プロセッサーは、メモリーに格納された命令と共に管理アプリケーションを実行するように構成することができる。管理アプリケーションは、顧客体験に関連する顧客トランザクションをシミュレートし、顧客体験が顧客トランザクションを格納し、クラウド・ベース・サービスに関連する障害を、顧客トランザクションの出力から検出し、障害に関連付けられた回復アクションを決定し、回復アクションを実行し、回復アクションを監視して、回復アクションに関連する成功ステータスを判定するように構成することができる。
[0069] 他の例によれば、管理アプリケーションが、更に、障害に関連する情報を含む報告を生成し、クラウド・ベース・システムに関連する利害関係者に報告を送信するように構成され、利害関係者が、顧客体験に関連する顧客、およびクラウド・ベース・システムの管理者を含む。管理アプリケーションは、更に、回復アクションに関連する情報および成功ステータスを含む報告を生成し、この報告を、クラウド・ベース・システムに関連する利害関係者に送信するように構成され、利害関係者が、顧客体験に関連する顧客、およびクラウド・ベース・システムの管理者を含む。
[0070] ある例によれば、管理アプリケーションは、更に、出力を分析して1つ以上の判断基準を決定するように構成され、判断基準が、クラウド・ベース・サービスに関連し障害を起こしている1つ以上のサブシステム、障害を起こしている1つ以上のサブシステムの数、および障害を起こしている1つ以上のサブシステムに関連するパターンという1組から少なくとも1つを含む。1つ以上の判断基準が障害に含まれてもよく、判断基準に基づいて、障害を回復アクションにマッピングすることもできる。出力内においてクラウド・ベース・サービスの1つ以上のサブシステムに関連するメトリックから可用性数値を生成してもよい。可用性数値が閾値未満であるという判定に応答して障害を判定してもよく、閾値はクラウド・ベース・サービスの管理者によって設定可能である。
[0071] ある例によれば、クラウド・ベース・サービスの可用性を障害から回復させるための命令が格納されたコンピューター読み取り可能メモリー・デバイスについて記載することができる。命令は、以上で説明した方法と同様のアクションを含むことができる。
[0072] 以上の明細書、例、およびデーターは、実施形態の組成(composition)の製造および使用の完全な説明を提供する。構造的特徴および/または方法論的アクトに特定的な文言で主題について説明したが、添付する特許請求の範囲において定められる主題は、必ずしも以上で説明した具体的な特徴やアクトに限定されるのではないことは理解されよう。逆に、以上で説明した具体的な特徴およびアクトは、特許請求の範囲および実施形態を実現する形態例として開示したまでである。

Claims (15)

  1. クラウド・ベース・サービスの可用性を障害から回復させるためにコンピューティング・デバイス上で実行される方法であって、
    前記顧客体験に関連する顧客トランザクションをシミュレートするステップと、
    前記顧客トランザクションの出力から、前記クラウド・ベース・サービスに関連する障害を検出するステップと、
    前記障害に関連付けられた回復アクションを決定するステップと、
    前記回復アクションを実行するステップと、
    前記回復アクションを監視して、前記回復アクションに関連する成功ステータスを判定するステップと、
    を含む、方法。
  2. 請求項1に記載の方法であって、更に、
    前記クラウド・ベース・サービスの健全性監視に関連する1組の顧客体験から前記顧客体験を選択するステップを含み、前記顧客体験が、使用頻度、過去の使用分布、および使用の新しさという1組からの少なくとも1つを含む判断基準に基づいて選択される、方法。
  3. 請求項1に記載の方法であって、更に、
    前記クラウド・ベース・サービスの健全性監視に関連する1組の顧客体験から、前記顧客体験の選択を受けるステップを含み、前記選択が、前記顧客体験に関連する1組の顧客からの一人、および前記クラウド・ベース・サービスの管理者を含む利害関係者によって行われる、方法。
  4. 請求項1に記載の方法であって、更に、
    前記顧客トランザクションを1つ以上の他の顧客トランザクションと共に格納する前記顧客体験を判定するステップと、
    前記1つ以上の他の顧客トランザクションをシミュレートして、前記クラウド・ベース・サービスに関連する前記障害または1つ以上の他の障害を検出するステップと、
    を含む、方法。
  5. 請求項1に記載の方法であって、更に、
    前記障害を、前記クラウド・ベース・サービスに関連するサブシステムにマッピングするステップと、
    前記サブシステムを健全ステータスに復元するために、前記サブシステム上で前記回復アクションを実行するステップと、
    を含む、方法。
  6. 請求項1に記載の方法であって、更に、
    前記障害を、前記クラウド・ベース・サービスに関連する障害サブシステムにマッピングするステップと、
    前記障害サブシステムに関連する1つ以上のプロセスを、フェイルオーバー機能を備える健全なサブシステムに切り替えるために、前記回復アクションを実行するステップと、
    を含む、方法。
  7. 請求項1に記載の方法であって、更に、
    前記回復アクションを監視しつつ、前記顧客体験に関連する1つ以上のメトリックを追跡して、前記1つ以上のメトリックが、前記成功ステータスに関連する1つ以上の閾値よりも大きいことを判定するステップを含む、方法。
  8. 請求項1に記載の方法であって、更に、
    前記障害を前記回復アクションに、回復アクションのリストから引き合わせるステップを含む、方法。
  9. 請求項1に記載の方法であって、更に、
    前記成功ステータスが負であるという判定に応答して、前記障害に関連付けられた他の回復アクションを決定するステップと、
    前記他の回復アクションを実行するステップと、
    前記他の回復アクションを監視して、前記他の回復アクションに関連する成功ステータスを判定するステップと、
    を含む、方法。
  10. 請求項1に記載の方法であって、更に、
    前記出力を分析することによって前記出力から前記障害を生成し、前記クラウド・ベース・サービスに関連する1つ以上の障害サブシステムを区別する(differentiate)ステップを含む、方法。
  11. クラウド・ベース・サービスの可用性を障害から回復させるコンピューティング・デバイスであって、
    メモリーと、
    前記メモリーに結合されたプロセッサーであって、前記メモリーに格納された命令と共に管理アプリケーションを実行する、プロセッサーと、
    を含み、
    前記管理アプリケーションが、
    前記顧客体験に関連する顧客トランザクションをシミュレートし、前記顧客体験が前記顧客トランザクションを格納し、
    前記クラウド・ベース・サービスに関連する障害を、前記顧客トランザクションの出力から検出し、
    前記障害に関連付けられた回復アクションを決定し、
    前記回復アクションを実行し、
    前記回復アクションを監視して、前記回復アクションに関連する成功ステータスを判定する、
    ように構成される、コンピューティング・デバイス。
  12. 請求項11に記載のコンピューティング・デバイスにおいて、前記管理アプリケーションが、更に、
    前記障害に関連する情報を含む報告を生成し、
    前記クラウド・ベース・システムに関連する利害関係者に前記報告を送信するように構成され、前記利害関係者が、前記顧客体験に関連する顧客、および前記クラウド・ベース・システムの管理者を含む、コンピューティング・デバイス。
  13. 請求項11に記載のコンピューティング・デバイスにおいて、前記管理アプリケーションが、更に、
    前記出力を分析して1つ以上の判断基準を決定し、前記判断基準が、前記クラウド・ベース・サービスに関連し障害を起こしている1つ以上のサブシステムの識別情報、障害を起こしている前記1つ以上のサブシステムの数、および障害を起こしている前記1つ以上のサブシステムに関連するパターンという1組からの少なくとも1つを含み、
    前記1つ以上の判断基準を前記障害に含ませ、
    前記判断基準に基づいて、前記障害を前記回復アクションにマッピングするように構成される、コンピューティング・デバイス。
  14. 請求項11に記載のコンピューティング・デバイスにおいて、前記管理アプリケーションが、更に、
    前記出力内において前記クラウド・ベース・サービスの1つ以上のサブシステムに関連するメトリックから可用性数値を生成し、
    前記可用性数値が閾値未満であるという判定に応答して前記障害を判定し、前記閾値が前記クラウド・ベース・サービスの管理者によって設定可能である、
    ように構成される、コンピューティング・デバイス。
  15. クラウド・ベース・システムの可用性を障害から回復させるための命令が格納されたコンピューター読み取り可能メモリー・デバイスであって、前記命令が、
    前記顧客体験に関連する顧客トランザクションをシミュレートする命令であって、前記顧客体験が前記顧客トランザクションを格納する、命令と、
    前記クラウド・ベース・サービスに関連する障害を、前記顧客トランザクションの出力から検出する命令と、
    前記障害に関連付けられた回復アクションを決定する命令と、
    前記回復アクションを実行する命令と、
    前記回復アクションを監視して、前記回復アクションに関連する成功ステータスを判定する命令と、
    前記障害、前記回復アクション、および前記成功ステータスに関連する情報を含む報告を生成する命令と、
    前記報告を、前記クラウド・ベース・システムに関連する利害関係者に送信する命令であって、前記利害関係者が、前記顧客体験に関連する顧客、および前記クラウド・ベース・システムの管理者を含む、命令と、
    を含む、コンピューター読み取り可能メモリー・デバイス。
JP2017505830A 2014-08-04 2015-08-04 システム障害からのクラウド・ベース・サービスの可用性の回復 Active JP6581648B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/451,369 2014-08-04
US14/451,369 US9436553B2 (en) 2014-08-04 2014-08-04 Recovering usability of cloud based service from system failure
PCT/US2015/043514 WO2016022506A2 (en) 2014-08-04 2015-08-04 Recovering usability of cloud based service from system failure

Publications (2)

Publication Number Publication Date
JP2017528807A true JP2017528807A (ja) 2017-09-28
JP6581648B2 JP6581648B2 (ja) 2019-09-25

Family

ID=53879798

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017505830A Active JP6581648B2 (ja) 2014-08-04 2015-08-04 システム障害からのクラウド・ベース・サービスの可用性の回復

Country Status (19)

Country Link
US (1) US9436553B2 (ja)
EP (1) EP3178004B1 (ja)
JP (1) JP6581648B2 (ja)
KR (1) KR102271007B1 (ja)
CN (1) CN106663041B (ja)
AU (1) AU2015301284B2 (ja)
BR (1) BR112017001171B1 (ja)
CA (1) CA2955216C (ja)
CL (1) CL2017000264A1 (ja)
CO (1) CO2017000695A2 (ja)
IL (1) IL249855B (ja)
MX (1) MX2017001515A (ja)
MY (1) MY185933A (ja)
NZ (1) NZ728138A (ja)
PH (1) PH12017500024A1 (ja)
RU (1) RU2699054C2 (ja)
SG (1) SG11201700531SA (ja)
WO (1) WO2016022506A2 (ja)
ZA (1) ZA201700255B (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9697545B1 (en) * 2014-03-11 2017-07-04 Vmware, Inc. Service monitor for monitoring and tracking the performance of an application running on different mobile devices
US10048994B2 (en) * 2014-10-20 2018-08-14 Teachers Insurance And Annuity Association Of America Identifying failed customer experience in distributed computer systems
KR102549605B1 (ko) * 2016-03-04 2023-06-30 삼성전자주식회사 Raid 스토리지 장치의 리커버리 방법
US10061652B2 (en) 2016-07-26 2018-08-28 Microsoft Technology Licensing, Llc Fault recovery management in a cloud computing environment
US10616378B2 (en) * 2017-02-21 2020-04-07 Netscout Systems, Inc. Adaptive session intelligence extender
EP3699766A1 (en) * 2019-02-25 2020-08-26 Zcaler, Inc. Systems and methods for monitoring, analyzing, and improving digital user experience
CN111245648A (zh) * 2020-01-06 2020-06-05 华云数据(厦门)网络有限公司 一种云手机故障告警与自动恢复的方法
US11409618B2 (en) 2020-09-14 2022-08-09 International Business Machines Corporation Transaction recovery

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007072545A (ja) * 2005-09-05 2007-03-22 Nomura Research Institute Ltd 監視装置及び監視方法
JP2011505043A (ja) * 2007-11-30 2011-02-17 インターナショナル・ビジネス・マシーンズ・コーポレーション 関連のネットワーク・トポロジを有する指定のトランザクション・サーバの動作をモニターするための方法、コンピュータ・プログラム、および装置(e‐ビジネス・システムのパフォーマンスおよび可用性をモニターするために動的にスケジュールされた合成トランザクションを使用するための方法)
JP2012174232A (ja) * 2011-02-24 2012-09-10 Fujitsu Ltd 監視装置、監視システムおよび監視方法
US20130086203A1 (en) * 2011-09-29 2013-04-04 Microsoft Corporation Multi-level monitoring framework for cloud based service
JP2013520746A (ja) * 2010-02-26 2013-06-06 シマンテック コーポレーション クラスタシステムにおいてクラスタ非対応アプリケーションをフェールオーバーするためのシステムおよび方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6487677B1 (en) * 1999-09-30 2002-11-26 Lsi Logic Corporation Methods and systems for dynamic selection of error recovery procedures in a managed device
US20020138226A1 (en) * 2001-03-26 2002-09-26 Donald Doane Software load tester
US7774402B2 (en) * 2005-06-29 2010-08-10 Visa U.S.A. Adaptive gateway for switching transactions and data on unreliable networks using context-based rules
US7996723B2 (en) * 2009-12-22 2011-08-09 Xerox Corporation Continuous, automated discovery of bugs in released software
US8823536B2 (en) * 2010-04-21 2014-09-02 Microsoft Corporation Automated recovery and escalation in complex distributed applications
US20120124193A1 (en) * 2010-11-12 2012-05-17 International Business Machines Corporation Identification of Critical Web Services and their Dynamic Optimal Relocation
US8719627B2 (en) 2011-05-20 2014-05-06 Microsoft Corporation Cross-cloud computing for capacity management and disaster recovery
US8418000B1 (en) 2012-03-13 2013-04-09 True Metrics LLC System and methods for automated testing of functionally complex systems
US9015289B2 (en) * 2012-04-12 2015-04-21 Netflix, Inc. Method and system for evaluating the resiliency of a distributed computing service by inducing a latency
CN102710757B (zh) * 2012-05-21 2014-11-05 北京航空航天大学 一种分布式云存储数据完整性保护方法
US8839042B2 (en) * 2012-08-31 2014-09-16 Ca, Inc. Dynamic load calculation and predictive scaling
CN105164647A (zh) * 2013-06-20 2015-12-16 惠普发展公司,有限责任合伙企业 生成表示应用对外部服务的故障的模拟的响应的指纹
US8910294B1 (en) * 2013-12-18 2014-12-09 State Farm Mutual Automobile Insurance Company System and method for application failure testing in a cloud computing environment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007072545A (ja) * 2005-09-05 2007-03-22 Nomura Research Institute Ltd 監視装置及び監視方法
JP2011505043A (ja) * 2007-11-30 2011-02-17 インターナショナル・ビジネス・マシーンズ・コーポレーション 関連のネットワーク・トポロジを有する指定のトランザクション・サーバの動作をモニターするための方法、コンピュータ・プログラム、および装置(e‐ビジネス・システムのパフォーマンスおよび可用性をモニターするために動的にスケジュールされた合成トランザクションを使用するための方法)
JP2013520746A (ja) * 2010-02-26 2013-06-06 シマンテック コーポレーション クラスタシステムにおいてクラスタ非対応アプリケーションをフェールオーバーするためのシステムおよび方法
JP2012174232A (ja) * 2011-02-24 2012-09-10 Fujitsu Ltd 監視装置、監視システムおよび監視方法
US20130086203A1 (en) * 2011-09-29 2013-04-04 Microsoft Corporation Multi-level monitoring framework for cloud based service

Also Published As

Publication number Publication date
WO2016022506A2 (en) 2016-02-11
CO2017000695A2 (es) 2017-02-09
MX2017001515A (es) 2017-05-09
CA2955216A1 (en) 2016-02-11
EP3178004A2 (en) 2017-06-14
BR112017001171A2 (pt) 2017-11-14
AU2015301284B2 (en) 2020-07-16
US20160034355A1 (en) 2016-02-04
RU2017103444A3 (ja) 2019-02-21
WO2016022506A3 (en) 2016-03-31
CN106663041B (zh) 2020-01-10
PH12017500024B1 (en) 2017-05-15
AU2015301284A1 (en) 2017-02-09
MY185933A (en) 2021-06-14
BR112017001171B1 (pt) 2023-04-11
KR102271007B1 (ko) 2021-06-29
CA2955216C (en) 2023-08-22
US9436553B2 (en) 2016-09-06
CL2017000264A1 (es) 2017-09-08
SG11201700531SA (en) 2017-02-27
ZA201700255B (en) 2019-05-29
RU2017103444A (ru) 2018-08-02
CN106663041A (zh) 2017-05-10
PH12017500024A1 (en) 2017-05-15
IL249855A0 (en) 2017-03-30
KR20170041715A (ko) 2017-04-17
JP6581648B2 (ja) 2019-09-25
EP3178004B1 (en) 2018-05-16
NZ728138A (en) 2022-04-29
IL249855B (en) 2020-03-31
RU2699054C2 (ru) 2019-09-03

Similar Documents

Publication Publication Date Title
JP6581648B2 (ja) システム障害からのクラウド・ベース・サービスの可用性の回復
US11561869B2 (en) Optimized disaster-recovery-as-a-service system
KR102301946B1 (ko) 분산 시스템에서 결함을 분석하기 위한 비주얼 툴
US9684534B2 (en) Monitoring and modifying allocated computing resources
US10476768B2 (en) Diagnostic and recovery signals for disconnected applications in hosted service environment
US10666715B2 (en) Incident management for complex information technology platforms
US11269714B2 (en) Performance anomaly detection
US9785507B2 (en) Restoration of consistent regions within a streaming environment
US9444708B2 (en) Detection of outage in cloud based service using synthetic measurements and anonymized usage data
WO2023138923A1 (en) Failure prediction using informational logs and golden signals
Fadaei Tehrani et al. A threshold sensitive failure prediction method using support vector machine
US9952773B2 (en) Determining a cause for low disk space with respect to a logical disk
US9692665B2 (en) Failure analysis in cloud based service using synthetic measurements

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180709

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190606

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190612

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190709

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: 20190801

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190830

R150 Certificate of patent or registration of utility model

Ref document number: 6581648

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250