IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社日立製作所の特許一覧

特許7587479障害テスト生成支援装置及び障害テスト生成支援方法
<>
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図1
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図2
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図3
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図4A
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図4B
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図4C
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図5
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図6
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図7
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図8
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図9
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図10
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図11
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図12
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図13
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図14
  • 特許-障害テスト生成支援装置及び障害テスト生成支援方法 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-12
(45)【発行日】2024-11-20
(54)【発明の名称】障害テスト生成支援装置及び障害テスト生成支援方法
(51)【国際特許分類】
   G06F 11/36 20060101AFI20241113BHJP
【FI】
G06F11/36 184
【請求項の数】 6
(21)【出願番号】P 2021105389
(22)【出願日】2021-06-25
(65)【公開番号】P2023003975
(43)【公開日】2023-01-17
【審査請求日】2024-02-02
(73)【特許権者】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000176
【氏名又は名称】弁理士法人一色国際特許事務所
(72)【発明者】
【氏名】清水 遼
(72)【発明者】
【氏名】鹿糠 秀行
(72)【発明者】
【氏名】冨永 渉
(72)【発明者】
【氏名】佐藤 祐太
【審査官】児玉 崇晶
(56)【参考文献】
【文献】特開2005-244363(JP,A)
【文献】特表2019-511172(JP,A)
【文献】特開2016-133885(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/36
(57)【特許請求の範囲】
【請求項1】
複数のクラウドサービスを組み合わせて構成されたシステムに関する構成情報、及び前記システムに関して定めた障害再現方法定義を保持する記憶装置と、
前記構成情報で定義された各サービスにおける通信経路に関する情報を抽出する処理と、前記障害再現方法定義で定義された障害パターンを参照し、当該障害パターンが示す通信の送信元及び送信先の各サービスに該当するサービスの前記通信経路の情報を特定する処理と、前記特定した通信経路の情報に基づき、前記送信元と前記送信先の組合せを生成し、各組合せでの通信可否を判定する処理と、前記判定の結果、通信可能なことが判明した前記組合せを、障害テストの挿入箇所の情報として当該障害パターンに設定する処理を実行する演算装置と、
を備えることを特徴とする障害テスト生成支援装置。
【請求項2】
前記演算装置は、
前記通信経路に関する情報として、前記サービスに関連付くセキュリティグループ、前記サービスに関連付くサブネット、前記サブネットに関連付く通信制御、前記サービスが所属するネットワーク、及び前記ネットワークと他ネットワークとの接続情報、を抽出するものである、
ことを特徴とする請求項1に記載の障害テスト生成支援装置。
【請求項3】
前記演算装置は、
前記通信可否の判定に際し、前記送信元と前記送信先との間に関して、セキュリティグループ間及びサブネット間の通信可否、について判定するものである、
ことを特徴とする請求項2に記載の障害テスト生成支援装置。
【請求項4】
情報処理装置が、
複数のクラウドサービスを組み合わせて構成されたシステムに関する構成情報、及び前記システムに関して定めた障害再現方法定義を保持して、
前記構成情報で定義された各サービスにおける通信経路に関する情報を抽出する処理と、前記障害再現方法定義で定義された障害パターンを参照し、当該障害パターンが示す通信の送信元及び送信先の各サービスに該当するサービスの前記通信経路の情報を特定する処理と、前記特定した通信経路の情報に基づき、前記送信元と前記送信先の組合せを生成し、各組合せでの通信可否を判定する処理と、前記判定の結果、通信可能なことが判明した前記組合せを、障害テストの挿入箇所の情報として当該障害パターンに設定する処理を実行する、
ことを特徴とする障害テスト生成支援方法。
【請求項5】
前記情報処理装置が、
前記通信経路に関する情報として、前記サービスに関連付くセキュリティグループ、前記サービスに関連付くサブネット、前記サブネットに関連付く通信制御、前記サービスが所属するネットワーク、及び前記ネットワークと他ネットワークとの接続情報、を抽出する、
ことを特徴とする請求項4に記載の障害テスト生成支援方法。
【請求項6】
前記情報処理装置が、
前記通信可否の判定に際し、前記送信元と前記送信先との間に関して、セキュリティグループ間及びサブネット間の通信可否、について判定する、
ことを特徴とする請求項5に記載の障害テスト生成支援方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、障害テスト生成支援装置及び障害テスト生成支援方法に関するものである。
【背景技術】
【0002】
複数のクラウドサービスを組合せてシステムを構築する案件が増大している。そこで、構築効率化のため、基盤構成をIaC(Infrastructure as Code)として定義し構築自動化を図ることが多い。
そうしたシステム開発のうち、金融システムなど高信頼性が要求されるシステムの開発においては、障害テストが実施される。障害テストは、信頼性担保のため意図的に障害を起こしシステム動作を確認するテストとなる。具体的には、サーバ停止、ネットワークスイッチ停止、ディスク引き抜きなどが該当する。
【0003】
なお、こうした障害テストに関連する従来技術としては、例えば、対話するサーバの集まりにより提供される分散計算サービスの弾力性を評価する技術(特許文献1参照)などが提案されている。
【0004】
この技術は、ネットワーク化アプリケーションの弾力性を検証するコンピュータ実施方法であって、前記ネットワーク化アプリケーションの提供に使用されるネットワーク内の複数のアクティブアプリケーション構成要素を識別すること、1つ又は複数の選択基準に基づいて、前記識別されたアプリケーション構成要素のうちの少なくとも1つを選択すること、前記選択されたアクティブアプリケーション構成要素を終了すること、及び前記選択されたアクティブアプリケーション構成要素の前記終了に続き、前記ネットワーク内の1つ又は複数の残りのアクティブアプリケーション構成要素を監視するものである。
【0005】
また、非機能系テストの自動化を適切に制御する試験制御装置(特許文献2参照)なども提案されている。
【0006】
この技術は、システムの構成種別ごとに、該システムの試験のために障害を発生させる箇所に関する情報である障害構成情報を記憶する記憶部と、試験対象となる試験対象システムの構成種別を取得する取得部と、前記取得部によって取得された前記試験対象システムの構成種別に対応する障害構成情報を前記記憶部から取得し、該障害構成情報を用いて、前記試験対象システムにおいて障害を発生させる箇所を決定する決定部と、前記決定部によって決定された障害を発生させる箇所に障害を発生させ、前記試験対象システムを試験する試験部を備えた試験制御装置に関するものである。
【先行技術文献】
【特許文献】
【0007】
【文献】特表2013-537344号公報
【文献】特開2015-26328号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
クラウドサービスを組み合わせたシステムにおいては、単純なサーバ停止など以外にも、当該クラウドサービスに合わせた障害テスト(例:クラウド内通信断の疑似再現、サービスからの特定エラー応答再現など)が必要である。
しかしながら従来技術においては、対象とする障害をVM(VirtualMachine)やプロセスの消失のみとしている。それゆえ、ネットワーク遅延、特定のクラウド
サービスからのエラー応答といった、その他の障害については扱っていない。
【0009】
また、通信経路での障害発生といったケースも考慮されていない。こうした通信経路の障害をもし取り扱うとしても、単純にシステム構成要素の全組合せの間に通信経路が存在すると仮定し障害テストを実施することとなる。
【0010】
一方、クラウド上に構築するシステムでは、クラウド故の優れたスケーラビリティやサービス導入の迅速さなどから、必要に応じて構成要素(利用サービス)を増やしやすい。すると、こうした増加しがちな構成要素ごとに、異なる方法でのテストが必要なため、構成要素の全組合せを対象として障害テストを実施する場合、テスト数が爆発的に増大しうる。
【0011】
そこで本発明の目的は、システム構成情報と障害再現方法定義とを組み合わせることで、任意の障害の網羅的なテスト生成を効率的なものとする技術を提供することにある。
【課題を解決するための手段】
【0012】
上記課題を解決する本発明の障害テスト生成支援装置は、複数のクラウドサービスを組み合わせて構成されたシステムに関する構成情報、及び前記システムに関して定めた障害再現方法定義を保持する記憶装置と、前記構成情報で定義された各サービスにおける通信経路に関する情報を抽出する処理と、前記障害再現方法定義で定義された障害パターンを参照し、当該障害パターンが示す通信の送信元及び送信先の各サービスに該当するサービスの前記通信経路の情報を特定する処理と、前記特定した通信経路の情報に基づき、前記送信元と前記送信先の組合せを生成し、各組合せでの通信可否を判定する処理と、前記判定の結果、通信可能なことが判明した前記組合せを、障害テストの挿入箇所の情報として当該障害パターンに設定する処理を実行する演算装置と、を備えることを特徴とする。
また、本発明の障害テスト生成支援方法は、情報処理装置が、複数のクラウドサービスを組み合わせて構成されたシステムに関する構成情報、及び前記システムに関して定めた障害再現方法定義を保持して、前記構成情報で定義された各サービスにおける通信経路に関する情報を抽出する処理と、前記障害再現方法定義で定義された障害パターンを参照し、当該障害パターンが示す通信の送信元及び送信先の各サービスに該当するサービスの前記通信経路の情報を特定する処理と、前記特定した通信経路の情報に基づき、前記送信元と前記送信先の組合せを生成し、各組合せでの通信可否を判定する処理と、前記判定の結果、通信可能なことが判明した前記組合せを、障害テストの挿入箇所の情報として当該障害パターンに設定する処理を実行する、ことを特徴とする。
【発明の効果】
【0013】
本発明によれば、システム構成情報と障害再現方法定義とを組み合わせることで、任意の障害の網羅的なテスト生成を効率的なものとできる。
【図面の簡単な説明】
【0014】
図1】本実施形態における障害テスト生成支援装置の機能構成を示す図である。
図2】本実施形態における障害テスト生成支援装置のハードウェア構成例を示す図である。
図3】本実施形態の障害テスト生成支援方法のフロー例を示す図である。
図4A】本実施形態の障害再現方法定義の例を示す図である。
図4B】本実施形態のシステム構成情報の例を示す図である。
図4C】本実施形態の障害テスト一覧の例を示す図である。
図5】本実施形態の障害テスト生成支援方法のフロー例を示す図である。
図6】本実施形態のシステム構成情報の例を示す図である。
図7】本実施形態のシステム構成情報の例を示す図である。
図8】本実施形態における通信経路情報の抽出概念例を示す図である。
図9】本実施形態における通信経路情報の抽出概念例を示す図である。
図10】本実施形態における通信経路情報の例を示す図である。
図11】本実施形態における通信経路情報の例を示す図である。
図12】本実施形態の障害テスト生成支援方法のフロー例を示す図である。
図13】本実施形態の障害テスト生成支援方法のフロー例を示す図である。
図14】本実施形態における障害テスト生成概念の例を示す図である。
図15】本実施形態における障害テスト生成概念の例を示す図である。
【発明を実施するための形態】
【0015】
<機能構成>
以下に本発明の実施形態について図面を用いて詳細に説明する。図1は、本実施形態の障害テスト生成支援装置100における機能構成例を示す図である。図1に示す障害テスト生成支援装置100は、システム構成情報と障害再現方法定義とを組み合わせることで、任意の障害の網羅的なテスト生成を効率的なものとするコンピュータである。
【0016】
本実施形態の障害テスト生成支援装置100は、図1で示すように、サービス情報テスト生成部110、通信経路情報抽出部111、及び通信障害テスト生成部112、を機能部として備える。また、これら機能部が動作するため、またその動作の結果として生じる情報として、障害再現方法定義125、システム構成情報126、通信経路情報127、及び障害テスト一覧128、といった情報を保持している。
【0017】
このうち、サービス障害テスト生成部110は、障害再現方法定義125から障害パターンを一つ選択し、その障害パターンが対象とするサービスの利用定義をシステム構成情報126から取得し、さらには、サービスの利用定義ごとに、障害パターン、挿入箇所の情報を障害テスト一覧128に登録する、といった一連の処理を実行するものとなる。つまり、通信経路に関する障害テストとは別に、サービスに関して障害テストを生成する機能となる。
【0018】
また、通信経路情報抽出部111は、システム構成情報126で定義された各サービスにおける通信経路に関する情報を抽出する機能である。
【0019】
また、通信障害テスト生成部112は、障害再現方法定義125で定義された障害パターンを参照し、当該障害パターンが示す通信の送信元及び送信先の各サービスに該当するサービスの通信経路の情報(通信経路情報127)を特定する。
【0020】
また、通信障害テスト生成部112は、ここで特定した通信経路の情報に基づき送信元と送信先の組合せを生成し、各組合せでの通信可否を判定する。また、通信障害テスト生成部112は、上述の判定の結果、通信可能なことが判明した組合せを、障害テストの挿入箇所の情報として当該障害パターンに設定し、障害テスト一覧に登録する。
<ハードウェア構成>
また、本実施形態の障害テスト生成支援装置100のハードウェア構成は、図2に以下の如くとなる。すなわち障害テスト生成支援装置100は、記憶装置101、メモリ103、演算装置104、および通信装置105、を備える。
【0021】
このうち記憶装置101は、SSD(Solid State Drive)やハードディスクドライブなど適宜な不揮発性記憶素子で構成される。
【0022】
また、メモリ103は、RAMなど揮発性記憶素子で構成される。
【0023】
また、演算装置104は、記憶装置101に保持されるプログラム102をメモリ103に読み出すなどして実行し装置自体の統括制御を行なうとともに各種判定、演算及び制御処理を行なうCPU(Central Processing Unit)である。
【0024】
この演算装置104によるプログラム102の実行で実装される機能が、サービス障害テスト生成部110、通信経路情報抽出部111、及び通信障害テスト生成部112となる。
【0025】
また、通信装置105は、適宜なネットワークと接続して、外部の端末等との通信処理を担うネットワークインターフェイスカード等を想定する。
【0026】
なお、障害テスト生成支援装置100がスタンドアロンマシンである場合、ユーザからのキー入力や音声入力を受け付ける入力装置、処理データの表示を行うディスプレイ等の出力装置、を更に備えるとすれば好適である。
【0027】
また、記憶装置101内には、本実施形態の障害テスト生成支援装置として必要な機能を実装する為のプログラム102に加えて、障害再現方法定義125、システム構成情報126、通信経路情報127、及び障害テスト一覧128が少なくとも記憶されている。ただし、これら情報の詳細は後述する。
<フロー例:サービス障害テスト生成>
以下、本実施形態における障害テスト生成支援方法の実際手順について図に基づき説明する。以下で説明する障害テスト生成支援方法に対応する各種動作は、障害テスト生成支援装置100がメモリ等に読み出して実行するプログラムによって実現される。そして、このプログラムは、以下に説明される各種の動作を行うためのコードから構成されている。
【0028】
図3は、本実施形態における障害テスト生成支援方法のフロー例を示す図である。この場合、障害テスト生成支援装置100のサービス障害テスト生成部110は、障害再現方法定義125(例:図4A)の各障害パターンのうち、本フローの対象として処理していないものが存在するか判定する(s10)。
【0029】
このため、サービス障害テスト生成部110は、障害再現方法定義125の各レコード、すなわち障害パターンのうち、本フローで処理したものの情報(例えば、#など識別情報)にフラグを付与してメモリ103で保持・管理する。
【0030】
上述の判定の結果、未処理の障害パターンが存在しない場合(s10:No)、サービス障害テスト生成部110は、本フローを終了する。
【0031】
一方、上述の判定の結果、未処理の障害パターンが存在する場合(s10:Yes)、サービス障害テスト生成部110は、障害再現方法定義125における障害パターンのうち未処理のものから適宜一つ選択する(s11)。選択手法としては、障害パターンのうち識別情報の値が小さいものから選択するといったものを想定する。
【0032】
また、サービス障害テスト生成部110は、s11で選択した障害パターンが対象とするサービスの利用定義を、システム構成情報126(図4B)から取得する(s12)。図4Bで示す具体例では、s11で選択した障害パターン「対象:サービス-EC2、障害:応答なし、方法:インスタンス停止」という#001のレコードに対応するサービスの利用定義として、「EC2」に関して記述している「AP1」、「AP2」のシステム構成情報(図中の破線囲み)を抽出することになる。
【0033】
続いて、サービス障害テスト生成部110は、s12で得たサービスの利用定義ごとに、障害パターン(上述の場合、「サービス-EC2、障害:応答なし、方法:インスタンス停止」)、挿入箇所の情報(上述の場合、「AP1」、「AP2」など)を障害テスト一覧128(図4C)に登録し、今回処理対象として選択した障害パターンを処理済み(例:メモリ103で管理する情報に該当フラグを付与)とし(s13)、本フローを終了する。
<フロー例:通信経路情報抽出>
続いて、通信経路情報の抽出フローについて説明する。図5は、本実施形態における障害テスト生成支援方法のフロー例を示す図である。この場合、障害テスト生成支援装置100の通信経路情報抽出部111は、システム構成情報126(図6)に定義されているサービスの一覧を取得する(s20)。なお、図7に示す識別情報構成情報126の構成であるケースも想定出来る。図7の例の場合、仮想ネットワーク間の接続定義についての記述が含まれている。
【0034】
また、通信経路情報抽出部111は、s20で取得した一覧のうち、本フローで未処理のサービス定義が存在するか判定する(s21)。なお、処理/未処理の管理については、上述のフロー(図3)で述べたものを同様に運用すればよい。
【0035】
この判定の結果、未処理のサービス定義が存在しない場合(s21:No)、通信経路情報抽出部111は、本フローを終了する。
【0036】
一方、上述の判定の結果、未処理のサービス定義が存在する場合(s21:Yes)、通信経路情報抽出部111は、未処理のサービス定義を一つ選択する(s22)。
【0037】
続いて、通信経路情報抽出部111は、選択したサービスに関連付くセキュリティグループ情報をシステム構成情報126から取得する(s23)。図8で例示するシステム構成情報126においては、「#ステートフル通信制御(セキュリティグループ)定義」に関連して記述されている情報となる。
【0038】
また、通信経路情報抽出部111は、選択したサービスに関連付くサブネット情報をシステム構成情報から取得する(s24)。図8で例示するシステム構成情報126においては、「#サブネット定義」に関連して記述されている情報となる。
【0039】
続いて、通信経路情報抽出部111は、前ステップで取得したサブネットに関連付く通信制御情報をシステム構成情報から取得する(s25)。図8で例示するシステム構成情報126においては、「#ステートレス通信制御(サブネット通信制御)定義」に関連して記述されている情報となる。
【0040】
また、通信経路情報抽出部111は、選択したサービスが所属するネットワーク(VPC)情報をシステム構成情報から取得する(s26)。図8で例示するシステム構成情報126においては、「#仮想ネットワーク定義」に関連して記述されている情報となる。
【0041】
続いて、通信経路情報抽出部111は、前ステップで取得したVPCと他VPCとの接続情報をシステム構成情報から取得する(s27)。図9で例示するシステム構成情報126においては、「#仮想ネットワーク間接続定義」に関連して記述されている情報となる。
【0042】
また、通信経路情報抽出部111は、取得した情報を通信経路情報127として保持し、選択したサービスを処理済みとし(s28)、終了する。なお、図8で例示する概念により生成した通信経路情報127を図10に示す。また、図9で例示する概念により生成
した通信経路情報127を図11に示す。「VPC Peering」の項目の有無が相違点である。
<フロー例:通信障害テスト生成>
続いて、通信可否判定のフローについて説明する。図12は、本実施形態における障害テスト生成支援方法のフロー例を示す図である。この場合、障害テスト生成支援装置100の通信障害テスト生成部112は、障害再現方法定義125の各レコードすなわち障害パターンのうち未処理の障害パターンが存在するか判定する(s30)。処理済み/未処理の管理については既に上で述べた手法など適宜な既存技術を採用すればよい。
【0043】
この判定の結果、未処理の障害パターンが存在しない場合(s30:No)、通信障害テスト生成部112は、本フローを終了する。
【0044】
一方、上述の判定の結果、未処理の障害パターンが存在する場合(s30:Yes)、通信障害テスト生成部112は、障害再現方法定義125から未処理の障害パターンを一つ選択する(s31)。図14に示す例であれば、例えば、「対象:通信-EC2間、障害:通信遅延、方法:qdiscルール設定」が選択されたものとする。
【0045】
また、通信障害テスト生成部112は、s31で選択した障害パターンにおける、送信元サービスに合致する全サービスに対する通信経路情報127を取得する(s32)。この通信経路情報127は、図5のフローで生成されたもの(図10図11)となる。 図14に示す例では、「送信元候補」として「#1AP1」、「#1AP2」、を得ている。
【0046】
続いて、通信障害テスト生成部112は、s32で選択した障害パターンにおける送信先サービスに合致する全サービスに対する通信経路情報を取得する(s33)。図14に示す例では、「送信先候補」として「#1AP1」、「#1AP2」、を得ている。
【0047】
また、通信障害テスト生成部112は、s32、s33で取得した通信経路情報127で、送信元・送信先ペアの全組合せを生成し、通信可否をチェックする(s34)。なお、この通信可否のチェック処理の詳細については、図13に基づき後述するものとする。
【0048】
また、通信障害テスト生成部112は、s34でのチェックの結果、通信可能なペアに対し、障害パターン、挿入箇所の情報を障害テスト一覧128に登録する(s35)。
【0049】
続いて、通信障害テスト生成部112は、選択した障害パターンを処理済みとし(s36)、本フローを終了する。
<フロー例:通信可否判定>
続いて、通信可否判定のフローについて説明する。図13は、本実施形態における障害テスト生成支援方法のフロー例を示す図である。この場合、障害テスト生成支援装置100の通信障害テスト生成部112は、上述のフローにおけるs34について説明したように、送信元・先サービスのペアを全通り生成する(s40)。
【0050】
続いて、通信障害テスト生成部112は、s40で得たペアのうち未処理のペアが存在するか判定する(s41)。
【0051】
上述の判定の結果、未処理のペアの存在が認められなかった場合(s41:No)、通信障害テスト生成部112は、本フローを終了する。
【0052】
一方、上述の判定の結果、未処理のペアの存在が認められた場合(s41:Yes)、通信障害テスト生成部112は、未処理のペアの中からペア(送信元・先サービスのペア
)を一つ選択する(s42)。
【0053】
また、通信障害テスト生成部112は、s42で選択したペアに関して、送信元IP及びセキュリティグループから送信先IP及びセキュリティグループへの通信が送信元セキュリティグループで許可されているか判定する(s43)。図14で示すイメージでは、例えば、送信元「#AP1]のIP「10.0.1.*」とセキュリティグループ「AP-SG_1」から、送信先「#AP2」のIP「10.0.2.*」への通信が、「#AP1」のセキュリティグループで許可されているか判定することになる。
【0054】
この判定の結果、通信が許可されてない組合せであれば(s43:No)、通信障害テスト生成部112は、当該ペアは通信不可として、例えば記憶装置101に格納し(s48)、処理をs50に遷移する。
【0055】
一方、この判定の結果、通信が許可されている組合せであれば(s43:Yes)、通信障害テスト生成部112は、処理をs44に遷移する。
【0056】
続いて、通信障害テスト生成部112は、送信元IPから送信先IPへの通信が送信元NACL(ネットワークアクセスコントロールリスト)で許可されているか判定する(s44)。例えば、通信経路情報127において、サービス「EC2-AP1」の「Network ACL」の値として、「allow to 10.0.3.0/16、deny all」などと規定されていた場合、IPアドレスが「10.0.3.0/16」以外は通信拒否されるため、送信先IPが当該IPアドレス以外であれば、通信は許可されていないと判定されることになる。
【0057】
また、通信障害テスト生成部112は、送信元VPCから送信先VPCへ通信可能か判定する(s45)。この場合、通信障害テスト生成部112は、通信経路情報127における送信元VPCの「VPC Peering」欄(図11参照)で、送信先VPCの識別情報が設定されているか、すなわち通信先として許容されているか否か判定することになる(図15参照)。なお、送信元と送信先が同じVPC同士であれば当然ながら通信可能と判定する。
【0058】
この判定の結果、通信が許可されていない組合せであれば(s45:No)、通信障害テスト生成部112は、上述のs48を実行し、s50に遷移する。
【0059】
一方、この判定の結果、通信が許可されている組合せであれば(s45:Yes)、通信障害テスト生成部112は、処理をs46に遷移する。
【0060】
続いて、通信障害テスト生成部112は、送信元IPから送信先IPへの通信が送信元NACL(ネットワークアクセスコントロールリスト)で許可されているか判定する(s46)。この判定は、s44で説明した手法と同じ手順であって、s44とは異なる点は、送信先のネットワークアクセスコントロールリストで許可されているか判定する点のみである。
【0061】
この判定の結果、通信が許可されていない組合せであれば(s46:No)、通信障害テスト生成部112は、上述のs48を実行し、s50に遷移する。
【0062】
一方、この判定の結果、通信が許可されている組合せであれば(s46:Yes)、通信障害テスト生成部112は、処理をs47に遷移する。
【0063】
続いて、通信障害テスト生成部112は、s42で選択したペアに関して、送信元IP
及びセキュリティグループから送信先IP及びセキュリティグループへの通信が送信先セキュリティグループで許可されているか判定する(s47)。この判定は、s43で説明した手法と同じ手順であって、s43とは異なる点は、送信先のセキュリティグループで許可されているか判定する点のみである。
【0064】
この判定の結果、通信が許可されていない組合せであれば(s47:No)、通信障害テスト生成部112は、上述のs48を実行し、s50に遷移する。
【0065】
一方、上述の判定の結果、通信が許可されている組合せであれば(s47:Yes)、通信障害テスト生成部112は、通信可能なペアに対し、障害パターン、挿入箇所の情報を障害テスト一覧128に登録する(s49)。
【0066】
続いて、通信障害テスト生成部112は、選択した障害パターンを処理済みとし(s50)、本フローを終了する。
【0067】
以上、本発明を実施するための最良の形態などについて具体的に説明したが、本発明はこれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【0068】
こうした本実施形態によれば、システム構成情報と障害再現方法定義とを組み合わせることで、任意の障害の網羅的なテスト生成を効率的なものとできる。
【0069】
本明細書の記載により、少なくとも次のことが明らかにされる。すなわち、本実施形態の障害テスト生成支援装置において、前記演算装置は、前記通信経路に関する情報として、前記サービスに関連付くセキュリティグループ、前記サービスに関連付くサブネット、前記サブネットに関連付く通信制御、前記サービスが所属するネットワーク、及び前記ネットワークと他ネットワークとの接続情報、を抽出するものである、としてもよい。
【0070】
これによれば、通信経路に関する情報を、より効率的に抽出可能となる。ひいては、システム構成情報と障害再現方法定義とを組み合わせることで、任意の障害の網羅的なテスト生成をより効率的なものとできる。
【0071】
また、本実施形態の障害テスト生成支援装置において、前記演算装置は、前記通信可否の判定に際し、前記送信元と前記送信先との間に関して、セキュリティグループ間及びサブネット間の通信可否、について判定するものである、としてもよい。
【0072】
これによれば、通信可否について、より効率的かつ的確に判定可能となる。ひいては、システム構成情報と障害再現方法定義とを組み合わせることで、任意の障害の網羅的なテスト生成をより効率的なものとできる。
【0073】
また、本実施形態の障害テスト生成支援方法において前記情報処理装置が、前記通信経路に関する情報として、前記サービスに関連付くセキュリティグループ、前記サービスに関連付くサブネット、前記サブネットに関連付く通信制御、前記サービスが所属するネットワーク、及び前記ネットワークと他ネットワークとの接続情報、を抽出する、としてもよい。
【0074】
また、本実施形態の障害テスト生成支援方法において、前記情報処理装置が、前記通信可否の判定に際し、前記送信元と前記送信先との間に関して、セキュリティグループ間及びサブネット間の通信可否、について判定する、としてもよい。
【符号の説明】
【0075】
100 障害テスト生成支援
101 記憶装置
102 プログラム
103 メモリ
104 演算装置
105 通信装置
110 サービス障害テスト生成部
111 通信経路情報抽出部
112 通信障害テスト生成部
125 障害再現方法定義
126 システム構成情報
127 通信経路情報
128 障害テスト一覧
図1
図2
図3
図4A
図4B
図4C
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15