(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022187824
(43)【公開日】2022-12-20
(54)【発明の名称】適合判定システム、適合判定プログラム、及び、適合判定方法
(51)【国際特許分類】
G06F 11/36 20060101AFI20221213BHJP
G06F 11/34 20060101ALI20221213BHJP
【FI】
G06F11/36 168
G06F11/34 133
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2021096023
(22)【出願日】2021-06-08
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100092978
【弁理士】
【氏名又は名称】真田 有
(74)【代理人】
【識別番号】100189201
【弁理士】
【氏名又は名称】横田 功
(72)【発明者】
【氏名】佐藤 英俊
(72)【発明者】
【氏名】山中 秀作
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042HH12
5B042HH20
5B042JJ29
(57)【要約】
【課題】ハードウェアの適合判定処理を効率的に実施する。
【解決手段】適合判定システム1は、第1及び第2制御部30及び20を備える。第1制御部30は、第1装置3aが備える複数部品のうちの第1システムで未サポートの部品の各性能とサポートされる部品の各性能との性能比に基づき前記未サポートの部品の各性能スコアを算出する。第2制御部20は、第1装置3aと、第1装置3aにネットワーク1aを介して接続される第2装置とが実行するソフトウェア5、4bにより構築した第2システム4の動作検証を、前記ネットワーク1aの性能に応じた補正値21cを各ソフトウェア4a、5に適用した状態で実行する。前記第1制御部30は、前記性能スコアと前記動作検証の結果とに基づき、前記第1装置3aが前記第1システムに適合するか否かを判定する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
第1情報処理装置を含む複数の情報処理装置の各々が実行するソフトウェアによって構築される第1システムに前記第1情報処理装置が適合するか否かを判定する適合判定システムであって、
前記第1情報処理装置が備える複数の部品のうちの前記第1システムで未サポートの1以上の未サポート部品の各々の性能と、前記第1システムでサポートされる1以上のサポート部品の各々の性能との性能比に基づき、前記1以上の未サポート部品の各々の性能スコアを算出する、第1制御部と、
前記第1情報処理装置とネットワークを介して接続される1以上の第2情報処理装置の各々が実行するソフトウェアと、前記第1情報処理装置が実行するソフトウェアとにより構築した第2システムの動作検証を、前記ネットワークの性能に応じた補正値を前記複数のソフトウェアに適用した状態で実行する、第2制御部と、を備え、
前記第1制御部は、前記性能スコアと、前記第2制御部から通知される前記動作検証の結果と、に基づき、前記第1情報処理装置が前記第1システムに適合するか否かを判定する、
適合判定システム。
【請求項2】
前記第1制御部は、前記動作検証の結果が前記ネットワークの性能に起因したエラーを含む場合、前記1以上の未サポート部品の各々の前記ネットワークに対する影響度と、前記性能スコアとに基づき、前記第1情報処理装置が前記第1システムに適合するか否かを判定する、
請求項1に記載の適合判定システム。
【請求項3】
前記第1制御部は、前記1以上の未サポート部品の各々の前記ネットワークに対する影響度と、前記1以上の未サポート部品の各々の性能スコアと、を前記未サポート部品ごとに乗じた値の合計値が閾値未満である場合、前記第1情報処理装置が前記第1システムに適合すると判定する、
請求項2に記載の適合判定システム。
【請求項4】
前記第1制御部は、
前記1以上の未サポート部品の各々が前記ソフトウェアにより制御可能か否かを判定し、判定結果に基づき、前記第1情報処理装置が前記第1システムに適合するか否かを判定する、
請求項1~請求項3のいずれか1項に記載の適合判定システム。
【請求項5】
前記第1制御部は、前記1以上の未サポート部品の各々の種類に依らず性能比と性能スコアとを対応付けた第1情報を参照して、前記1以上の未サポート部品の各々の性能スコアを取得する、
請求項1~請求項4のいずれか1項に記載の適合判定システム。
【請求項6】
前記第1制御部は、
前記第1情報処理装置が備える前記複数の部品を検出し、
前記第1システムでサポートされる1以上のサポート部品を示す第2情報を参照して、前記複数の部品のうちの前記第2情報に含まれない部品を前記1以上の未サポート部品として特定する、
請求項1~請求項5のいずれか1項に記載の適合判定システム。
【請求項7】
第1コンピュータを含む複数のコンピュータの各々が実行するソフトウェアによって構築される第1システムに前記第1コンピュータが適合するか否かを判定する前記第1コンピュータに、
前記第1コンピュータが備える複数の部品のうちの前記第1システムで未サポートの1以上の未サポート部品の各々の性能と、前記第1システムでサポートされる1以上のサポート部品の各々の性能との性能比に基づき、前記1以上の未サポート部品の各々の性能スコアを算出し、
前記第1コンピュータとネットワークを介して接続される1以上の第2コンピュータの各々が実行するソフトウェアと、前記第1コンピュータが実行するソフトウェアとにより構築した第2システムの動作検証を、前記ネットワークの性能に応じた補正値を前記複数のソフトウェアに適用した状態で実行した第3コンピュータから、前記動作検証の結果を取得し、
前記性能スコアと前記動作検証の結果とに基づき、前記第1コンピュータが前記第1システムに適合するか否かを判定する、
処理を実行させる、適合判定プログラム。
【請求項8】
第1コンピュータを含む複数のコンピュータの各々が実行するソフトウェアによって構築される第1システムに前記第1コンピュータが適合するか否かを判定する適合判定システムにおける適合判定方法であって、
前記第1コンピュータが、前記第1コンピュータが備える複数の部品のうちの前記第1システムで未サポートの1以上の未サポート部品の各々の性能と、前記第1システムでサポートされる1以上のサポート部品の各々の性能との性能比に基づき、前記1以上の未サポート部品の各々の性能スコアを算出し、
第3コンピュータが、前記第1コンピュータとネットワークを介して接続される1以上の第2コンピュータの各々が実行するソフトウェアと、前記第1コンピュータが実行するソフトウェアとにより構築した第2システムの動作検証を、前記ネットワークの性能に応じた補正値を前記複数のソフトウェアに適用した状態で実行し、
前記第1コンピュータが、前記性能スコアと、前記第3コンピュータから通知される前記動作検証の結果と、に基づき、前記第1コンピュータが前記第1システムに適合するか否かを判定する、
処理を実行する、適合判定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、適合判定システム、適合判定プログラム、及び、適合判定方法に関する。
【背景技術】
【0002】
複数のサーバ(例えば汎用サーバ)により構築したクラスタをストレージとして提供するストレージシステム(情報処理システム)が知られている。このようなストレージシステムは、専用のハードウェア(HW)を利用するHDS(Hardware Defined Storage)と対比させて、SDS(Software Defined Storage)と称されることがある。SDSに利用されるサーバは、「ストレージサーバ」又は「コモディティサーバ」と称されてもよい。
【0003】
SDSでは、例えば、顧客が保有するサーバを活用してストレージを構築できるため、HDSと比較して、専用HWの新規導入が不要であり、初期導入費用を削減できる。
【0004】
また、ベンダは、顧客へのシステム導入後のストレージ容量に応じたライセンス及びサポートサービスのサブスクリプション等による継続的な売上、スケールアウトによるHW及びライセンスの追加購入の売上等により、長期的な利益増加が期待できる。なお、サポートサービスとは、HW導入の有無に関係なく、ストレージサーバ導入時に容量に応じて手配されるサービスである。
【0005】
さらに、ベンダは、ストレージシステムを実現するためのソフトウェア、例えばストレージサーバごとに実行させるプログラムを単体で顧客に提供できるため、顧客の様々なユースケースに対応したモデル構成を顧客に提案できる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2011-154532号公報
【特許文献2】特表2013-534081号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
SDSにおいては、HWとソフトウェアとがセットで導入されることになるが、全てのサーバで確実に動作することが保証されているわけではない。このため、SDSのベンダは、事前に検証したサーバとHWとの組み合わせをサポート可能な構成の情報として提供する。
【0008】
上述したSDSの利点を生かすために、ベンダは、例えば、顧客の不特定多数の保有資産を活用してシステムを構築するが、システム構築の実現のためには、これらの不特定多数の保有資産を用いた多くの構成のバリエーションがサポートされる(動作保証される)ことが重要である。
【0009】
しかし、ストレージシステム、例えば、高信頼性が要求されるストレージ製品では、サーバは、仕様性能に加えて、HW相互の相性、制御手法等がベンダの想定通りであるという要件が課される場合がある。このため、サーバ等の顧客の保有資産がサポートされるか否かを判定するためには、ベンダは、例えば、システムの要件に適合するか否かの判定対象となるHWを実際に入手して、検証作業を実施することになる。
【0010】
このように、構築対象の情報処理システムの性能、規模が増加するほど、顧客が保有又は利用するHWが構築対象の情報処理システムに適合するか否かを判定する適合判定処理の作業負荷が高くなり、システム構築期間、構築費用等が増加することがある。
【0011】
1つの側面では、本発明は、HWの適合判定処理を効率的に実施することを目的の1つとする。
【課題を解決するための手段】
【0012】
1つの側面では、適合判定システムは、第1情報処理装置を含む複数の情報処理装置の各々が実行するソフトウェアによって構築される第1システムに前記第1情報処理装置が適合するか否かを判定してよく、第1制御部及び第2制御部を備えてよい。前記第1制御部は、前記第1情報処理装置が備える複数の部品のうちの前記第1システムで未サポートの1以上の未サポート部品の各々の性能と、前記第1システムでサポートされる1以上のサポート部品の各々の性能との性能比に基づき、前記1以上の未サポート部品の各々の性能スコアを算出してよい。前記第2制御部は、前記第1情報処理装置とネットワークを介して接続される1以上の第2情報処理装置の各々が実行するソフトウェアと、前記第1情報処理装置が実行するソフトウェアとにより構築した第2システムの動作検証を、前記ネットワークの性能に応じた補正値を前記複数のソフトウェアに適用した状態で実行してよい。前記第1制御部は、前記性能スコアと、前記第2制御部から通知される前記動作検証の結果と、に基づき、前記第1情報処理装置が前記第1システムに適合するか否かを判定してよい。
【発明の効果】
【0013】
1つの側面では、本発明は、HWの適合判定処理を効率的に実施することができる。
【図面の簡単な説明】
【0014】
【
図1】一実施形態に係る検証システムの構成例を示すブロック図である。
【
図3】ストレージシステムの構成例を示す図である。
【
図4】一実施形態に係る検証システムの機能構成例を示すブロック図である。
【
図6】ネットワーク(NW)影響度情報の一例を示す図である。
【
図8】一実施形態に係る検証処理の動作例を説明するためのフローチャートである。
【
図9】
図8に示す単体テストの動作例を説明するためのフローチャートである。
【
図10】
図8に示すネゴシエーション処理の動作例を説明するためのフローチャートである。
【
図11】
図8に示すシステムテストの動作例を説明するためのフローチャートである。
【
図12】
図8に示す検証結果判定処理の動作例を説明するためのフローチャートである。
【
図13】コンピュータのHW構成例を示すブロック図である。
【発明を実施するための形態】
【0015】
以下、図面を参照して本発明の実施の形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、以下に明示しない種々の変形又は技術の適用を排除する意図はない。例えば、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。なお、以下の説明で用いる図面において、同一符号を付した部分は、特に断らない限り、同一若しくは同様の部分を表す。
【0016】
〔1〕一実施形態
〔1-1〕検証システムの構成例
図1は、一実施形態に係る検証システム1の構成例を示すブロック図である。検証システム1は、顧客(ユーザ)が保有又は利用するHWが構築予定のストレージシステムに適合するか否かを判定する適合判定システム(情報処理システム)の一例であり、
図1に示すように、例示的に、ベンダサイト2及び顧客サイト3を備えてよい。構築予定のストレージシステムは、顧客が保有又は利用するサーバを含む複数のサーバの各々が実行するソフトウェアによって構築される第1システムの一例である。
【0017】
ベンダサイト2は、SDS等のストレージシステムの構築を行なうベンダが保有又は利用する環境であり、
図1に例示するように、サーバ2a及びストレージシステム4を備えてよい。サーバ2aは、(第3)情報処理装置又は(第3)コンピュータの一例であり、ベンダが保有又は利用するHWの一例である。ベンダサイト2は、複数のサーバ2aを備えてもよい。サーバ2aは、
図1に例示するように、ベンダ側制御部20を備えてよい。ストレージシステム4は、ベンダが保有又は利用する複数のサーバ、例えば複数のサーバ2a、又は、複数のサーバ4a(
図2及び
図3参照)により実現されてよい。
【0018】
顧客サイト3は、顧客が保有又は利用するHWを含む環境である。
図1に例示するように、顧客サイト3は、サーバ3aを備えてよい。サーバ3aは、(第1)情報処理装置又は(第1)コンピュータの一例であり、顧客が保有又は利用するHWの一例である。サーバ3aは、構築対象(構築予定)のストレージシステムに適合するか否かの検証処理(適合判定処理)の処理対象となるHW(装置)である。
【0019】
なお、「構築対象」のストレージシステムは、例えば、サーバ3aを含む複数のサーバにより新規に構築されるストレージシステムであってもよいし、複数のサーバにより構築済み(或いは運用済み)の既存のストレージシステムであってもよい。「構築対象」のストレージシステムが既存のストレージシステムである場合、検証対象のサーバ3aは、例えば、スケールアウト等の追加(増設)、代替機としての交換等の目的でストレージシステムに組み込まれるサーバであってもよい。
【0020】
図1に例示するように、サーバ3aは、顧客側制御部30及びストレージソフトウェア5を備えてよい。なお、顧客サイト3は、検証処理の処理対象となるサーバ3aを複数備えてもよい。顧客サイト3が複数のサーバ3aを備える場合、検証処理は、複数のサーバ3aのそれぞれに対して行なわれてもよいし、複数のサーバ3aのうちの互いに同一の構成を有するサーバ3aについては少なくともいずれか1つのサーバ3aに対して行なわれてもよい。
【0021】
ベンダサイト2と顧客サイト3との間は、ネットワーク1aにより相互に通信可能に接続されてよい。ネットワーク1aとしては、インターネット又はLAN(Local Area Network)等の種々のネットワークが挙げられる。ネットワーク1aは、例えば、VPN(Virtual Private Network)等のネットワークを含んでもよい。
【0022】
ベンダ側制御部20は、第2制御部の一例であり、サーバ3aとの間で通信を行ない、ストレージシステム4を利用して、当該サーバ3aが構築予定のストレージシステムに適合するか否かを検証する検証処理(適合判定処理)に関する種々の制御を実行する。ベンダ側制御部20の機能は、例えば、サーバ2aがプログラム(例えばエージェントプログラム)を実行することにより実現されてよい。
【0023】
ストレージシステム4は、第2システムの一例であり、構築対象のストレージシステムと同様の構成を有する検証用(テスト用)のストレージシステムである。例えば、ストレージシステム4は、複数のサーバ4aにより実現されるSDSであってもよい。サーバ4aは、(第2)情報処理装置又は(第2)コンピュータの一例である。なお、ストレージシステム4は、サーバ4aに加えて又は代えて、サーバ2aにより実現されてもよい。
【0024】
図2は、ストレージシステム4の一例を示す図である。
図2に示すように、ストレージシステム4は、例示的に、ベンダが保有又は利用する複数のサーバ4aと、ストレージシステム4としての機能を実現するためのストレージソフトウェア4bとを備えてよい。
【0025】
図2の例では、1つのストレージソフトウェア4bを図示するが、複数のサーバ4aのそれぞれにより実行されるストレージソフトウェア4bが協働して動作することで、ストレージシステム4としての機能が実現されてよい。ストレージソフトウェア4bは、クラウドOS(Operating System)41又は仮想化ソフトウェア42等のソフトウェアと、当該ソフトウェア上で動作するアプリケーション43とを実行してもよいし、これらに加えて又は代えて、コンテナ44を実行してもよい。
【0026】
図3は、ストレージシステム4のサーバ4aの一例を示す図である。
図3に示すように、ストレージシステム4は、それぞれが複数の記憶装置4cを備える複数のサーバ4aを、ネットワーク4dを介して相互に接続した構成であってよい。ネットワーク4dは、LAN等のネットワークであってよく、ネットワーク1aと接続されてよい。
【0027】
例えば、ストレージシステム4は、
図2に例示するアプリケーション43又はコンテナ44により、
図3に例示するサーバ4aの記憶装置4c等のHWリソースを利用して、ストレージとしての記憶領域を顧客に提供可能であってよい。なお、
図2及び
図3に示すストレージシステム4は、検証処理に用いられるテスト用のストレージシステムと位置付けられてもよい。構築対象であるストレージシステムは、
図2及び
図3に示すストレージシステム4と同様の機能及び構成を備えてよい。
【0028】
顧客側制御部30は、第1制御部の一例であり、ベンダ側制御部20との間で通信を行ない、ベンダ側制御部20による制御に基づき、検証処理の実行を制御する。顧客側制御部30の機能は、例えば、サーバ3aがプログラム(例えばエージェントプログラム)を実行することにより実現されてよい。なお、顧客側制御部30の機能は、顧客側制御部30におけるサーバ3a以外のサーバであって、サーバ3aの制御が可能なサーバにより実現されてもよい。
【0029】
ストレージソフトウェア5は、ストレージシステムの機能の少なくとも一部を実現するためのソフトウェア(プログラム)であり、サーバ3aがストレージシステムに組み込まれる場合にサーバ3aにインストールされるソフトウェアである。ストレージソフトウェア5は、
図2に示すストレージソフトウェア4bと同様の機能を有してよい。例えば、顧客側制御部30は、サーバ3aが実行するストレージソフトウェア5の動作(挙動)に基づき、検証処理を実行してよい。
【0030】
このように、検証システム1は、顧客サイト3のサーバ3aが構築対象のストレージシステムの要件に適合するか否かを、例えば遠地(遠隔地)に位置するベンダサイト2と、顧客サイト3との双方に設定されたエージェントソフトウェアにより判定するのである。
【0031】
〔1-2〕検証処理の説明
次に、検証システム1による検証処理について簡単に説明する。検証処理は、例示的に、「単体テスト」及び「システムテスト」を含んでよい。
【0032】
(単体テスト)
単体テストは、サーバ3a単体に対するテストであり、例えば顧客側制御部30により実行されてよい。単体テストには、「構成診断」、「部品テスト」及び「ソフトウェアテスト」の少なくとも1つが含まれてよい。
【0033】
「構成診断」は、サーバ3aに含まれる種々の部品から、ストレージシステムにおける未サポート部品を検出するテストである。サーバ3aに含まれる部品としては、例えば、プロセッサ、メモリ、記憶装置、電源、バッテリ、ケーブル等のHWが挙げられる。
【0034】
「部品テスト」は、構成診断で検出した個々の未サポート部品がストレージソフトウェア5により制御可能か否かを検証するテストである。未サポート部品がストレージソフトウェア5により制御可能か否かの判定は、例えば、当該未サポート部品の種別に対応するドライバが動作可能か否かの判定により行なわれてもよい。一例として、顧客側制御部30は、部品テストにおいて、個々の未サポート部品の種別に対応するドライバをサーバ3aにインストールし、当該ドライバによって個々の未サポート部品が動作するか否かを判定してよい。
【0035】
「ソフトウェアテスト」は、サーバ3aにおいてストレージソフトウェア5が動作可能か否かを検証するテストである。例えば、顧客側制御部30は、サーバ3aにおいてストレージソフトウェア5を実行し、エラーが発生しないか否かを判定してよい。エラーが発生しない場合、或いは、ストレージソフトウェア5の動作に支障がないと判断できるレベルのエラーが発生する場合、顧客側制御部30は、サーバ3aにおいてストレージソフトウェア5が動作可能であると判定してよい。
【0036】
(システムテスト)
システムテストは、サーバ3aをベンダサイト2に接続してストレージシステム4に組み込み、サーバ3aとサーバ4aとを含むストレージシステム4の動作を検証するテストであり、例えばベンダ側制御部20及び顧客側制御部30により実行されてよい。
【0037】
上述した単体テスト及びシステムテストを含む検証処理による検証結果と、検証結果に応じた対処(アクション)との組み合わせとしては、例示的に、以下の4つが挙げられる。
【0038】
・結果A:適合
検証処理により、サーバ3aがストレージシステム4に適合すると判定された場合、サーバ3aを利用してストレージシステムを構築することが可能である。例えば、ベンダは、顧客に対して、サーバ3aを用いたストレージシステムの構築又は提案を行なう。
【0039】
・結果B:不適合
検証処理により、サーバ3aがストレージシステム4に適合しない(不適合である)と判定された場合、サーバ3aを利用したストレージシステムの構築は困難である。例えば、ベンダは、顧客に対して、サーバ3aを利用しないストレージシステムの提案、一例として複数のサーバの購入又は貸与等を伴うセットプランの提案を行なう。
【0040】
・結果C:外乱の影響により不適合
検証処理において、外乱の影響によってサーバ3aがストレージシステム4に適合しない(不適合である)と判定される場合がある。外乱としては、例えば、ベンダサイト2と顧客サイト3との間の通信環境が劣悪であることが挙げられる。一例として、外乱は、ベンダサイト2及び顧客サイト3の一方又は双方の通信装置の性能、ネットワーク1aの帯域幅等が基準を満たさないこと、通信装置及びネットワーク1aの一方又は双方の通信負荷が基準を超える(例えば輻輳状態である)こと、等が挙げられる。
【0041】
そこで、検証処理により、外乱の影響によってサーバ3aがストレージシステム4に適合しない(不適合である)と判定された場合、例えば、ベンダは、検証システム1においてサーバ3aの検証処理を行なうことは困難であると判断する。この場合、ベンダは、顧客に対して、サーバ3a、又は、サーバ3aと同一又は略同一のサーバを利用して、ベンダサイト2内で検証処理を行なうことを提案してよい。ベンダサイト2内で検証を行なう場合、ベンダは、例えばベンダサイト2内での検証処理により得られた結果A(適合)又は結果B(不適合)に応じた対処を行なってよい。結果C(外乱の影響により不適合)は、結果Bの例外と位置付けられてよい。
【0042】
・結果D:環境エラー
サーバ3a又は顧客サイト3等のネットワーク設定の誤設定等により、検証処理が正常に実行されない場合、例えば、ベンダは、顧客に対して、顧客サイト3等における検証処理の環境の確認を要求してよい。
【0043】
以上のように、検証システム1によれば、顧客サイト3のサーバ3aとベンダサイト2のストレージシステム4とを接続して、サーバ3aの検証処理を実施することで、ベンダサイト2内での検証処理と同様の検証結果を取得することができる。
【0044】
ところで、構築対象のストレージシステムは、顧客側の環境、例えば顧客サイト3、データセンタ、顧客サイト3及びデータセンタ、等の通信遅延が比較的小さい環境において、複数のサーバ3aにより構築されることが想定される。
【0045】
このため、上述した結果C(外乱の影響により不適合)の要因として発生した外乱のうち、検証システム1固有の環境、例えば通信環境等に起因して生じた外乱を、サーバ3aの検証結果として採用することは不適切である場合がある。
【0046】
また、従来の検証処理は、ベンダの研究室等のまとまった場所で行なわれることがあり、検証システム1のように遠地間で行なわれることは想定されていない場合がある。従って、従来の検証処理の手法によって、検証システム1のネットワーク1aを介した通信における挙動を想定することは難しい。
【0047】
このように、結果C(外乱の影響により不適合)において、通信環境に起因する外乱、例えばネットワーク1aの品質に起因する外乱の影響によりサーバ3aが不適合と判定される場合があり、HWの検証処理の精度が低下する可能性がある。
【0048】
そこで、一実施形態では、遠地間の通信が介在する検証処理においてネットワーク1aの品質を評価し、通信環境に起因する外乱を排除することで、ベンダサイト2内での検証処理と同程度の精度の結果を得ることを可能とする手法を説明する。
【0049】
〔1-3〕機能構成例
図4は、一実施形態に係る検証システム1の機能構成例を示すブロック図である。
【0050】
〔1-3-1〕ベンダサイトの機能構成例
まず、ベンダサイト2の機能構成例について説明する。
図4に示すように、ベンダサイト2のサーバ2aは、例示的に、メモリ部21、通信部22、ネゴシエーション部23、診断部24、及び、システム制御部25を備えてよい。また、ベンダサイト2のストレージシステム4は、
図2と同様に、ストレージソフトウェア4bを備えてよい。通信部22、ネゴシエーション部23、診断部24、及び、システム制御部25は、
図1に示すベンダ側制御部20の一例である。
【0051】
ストレージシステム4のストレージソフトウェア4bは、システム制御部25からの制御に応じて、サーバ3a及びサーバ4aのHWを利用したストレージシステム4としての動作を実現するための種々の処理を行なう。
【0052】
メモリ部21は、記憶領域の一例であり、サーバ2aによる処理に用いられる種々の情報を記憶する。
図4に示すように、メモリ部21は、例示的に、状態情報21a、結果情報21b、及び、補正値21cを記憶可能であってよい。
【0053】
通信部22は、サーバ3aの後述する通信部32との間で、検証処理に関する種々の通信、及び、通信に係る種々の制御を行なう。
【0054】
ネゴシエーション部23は、通信部22及び32を介して、サーバ3aの後述するネゴシエーション部34との間で、ネゴシエーション処理に関する種々の処理を行なう。ネゴシエーション処理は、サーバ3aの検証処理を診断部24により実行可能か否か(診断部24がサーバ3aを診断可能か否か)をサーバ3aが問い合わせる処理である。
【0055】
例えば、ネゴシエーション部23は、ネゴシエーション部34からのネゴシエーション処理の要求(テスト要求)の受信に応じて、ネゴシエーション部34との間でネゴシエーション処理を実行してよい。ネゴシエーション部23は、ネゴシエーション処理において、診断部24の動作モード(動作状態)を示す状態情報21aを参照し、診断部24の動作モードに応じた応答をネゴシエーション部34に送信してよい。
【0056】
状態情報21aは、例えば、診断部24が診断中(動作中)であることを示す“診断中”、及び、診断部24が診断可能(要求の受付可能状態)であることを示す“受付中”等の状態(ステート)を有する情報であってよい。例えば、ネゴシエーション部23は、状態情報21aが“診断中”を示す場合、サーバ2aが他のサーバ3aの診断を実行中であることを示す“ビジー応答”をネゴシエーション部34に送信してよい。また、ネゴシエーション部23は、状態情報21aが“受付中”を示す場合、サーバ2aが現在通信中のサーバ3aの診断を実行する準備ができたことを示す“ACK(Acknowledge)応答”をネゴシエーション部34に送信してよい。
【0057】
診断部24は、通信部22及び32を介して、サーバ3aの後述するシステムテスト部35との間で、システムテストに関する種々の処理を行なう。例えば、診断部24は、システムテスト部35からのシステムテストの要求(テスト要求)の受信に応じて、システムテスト部35との間でシステムテストを実行してよい。
【0058】
診断部24は、システムテストにおいて、サーバ2a(或いはサーバ4a)とサーバ3aとの間のネットワーク1aの診断処理、及び、サーバ3aを組み込んだストレージシステム4のシステムテスト(動作検証処理)を行なう。以下、診断処理を「ネットワーク診断処理」又は「NW診断処理」と表記する場合がある。
【0059】
診断部24は、NW診断処理及びシステムテストのそれぞれの結果を結果情報21bに含めてメモリ部21に格納してよい。また、診断部24は、NW診断処理の診断結果に基づき補正値21cを算出し、メモリ部21に格納してよい。
【0060】
例えば、診断部24は、システム制御部25に対して、算出した補正値21cをストレージシステム4のストレージソフトウェア4bに設定することを指示してよい。また、診断部24は、算出した補正値21cをシステムテスト部35に送信してよい。
【0061】
なお、ネゴシエーション部23及び診断部24は、互いに独立して動作してよい。例えば、ネゴシエーション部23は、診断部24が動作している場合においても、随時他のサーバ3aからの通信を受け付けてよい。
【0062】
システム制御部25は、ストレージシステム4に関する種々の制御を行なう。例えば、システム制御部25は、診断部24からの指示に応じて、サーバ3aを含むストレージシステム4の動作制御、並びに、ストレージソフトウェア4bの設定処理、例えば補正値21cに基づくパラメータの設定処理等を行なってよい。
【0063】
以下、診断部24が生成する補正値21c、ストレージソフトウェア4bに対する補正値21cの設定、及び、ストレージシステム4のシステムテストについて説明する。
【0064】
(補正値の一例)
補正値21cは、例えばベンダサイト2と顧客サイト3との間の通信状態等の検証システム1固有の環境に起因して生じる外乱を、システムテストでの検証において打ち消す或いは軽減するための情報である。補正値21cは、例えば、ネットワーク1aの性能に応じて算出されてよい。ネットワーク1aの性能には、例えば、通信部22(或いはサーバ4aの通信部)及び通信部32等の処理性能等が含まれてもよい。
【0065】
補正値21cは、例えば、サーバ2a(或いはサーバ4a)とサーバ3aとの間の平均の応答速度V1から、ストレージシステム4で許容されるサーバ4a間の応答速度V2を減じた値(負の値の場合は“0”)として算出されてよい。応答速度V1及びV2としては、それぞれ、例えばPing値等が挙げられる。
【0066】
或いは、補正値21cは、例えば、サーバ2a(或いはサーバ4a)とサーバ3aとの間のパケットロスを考慮し、下記式(1)に従い算出されてもよい。
補正値21c = (V1 / (1 - (パケットロス数/総パケット数))) - V2 (1)
【0067】
例えば、サーバ2a(或いはサーバ4a)とサーバ3aとの間で伝送されるパケットにロスが発生すると、送信側が再送を行なうことによって単位時間あたりの送信パケット数が減少する。再送時のパケット送信にかかる時間と通常時のパケット送信にかかる時間とが同じであると仮定すると、全体の50%のパケットがロスした場合、パケットがロスしない場合と比較して、所定量のパケット送信(及び再送)にかかる時間が2倍程度になる。このようなパケットロスの影響を平均の応答速度V1に反映させた式が上記式(1)となる。
【0068】
(ストレージソフトウェアに対する補正値の設定処理の一例)
例えば、システム制御部25は、ストレージソフトウェア4bにおける通信時間に関連するパラメータを補正値21cに基づき補正してよい。一例として、システム制御部25は、ストレージソフトウェア4bにおける、サーバ4aどうしのNW通信のタイムアウト時間に対して、補正値21c分の時間を加算(追加)してよい。
【0069】
これにより、例えば、システムテストにおける以下の(i)~(iii)に示す操作において、NWのエラーであると判定されることを抑制し、当該操作を正常終了(正常であると診断)させることができる。なお、これらの操作において、補正値21cによる補正分を超える遅延等が発生する場合には、NW等のエラーであると判定される可能性がある。
【0070】
(i)サーバ3aをストレージシステム4の一部に組み込むための制御用データを、サーバ2aとサーバ3aとの間で通信する通信処理。
(ii)サーバ3a及びサーバ4aを含むストレージシステム4のサーバどうしでユーザデータの複製を行なうための通信処理。
(iii)ストレージシステム4のサーバが外部のコンピュータに環境情報又はサーバステータス等の情報を送信するための通信処理。
【0071】
なお、上述した例は、補正値21cがパケットロスを考慮して算出されるか否かに依らない。パケットロスが発生した場合の再送処理は、低レベルのNWプロトコルで完結しており、ソフトウェアのレベルでは再送処理による遅延はNW処理の遅れとして出現するためである。
【0072】
(システムテストの処理の一例)
一実施形態に係るベンダ側制御部20は、サーバ3aとネットワーク1aを介して接続される1以上のサーバ4aの各々が実行するストレージソフトウェア4bと、サーバ3aが実行するソフトウェア5とによりストレージシステム4を構築する。そして、ベンダ側制御部20は、構築したストレージシステム4の動作検証を、ネットワーク1aの性能に応じた補正値21cをストレージソフトウェア5及び4aの各々に適用した状態で実行する。
【0073】
上述した補正値21cが適用され、且つ、サーバ3aを含んで構築された(サーバ3aが組み込まれた)ストレージシステム4を用いたシステムテストは、例えば、以下の(a)~(f)の処理のうちの少なくともいずれか1つの処理を含んでよい。
【0074】
(a)ストレージシステム4における新規ボリュームの作成。
(b)ストレージシステム4のボリュームに対するデータの書き込み及び読み出し、並びに、書き込んだデータが正しく読み出せるかを判定するための書き込みデータと読み出しデータとの比較。
(c)ストレージシステム4におけるスナップショット及びレプリケーションの一方又は双方の作成(ボリューム間データ複製)。
(d)ストレージシステム4から外部NWに存在する管理サーバ(図示省略)へのデータ送信。
(e)サーバ2aが管理するサーバ4aのうちの1つの縮退、及び、データのリバランス。
(f)ソフトウェア、例えばストレージソフトウェア4b或いは他の制御プログラムのアップデート。
【0075】
なお、リバランスとは、データの冗長性が維持できるように、ストレージシステム4に格納されるデータ(内部データ)の複数のサーバ4a間での再配置を行なう処理である。
【0076】
診断部24は、例えば、システムテストにおける上述した処理においてエラーを検出した場合、処理(操作)、処理の実行時刻又はエラーの検出時刻、並びに、エラーの要因等を示す情報を結果情報21bに含めてメモリ部21に格納してよい。
【0077】
ここで、診断部24は、システムテストにおけるエラーの「要因」が「タイムアウト」である場合、当該エラーはNW性能に起因するエラーであると判断してよい。一方で、診断部24は、システムテストにおけるエラーの「要因」が「タイムアウト」以外である場合、当該エラーはNW性能に起因しないエラーであると判断してよい。
【0078】
例えば、診断部24は、上述した(b)の処理におけるデータの書き込み及び読み出しにおいて、ホストのタイムアウトが発生した場合、当該タイムアウト(エラー)はNW性能に起因するエラーであると判断してよい。一方で、診断部24は、例えば、上述した(b)の処理における書き込みデータと読み出しデータとの内容が異なる(比較エラーである)場合、当該エラーはNW性能に起因しないと判断してよい。
【0079】
なお、NW性能に起因しないエラーの他の例としては、例えば、以下の少なくとも1つのエラーが挙げられる。
・サーバ3a又は4aのソフトウェアパニック。
・NWドライバの(タイムアウト以外の)エラーによる送受信失敗。
・サーバ3a又は4aの起動失敗。
・単体テストで正常動作すると判定された操作のエラー。
【0080】
〔1-3-2〕顧客サイトの機能構成例
次に、顧客側制御部30の機能構成例について説明する。
図4に示すように、顧客サイト3のサーバ3aは、例示的に、メモリ部31、通信部32、単体テスト部33、ネゴシエーション部34、システムテスト部35、及び、検証結果判定部36、並びに、
図1と同様のストレージソフトウェア5を備えてよい。通信部32、単体テスト部33、ネゴシエーション部34、システムテスト部35、及び、検証結果判定部36は、
図1に示す顧客側制御部30の一例である。
【0081】
メモリ部31は、記憶領域の一例であり、サーバ3aによる処理に用いられる種々の情報を記憶する。
図4に示すように、メモリ部31は、例示的に、サポート部品情報31a、結果情報31b、補正値31c、NW影響度情報31d、性能係数情報31e、及び、NW影響指数31fを記憶可能であってよい。
【0082】
通信部32は、サーバ2aの通信部22との間で、検証処理に関する種々の通信、及び、通信に係る種々の制御を行なう。
【0083】
単体テスト部33は、「構成診断」、「部品テスト」及び「ソフトウェアテスト」を含む単体テストを実行する。
【0084】
例えば、単体テスト部33は、「構成診断」において、サーバ3aの構成部品のそれぞれについて、サポート部品情報31aに基づき構築対象のストレージシステムでサポートされているか否かを判定してよい。
【0085】
図5は、サポート部品情報31aの一例を示す図である。サポート部品情報31aは、ストレージシステムでサポートされる1以上のサポート部品を示す第2情報の一例である。
図5に示すように、サポート部品情報31aは、例示的に、「部品」、「型番」、「数量」、及び、「製品名」の項目を含んでよい。「部品」には、構築対象のストレージシステムでサポートされる部品の種類が設定されてよい。「型番」には、サポートされる部品の識別情報の一例である型式番号(型番)が設定されてよい。「数量」には、サポートされる部品の数量が設定されてよい。「製品名」には、サポートされる部品の製品名が設定されてよい。
【0086】
例えば、単体テスト部33は、サーバ3aに含まれる複数の部品のそれぞれの型番を特定し、特定した型番と一致するエントリがサポート部品情報31aに含まれるか否かを判定してよい。サポート部品情報31aに型番が合致するエントリが存在する場合、単体テスト部33は、当該部品をサポート部品と判定してよい。一方、サポート部品情報31aに型番が合致するエントリが存在しない場合、単体テスト部33は、当該部品を未サポート部品と判定してよい。
【0087】
サーバ3aに含まれる全ての部品がサポート部品であると判定した場合、単体テスト部33は、結果A(適合)を示す情報を結果情報31bに含めてメモリ部31に格納してよい。
【0088】
一方、単体テスト部33は、サーバ3aに未サポート部品が含まれる場合、「部品テスト」において、未サポート部品がストレージソフトウェア5により制御可能か否かを検証する。例えば、単体テスト部33は、当該未サポート部品の種別に対応するドライバが動作可能か否かを判定してよい。
【0089】
また、単体テスト部33は、未サポート部品について、同一の種別のサポート部品との間の性能比及び性能係数を算出し、メモリ部31に格納してよい。性能比は、例えば、サポート部品の性能に対する未サポート部品の性能の比率を表す情報である。性能係数の算出手法は後述する。性能比及び性能係数は、後述する検証結果判定部36による処理に利用されてよい。
【0090】
さらに、単体テスト部33は、「ソフトウェアテスト」において、サーバ3aでストレージソフトウェア5を実行し、エラーの発生有無を判定してよい。
【0091】
「部品テスト」又は「ソフトウェアテスト」においてエラーが発生した場合(異常終了した場合)、単体テスト部33は、結果B(不適合)を示す情報を結果情報31bに含めてメモリ部31に格納してよい。
【0092】
単体テスト部33は、「ソフトウェアテスト」が正常終了した場合、サーバ3aの属する同一のサブネット内のNW診断を行なってよい。例えば、単体テスト部33は、同一サブネット内のNW診断において、顧客側制御部30(通信部32)から外部NWのゲートウェイまでの区間の接続可否の確認と、当該区間の通信品質の測定とを行なってよい。
【0093】
単体テスト部33は、同一サブネット内のNW診断の診断結果にエラーが含まれない場合(正常終了した場合)、ネゴシエーション部34に対してネゴシエーション処理の実行を指示してよい。一方、単体テスト部33は、同一サブネット内のNW診断においてエラーが発生した場合(異常終了した場合)、結果D(環境エラー)を結果情報31bに含めてメモリ部31に格納してよい。なお、NW診断の診断結果の情報は、後述する検証結果判定部36の結果判定処理において利用されてよい。
【0094】
ネゴシエーション部34は、単体テスト部33による単体テスト後に、ベンダサイト2のネゴシエーション部23にテスト要求を送信して応答の受信を待ち合わせ、待ち合わせの結果に応じた処理を行なう。例えば、ネゴシエーション部34は、ACK応答を受信した場合、システムテスト部35にシステムテストの実行を指示してよい。また、ネゴシエーション部34は、ビジー応答を受信した場合、同じベンダサイト2へのテスト要求をリトライ(再送)してもよいし、他のベンダサイト2のネゴシエーション部23にテスト要求を送信してもよい。
【0095】
なお、テスト要求がタイムアウトした場合、ネゴシエーション部34は、ネゴシエーション処理において通信異常が発生したと判定し、例えば結果D(環境エラー)を示す情報を結果情報31bに含めてメモリ部31に格納して、検証処理を終了してよい。
【0096】
システムテスト部35は、NW診断処理、及び、システムテスト(動作検証処理)を行なう。
【0097】
例えば、システムテスト部35は、ベンダサイト2の診断部24にテスト要求を送信し、診断部24との間でNW診断処理を実行する。例えば、システムテスト部35は、NW診断処理の処理結果と補正値21cとを診断部24から受信し、処理結果を結果情報31bに含めてメモリ部31に格納し、補正値21cを補正値31cとしてメモリ部31に格納してよい。
【0098】
また、システムテスト部35は、ストレージソフトウェア5に対して、補正値31cに基づく設定処理を行なってよい。補正値31cに基づく設定処理は、例えば、システム制御部25によるストレージソフトウェア4bに対する補正値21cに基づくパラメータの設定処理と同様であってよい。これにより、サーバ3aが実行するストレージソフトウェア5のパラメータと、サーバ4aが実行するストレージソフトウェア4bのパラメータとの双方に対して、同一の補正値(補正値31c及び21c)を加算することができる。
【0099】
さらに、システムテスト部35は、診断部24によるシステムテストの処理結果を受信し、検証結果判定部36に出力してよい。
【0100】
検証結果判定部36は、システムテスト部35から取得するシステムテストの結果に基づき、検証処理の結果(検証結果)を判定する。
【0101】
例えば、検証結果判定部36は、システムテストの結果が正常終了を示す場合、結果A(適合)を結果情報31bに含めてメモリ部31に格納してよい。
【0102】
また、検証結果判定部36は、システムテストの結果が異常終了を示す場合であって、エラーの内容(要因)がNW性能に起因しない場合、結果B(不適合)を結果情報31bに含めてメモリ部31に格納してよい。なお、エラーの内容がNW性能に起因するか否かは、診断部24が処理結果に含める「エラーの要因を示す情報」、及び、単体テスト部33による単体テストにおける「NW診断」の診断結果の情報の一方又は双方に基づき判定されてよい。
【0103】
システムテストの結果が異常終了を示す場合であって、エラーの内容(要因)がNW性能に起因する場合、換言すれば、結果がNWの性能に起因したエラーを含む場合、検証結果判定部36は、ネットワーク(NW)影響指数31fを算出してよい。NW影響指数31fは、サーバ3aに含まれる未サポート部品のそれぞれのNW性能に対する影響の度合いを示す指標である。
【0104】
例えば、検証結果判定部36は、下記式(2)に従いNW影響指数31fを算出し、メモリ部31に格納してよい。下記式(2)において、Σは括弧“()”内の結果を未サポート部品それぞれについて加算することを示す。
NW影響指数 = Σ(部品のNW影響度 × 部品の性能係数) (2)
【0105】
上記式(2)に示すように、NW影響指数31fは、1以上の未サポート部品の各々のネットワーク1aに対する影響度と、1以上の未サポート部品の各々の性能係数と、を未サポート部品ごとに乗じた値の合計値として算出されてよい。
【0106】
上記式(2)において、「部品のNW影響度」は、部品がNW性能にどの程度影響を与えるかを数値化した情報であり、部品ごとに所定の値を有してよい。例えば、検証結果判定部36は、メモリ部31に格納されたNW影響度情報31dを参照して、上記式(2)に用いる部品のNW影響度を取得してよい。
【0107】
図6は、NW影響度情報31dの一例を示す図である。NW影響度情報31dは、1以上の未サポート部品の各々のネットワーク1aに対する影響度を示す情報の一例であり、検証処理の前に予めメモリ部31に格納されてよい。
図6に示すように、NW影響度情報31dは、例示的に、「部品」及び「NW影響度」の項目を含んでよい。「部品」には、「NW影響度」の設定対象となる部品の種類が設定されてよい。「NW影響度」には、「部品」の種類に応じた値が設定されてよく、一例として、“0”以上“1”以下の範囲で、NW性能への影響が大きいほど大きい値が設定されてよい。
【0108】
例えば、
図6に示すように、NIC(ネットワークインタフェースカード)及びSFP(光トランシーバ)等のNW性能に与える影響が比較的大きい(例えば最大の)「部品」の「NW影響度」には、最大値である“1.0”が設定されてよい。SSD(Solid State Drive)、DIMM(Dual Inline Memory Module)、Storage等のNW性能に与える影響が比較的小さい「部品」の「NW影響度」には、“0.1”が設定されてよい。サーバ全体の性能に影響を与えるPSU(Power Supply Unit)の「NW影響度」には、比較的高めの“0.5”が設定されてよい。また、NW性能に影響を与えないケーブル類又は機器の「NW影響度」には、最低値である“0”が設定されてよい。
【0109】
上記式(2)において、「部品の性能係数」は、サーバ3aに含まれる複数の部品のそれぞれの性能と、サポート部品の性能とを比較した結果を数値化した情報であってよく、一例として、部品の単体テスト(構成診断)の結果に基づき算出されてよい。
【0110】
ここで、「性能」とは、部品ごとに異なる要素を持つ情報である。例えば、「性能」は、FAN(ファン)であれば回転数、DIMM又はStorageであれば書き込み及び読み出しのアクセス性能、CPUであれば周波数、コア数及びスレッド数、電源であれば出力電圧となる。
【0111】
これらの性能の指標は、部品(部品の種類)によっては複数の要素により表される。しかし、一実施形態では、これらの複数の要素を統合して、「性能」を部品(部品の種類)ごとに1つの数値(性能スコア)で表現するものとする。この性能スコアが、サポート部品の性能を基準として未サポート部品の性能を表す指標(スコア)であり、未サポート部品とサポート部品との性能比に基づく性能係数となる。数値(性能スコア)の算出手法としては、例えば、ベンチマークテスト等の既知の種々の手法が採用されてよい。
【0112】
例えば、一実施形態では、単体テスト部33による性能スコアの算出の段階で、部品(部品の種類)ごとの差異を吸収できるようにする。一例として、一実施形態では、性能比から性能係数を取得する数式を、部品の種類に関係なく、性能比と性能係数とが一対一に対応するように定義する。
【0113】
例えば、単体テスト部33は、未サポート部品の性能比を算出し、メモリ部31に格納された性能係数情報31eを参照して、算出した性能比に対応する性能係数を取得してよい。
【0114】
図7は、性能係数情報31eの一例である。性能係数情報31eは、1以上の未サポート部品の各々の種類に依らず性能比と性能スコアとを対応付けた第1情報の一例である。
図7に示すように、性能係数情報31eは、性能比に応じた性能係数を表す曲線(符号A参照)を定義する情報である。性能係数情報31eは、検証処理の前に予めメモリ部31に格納されてよい。
【0115】
性能係数情報31eでは、部品の性能がサポート部品の性能以上である場合、換言すれば、性能比が“100%”以上である場合に、性能係数が“1.0”(等倍)の値となる。また、性能係数情報31eでは、未サポート部品の性能がサポート部品の性能よりも劣る場合には、性能係数が最大で“5.0”までの値となる。なお、性能比が所定値(
図7の例では“80%”)未満となる場合(矢印Bで示す網掛け領域参照)には、当該未サポート部品は単体テストの段階で不適合と判定される可能性が高いため、性能比に対応する性能係数が得られなくてもよい。
【0116】
単体テスト部33は、未サポート部品について性能比を算出すると、
図7に例示する曲線(例えば数式)に従い、性能比に対応する性能係数を取得し、性能係数をメモリ部31に格納してよい。検証結果判定部36は、単体テスト部33が格納した性能係数をメモリ部31から取得し、上記式(2)における「部品の性能係数」として利用してよい。
【0117】
検証結果判定部36は、システムテストの結果が異常終了を示す場合であって、エラーの内容(要因)がNW性能に起因する場合、上記式(2)に従い算出したNW影響指数31fに基づき、検証結果を判定してよい。
【0118】
一例として、検証結果判定部36は、NW影響指数31fが閾値(例えば“2.0”)未満であれば、NW性能に起因するエラーを無視して、結果A(適合)を結果情報31bに含めてメモリ部31に格納してよい。このように、検証結果判定部36は、NW影響指数31fが閾値未満である場合、サーバ3aがストレージシステムに適合すると判定してよい。
【0119】
一方、NW影響指数31fが閾値以上であれば、補正値21c及び31cによりネットワーク1a等の環境の影響を控除してもなお、NW性能が基準を満たしていない(構築対象のストレージシステムに適合しない)ことを意味する。この場合、検証結果判定部36は、結果C(外乱の影響により不適合)を結果情報31bに含めてメモリ部31に格納してよい。
【0120】
全ての判定が終了すると、検証結果判定部36は、結果情報31bに基づく出力データを出力する。
【0121】
出力データは、結果情報31bに含まれる結果A~結果Dのいずれかを示す情報であってよい。検証結果判定部36による出力データの出力としては、例えば、ベンダ及び顧客の一方又は双方が有するコンピュータへの出力データの送信、当該コンピュータの表示装置への出力データの表示(画面出力)、メモリ部31への格納等が挙げられる。出力データの出力は、ベンダ及び顧客の一方又は双方が有するコンピュータから指示された検証処理の開始要求に対する応答と位置付けられてもよい。
【0122】
このように、一実施形態に係る顧客側制御部30は、サーバ3aが備える複数の部品のうちのストレージシステムで未サポートの1以上の未サポート部品の各々の性能と、サポートされる1以上のサポート部品の各々の性能との性能比に基づき、1以上の未サポート部品の各々の性能スコアを算出する。そして、顧客側制御部30は、性能スコアと、ベンダ側制御部20から通知されるシステムテスト(動作検証)の結果と、に基づき、サーバ3aがストレージシステムに適合するか否かを判定する。
【0123】
以上のように、一実施形態に係る検証システム1によれば、顧客のサーバ3aを活用してストレージシステムを構築するための検証処理をベンダサイト2及び顧客サイト3で実施することで、顧客のサーバ3aをベンダサイト2で用意することが不要となる。これにより、ベンダは、顧客に対して、ストレージシステムの汎用構成可能な利点を生かした費用(コスト)削減を提供することができる。また、ベンダは、検証処理における費用(コスト)の削減、検証期間の短縮等が可能となるため、検証処理の効率化を実現できる。
【0124】
また、通信処理では、ベンダサイト2と顧客サイト3との間でネットワーク1aを介した通信が介在するため、NW性能に起因する外乱の影響により、サーバ3aが不適合と判定される場合がある。これに対し、一実施形態では、NW診断処理により算出された補正値21c及び31cを利用してシステムテストが実施される。また、性能コストに基づく判定処理が行なわれる。これにより、検証システム1固有のNW環境(NW性能)に起因する外乱の影響を排除又は軽減させることができ、顧客サイト3での検証処理の効率化を実現できる。
【0125】
〔1-4〕動作例
次に、上述した一実施形態に係る検証システム1の動作例を説明する。
【0126】
〔1-4-1〕検証処理の動作例
図8は、一実施形態に係る検証処理の動作例を説明するためのフローチャートである。
図8に例示するように、検証システム1において、サーバ3aに設定された顧客側制御部30の単体テスト部33が単体テストを実行する(ステップS1)。
【0127】
ネゴシエーション部34は、メモリ部31に結果情報31bとして検証結果(例えば結果A~結果Dのいずれか)が格納されているか否かを判定する(ステップS2)。メモリ部31に結果情報31bとして検証結果が格納されている場合(ステップS2でYES)、検証結果判定部36は、結果情報31bに含まれる検証結果に基づき出力データを出力し(ステップS8)、処理が終了する。
【0128】
メモリ部31に結果情報31bとして検証結果が格納されていない場合(ステップS2でNO)、ネゴシエーション部34は、サーバ2aに設定されたベンダ側制御部20のネゴシエーション部23との間でネゴシエーション処理を実行する(ステップS3)。
【0129】
システムテスト部35は、メモリ部31に結果情報31bとして検証結果が格納されているか否かを判定する(ステップS4)。メモリ部31に結果情報31bとして検証結果が格納されている場合(ステップS4でYES)、処理がステップS8に移行する。
【0130】
メモリ部31に結果情報31bとして検証結果が格納されていない場合(ステップS4でNO)、システムテスト部35は、ベンダ側制御部20の診断部24との間でシステムテストを実行する(ステップS5)。
【0131】
検証結果判定部36は、メモリ部31に結果情報31bとして検証結果が格納されているか否かを判定する(ステップS6)。メモリ部31に結果情報31bとして検証結果が格納されている場合(ステップS6でYES)、処理がステップS8に移行する。
【0132】
メモリ部31に結果情報31bとして検証結果が格納されていない場合(ステップS6でNO)、検証結果判定部36は、検証結果判定処理を実行し(ステップS7)、処理がステップS8に移行する。
【0133】
〔1-4-2〕単体テストの動作例
図9は、
図8に示す単体テスト(ステップS1)の動作例を説明するためのフローチャートである。
図9に例示するように、単体テスト部33は、図示しないコンピュータ等から検証処理の実行指示を受け付けると、検証対象のサーバ3aに含まれる複数のHW構成部品、例えば当該部品の型番を確認(検出)する(ステップS11)。
【0134】
単体テスト部33は、メモリ部31に検証処理の前に予め格納されたサポート部品情報31aを参照し、複数の部品の型番のそれぞれをサポート部品情報31aと照合して、型番に一致するエントリが存在するか否かを判定する。そして、単体テスト部33は、検出した全ての部品の型番がサポート部品情報31aに存在するか否か、換言すれば、全ての部品がサポート済みか否かを判定する(ステップS12)。
【0135】
全ての部品がサポート済みである場合(ステップS12でYES)、単体テスト部33は、これ以上の検証処理は不要であるため、結果A(適合)を結果情報31bに含めてメモリ部31に格納し(ステップS13)、単体テストが終了する。
【0136】
少なくとも1つの部品が未サポートである場合(ステップS12でNO)、単体テスト部33は、各未サポート部品の部品テストを実行する(ステップS14)。
【0137】
単体テスト部33は、全ての部品テストでエラーが発生しなかったか否か、換言すれば、全ての部品テストが正常終了したか否かを判定する(ステップS15)。少なくとも1つの部品テストでエラーが発生した、換言すれば、異常終了した場合(ステップS15でNO)、検証処理が続行不能であるため、単体テスト部33は、結果B(不適合)を結果情報31bに含めてメモリ部31に格納し(ステップS18)、単体テストが終了する。
【0138】
全ての部品テストでエラーが発生しなかった、換言すれば、全ての部品テストが正常終了した場合(ステップS15でYES)、単体テスト部33は、サーバ3aのソフトウェアテストを行なう(ステップS16)。
【0139】
単体テスト部33は、全てのソフトウェアテストでエラーが発生しなかったか否か、換言すれば、全てのソフトウェアテストが正常終了したか否かを判定する(ステップS17)。少なくとも1つのソフトウェアテストでエラーが発生した、換言すれば、異常終了した場合(ステップS17でNO)、検証処理が続行不能であるため、処理がステップS18に移行する。
【0140】
全てのソフトウェアテストでエラーが発生しなかった、換言すれば、全てのソフトウェアテストが正常終了した場合(ステップS17でYES)、単体テスト部33は、同一のサブネット内のNW診断を行なう(ステップS19)。
【0141】
単体テスト部33は、NW診断でエラーが発生しなかったか否か、換言すれば、NW診断が正常終了したか否かを判定する(ステップS20)。NW診断でエラーが発生した、換言すれば、異常終了した場合(ステップS20でNO)、検証処理が続行不能であるため、単体テスト部33は、結果D(環境エラー)を結果情報31bに含めてメモリ部31に格納し(ステップS21)、単体テストが終了する。
【0142】
NW診断でエラーが発生しなかった、換言すれば、正常終了した場合(ステップS20でYES)、単体テストが終了する。
【0143】
〔1-4-3〕ネゴシエーション処理の動作例
図10は、
図8に示すネゴシエーション処理(ステップS3)の動作例を説明するためのフローチャートである。まず、顧客側制御部30の動作例を説明する。
図10に例示するように、顧客側制御部30のネゴシエーション部34は、ベンダ側制御部20にネゴシエーション処理のテスト要求を送信し(ステップS31)、応答を待ち合わせる。
【0144】
ネゴシエーション部34は、テスト要求の送信後、所定時間が経過したか否か、換言すればテスト要求の応答がタイムアウトしたか否かを判定する(ステップS32)。タイムアウトした場合(ステップS32でYES)、通信異常により検証処理が続行不能であるため、ネゴシエーション部34は、結果D(環境エラー)を結果情報31bに含めてメモリ部31に格納し(ステップS33)、ネゴシエーション処理が終了する。
【0145】
タイムアウトしていない場合(ステップS32でNO)、ネゴシエーション部34は、ビジー応答を受信したか否かを判定する(ステップS34)。
【0146】
ビジー応答を受信した場合(ステップS34でYES)、処理がステップS31に移行する。一方、ビジー応答を受信していない場合(ステップS34でNO)、ネゴシエーション部34は、ACK応答を受信したか否かを判定する(ステップS35)。
【0147】
ACK応答を受信していない場合(ステップS35でNO)、処理がステップS32に移行する。一方、ACK応答を受信した場合(ステップS35でYES)、顧客側制御部30におけるネゴシエーション処理が終了する。
【0148】
次に、ベンダ側制御部20の動作例を説明する。
図10に例示するように、ベンダ側制御部20のネゴシエーション部23は、顧客側制御部30からの通信、例えばネゴシエーション処理のテスト要求の受信を待ち合わせる(ステップS41)。
【0149】
顧客側制御部30からのテスト要求を受信すると、ネゴシエーション部23は、メモリ部21の状態情報21aを参照して、状態情報21aが“診断中”を示すか否かを判定する(ステップS42)。状態情報21aが“診断中”を示す場合(ステップS42でYES)、ネゴシエーション部23は、顧客側制御部30にビジー応答を送信し(ステップS43)、処理がステップS41に移行する。
【0150】
状態情報21aが“診断中”を示さない場合(ステップS42でNO)、ネゴシエーション部23は、状態情報21aの状態を“診断中”に設定し(ステップS44)、ネゴシエーション部23にACK応答を送信する(ステップS45)。
【0151】
そして、ネゴシエーション部23は、診断部24を起動し(ステップS46)、処理がステップS41に移行する。
【0152】
〔1-4-4〕システムテストの動作例
図11は、
図8に示すシステムテスト(ステップS5)の動作例を説明するためのフローチャートである。まず、顧客側制御部30の動作例を説明する。
図11に例示するように、顧客側制御部30のシステムテスト部35は、ベンダ側制御部20にシステムテストのテスト要求を送信し(ステップS51)、応答を待ち合わせる。
【0153】
システムテスト部35は、ベンダ側制御部20からの応答の受信に応じて、診断部24との間でNW診断処理を行なう(ステップS52)。
【0154】
システムテスト部35は、NW診断処理の診断結果及び補正値21cをベンダ側制御部20から受信すると、受信した情報をメモリ部31に格納し、ストレージソフトウェア5に補正値31cを設定する(ステップS53)。
【0155】
システムテスト部35は、診断部24によるサーバ3a(ストレージソフトウェア5)を含むストレージシステム4のシステムテストの結果の受信を待ち合わせる(ステップS54)。例えば、システムテスト部35は、ベンダ側制御部20からシステムテストの結果を受信すると、当該結果を結果情報31bに含めてメモリ部31に格納し、顧客側制御部30におけるシステムテストが終了する。
【0156】
次に、ベンダ側制御部20の動作例を説明する。
図11に例示するように、ベンダ側制御部20の診断部24は、顧客側制御部30からの通信、例えばシステムテストのテスト要求の受信を待ち合わせる(ステップS61)。
【0157】
顧客側制御部30からのテスト要求を受信すると、診断部24は、顧客側制御部30のシステムテスト部35との間でNW診断処理を実行する(ステップS62)。また、診断部24は、NW診断処理の診断結果に基づき補正値21cを算出し、顧客側制御部30に対して、診断結果と補正値21cとを送信する(ステップS63)。
【0158】
診断部24は、システム制御部25に対して、ストレージシステム4のストレージソフトウェア4bに対する補正値21cの設定を指示する。システム制御部25は、ストレージソフトウェア4bに補正値21cを設定する(ステップS64)。
【0159】
診断部24は、システム制御部25とともに、ストレージシステム4への顧客側のサーバ3aの組み込みを制御し(ステップS65)、当該組み込みが正常終了したか否かを判定する(ステップS66)。
【0160】
組み込みが正常終了した場合(ステップS66でYES)、診断部24は、システム制御部25とともに、システムテストを実行し(ステップS67)、テスト結果を顧客側制御部30に送信する(ステップS68)。組み込みが異常終了した場合(ステップS66でNO)、診断部24は、システムテストの実行をスキップし、組み込みに失敗したことを示すテスト結果を顧客側制御部30に送信する(ステップS68)。
【0161】
そして、診断部24は、状態情報21aの状態を“受付中”に設定し(ステップS69)、ベンダ側制御部20におけるシステムテストが終了する。
【0162】
〔1-4-5〕検証結果判定処理の動作例
図12は、
図8に示す検証結果判定処理(ステップS7)の動作例を説明するためのフローチャートである。
図12に例示するように、検証結果判定部36は、システムテストの結果に基づき、正常終了したか否かを判定する(ステップS71)。
【0163】
正常終了した場合(ステップS71でYES)、検証結果判定部36は、結果A(適合)を結果情報31bに含めてメモリ部31に格納し(ステップS72)、検証結果判定処理(検証処理)が終了する。
【0164】
異常終了した場合(ステップS71でNO)、検証結果判定部36は、異常終了の要因がNW性能に無関係のエラーであるか否かを判定する(ステップS73)。異常終了の要因がNW性能に無関係のエラーである場合(ステップS73でYES)、検証結果判定部36は、結果B(不適合)を結果情報31bに含めてメモリ部31に格納し(ステップS74)、検証結果判定処理(検証処理)が終了する。
【0165】
異常終了の要因がNW性能に無関係のエラーではない、換言すればNW性能に関係するエラーである場合(ステップS73でNO)、検証結果判定部36は、NW影響指数31fを算出する(ステップS75)。
【0166】
検証結果判定部36は、NW影響指数31fが閾値(例えば“2.0”)未満か否かを判定する(ステップS76)。NW影響指数31fが閾値未満である場合(ステップS76でYES)、検証結果判定部36は、NW性能に関係するエラーを無視して、結果A(適合)を結果情報31bに含めてメモリ部31に格納し(ステップS77)、検証結果判定処理(検証処理)が終了する。
【0167】
NW影響指数31fが閾値以上である場合(ステップS76でNO)、検証結果判定部36は、結果C(外乱の影響により不適合)を結果情報31bに含めてメモリ部31に格納し(ステップS78)、検証結果判定処理(検証処理)が終了する。
【0168】
〔1-5〕ハードウェア構成例
一実施形態に係るサーバ2aを実現する装置は、仮想サーバ(VM;Virtual Machine)であってもよいし、物理サーバであってもよい。また、サーバ2aは、1台のコンピュータにより実現されてもよいし、2台以上のコンピュータにより実現されてもよい。さらに、サーバ2aの機能のうちの少なくとも一部は、クラウド環境により提供されるHWリソース及びNWリソースを用いて実現されてもよい。
【0169】
一実施形態に係るサーバ3a及びサーバ4aのそれぞれを実現する装置は、物理サーバであってよい。また、一実施形態では、サーバ3aが顧客側制御部30の機能を実現するものとして説明したが、これに限定されるものではない。例えば、顧客側制御部30の機能を実現するサーバは、ストレージソフトウェア5を備えるサーバ3aとは異なるサーバ、例えば仮想サーバであってもよいし、物理サーバであってもよい。この場合、顧客側制御部30の機能を実現するサーバは、1台のコンピュータにより実現されてもよいし、2台以上のコンピュータにより実現されてもよい。さらに、顧客側制御部30の機能のうちの少なくとも一部は、クラウド環境により提供されるHWリソース及びNWリソースを用いて実現されてもよい。
【0170】
サーバ2a、サーバ3a及びサーバ4a、並びに、顧客側制御部30の機能を実現するサーバのそれぞれは、互いに同様のコンピュータにより実現されてよい。以下、当該コンピュータのHW構成例を、コンピュータ10を例に挙げて説明する。
【0171】
図13は、コンピュータ10のHW構成例を示すブロック図である。サーバ2a、サーバ3a及びサーバ4a、並びに、顧客側制御部30の機能を実現するサーバのそれぞれのHWリソースとして、複数のコンピュータが用いられる場合は、各コンピュータが
図13に例示するHW構成を備えてよい。
【0172】
図13に示すように、コンピュータ10は、HW構成として、例示的に、プロセッサ10a、メモリ10b、記憶部10c、IF(Interface)部10d、I/O(Input / Output)部10e、及び読取部10fを備えてよい。
【0173】
プロセッサ10aは、種々の制御や演算を行なう演算処理装置の一例である。プロセッサ10aは、コンピュータ10内の各ブロックとバス10iで相互に通信可能に接続されてよい。なお、プロセッサ10aは、複数のプロセッサを含むマルチプロセッサであってもよいし、複数のプロセッサコアを有するマルチコアプロセッサであってもよく、或いは、マルチコアプロセッサを複数有する構成であってもよい。
【0174】
プロセッサ10aとしては、例えば、CPU、MPU、GPU、APU、DSP、ASIC、FPGA等の集積回路(IC;Integrated Circuit)が挙げられる。なお、プロセッサ10aとして、これらの集積回路の2以上の組み合わせが用いられてもよい。MPUはMicro Processing Unitの略称である。GPUはGraphics Processing Unitの略称であり、APUはAccelerated Processing Unitの略称である。DSPはDigital Signal Processorの略称であり、ASICはApplication Specific ICの略称であり、FPGAはField-Programmable Gate Arrayの略称である。
【0175】
メモリ10bは、種々のデータやプログラム等の情報を格納するHWの一例である。メモリ10bとしては、例えばDRAM(Dynamic Random Access Memory)等の揮発性メモリ、及び、PM(Persistent Memory)等の不揮発性メモリ、の一方又は双方が挙げられる。
【0176】
記憶部10cは、種々のデータやプログラム等の情報を格納するHWの一例である。記憶部10cとしては、HDD(Hard Disk Drive)等の磁気ディスク装置、SSD等の半導体ドライブ装置、不揮発性メモリ等の各種記憶装置が挙げられる。不揮発性メモリとしては、例えば、フラッシュメモリ、SCM(Storage Class Memory)、ROM(Read Only Memory)等が挙げられる。
【0177】
なお、
図4に示すサーバ2aのメモリ部21、及び、サーバ3aのメモリ部31のそれぞれは、メモリ10b及び記憶部10cの一方又は双方が有する記憶領域により実現されてもよい。
図3に示す記憶装置4cは、サーバ4aの記憶部10cの一例である。
【0178】
また、記憶部10cは、コンピュータ10の各種機能の全部若しくは一部を実現するプログラム10g(適合判定プログラム)を格納してよい。例えば、サーバ2aのプロセッサ10aは、記憶部10cに格納されたプログラム10gをメモリ10bに展開して実行することにより、
図4に例示するベンダ側制御部20としての機能を実現できる。また、サーバ3aのプロセッサ10aは、記憶部10cに格納されたプログラム10gをメモリ10bに展開して実行することにより、
図4に例示する顧客側制御部30としての機能を実現できる。
【0179】
IF部10dは、サーバ2a、サーバ3a及びサーバ4aのそれぞれの間の各ネットワーク、一例としてネットワーク1a及び4dの接続及び通信の制御等を行なう通信IFの一例である。例えば、IF部10dは、イーサネット(登録商標)等のLAN、或いは、FC(Fibre Channel)等の光通信等に準拠したアダプタを含んでよい。当該アダプタは、無線及び有線の一方又は双方の通信方式に対応してよい。例えば、
図4に示す通信部22及び32は、それぞれIF部10dを利用してよい。また、例えば、プログラム10gは、当該通信IFを介して、ネットワークからコンピュータ10にダウンロードされ、記憶部10cに格納されてもよい。
【0180】
I/O部10eは、入力装置、及び、出力装置、の一方又は双方を含んでよい。入力装置としては、例えば、キーボード、マウス、タッチパネル等が挙げられる。出力装置としては、例えば、モニタ、プロジェクタ、プリンタ等が挙げられる。
【0181】
読取部10fは、記録媒体10hに記録されたデータやプログラムの情報を読み出すリーダの一例である。読取部10fは、記録媒体10hを接続可能又は挿入可能な接続端子又は装置を含んでよい。読取部10fとしては、例えば、USB(Universal Serial Bus)等に準拠したアダプタ、記録ディスクへのアクセスを行なうドライブ装置、SDカード等のフラッシュメモリへのアクセスを行なうカードリーダ等が挙げられる。なお、記録媒体10hにはプログラム10gが格納されてもよく、読取部10fが記録媒体10hからプログラム10gを読み出して記憶部10cに格納してもよい。
【0182】
記録媒体10hとしては、例示的に、磁気/光ディスクやフラッシュメモリ等の非一時的なコンピュータ読取可能な記録媒体が挙げられる。磁気/光ディスクとしては、例示的に、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク、HVD(Holographic Versatile Disc)等が挙げられる。フラッシュメモリとしては、例示的に、USBメモリやSDカード等の半導体メモリが挙げられる。
【0183】
上述したコンピュータ10のHW構成は例示である。従って、コンピュータ10内でのHWの増減(例えば任意のブロックの追加や削除)、分割、任意の組み合わせでの統合、又は、バスの追加若しくは削除等は適宜行なわれてもよい。例えば、サーバ2a、サーバ3a及びサーバ4aの少なくとも1つにおいて、I/O部10e及び読取部10fの少なくとも一方は、省略されてもよい。
【0184】
〔2〕その他
上述した一実施形態に係る技術は、以下のように変形、変更して実施することができる。
【0185】
例えば、
図4に示すサーバ2aが備えるブロック21~25は、任意の組み合わせで併合してもよく、それぞれ分割してもよい。また、
図4に示すサーバ3aが備えるブロック32~36は、任意の組み合わせで併合してもよく、それぞれ分割してもよい。
【0186】
また、一実施形態では、検証対象のサーバ3aを組み込む対象(構築対象)の情報処理システムがSDS等のストレージシステムである場合を例に挙げたが、これに限定されるものではない。構築対象の情報処理システムは、複数の情報処理装置により所定の処理を実行する種々の情報処理システム、一例として、複数のサーバ(サーバ3a)を用いてクラスタを形成するクラスタシステム等の種々の情報処理システムであってもよい。
【0187】
〔3〕付記
以上の実施形態に関し、さらに以下の付記を開示する。
【0188】
(付記1)
第1情報処理装置を含む複数の情報処理装置の各々が実行するソフトウェアによって構築される第1システムに前記第1情報処理装置が適合するか否かを判定する適合判定システムであって、
前記第1情報処理装置が備える複数の部品のうちの前記第1システムで未サポートの1以上の未サポート部品の各々の性能と、前記第1システムでサポートされる1以上のサポート部品の各々の性能との性能比に基づき、前記1以上の未サポート部品の各々の性能スコアを算出する、第1制御部と、
前記第1情報処理装置とネットワークを介して接続される1以上の第2情報処理装置の各々が実行するソフトウェアと、前記第1情報処理装置が実行するソフトウェアとにより構築した第2システムの動作検証を、前記ネットワークの性能に応じた補正値を前記複数のソフトウェアに適用した状態で実行する、第2制御部と、を備え、
前記第1制御部は、前記性能スコアと、前記第2制御部から通知される前記動作検証の結果と、に基づき、前記第1情報処理装置が前記第1システムに適合するか否かを判定する、
適合判定システム。
【0189】
(付記2)
前記第1制御部は、前記動作検証の結果が前記ネットワークの性能に起因したエラーを含む場合、前記1以上の未サポート部品の各々の前記ネットワークに対する影響度と、前記性能スコアとに基づき、前記第1情報処理装置が前記第1システムに適合するか否かを判定する、
付記1に記載の適合判定システム。
【0190】
(付記3)
前記第1制御部は、前記1以上の未サポート部品の各々の前記ネットワークに対する影響度と、前記1以上の未サポート部品の各々の性能スコアと、を前記未サポート部品ごとに乗じた値の合計値が閾値未満である場合、前記第1情報処理装置が前記第1システムに適合すると判定する、
付記2に記載の適合判定システム。
【0191】
(付記4)
前記第1制御部は、
前記1以上の未サポート部品の各々が前記ソフトウェアにより制御可能か否かを判定し、判定結果に基づき、前記第1情報処理装置が前記第1システムに適合するか否かを判定する、
付記1~付記3のいずれか1項に記載の適合判定システム。
【0192】
(付記5)
前記第1制御部は、前記1以上の未サポート部品の各々の種類に依らず性能比と性能スコアとを対応付けた第1情報を参照して、前記1以上の未サポート部品の各々の性能スコアを取得する、
付記1~付記4のいずれか1項に記載の適合判定システム。
【0193】
(付記6)
前記第1制御部は、
前記第1情報処理装置が備える前記複数の部品を検出し、
前記第1システムでサポートされる1以上のサポート部品を示す第2情報を参照して、前記複数の部品のうちの前記第2情報に含まれない部品を前記1以上の未サポート部品として特定する、
付記1~付記5のいずれか1項に記載の適合判定システム。
【0194】
(付記7)
前記第1情報処理装置は、前記第1システムのユーザが保有又は利用する情報処理装置であり、
前記第2情報処理装置は、前記第1システムを構築するベンダが保有又は利用する情報処理装置である、
付記1~付記6のいずれか1項に記載の適合判定システム。
【0195】
(付記8)
第1コンピュータを含む複数のコンピュータの各々が実行するソフトウェアによって構築される第1システムに前記第1コンピュータが適合するか否かを判定する前記第1コンピュータに、
前記第1コンピュータが備える複数の部品のうちの前記第1システムで未サポートの1以上の未サポート部品の各々の性能と、前記第1システムでサポートされる1以上のサポート部品の各々の性能との性能比に基づき、前記1以上の未サポート部品の各々の性能スコアを算出し、
前記第1コンピュータとネットワークを介して接続される1以上の第2コンピュータの各々が実行するソフトウェアと、前記第1コンピュータが実行するソフトウェアとにより構築した第2システムの動作検証を、前記ネットワークの性能に応じた補正値を前記複数のソフトウェアに適用した状態で実行した第3コンピュータから、前記動作検証の結果を取得し、
前記性能スコアと前記動作検証の結果とに基づき、前記第1コンピュータが前記第1システムに適合するか否かを判定する、
処理を実行させる、適合判定プログラム。
【0196】
(付記9)
前記判定する処理は、前記動作検証の結果が前記ネットワークの性能に起因したエラーを含む場合、前記1以上の未サポート部品の各々の前記ネットワークに対する影響度と、前記性能スコアとに基づき、前記第1コンピュータが前記第1システムに適合するか否かを判定する、処理を含む、
付記8に記載の適合判定プログラム。
【0197】
(付記10)
前記判定する処理は、前記1以上の未サポート部品の各々の前記ネットワークに対する影響度と、前記1以上の未サポート部品の各々の性能スコアと、を前記未サポート部品ごとに乗じた値の合計値が閾値未満である場合、前記第1コンピュータが前記第1システムに適合すると判定する、処理を含む、
付記9に記載の適合判定プログラム。
【0198】
(付記11)
前記1以上の未サポート部品の各々が前記ソフトウェアにより制御可能か否かを判定し、判定結果に基づき、前記第1情報処理装置が前記第1システムに適合するか否かを判定する、
処理を前記第1コンピュータに実行させる、付記8~付記10のいずれか1項に記載の適合判定プログラム。
【0199】
(付記12)
前記算出する処理は、前記1以上の未サポート部品の各々の種類に依らず性能比と性能スコアとを対応付けた第1情報を参照して、前記1以上の未サポート部品の各々の性能スコアを取得する、処理を含む、
付記8~付記11のいずれか1項に記載の適合判定プログラム。
【0200】
(付記13)
前記算出する処理は、
前記第1コンピュータが備える前記複数の部品を検出し、
前記第1システムでサポートされる1以上のサポート部品を示す第2情報を参照して、前記複数の部品のうちの前記第2情報に含まれない部品を前記1以上の未サポート部品として特定する、処理を含む、
付記8~付記12のいずれか1項に記載の適合判定プログラム。
【0201】
(付記14)
第1コンピュータを含む複数のコンピュータの各々が実行するソフトウェアによって構築される第1システムに前記第1コンピュータが適合するか否かを判定する適合判定システムにおける適合判定方法であって、
前記第1コンピュータが、前記第1コンピュータが備える複数の部品のうちの前記第1システムで未サポートの1以上の未サポート部品の各々の性能と、前記第1システムでサポートされる1以上のサポート部品の各々の性能との性能比に基づき、前記1以上の未サポート部品の各々の性能スコアを算出し、
第3コンピュータが、前記第1コンピュータとネットワークを介して接続される1以上の第2コンピュータの各々が実行するソフトウェアと、前記第1コンピュータが実行するソフトウェアとにより構築した第2システムの動作検証を、前記ネットワークの性能に応じた補正値を前記複数のソフトウェアに適用した状態で実行し、
前記第1コンピュータが、前記性能スコアと、前記第3コンピュータから通知される前記動作検証の結果と、に基づき、前記第1コンピュータが前記第1システムに適合するか否かを判定する、
処理を実行する、適合判定方法。
【0202】
(付記15)
前記判定する処理は、前記動作検証の結果が前記ネットワークの性能に起因したエラーを含む場合、前記1以上の未サポート部品の各々の前記ネットワークに対する影響度と、前記性能スコアとに基づき、前記第1コンピュータが前記第1システムに適合するか否かを判定する、処理を含む、
付記14に記載の適合判定方法。
【0203】
(付記16)
前記判定する処理は、前記1以上の未サポート部品の各々の前記ネットワークに対する影響度と、前記1以上の未サポート部品の各々の性能スコアと、を前記未サポート部品ごとに乗じた値の合計値が閾値未満である場合、前記第1コンピュータが前記第1システムに適合すると判定する、処理を含む、
付記15に記載の適合判定方法。
【0204】
(付記17)
前記1以上の未サポート部品の各々が前記ソフトウェアにより制御可能か否かを判定し、判定結果に基づき、前記第1情報処理装置が前記第1システムに適合するか否かを判定する、
処理を前記第1コンピュータが実行する、付記14~付記16のいずれか1項に記載の適合判定方法。
【0205】
(付記18)
前記算出する処理は、前記1以上の未サポート部品の各々の種類に依らず性能比と性能スコアとを対応付けた第1情報を参照して、前記1以上の未サポート部品の各々の性能スコアを取得する、処理を含む、
付記14~付記17のいずれか1項に記載の適合判定方法。
【0206】
(付記19)
前記算出する処理は、
前記第1コンピュータが備える前記複数の部品を検出し、
前記第1システムでサポートされる1以上のサポート部品を示す第2情報を参照して、前記複数の部品のうちの前記第2情報に含まれない部品を前記1以上の未サポート部品として特定する、処理を含む、
付記14~付記18のいずれか1項に記載の適合判定方法。
【0207】
(付記20)
前記第1コンピュータは、前記第1システムのユーザが保有又は利用するコンピュータであり、
前記第2コンピュータは、前記第1システムを構築するベンダが保有又は利用するコンピュータである、
付記14~付記19のいずれか1項に記載の適合判定方法。
【符号の説明】
【0208】
1 検証システム
1a、4d ネットワーク
2 ベンダサイト
2a、3a、4a サーバ
20 ベンダ側制御部
21、31 メモリ部
21a 状態情報
21b、31b 結果情報
21c、31c 補正値
22、32 通信部
23、34 ネゴシエーション部
24 診断部
25 システム制御部
3 顧客サイト
30 顧客側制御部
31a サポート部品情報
31d NW影響度情報
31e 性能係数情報
31f NW影響指数
33 単体テスト部
35 システムテスト部
36 検証結果判定部
4 ストレージシステム
4b、5 ストレージソフトウェア
4c 記憶装置
41 クラウドOS
42 仮想化ソフトウェア
43 アプリケーション
44 コンテナ