JP2018205816A - 情報処理システム、情報処理装置、および管理プログラム - Google Patents

情報処理システム、情報処理装置、および管理プログラム Download PDF

Info

Publication number
JP2018205816A
JP2018205816A JP2017106730A JP2017106730A JP2018205816A JP 2018205816 A JP2018205816 A JP 2018205816A JP 2017106730 A JP2017106730 A JP 2017106730A JP 2017106730 A JP2017106730 A JP 2017106730A JP 2018205816 A JP2018205816 A JP 2018205816A
Authority
JP
Japan
Prior art keywords
software
support
management
log
identifier
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.)
Pending
Application number
JP2017106730A
Other languages
English (en)
Inventor
賢一 高柳
Kenichi Takayanagi
賢一 高柳
茂明 小池
Shigeaki Koike
茂明 小池
直之 吉見
Naoyuki Yoshimi
直之 吉見
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017106730A priority Critical patent/JP2018205816A/ja
Priority to US15/989,684 priority patent/US20180349915A1/en
Publication of JP2018205816A publication Critical patent/JP2018205816A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/01Customer relationship services
    • G06Q30/012Providing warranty services
    • 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/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • 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/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis
    • 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/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Economics (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】個体識別番号を有していないソフトウェアに対するサポート契約の有無を判断できるようにする。
【解決手段】第1情報処理装置11は、ソフトウェア2b,3bに関するログ取得指示に応じて、ソフトウェアの実行過程で出力されたメッセージのログ2c,3cと、オペレーティングシステム2,3を識別する識別子とを、オペレーティングシステム2,3から取得する。そして第1情報処理装置11は、ログと識別子とを含むファイル4,5を出力する。第2情報処理装置12は、サポート契約のサポート対象となるサポート対象ソフトウェアがインストールされているオペレーティングシステムを示すサポート対象識別子と、識別子とが一致するか否か、およびログに不具合の発生を示すメッセージが含まれるか否かに基づいて、ログに基づくソフトウェア2b,3bへのサポートがサポート契約の適用対象か否かを判定する。
【選択図】図1

Description

本発明は、情報処理システム、情報処理装置、および管理プログラムに関する。
企業がコンピュータシステムを運用していると、様々な問題が発生する。問題は、機器の設定の間違いが原因だったり、ソフトウェアのバグが原因だったり、様々な原因で発生する。そのため発生したすべての問題に対して、企業が独自に迅速に対応するのは難しい。そこで、コンピュータシステムの運用をサポートするサービスがある。
コンピュータシステムの運用のサポートには、ハードウェアのサポートとソフトウェアのサポートとがある。ソフトウェアに対するサポートは、正規に販売された製品に対してのみ行われる。ソフトウェアは不正コピーが容易であるため、例えばソフトウェアに個体特定のための識別番号が設定される。ソフトウェアに対してサポートをする際には、識別番号に基づいてネットワーク経由で特定のソフトウェアの動作状況を調査し、そのソフトウェアの使用ライセンスの範囲内の使用であることを確認した上で、そのソフトウェアに対するサポートが行われる。
ソフトウェアのサポートを支援する技術としては、例えば、適正にソフトウェア識別タグを管理することができる情報管理装置がある。また、ライセンス管理の負荷を軽減するためのソフトウェアライセンス管理方式もある。さらに、配布可能なソフトウェアアプリケーションを追跡する方法もある。
特開2016−181091号公報 特開2006−338183号公報 特開2001−202250号公報
ソフトウェアの高度なサポートサービスは、サービス契約を締結した顧客に対してのみ提供される。サービス契約は、ソフトウェア1本ずつ個別に行われる。ソフトウェアに個体識別番号があれば、その個体識別番号によって契約したサービスの対象となるソフトウェアを特定できる。
その一方、個体特定のための識別番号が存在しないソフトウェアを対象としたサポートサービスを提供する場合もある。従来は、個体識別番号を有していないソフトウェアが複数ある場合、複数のソフトウェアそれぞれについて、サポート契約が締結されているかどうかを判断することができない。そのため顧客は、1つのサポートサービスを、複数のソフトウェアで使いまわすことが可能となっている。例えば、同種のソフトウェアを10本購入し、そのうちの1本についてのみサポート契約を締結している顧客を想定する。この顧客からトラブルに対するサポートの問い合わせを受けたとき、サポートサービス提供者側では、トラブルが発生したソフトウェアがサポート対象のソフトウェアなのかどうかを確認する手段がない。そのため顧客は、1本のソフトウェアに対するサポート契約で、それ以外の任意のソフトウェアに対するサポートを受けることが可能となっている。
1つの側面では、本発明は、個体識別番号を有していないソフトウェアに対するサポート契約の有無を判断できるようにすることを目的とする。
1つの案では、第1情報処理装置と第2情報処理装置とを有する情報処理システムが提供される。管理対象コンピュータ上で実行されている複数のオペレーティングシステムのうちの一オペレーティングシステムにインストールされているソフトウェアに関するログ取得指示に応じて、ソフトウェアの実行過程で出力されたメッセージのログと、一オペレーティングシステムを識別する識別子とを、一オペレーティングシステムから取得する。そして第1情報処理装置は、ログと識別子とを含むファイルを出力する。第2情報処理装置は、ファイルを取得する。そして第2情報処理装置は、サポート契約のサポート対象となるサポート対象ソフトウェアがインストールされているオペレーティングシステムを示すサポート対象識別子と、識別子とが一致するか否か、およびログに不具合の発生を示すメッセージが含まれるか否かに基づいて、ログに基づくソフトウェアへのサポートがサポート契約の適用対象か否かを判定する。
1態様によれば、個体識別番号を有していないソフトウェアに対するサポート契約の有無を判断できる。
第1の実施の形態の構成の一例を示す図である。 第2の実施の形態のシステム構成例を示す図である。 第2の実施の形態に用いるコンピュータのハードウェアの一例を示す図である。 第2の実施の形態の各装置の機能の一例を示すブロック図である。 レジストリの一例を示す図である。 OS情報データベースの一例を示す図である。 サポート契約情報データベースの一例を示す図である。 ソフトウェアインストール前の状態の一例を示す図である。 ソフトウェアのインストールおよびサポート契約後の状態の一例を示す図である。 管理サーバへのOS情報の登録状況の一例を示す第1の図である。 管理サーバへのOS情報の登録状況の一例を示す第2の図である。 管理サーバへのOS情報の登録状況の一例を示す第3の図である。 管理サーバへの登録後のソフトウェアのインストール状況の一例を示す図である。 インストール有無フラグの定期取得の状況の一例を示す図である。 ライセンス数分のソフトウェアインストール後の状態の一例を示す図である。 IPアドレス変更状況の一例を示す図である。 サポート依頼の一例を示す第1の図である。 サポート依頼の一例を示す第2の図である。 サポート契約対象のソフトウェアで不具合が発生した場合の対処の一例を示す図である。 サポート契約対象とは別のソフトウェアで不具合が発生した場合の対処の一例を示す図である。 サポート契約の対象の本数以上のソフトウェアで不具合が発生した場合の対処の一例を示す図である。 虚偽のOS管理番号を伝えてサポートを受けようとした場合の対処の一例を示す図である。 仮想マシンをコピーする前の運用状態の一例を示す図である。 仮想マシンのコピーが行われた後の状態の一例を示す図である。 OS管理キーの定期更新状況の一例を示す図である。 OS情報がすでに登録されている場合における他のOS情報の登録状況の一例を示す第1の図である。 OS情報がすでに登録されている場合における他のOS情報の登録状況の一例を示す第2の図である。 コピー元のOSを有するサーバの電源遮断後のOS管理キーの定期更新状況の一例を示す図である。 コピー元のOSを有するサーバの電源遮断後におけるOS情報の登録に伴うOS管理キーの更新状況の一例を示す第1の図である。 コピー元のOSを有するサーバの電源遮断後におけるOS情報の登録に伴うOS管理キーの更新状況の一例を示す第2の図である。 登録済みのOS情報のコピー先のOSへの割り当て後におけるOS管理キーの定期更新状況の一例を示す図である。 コピー元のOSの再起動後のOS情報の登録状況の一例を示す第1の図である。 コピー元のOSの再起動後のOS情報の登録状況の一例を示す第2の図である。 OS情報の登録処理の手順の前半を示すシーケンス図である。 OS情報の登録処理の手順の後半を示すシーケンス図である。 インストール情報定期取得処理の手順の一例を示すシーケンス図である。 OS管理キー定期更新処理の手順の一例を示すシーケンス図である。 OS管理番号特定処理の手順の一例を示すフローチャートである。 暗号ファイル作成処理の手順の一例を示すフローチャートである。 サポート契約確認処理の手順の一例を示すフローチャートである。
以下、本実施の形態について図面を参照して説明する。なお各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
〔第1の実施の形態〕
第1の実施の形態について説明する。第1の実施の形態は、サポート対象のソフトウェアが仮想マシン上で動作している場合であっても、サポート契約の対象か否かを適切に判断できるようにしたものである。仮想マシンとは、コンピュータ上に擬似的に構築されたコンピュータシステムである。
まず、個体識別番号を有していないソフトウェアが仮想マシンで実行される場合における、そのソフトウェアについてのサポート契約の管理の困難性について説明する。
最近のコンピュータシステムでは、1台のコンピュータ上で複数の仮想マシンを動作させてシステムを運用することが一般的に行われている。この場合、ソフトウェアを実行しているハードウェアの個体識別番号を特定しても、ソフトウェアの個体を特定したことにはならない。しかも、仮想マシンはマイグレーションを行うことで複数のハードウェア上を移動することが可能である。すなわち、仮想マシン上のOS(Operating System)にソフトウェアがインストールされていた場合、ソフトウェアとハードウェアとの対応関係は動的に変化する。そのため、仮想マシン上で実行されているソフトウェアの個体識別を、そのソフトウェアを実行しているハードウェアの個体情報を用いて行うのは困難である。
一方、ソフトウェアのサポート契約は、ソフトウェア1本ずつ個別に行うことになる。そのため、サポート契約の対象を特定するには、ソフトウェアの個体識別をできることが重要である。そして、上記のように、ソフトウェアの個体識別に、そのソフトウェアを実行しているハードウェアの識別情報を用いることはできない。その結果、個体識別番号を有していないソフトウェアが仮想マシンで実行される場合、そのソフトウェアについてのサポート契約の管理が困難となっている。
なお、サポート契約の対象となるソフトウェアの個体識別が適切に行われないと、以下のような問題が生じる。
例えば、ソフトウェアの個体識別が適切に行われていないと、ユーザがサポート依頼の連絡を行う際、誤った情報をサポートに伝えてしまう可能性がある。誤った情報を受け取ったサポート担当者は、適切なサポートサービスを提供することができない。
また、ソフトウェアの個体識別が適切に行われていないと、ユーザが意図的に事実とは異なった情報をサポート担当者に伝えた場合でも、サポート担当者は、伝えられた内容が正しいかどうかを判断することができない。その結果、サポート担当者は、サポート対象外のソフトウェアに対するサポート依頼であっても、依頼を断ることができず、サポートサービスを提供することになる。すると、ユーザは、サポート契約の対象ではないソフトウェアについて、サポート契約していると偽ってサポートを受けることが可能となってしまう。
そこで、第1の実施の形態では、仮想マシン上で動作しているOSにOS管理番号を設定し、ソフトウェアがインストールされているOSのOS管理番号によって、ソフトウェアの個体識別を可能とする。
図1は、第1の実施の形態の構成の一例を示す図である。情報処理システム10は、例えばネットワークを介して管理対象コンピュータ1に接続されている。管理対象コンピュータ1は、例えばハイパーバイザを用いて複数の仮想マシンを起動し、複数の仮想マシンそれぞれでOS2,3を実行させることができる。
OS2は、レジストリ2aを有する。レジストリ2aは、OS2の設定情報の格納領域の一例である。またOS2には、ソフトウェア2bがインストールされている。図1の例では、ソフトウェア2bは、サポート契約によるサポートサービスの対象である。OS2によるソフトウェア2bの実行過程で出力されたメッセージは、ログ2cとして記録される。
OS3は、レジストリ3aを有する。またOS3には、ソフトウェア3bがインストールされている。図1の例では、ソフトウェア3bは、サポート契約によるサポートサービスの対象ではない。OS3によるソフトウェア3bの実行過程で出力されたメッセージは、ログ3cとして記録される。
情報処理システム10は、第1情報処理装置11と第2情報処理装置12とを有する。第1情報処理装置11は、処理部11aを有する。処理部11aは、例えば第1情報処理装置11が有するプロセッサまたは演算回路である。第2情報処理装置12は、記憶部12aと処理部12bとを有する。記憶部12aは、例えば第2情報処理装置12が有するメモリまたはストレージ装置である。処理部12bは、例えば第2情報処理装置12が有するプロセッサまたは演算回路である。
第1情報処理装置11の処理部11aに、例えば第1情報処理装置11用の管理プログラムを実行させることで、以下に説明するサポート契約の管理方法のうち、第1情報処理装置11によって実行する処理が実現できる。また第2情報処理装置12の処理部12bに、例えば第2情報処理装置12用の管理プログラムを実行させることで、以下に説明するサポート契約の管理方法のうち、第2情報処理装置12によって実行する処理が実現できる。
第1情報処理装置11の処理部11aは、管理対象コンピュータ1上で実行されている複数のOS2,3それぞれに対応する識別子を、複数のOS2,3それぞれのレジストリ2a,3aに書き込む。例えば処理部11aは、複数のOS2,3それぞれを一意に識別可能な識別子を生成し、生成した識別子を、複数のOS2,3それぞれのレジストリ2a,3aに書き込む。
また処理部11aは、いずれかのOS上で実行されているソフトウェアに関するログ取得指示に応じて、そのソフトウェアの実行過程で出力されたメッセージのログと、そのOSのレジストリに格納された識別子とを、そのOSから取得する。そして処理部11aは、取得したログと識別子とを含むファイルを出力する。例えば、OS2上のソフトウェア2bに関するログ取得指示が入力された場合、処理部11aは、OS2のレジストリ2aから識別子を取得すると共に、ソフトウェア2bのログ2cを取得する。そして、処理部11aは、取得した識別子とログを含むファイル4を出力する。またOS3上のソフトウェア3bに関するログ取得指示が入力された場合、処理部11aは、OS3のレジストリ3aから識別子を取得すると共に、ソフトウェア3bのログ3cを取得する。そして、処理部11aは、取得した識別子とログを含むファイル5を出力する。なお、処理部11aは、ログと識別子とを暗号化した暗号データを生成し、暗号データを含むファイル4,5を出力してもよい。
第2情報処理装置12の記憶部12aは、サポート契約のサポート対象となるソフトウェアがインストールされているOSを示すサポート対象識別子を記憶する。第2情報処理装置12の処理部12bは、第1情報処理装置11が出力したファイル4,5を取得する。次に処理部12bは、ファイル4,5からログと識別子とを抽出する。ファイル4,5内のログと識別子とが暗号化されていた場合、処理部12bは、ファイル4,5内の暗号データを復号し、復号結果からログと識別子とを抽出する。
さらに処理部12bは、サポート対象識別子と、ファイル4,5に含まれる識別子とが一致するか否か、およびファイル4,5に含まれるログに不具合の発生を示すメッセージが含まれるか否かを判断する。処理部12bは、これらの判断結果に基づいて、ファイル4,5に含まれるログに基づくソフトウェアへのサポートが、サポート契約の適用対象か否かを判定する。例えば処理部12bは、サポート対象識別子と取得した識別子とが一致し、かつログに不具合の発生を示すメッセージが含まれている場合に、ログに基づくソフトウェアへのサポートがサポート契約に含まれると判定する。
なおサポート契約において、複数のソフトウェアに対するサポート契約が締結される場合がある。この場合、記憶部12aには、サポート契約に定められたサポート対象のソフトウェア数(サポート対象ソフトウェア数)分のサポート対象識別子を格納することができる。そこで処理部12bは、ファイル4,5に含まれる識別子と一致するサポート対象識別子が記憶部12aに格納されていないとき、記憶部12aが記憶しているサポート対象識別子の数が、サポート対象ソフトウェア数に達しているか否かを判定する。サポート対象識別子の数がサポート対象ソフトウェア数に満たないとき、処理部12bは、取得した識別子をサポート対象識別子として記憶部12aに格納し、サポート対象識別子と一識別子とが一致するものと判定する。
このような情報処理システム10によれば、個体識別子を有していないソフトウェアが、仮想マシン上のOSによって実行されている場合であっても、ソフトウェアの不具合へのサポートが、サポート契約の適用範囲内かどうかを、正しく判断することができる。例えば、OS3で実行されているソフトウェア3bで不具合が発生したものとする。なお、サポート契約の適用対象はソフトウェア2bのみであり、ソフトウェア3bは、サポート契約の適用対象外である。
ここで、まず、管理対象コンピュータ1を使用しているユーザが、ソフトウェア3bに対するサポートを、サポートサービスの担当者に依頼する場合について説明する。ユーザは、OS3(識別子「os02」)を指定したログ取得指示を、第1情報処理装置11に入力する。すると第1情報処理装置11の処理部11aは、OS3内のレジストリ3aから識別子「os02」を取得すると共に、ログ3cを取得する。ログ3cには、ソフトウェア3bで発生した不具合の内容を示すエラーメッセージ「エラー#1」が含まれている。処理部11aは、取得したログ3cと識別子「os02」とを暗号化し、暗号データを含むファイル5を出力する。ユーザは、処理部11aから出力されたファイル5をサポート担当者に渡し、不具合へのサポートを依頼する。
サポート担当者は、受け取ったファイル5を第2情報処理装置12に入力する。第2情報処理装置12の処理部12bは、ファイル5内の暗号データを復号し、復号結果からログ3cと識別子「os02」とを抽出する。次に処理部12bは、取得した識別子「os02」と、記憶部12a内のサポート対象識別子「os01」とを比較する。図1の例では、比較の結果、不一致であると判定される。また処理部12bは、ログ3c内に不具合を示す情報(エラーメッセージ)が含まれるか否かを判断する。図1の例では、エラーメッセージが含まれている。この場合、処理部12bは、識別子の照合で不一致になったことから、サポート契約の適用範囲外であると判定し、判定結果を出力する。サポート担当者は、判定結果に基づいて、サポートしないことをユーザに伝える。
このようにして、サポート担当者は、サポート契約の適用範囲外のソフトウェアの不具合に関するサポートをせずに済む。
次に、ユーザが、ソフトウェア3bで発生した不具合を、サポート契約の適用対象であるソフトウェア3aで発生したものと偽って、サポート担当者にサポートを依頼する場合について説明する。この場合、ユーザは、例えばソフトウェア3bで発生した不具合の内容をサポート担当者に説明し、不具合の発生したソフトウェアを実行しているのはOS2(識別子「os01」)であるとサポート担当者に伝える。
そしてユーザは、OS2(識別子「os01」)を指定したログ取得指示を、第1情報処理装置11に入力する。すると第1情報処理装置11の処理部11aは、OS2内のレジストリ2aから識別子「os01」を取得すると共に、ログ2cを取得する。ログ2cには、エラーメッセージは含まれていない。処理部11aは、取得したログ2cと識別子「os01」とを暗号化し、暗号データを含むファイル4を出力する。ユーザは、処理部11aから出力されたファイル4をサポート担当者に渡し、不具合へのサポートを依頼する。
サポート担当者は、受け取ったファイル4を第2情報処理装置12に入力する。第2情報処理装置12の処理部12bは、ファイル4内の暗号データを復号し、復号結果からログ2cと識別子「os01」とを抽出する。次に処理部12bは、取得した識別子「os01」と、記憶部12a内のサポート対象識別子「os01」とを比較する。図1の例では、比較の結果、一致すると判定される。また処理部12bは、ログ2c内に不具合を示す情報(エラーメッセージ)が含まれるか否かを判断する。図1の例では、エラーメッセージが含まれていない。この場合、処理部12bは、ログ2c内に不具合を示す情報がないことから、サポート対象の事象が発生していないと判定し、判定結果を出力する。サポート担当者は、判定結果に基づいて、サポートしないことをユーザに伝える。
このようにして、ユーザが虚偽の連絡をしても、サポート担当者は、サポート契約の適用範囲外のソフトウェアの不具合に関するサポートをせずに済む。
しかも第1情報処理装置11で各OS2,3の識別子を生成し、その識別子をOS2,3に設定するようにしたことで、OS2,3に個体識別子が予め設定されていない場合であっても、OS2,3を区別することができる。さらに各OS2,3の識別子を、レジストリ2a,3aに書き込んでいるため、マイグレーションによって、仮想マシンごとOS2,3が別の装置に移動してしまっても、各OSをレジストリに書き込まれた識別子によって個体識別可能である。
さらにファイル4,5に含まれるログと識別子とを暗号化することで、ファイル4,5の内容の改ざんを抑止することができる。
〔第2の実施の形態〕
次に第2の実施の形態について説明する。第2の実施の形態は、確実なOSの個体識別を行うことで、OSに付与した識別子を用いて、OSにインストールされているソフトウェアに関するサポート契約の適切な管理を行うものである。
図2は、第2の実施の形態のシステム構成例を示す図である。顧客企業30は、サービス提供業者40から、コンピュータシステムに関する各種サービスの提供を受ける。例えば顧客企業30は、複数のサーバ210,220,・・・と管理サーバ100とを所持する。サーバ210,220,・・・は、顧客企業30における業務の遂行に利用するコンピュータである。管理サーバ100は、サーバ210,220,・・・にインストールされているソフトウェアに対するサポートサービスの契約の管理を支援するコンピュータである。
サーバ210,220,・・・と管理サーバ100とは、ローカルネットワーク20で接続されている。また、顧客企業30は、各サーバ210,220,・・・にインストールするソフトウェアを、例えばサービス提供業者40から購入する。そして顧客企業30は、購入したソフトウェアのサポートサービスを、サービス提供業者40から受ける。例えば顧客企業30のユーザは、ローカルネットワーク20に接続された管理サーバ100を用いて、サポート契約の適用対象であることを確認するための暗号ファイルを生成する。顧客企業30のユーザは、生成した暗号ファイルを、サービス提供業者に40に送り、サポートサービスを依頼する。
サービス提供業者40は、サポート契約管理サーバ300を有している。サポート契約管理サーバ300は、顧客企業30に販売したソフトウェアのサポートライセンスを管理するコンピュータである。サポート契約管理サーバ300は、例えば顧客企業30のローカルネットワーク20に、広域的なネットワーク50を介して接続されている。サポート契約管理サーバ300は、例えばネットワーク50経由で、管理サーバ100が作成した暗号ファイルを受け取ることができる。そして、サポート契約管理サーバ300は、顧客企業30から提供された暗号ファイルに基づいて、サポート対象のソフトウェアに対するサポート契約の有無を確認する。サポート契約があることが確認できた場合、サービス提供業者40のサービス担当者が、顧客企業30へのソフトウェアサポートサービスを実施する。
なお図2に示すサーバ210,220,・・・は、第1の実施の形態に示した管理対象コンピュータ1の一例である。また図2に示す管理サーバ100は、第1の実施の形態に示した第1情報処理装置11の一例である。図2に示すサポート契約管理サーバ300は、第1の実施の形態に示した第2情報処理装置12の一例である。
図3は、第2の実施の形態に用いるコンピュータのハードウェアの一例を示す図である。管理サーバ100は、プロセッサ101によって装置全体が制御されている。プロセッサ101には、バス109を介してメモリ102と複数の周辺機器が接続されている。プロセッサ101は、マルチプロセッサであってもよい。プロセッサ101は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、またはDSP(Digital Signal Processor)である。プロセッサ101がプログラムを実行することで実現する機能の少なくとも一部を、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)などの電子回路で実現してもよい。
メモリ102は、管理サーバ100の主記憶装置として使用される。メモリ102には、プロセッサ101に実行させるOSのプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ102には、プロセッサ101による処理に必要な各種データが格納される。メモリ102としては、例えばRAM(Random Access Memory)などの揮発性の半導体記憶装置が使用される。
バス109に接続されている周辺機器としては、ストレージ装置103、グラフィック処理装置104、入力インタフェース105、光学ドライブ装置106、機器接続インタフェース107およびネットワークインタフェース108がある。
ストレージ装置103は、内蔵した記録媒体に対して、電気的または磁気的にデータの書き込みおよび読み出しを行う。ストレージ装置103は、コンピュータの補助記憶装置として使用される。ストレージ装置103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、ストレージ装置103としては、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)を使用することができる。
グラフィック処理装置104には、モニタ21が接続されている。グラフィック処理装置104は、プロセッサ101からの命令に従って、画像をモニタ21の画面に表示させる。モニタ21としては、CRT(Cathode Ray Tube)を用いた表示装置や液晶表示装置などがある。
入力インタフェース105には、キーボード22とマウス23とが接続されている。入力インタフェース105は、キーボード22やマウス23から送られてくる信号をプロセッサ101に送信する。なお、マウス23は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
光学ドライブ装置106は、レーザ光などを利用して、光ディスク24に記録されたデータの読み取りを行う。光ディスク24は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク24には、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。
機器接続インタフェース107は、管理サーバ100に周辺機器を接続するための通信インタフェースである。例えば機器接続インタフェース107には、メモリ装置25やメモリリーダライタ26を接続することができる。メモリ装置25は、機器接続インタフェース107との通信機能を搭載した記録媒体である。メモリリーダライタ26は、メモリカード27へのデータの書き込み、またはメモリカード27からのデータの読み出しを行う装置である。メモリカード27は、カード型の記録媒体である。
ネットワークインタフェース108は、ローカルネットワーク20に接続されている。ネットワークインタフェース108は、ローカルネットワーク20を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
以上のようなハードウェア構成によって、第2の実施の形態の処理機能を実現することができる。なおサーバ210,220,・・・およびサポート契約管理サーバ300も、図3に示した管理サーバ100と同様のハードウェアにより実現することができる。また第1の実施の形態に示した第1情報処理装置11および第2情報処理装置12も、図3に示した管理サーバ100と同様のハードウェアにより実現することができる。
管理サーバ100は、例えばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第2の実施の形態の処理機能を実現する。管理サーバ100に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、管理サーバ100に実行させるプログラムをストレージ装置103に格納しておくことができる。プロセッサ101は、ストレージ装置103内のプログラムの少なくとも一部をメモリ102にロードし、プログラムを実行する。また管理サーバ100に実行させるプログラムを、光ディスク24、メモリ装置25、メモリカード27などの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばプロセッサ101からの制御により、ストレージ装置103にインストールされた後、実行可能となる。またプロセッサ101が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
図4は、第2の実施の形態の各装置の機能の一例を示すブロック図である。サーバ210,220,・・・は、それぞれ1以上のOSを実行している。例えばサーバ210は、複数のOS211,212,・・・を実行している。複数のOS211,212,・・・の実行は、例えばハイパーバイザを用いることで実現できる。例えばサーバ210は、ハイパーバイザを用いて、サーバ210内に複数の仮想マシン(VM:Virtual Machine)を構築する。そしてサーバ210は、構築した複数の仮想マシンそれぞれで、OS211,212,・・・を実行させる。
サーバ210で実行されているOS211は、レジストリ211aを有している。レジストリ211aは、OS211における設定情報を格納するためのデータベースである。またOS211には、ソフトウェアサポート契約の管理対象となるソフトウェア211bをインストールすることができる。OS211がソフトウェア211bを実行すると、ソフトウェア211bの実行過程で発生する各種イベントを示すメッセージを蓄積するログ211cが生成される。ログ211cには、例えば、ソフトウェア211bを実行しているときに発生したエラーを示すエラーメッセージが含まれる。エラーメッセージには、例えばエラーの種別を示すエラーコードが含まれる。
なおOS211に限らず、サーバ210,220,・・・のいずれかで実行されているOSは、OS211と同様に、レジストリを有し、ソフトウェアを実行している場合には、そのソフトウェアに対応するログを有する。
管理サーバ100は、OS情報データベース110、ユーザインタフェース120、OS状態監視部130、およびログ管理部140を有する。
OS情報データベース110は、サーバ210,220,・・・上で動作しているOSに関する情報を記憶するデータベースである。例えば管理サーバ100のメモリ102またはストレージ装置103の記憶領域の一部が、OS情報データベース110として使用される。
ユーザインタフェース120は、顧客企業30内のユーザ31からの入力の受け付け、入力に応じた処理結果の表示を行う。
OS状態監視部130は、サーバ210,220,・・・上で動作しているOSの状態を監視する。例えばOS状態監視部130は、各OSに対してOS管理番号とOS管理キーを付与する。OS管理番号は、OSの識別子である。OS管理キーは、例えばランダムに生成した文字、数字、またな記号の配列である。例えばOS状態監視部130は、OS211にリモートログインし、OS211のOS管理番号とOS管理キーとを、そのOS211のレジストリ211aに格納する。そしてOS状態監視部130は、OS管理番号とOS管理キーとを用いて、OSの状態を管理する。
ログ管理部140は、サーバ210,220,・・・におけるソフトウェアが出力したログを管理する。例えばログ管理部140は、OS状態監視部130を介して、いずれかのサーバのログを取得し、そのログを暗号化する。例えばログ管理部140は、サービス提供業者40から提供された公開鍵によって暗号化を行う。暗号化されたログは、ユーザ31によって、サポート依頼の際に、トラブル内容の記録として、サービス提供業者40におけるサポート担当者41に渡される。
サポート契約管理サーバ300は、サポート契約情報データベース310、およびサポート契約管理部320を有している。
サポート契約情報データベース310は、顧客企業30との間で締結したサポート契約に関する情報を記憶する。例えば、サポート契約管理サーバ300が有するメモリまたはストレージ装置の記憶領域の一部が、サポート契約情報データベース310として使用される。
サポート契約管理部320は、サービス提供業者40内のサポート担当者41からのサポート契約情報データベース310への入力の受け付け、および入力に応じたサポート契約情報データベース310に対する処理結果の表示を行う。またサポート契約管理部320は、暗号化されたファイルを復号する。例えばサポート契約管理部320は、不具合が発生したソフトウェアのログや、そのソフトウェアがインストールされているOSのOS管理番号などを暗号化した暗号データを、サービス提供業者40の秘密鍵で復号する。さらにサポート契約管理部320は、復号によって得られたログなどの情報を参照して、ユーザ31からのサポート依頼におけるサポート対象のソフトウェアがサポート契約の対象か否かの確認処理を行う。
次に、各装置で管理する情報について、具体的に説明する。
図5は、レジストリの一例を示す図である。OS211のレジストリ211aには、OS211の環境設定、およびOS211にインストールされているソフトウェアの環境設定に関する情報が設定されている。レジストリ211aに設定されている情報の中には、ソフトウェア211bに関連する情報として、IPアドレス、OS管理番号、OS管理キー、およびインストール有無フラグが含まれている。これらの情報は、例えばソフトウェア211bの製品名「ソフトウェアA」に対応付けて、レジストリ211aに登録されている。
ソフトウェア211bに関する情報内のIPアドレスは、OS211のIPアドレスである。ソフトウェア211bに関する情報内のOS管理番号は、顧客企業30内でOSを一意に識別するための識別番号である。ソフトウェア211bに関する情報内のOS管理キーは、OSのコピーが生成された場合に、コピーによって生成された複数のOSを区別するために用いるデータである。ソフトウェア211bに関する情報内のインストール有無フラグは、OS211にソフトウェア211bがインストールされているか否かを示すフラグである。図5の例では、ソフトウェア211bがインストールされている場合、インストール有無フラグに丸印を設定し、ソフトウェア211bがインストールされていない場合、インストール有無フラグにばつ印を設定するものとする。なお、データ上は、例えば、丸印を「1」の値に置き換えて記憶し、ばつ印を「0」の値に置き換えて記憶する。
図6は、OS情報データベースの一例を示す図である。OS情報データベース110には、サーバ210,220,・・・内で実行されているOSごとのレコードに、対応するOSにおけるソフトウェアに関する情報が格納されている。例えばOS情報データベース110内の各レコードには、IPアドレス、OS管理番号、OS管理キー、およびインストール有無フラグが含まれている。
図7は、サポート契約情報データベースの一例を示す図である。サポート契約情報データベース310には、顧客企業とのソフトウェア1本分のサポート契約ごとのレコードに、サポート契約に関する情報が格納されている。例えばサポート契約情報データベース310内の各レコードには、顧客名、製品名、サポート契約番号、およびOS管理番号が含まれる。顧客名は、サポート契約を締結した顧客の名称である。製品名は、サポート対象となるソフトウェアの製品名である。サポート契約番号は、ソフトウェア1本ずつのサポート契約を識別するための識別番号である。OS管理番号は、サポート対象となるソフトウェアがインストールされているOSの識別番号である。なお、サポート対象のソフトウェアが確定していないサポート契約に関するレコードについては、OS管理番号は未設定(空欄)である。
以上のようなデータを用いて、ソフトウェアに対するサポート契約の管理が行われる。以下の説明では、まず、図8〜図23を参照して、顧客企業30が、サービス提供業者40との間でソフトウェアに対するサポート契約を締結し、サポートサービスの提供を受けるまでの基本的な手順について説明する。その後、図24〜図33を参照して、OSごと仮想マシンがコピーされた場合の対処手順について説明する。最後に、図34〜図40を参照して、OSごと仮想マシンがコピーされた場合を想定したサポート契約管理処理の全体の処理手順を説明する。
<サポートサービスの提供手順>
まず、OSごと仮想マシンがコピーされる場合を想定せずに、顧客企業30に対して、サポート契約の範囲内のソフトウェアに対してサポートを行う手順について説明する。
図8は、ソフトウェアインストール前の状態の一例を示す図である。例えばユーザ31は、サービス提供業者40からソフトウェアパッケージ51を購入する。ソフトウェアパッケージ51には、インストールできるOSの数がライセンス数で示されている。図8の例では、ソフトウェアパッケージ51のライセンス数は「4」である。すなわち、顧客企業30は、4つのOSに対してソフトウェアパッケージ51を用いてソフトウェアをインストールする権利を有する。
ソフトウェアパッケージ51は、例えばコンピュータ読み取り可能な記録媒体である。またユーザ31は、ソフトウェアパッケージ51として、電子データのみをネットワーク50経由で受け取ることもできる。この段階では、いずれのサーバにも、管理対象となるソフトウェアはインストールされていない。そのため、例えばサーバ210内のOS211,212それぞれのレジストリ211a,212aには、インストールなしを示すインストール有無フラグが設定されている。
ソフトウェアパッケージ51を購入した顧客企業30のユーザ31は、ソフトウェアパッケージ51を用いて、サーバ210,220,・・・内のいずれかのOSに、ソフトウェアをインストールし、そのソフトウェアを用いた情報処理をサーバに実行させる。また顧客企業30は、サービス提供業者40とソフトウェアのサポート契約を結ぶことで、サービス提供業者40からソフトウェアのサポートサービスの提供を受けることができる。
図9は、ソフトウェアのインストールおよびサポート契約後の状態の一例を示す図である。例えば顧客企業30のユーザ31は、ソフトウェア購入時に、顧客名(Z社)、ソフトウェア名(ソフトウェアA)、サポート契約本数(2本)をサービス提供業者40のサポート担当者41に伝える。顧客企業30とサービス提供業者40との間でサポート契約が成立すると、サポート担当者41は、サポート契約管理サーバ300内のサポート契約情報データベース310に、締結されたサポート契約に関する情報を格納する。
図9の例では、顧客企業30は、サポート契約を2本購入しているので、サポート契約情報データベース310には、2つのレコードが追加されている。追加された2つのレコードには、共通の顧客名と製品名が設定されている。また追加された2つのレコードのサポート契約番号は、異なる値である。
ユーザ31は、サポート契約締結後、ソフトウェアパッケージ51を用いて、ソフトウェアをインストールする。図9の例では、OS211に対してソフトウェア211bがインストールされている。ユーザ31がOS211にソフトウェア211bをインストールすると、OS211のレジストリ211aに、ソフトウェア211bのインストール情報が書き込まれる。すなわちインストール有無フラグに、インストール有りを示す値が設定される。
また、ユーザ31は、サポート契約に基づくサポートを受けるための準備として、管理サーバ100に、ソフトウェア211bをインストールしたOS211に関する情報を登録する。
図10は、管理サーバへのOS情報の登録状況の一例を示す第1の図である。ユーザ31は、ユーザインタフェース120にサポート対象のソフトウェアがインストールされたOS211のOS情報データベース110への登録を指示する入力を行う。例えばユーザ31は、OS211のIPアドレスを含む登録指示を入力する。登録指示は、ユーザインタフェース120で受け取られ、OS状態監視部130に転送される。
登録指示を受信したOS状態監視部130は、まずOS情報データベース110から、すでに登録されているOS情報を示すレコードを取得する。このとき、OS情報データベース110にレコードが登録されている場合は、OS状態監視部130は、取得したレコードのOS管理キーの書き換え処理を行うことになる。しかし、図10の例では、OS情報のレコードは登録されていないため、OS管理キーの書き換え処理は行われない。
OS情報データベース110にOS情報を示すレコードが存在しないことを確認したOS状態監視部130は、登録指示に従ったOS情報の登録処理を行う。
図11は、管理サーバへのOS情報の登録状況の一例を示す第2の図である。OS状態監視部130は、まず管理対象のOS211のレジストリ211aから、OS管理番号、OS管理キー、インストール有無フラグの各情報を取得する。この段階では、レジストリ211aには、OS管理番号とOS管理キーとは登録されていない。従って、OS状態監視部130は、インストール有無フラグのみを取得することができる。
次にOS状態監視部130は、OS情報データベース110を参照し、取得したOS管理番号がすでに登録されていないか確認する。図11の例では、確認段階では未登録である。
OS状態監視部130は、OS管理番号がOS情報データベース110に登録されていない場合、OS管理番号、OS管理キーを新規に作成し、OS211のレジストリ211aに書き込む。さらにOS状態監視部130は、OS211のレジストリ211aに登録されているソフトウェア211bに関する情報を含む新規のレコードを、OS情報データベース110に登録する。図11の例では、OS211のIPアドレス「192.168.10.10」、OS管理番号「os01」、OS管理キー「aaa」、およびインストール有無フラグ「○」が設定されたレコードが、OS情報データベース110に登録されている。
このようにして、ソフトウェア211bがインストールされているOS211に対してOS管理番号とOS管理キーとが付与される。そして、OS211のレジストリ211aに格納されているソフトウェア211bに関する情報と同じ内容が、管理サーバ100内のOS情報データベース110に登録される。
図11の例は、ユーザ31が、すでにソフトウェア211bがインストールされているOS211の登録指示を入力した場合の処理であるが、ユーザ31は、ソフトウェアのインストールが未実施のOSに関する登録指示を入力することもできる。
図12は、管理サーバへのOS情報の登録状況の一例を示す第3の図である。図12の例では、ユーザ31は、ソフトウェアがインストールされていないOS212に関する登録指示を、管理サーバ100に入力している。入力された登録指示は、ユーザインタフェース120で受け取られ、OS状態監視部130に転送される。このとき、OS状態監視部130は、図10に示したように、OS情報データベース110へのレコードの登録の有無の確認と、登録されているレコードのOS管理キーの更新とを行うことになるが、図12ではそれらの処理は省略している。
OS状態監視部130は、まず管理対象のOS212のレジストリ212aから、OS管理番号、OS管理キー、インストール有無フラグの各情報を取得する。次にOS状態監視部130は、OS情報データベース110を参照し、取得したOS管理番号がすでに登録されていないか確認する。図12の例では、確認段階では未登録である。そこでOS状態監視部130は、OS管理番号、OS管理キーを新規に作成し、OS212のレジストリ212aに書き込む。さらにOS状態監視部130は、OS212のレジストリ212aに登録されているソフトウェアに関する情報を含む新規のレコードを、OS情報データベース110に登録する。図12の例では、OS212のIPアドレス「192.168.10.11」、OS管理番号「os02」、OS管理キー「bbb」、およびインストール有無フラグ「×」が設定されたレコードが、OS情報データベース110に登録されている。
このようにして、ソフトウェアが未インストールのOS212についても、対応するレコードを、管理サーバ100のOS情報データベース110に登録することができる。そしてユーザ31は、管理サーバ100への登録指示の後に、OS212へのソフトウェアのインストールを行うことができる。
図13は、管理サーバへの登録後のソフトウェアのインストール状況の一例を示す図である。例えばユーザ31は、ソフトウェアパッケージ51を用いて、OS212に対してソフトウェア212bをインストールする。ユーザ31がOS212にソフトウェア212bをインストールすると、OS212のレジストリ212aに、ソフトウェア212bのインストール情報が書き込まれる。すなわちインストール有無フラグに、インストール有りを示す値が設定される。
OS212へソフトウェア212bをインストールした直後は、レジストリ212aに示されているソフトウェア212bに関する情報が、管理サーバ100のOS情報データベース110に反映されていない。そこで、管理サーバ100では、ソフトウェアのインストール有無フラグの定期取得を行う。
図14は、インストール有無フラグの定期取得の状況の一例を示す図である。管理サーバ100のOS状態監視部130は、設定された時間ごと、インストール有無フラグの取得処理を行う。例えばOS状態監視部130は、OS情報データベース110から、登録されているOS211,212のレコードを取得する。次にOS状態監視部130は、すでにレコードが登録されている各OS211,212のレジストリ211a,212aから、インストール有無フラグを取得する。そしてOS状態監視部130は、各OS211,212から取得したインストール有無フラグを、OS情報データベース110に書き込む。
このようにして、管理サーバ100にOSの情報を登録後に、そのOSにソフトウェアをインストールした場合でも、インストールされたことを管理サーバ100で把握することができる。
その後、サーバ220内の2つのOSにもソフトウェアがインストールされ、それらのOSの情報を示すレコードが、OS情報データベース110に格納されたものとする。これにより、ソフトウェアパッケージ51のライセンス数分のOSに対して、ソフトウェアがインストールされたこととなる。
図15は、ライセンス数分のソフトウェアインストール後の状態の一例を示す図である。サーバ220では、2つのOS221,222が実行されている。各OS221,222には、ソフトウェア221b,222bがインストールされている。各OS221,222のレジストリ221a,222aには、インストールされたソフトウェア221b,222bに関する情報が登録されている。
管理サーバ100のOS情報データベース110には、サーバ220内の2つのOS221,222それぞれに対応するレコードが登録されている。各レコードには、対応するOSのIPアドレス、OS管理番号、OS管理キー、およびソフトウェアがインストール済みであることを示すインストール有無フラグが設定されている。
ところで各サーバ210,220で実行されているOSは、IPアドレスを変更することができる。IPアドレスが変更されたOSは、OS管理番号は変更されないが、OS管理キーは変更される。
図16は、IPアドレス変更状況の一例を示す図である。図16の例では、ユーザ31は、サーバ210内のOS211のIPアドレスを「192.168.10.10」から「192.168.10.14」に変更している。ユーザ31はOS211のIPアドレスの変更後、管理サーバ100に対して、OS211のIPアドレスの変更を指示する。例えばユーザ31は、変更前のIPアドレス「192.168.10.10」と変更後のIPアドレス「192.168.10.14」とを指定したIPアドレス設定変更指示を、管理サーバ100に入力する。
管理サーバ100では、ユーザインタフェース120がIPアドレス設定変更指示を受け付ける。ユーザインタフェース120は、取得したIPアドレス設定変更指示をOS状態監視部130に転送する。OS状態監視部130は、OS情報データベース110から、変更前のIPアドレス「192.168.10.10」に対応するレコードを取得する。次に、OS状態監視部130は、OS211用の新たなOS管理キー「aab」を生成する。さらにOS状態監視部130は、変更後のIPアドレスに基づいてOS211にアクセスし、OS211内のレジストリ211a内のOS管理キーとして、新たに生成したOS管理キー「aab」を書き込む。
またOS状態監視部130は、取得したレコードのIPアドレスを変更後のIPアドレス「192.168.10.14」に更新し、そのレコードのOS管理キーを新たに生成したOS管理キー「aab」に更新する。そしてOS状態監視部130は、更新したレコードを、OS情報データベース110内の元の位置に書き戻す。
このようにして、OSのIPアドレスが変更された場合、OS情報データベース110内の該当OSに対応するレコードのIPアドレスとOS管理キーとが更新される。
ユーザ31は、OSにインストールしたソフトウェアを使用して業務を遂行する。ソフトウェアを使用していると、何らかの不具合が発生する場合がある。不具合の原因は、ソフトウェア自身にある場合、OSにある場合、あるいはOSを実行しているサーバにある場合などがあり、ユーザ31が自身で不具合の原因を判断するのが困難な場合がある。そのような場合、ユーザ31は、サポート契約に基づいて、サービス提供業者40からソフトウェアのサポートを受けることができる。
次に、インストールされたいずれかのソフトウェアの利用中に不具合が発生したときの、サポート依頼手順について説明する。
図17は、サポート依頼の一例を示す第1の図である。図17の例では、サーバ210内のOS211において、ソフトウェア211bの不具合が発生している。ソフトウェア211bにおいて不具合が発生すると、不具合に応じたメッセージ(例えばエラーメッセージ)が、ログ211cに格納される。
ユーザ31は、ソフトウェア211bで不具合が発生したことを認識すると、OS211のIPアドレスを確認する。図17の例では、OS211のIPアドレスは「192.168.10.10」である。
ユーザ31は、OS211のIPアドレスをキーとして、管理サーバ100に、OS211のOS管理番号の問い合わせを入力する。OS管理番号の問い合わせは、ユーザインタフェース120で受け取られる。ユーザインタフェース120は、取得したOS管理番号の問い合わせに応じて、OS管理番号取得要求をOS状態監視部130に送信する。OS状態監視部130は、OS情報データベース110内のOS211のIPアドレスに対応するレコードからOS管理番号「os01」を取得する。OS状態監視部130は、取得したOS管理番号を、ユーザインタフェース120に送信する。ユーザインタフェース120は、受信したOS管理番号をモニタ21に表示する。
ユーザ31は、モニタ21に表示されたOS管理番号を確認し、管理サーバ100に、そのOS管理番号に対応するOS211上のソフトウェア211bに関するログ取得指示を入力する。ログ取得指示は、ユーザインタフェース120で受け取られる。ユーザインタフェース120は、取得したログ取得指示をログ管理部140に送信する。
ログ管理部140は、OS状態監視部130を介して、OS211のログ211c、OS管理番号、およびOS管理キーを取得する。例えばログ管理部140は、OS状態監視部130に、OS管理番号「os01」のログ取得要求を送信する。OS状態監視部130は、ログ取得要求に応じて、OS管理番号「os01」に対応するOS211から、ログ211c、OS管理番号「os01」、OS管理キー「aaa」を取得する。OS状態監視部130は、OS211から取得した情報を、ログ管理部140に転送する。
ログ管理部140は、取得したログ、OS管理番号、OS管理キーを暗号化し、暗号化されたデータ(暗号データ)を含むファイル52を作成する。そして、ログ管理部140は、作成したファイル52を出力する。例えばログ管理部140は、作成したファイル52をストレージ装置103内の所定のフォルダ(ディレクトリ)に格納し、ログ取得完了の応答をユーザインタフェース120に送信する。ユーザインタフェース120は、ログを含むファイルの格納が完了したことを、モニタ21に表示する。
ユーザ31は、サービス提供業者40のサポート担当者41に、サポート依頼を行う。サポート依頼は、電話、電子メールなどの手段で行われる。サポート依頼の際、ユーザ31は、顧客名、OS管理番号、ソフトウェア名をサポート担当者41に伝える。またユーザ31は、暗号化したファイル52をサポート担当者41に渡す。例えばユーザ31は、管理サーバ100の電子メール機能を用い、サポート依頼の電子メールにファイル52を添付し、サポート担当者41のメールアドレス宛てに送信する。
図18は、サポート依頼の一例を示す第2の図である。サポート依頼を受けたサポート担当者41は、ユーザ31から受け取ったファイル52をサポート契約管理サーバ300に入力する。入力されたファイル52は、サポート契約管理部320によって復号される。例えばサポート担当者41は、ファイル52をサポート契約管理サーバ300のストレージ装置内に格納する。そしてサポート担当者41は、サポート契約管理サーバ300にファイル52の復号指示を入力する。
復号指示はサポート契約管理部320で受け取られる。サポート契約管理部320は、ファイル52内のデータを復号し、復号されたデータを含む新たなファイルを、ストレージ装置に格納する。
またサポート担当者41は、ユーザ31から通知された、顧客名、ソフトウェア名、OS管理番号、および不具合内容を、サポート契約管理サーバ300に入力する。するとサポート契約管理部320は、復号されたファイル内の情報を参照し、ユーザ31から伝えられたOS管理番号のOSのログであること、サポート依頼を受けた内容の不具合が起きていることを確認する。
次にサポート契約管理部320は、顧客名とソフトウェア名とをキーにして、サポート契約情報データベース310から、その顧客名とソフトウェア名との組に対応するサポート契約を示すレコードを取得する。そしてサポート契約管理部320は、取得したサポート契約のレコードの中に、OS管理番号の欄の値が、ユーザ31から伝えられたOS管理番号と一致するレコードがあるか確認する。図18の例では、該当するレコードが存在しない。そこでサポート契約管理部320は、取り出したサポート契約のレコードの中に、OS管理番号の欄が空のレコードがあるか確認する。図18の例では、OS管理番号の欄が空のレコードが存在する。
サポート契約管理部320は、OS管理番号の欄が空のレコードのOS管理番号の欄に、今回入力されたOS管理番号を登録する。図18の例では、サポート契約情報データベース310の先頭のレコードに、OS管理番号「os01」が設定されている。これにより、1つのサポート契約とOS管理番号とが関連付けられる。
そしてサポート契約管理部320は、不具合のあったソフトウェアがサポート契約の適用対象であることを表示する。サポート担当者41は、サポート契約の適用対象であることを確認し、ユーザ31に対するソフトウェア211bのサポートを実施する。
図18に示した処理により、OS管理番号「os01」のOS211にインストールされているソフトウェア211bが、サポート契約の対象であることがサポート契約情報データベース310に登録される。以後、ソフトウェア211bで不具合が発生した場合、サポート契約であることの確認後に、サポート担当者41によるサポートが実施される。
図19は、サポート契約対象のソフトウェアで不具合が発生した場合の対処の一例を示す図である。ソフトウェア211bで再び不具合が発生すると、ユーザ31は、サポート担当者41に対して、サポート依頼を行い、顧客名、OS管理番号、ソフトウェア名を伝え、暗号化したファイル53をサポート担当者41に渡す。
サポート担当者41は、顧客名、OS管理番号、ソフトウェア名をサポート契約管理サーバ300に入力すると共に、サポート契約管理部320にファイル53を復号させる。サポート契約管理部320は、復号したデータに基づいて、ユーザ31から伝えられたOS管理番号のOSのログであること、ユーザ31から伝えられた内容の不具合が起きていることを確認する。またサポート契約管理部320は、顧客名、ソフトウェア名をキーにして、サポート契約情報データベース310から、キーに該当するサポート契約のレコードを取得する。そしてサポート契約管理部320は、取得したサポート契約のレコードの中に、OS管理番号の欄がユーザから伝えられたOS管理番号と一致するレコードがあるか確認する。図19の例では、該当するレコードが存在する。そこでサポート契約管理部320は、不具合のあったソフトウェアがサポート契約の適用対象であることを表示する。サポート担当者41は、サポート契約の適用対象であることを確認し、ユーザ31に対するソフトウェア211bのサポートを実施する。
このようにして、すでにサポート契約の対象となっているソフトウェア211bで不具合が発生した場合、そのサポート契約に基づいてサポートが実施される。
次に、サポート契約の対象となっているソフトウェア211bとは別のソフトウェアで不具合が発生した場合について説明する。
図20は、サポート契約対象とは別のソフトウェアで不具合が発生した場合の対処の一例を示す図である。サーバ220内のOS221にインストールされたソフトウェア221bで不具合が発生すると、ユーザ31は、サポート担当者41に対して、サポート依頼を行い、顧客名、OS管理番号、ソフトウェア名を伝える。そしてユーザ31は、暗号化したファイル54をサポート担当者41に渡す。
サポート担当者41は、顧客名、OS管理番号、ソフトウェア名をサポート契約管理サーバ300に入力すると共に、サポート契約管理部320にファイル54を復号させる。サポート契約管理部320は、復号したデータに基づいて、ユーザ31から伝えられたOS管理番号のOSのログであること、ユーザ31から伝えられた内容の不具合が起きていることを確認する。次にサポート契約管理部320は、顧客名、ソフトウェア名をキーにして、サポート契約情報データベース310から、キーに該当するサポート契約のレコードを取得する。そしてサポート契約管理部320は、取得したサポート契約のレコードの中に、OS管理番号の欄がユーザから伝えられたOS管理番号と一致するレコードがあるか確認する。図20の例では、該当するレコードが存在しない。そこでサポート契約管理部320は、取り出したサポート契約のレコードの中に、OS管理番号の欄が空のレコードがあるか確認する。図20の例では、OS管理番号の欄が空のレコードが存在する。
サポート契約管理部320は、OS管理番号の欄が空のレコードのOS管理番号の欄に、今回入力されたOS管理番号を登録する。そしてサポート契約管理部320は、不具合のあったソフトウェアがサポート契約の適用対象であることを表示する。サポート担当者41は、サポート契約の適用対象であることを確認し、ユーザ31に対するソフトウェア221bのサポートを実施する。
顧客企業30は、ソフトウェア2本分のサポート契約しか締結していないため、図20の処理により、サポート契約の対象とすることができる2本のソフトウェアが特定されたこととなる。ここで、サポート契約の対象の本数以上のソフトウェアで不具合が発生した場合について説明する。
図21は、サポート契約の対象の本数以上のソフトウェアで不具合が発生した場合の対処の一例を示す図である。サーバ210内のOS212にインストールされたソフトウェア212bで不具合が発生すると、ユーザ31は、サポート担当者41に対して、サポート依頼を行い、顧客名、OS管理番号、ソフトウェア名を伝える。そしてユーザ31は、暗号化したファイル55をサポート担当者41に渡す。
サポート担当者41は、顧客名、OS管理番号、ソフトウェア名をサポート契約管理サーバ300に入力すると共に、サポート契約管理部320にファイル55を復号させる。サポート契約管理部320は、復号したデータに基づいて、ユーザ31から伝えられたOS管理番号のOSのログであること、ユーザ31から伝えられた内容の不具合が起きていることを確認する。次にサポート契約管理部320は、顧客名、ソフトウェア名をキーにして、サポート契約情報データベース310から、キーに該当するサポート契約のレコードを取得する。そしてサポート契約管理部320は、取得したサポート契約のレコードの中に、OS管理番号の欄がユーザから伝えられたOS管理番号と一致するレコードがあるか確認する。図21の例では、該当するレコードが存在しない。そこでサポート契約管理部320は、取り出したサポート契約のレコードの中に、OS管理番号の欄が空のレコードがあるか確認する。図21の例では、OS管理番号の欄が空のレコードが存在しない。この場合、サポート契約管理部320は、新規サポート契約の提案を促すメッセージを表示する。サポート担当者41は、メッセージを確認し、ユーザ31に対して、新規のサポート契約の締結を提案する。
このように、サポート契約の対象の本数以上のソフトウェアで不具合が発生すると、ユーザ31は、サポート契約の本数を超えた分のソフトウェアについては、サポートを受けることができない。この場合、ユーザ31が、サポート契約の本数を超えた分のソフトウェアについてのサポートを受けるために、不具合が発生したソフトウェアがインストールされているOSのOS管理番号を偽る可能性がある。次に、ユーザが虚偽のOS管理番号を伝えて、サポート依頼をした場合の対処について説明する。
図22は、虚偽のOS管理番号を伝えてサポートを受けようとした場合の対処の一例を示す図である。図22の例は、サーバ210内のOS212にインストールされたソフトウェア212bで不具合が発生したにもかかわらず、ユーザ31が、すでにサポート契約の対象となっているソフトウェア211bでの不具合であると虚偽の連絡をした場合である。ユーザ31は、サポート担当者41に対して、サポート依頼を行い、顧客名、虚偽のOS管理番号(os01)、ソフトウェア名を伝える。そしてユーザ31は、暗号化したファイル56をサポート担当者41に渡す。ファイル56には、不具合の発生していないソフトウェア211bのログ211cが含まれている。
サポート担当者41は、顧客名、OS管理番号、ソフトウェア名をサポート契約管理サーバ300に入力すると共に、サポート契約管理部320にファイル56を復号させる。サポート契約管理部320は、ユーザ31から伝えられたOS管理番号(os01)のOSのログであることを確認する。しかし図22の例では、ログ内に、不具合の発生した形跡は見つからない。そのためサポート契約管理部320は、ユーザ31から伝えられた内容の不具合が起きていることを確認できない。そこでサポート契約管理部320は、不具合内容の再確認を促すメッセージを表示する。サポート担当者41は、メッセージを確認し、ユーザ31に対して、不具合内容の再確認を依頼する連絡をする。
このように、ユーザ31が虚偽のOS管理番号を伝えたとしても、サポート契約の本数を超えてソフトウェアのサポートをせずに済む。
以上が、基本的なサポート契約の管理方法である。以上の方法でサポート契約を管理することで、ソフトウェアが仮想マシン上にインストールされている場合でもその個体を特定し、サポート契約と結びつけることができる。すなわち、ユーザ31がサポート担当者41に問い合わせを行った際に、サポート担当者41はユーザの問い合わせ内容が正しいかどうかを正しく判断することができ、適切な対応を行うことができる。
<OSごと仮想マシンがコピーされた場合の対処手順>
次に、OSごと仮想マシンがコピーされた場合の対処手順について説明する。
仮想マシンはコンピュータ上で動作する擬似的なコンピュータシステムであり、コピーを行うことが可能である。コピーを行った場合仮想マシン上のOSごとコピーが行われ、OSの個体を特定する情報ごとコピーが行われてしまう。上記のサポートサービスの提供手順では、各OSにOS管理番号を割り当てているが、仮想マシンのコピーを行った場合、管理サーバ100から、同じOS管理番号を持つOSが複数認識できるようになってしまう。その結果、OS管理番号とサポート契約が1対1で結びつかなくなってしまう。
このような仮想マシンのコピーに対応するため、第2の実施の形態では、OS管理番号とは別に、各OSにOS管理キーを対応付けている。管理サーバ100は、OS管理キーを、定期的もしくは所定の操作が行われるたびに更新する。すなわち管理サーバ100は、適宜、新たにOS管理キーを生成し、それをOSのレジストリと、管理サーバ100内のOS情報データベース110に上書きする。これによってOSがコピーされ複数に枝分かれしても、管理サーバはOS管理キーを参照することで、それぞれを別のOSとして認識し、それぞれに別のOS管理番号を改めて割り当てることが可能となる。その結果、仮想マシンのコピーが行われた場合であっても、1つのサポート契約で複数のソフトウェアに対してサポートしてしまうことが抑止される。
図23は、仮想マシンをコピーする前の運用状態の一例を示す図である。図23の例では、サーバ210内のOS211に管理対象のソフトウェア211bがインストールされており、他のOSには、管理対象のソフトウェアのインストールは行われていないものとする。また管理サーバ100には、すでにOS211についてのOS情報の登録が済んでいる。さらに、顧客企業30とサービス提供業者40との間で、1本のソフトウェアについてのサポート契約が締結されている。そしてサポート担当者41により、サポート契約に関する情報が、サポート契約管理サーバ300のサポート契約情報データベース310に登録されている。
このような状態のときに、OSごと仮想マシンのコピーが行われた場合を考える。
図24は、仮想マシンのコピーが行われた後の状態の一例を示す図である。図24の例では、OS211を実行しているサーバ210内の仮想マシンのコピーが、サーバ220に作成されている。その結果、サーバ220では、OS211と同じ内容を有するOS223が実行されている。すなわち、OS223には、OS211にインストールされていたソフトウェア211bと同じソフトウェア223bがインストールされている。OS211内にソフトウェア211bのログ211cが含まれていた場合、ログ211cと同じ内容を有するログ223cが、コピー先のOS223にも含まれる。
さらにコピー直後は、OS223のレジストリ223aには、OS211のレジストリ211aと同じ情報が設定されている。IPアドレスまで同一だと、2つのOS211,223を同時に同じネットワークに接続することができない。そこで、一方のOS(図24の例では、コピー先のOS223)のIPアドレスは変更されている。
このように、仮想マシンのコピーが行われた結果、コピー元の仮想マシンで実行されているOS211と同じOS管理番号およびOS管理キーを有するOS223が生成される。このままの状態では、ソフトウェアのサポート対象の特定が困難となる。そこで、管理サーバ100は、OS管理キーの定期更新を行う。
図25は、OS管理キーの定期更新状況の一例を示す図である。OS状態監視部130は、設定された時間間隔で、定期的に以下の処理を行う。
まずOS状態監視部130は、OS情報データベース110から、すでに登録してあるOSの情報を示すレコードを取得する。次にOS状態監視部130は、取得したレコードに示されているIPアドレスに対応するOS211のレジストリ211aに、新たなOS管理キーを書き込む。図25の例では、OS管理キーが「aaa」から「aab」に更新されている。さらにOS状態監視部130は、OS211に新たに設定したOS管理キーを、OS情報データベース110内の対応するレコードのOS管理キーの欄に書き込む。
このように第2の実施の形態では、OS情報データベース110に登録されているOSの情報に基づいて、管理サーバ100で認識しているOSのOS管理キーの定期更新を行っている。これにより、仮想マシンのコピーが行われ、コピー元のOSとコピー先のOSとをOS管理キーに基づいて区別可能となる。
OS管理キーの更新は、例えば、新たなOSの情報を管理サーバ100に登録する際にも行われる。
図26は、OS情報がすでに登録されている場合における他のOS情報の登録状況の一例を示す第1の図である。ユーザ31がユーザインタフェース120に、管理対象のソフトウェア223bがインストールされたOS223の登録指示を入力する。登録指示には、OS223のIPアドレスが含まれる。入力された登録指示は、ユーザインタフェース120で受け取られ、OS状態監視部130に転送される。
登録指示を受信したOS状態監視部130は、まずOS情報データベース110から、すでに登録されているOS情報を示すレコードを取得する。OS状態監視部130は、取得したレコードに示されているIPアドレスに対応するOS211のレジストリ211aに、新たなOS管理キーを書き込む。図26の例では、OS管理キーが「aab」から「aac」に更新されている。さらにOS状態監視部130は、OS211に新たに設定したOS管理キーを、OS情報データベース110内の対応するレコードのOS管理キーの欄に書き込む。
その後、登録指示に応じたOS情報の登録処理が行われる。
図27は、OS情報がすでに登録されている場合における他のOS情報の登録状況の一例を示す第2の図である。OS状態監視部130は、まず管理対象のOS223のレジストリ223aから、OS管理番号、OS管理キー、インストール有無フラグの各情報を取得する。この段階では、図26に示したレジストリ223a内の情報が取得される。次にOS状態監視部130は、OS情報データベース110を参照し、取得したOS管理番号がすでに登録されていないか確認する。図27の例では、確認段階では登録済みである。
OS状態監視部130は、OS管理番号がOS情報データベース110に登録されている場合、レジストリ223a内のOS管理キーと、OS情報データベース110に登録されているレコードに含まれるOS管理キーとが一致するかどうかを照合する。図27の例では、OS管理キーが一致しない。この場合、OS状態監視部130は、ユーザインタフェース120を介して、新たなOS管理番号になることを、ユーザ31に通知する。
そして、OS状態監視部130は、OS管理番号とOS管理キーとを新規に作成し、OS223のレジストリ223aに書き込む。さらにOS状態監視部130は、OS223のレジストリ223aに登録されているソフトウェア223bに関する情報を含む新規のレコードを、OS情報データベース110に登録する。図27の例では、OS223のIPアドレス「192.168.10.11」、OS管理番号「os02」、OS管理キー「bbb」、およびインストール有無フラグ「○」が設定されたレコードが、OS情報データベース110に登録されている。
このようにして、OS情報の登録指示が管理サーバ100に入力された場合、すでに登録されているOS情報に示されるOSのOS管理キーが更新される。
ところで、図27に示した処理では、コピー先のOSのOS管理番号は新たに生成された値に変更されているが、コピー元のOSのOS管理番号は変更されていない。しかし、運用形態によっては、逆に、コピー元のOSのOS管理番号が新たに生成された値に変更され、コピー先のOSのOS管理番号は変更されない場合もある。コピー元のOSのOS管理番号が変更される場合としては、例えば仮想マシンのコピーを行った後に、コピー元の仮想マシンを有するサーバの電源が切られた場合がある。
以下、図24に示したような仮想マシンのコピーが行われた後、OS管理キーの更新が行われる前に、コピー元のOSを有するサーバの電源が遮断された場合を想定し、コピー元のOSのOS管理番号が変更される場合の処理について説明する。
図28は、コピー元のOSを有するサーバの電源遮断後のOS管理キーの定期更新状況の一例を示す図である。まずOS状態監視部130は、OS情報データベース110から、すでに登録してあるOSの情報を示すレコードを取得する。次にOS状態監視部130は、取得したレコードに示されているIPアドレスに対応するOS211のレジストリ211aへの、新たなOS管理キーの書き込みを試みる。しかし、サーバ210の電源が遮断されており、OS状態監視部130は、OS211のレジストリ211aにアクセスすることができない。そのため、OS管理キーの書き込みは失敗となり、OS管理キーの更新は行われずに、OS管理キーの定期更新処理は終了する。
図29は、コピー元のOSを有するサーバの電源遮断後におけるOS情報の登録に伴うOS管理キーの更新状況の一例を示す第1の図である。ユーザ31がユーザインタフェース120に、管理対象のソフトウェア223bがインストールされたOS223の登録指示を入力する。登録指示には、OS223のIPアドレスが含まれる。入力された登録指示は、ユーザインタフェース120で受け取られ、OS状態監視部130に転送される。
登録指示を受信したOS状態監視部130は、まずOS情報データベース110から、すでに登録されているOS情報を示すレコードを取得する。OS状態監視部130は、取得したレコードに示されているIPアドレスに対応するOS211のレジストリ211aに、新たなOS管理キーの書き込みを試みる。しかし、サーバ210の電源が遮断されており、OS状態監視部130は、OS211のレジストリ211aにアクセスすることができない。そのため、OS管理キーの書き込みは失敗となり、OS管理キーの更新は行われずに、登録指示に応じたOS情報の登録処理が行われる。
図30は、コピー元のOSを有するサーバの電源遮断後におけるOS情報の登録に伴うOS管理キーの更新状況の一例を示す第2の図である。OS状態監視部130は、まず管理対象のOS223のレジストリ223aから、OS管理番号、OS管理キー、インストール有無フラグの各情報を取得する。次にOS状態監視部130は、OS情報データベース110を参照し、取得したOS管理番号がすでに登録されていないか確認する。図30の例では、登録済みである。
OS状態監視部130は、取得したOS管理番号がOS情報データベース110に登録されている場合、そのOS管理番号を含むレコードのOS管理キーと、OS223から取得したOS管理キーとが一致するかどうかを確認する。図30の例では、OS管理キーが一致する。OS状態監視部130は、OS管理キーが一致する場合、指示されたOS情報がすでに登録済みであると判断して、新規の登録は行わない。
ただし、OS223のIPアドレス「192.168.10.11」と、OS情報データベース110に登録されているOS223の情報を示すレコードに設定されているIPアドレス「192.168.10.10」とが異なっている。そこで、OS状態監視部130は、該当レコードのIPアドレスを「192.168.10.11」に変更する。そしてOS状態監視部130は、登録されているIPアドレスを変更したことを、ユーザインタフェース120に通知する。ユーザインタフェース120は、登録されているIPアドレスが変更されたことを、モニタ21に表示する。
以後、管理サーバ100では、OS管理キー「aaa」に対応するOSが、コピー先のOS223であると認識する。その後、サーバ210の電源が遮断されたまま、OS管理キーの定期更新が行われたものとする。
図31は、登録済みのOS情報のコピー先のOSへの割り当て後におけるOS管理キーの定期更新状況の一例を示す図である。OS状態監視部130は、OS情報データベース110から、すでに登録してあるOSの情報を示すレコードを取得する。次にOS状態監視部130は、取得したレコードに示されているIPアドレスに対応するOS223のレジストリ223aに、新たなOS管理キーを書き込む。図31の例では、OS管理キーが「aaa」から「aab」に更新されている。さらにOS状態監視部130は、OS223に新たに設定したOS管理キーを、OS情報データベース110内の対応するレコードのOS管理キーの欄に書き込む。
その後、サーバ210に電源が投入され、OS211が起動されたものとする。図30に示した処理により、現在、OS情報データベース110に登録されているレコードは、OS223のOS情報を示している。そこで、ユーザ31は、OS211の起動完了後、OS211の登録指示を管理サーバ100に対して入力する。
図32は、コピー元のOSの再起動後のOS情報の登録状況の一例を示す第1の図である。ユーザ31がユーザインタフェース120に、管理対象のソフトウェア211bがインストールされたOS211の登録指示を入力する。登録指示には、OS211のIPアドレスが含まれる。入力された登録指示は、ユーザインタフェース120で受け取られ、OS状態監視部130に転送される。
登録指示を受信したOS状態監視部130は、まずOS情報データベース110から、すでに登録されているOS情報を示すレコードを取得する。OS状態監視部130は、取得したレコードに示されているIPアドレスに対応するOS223のレジストリ223aに、新たなOS管理キーを書き込む。図32の例では、OS管理キーが「aab」から「aac」に更新されている。さらにOS状態監視部130は、OS223に新たに設定したOS管理キーを、OS情報データベース110内の対応するレコードのOS管理キーの欄に書き込む。
その後、登録指示に応じたOS情報の登録処理が行われる。
図33は、コピー元のOSの再起動後のOS情報の登録状況の一例を示す第2の図である。OS状態監視部130は、まず管理対象のOS211のレジストリ211aから、OS管理番号、OS管理キー、インストール有無フラグの各情報を取得する。次にOS状態監視部130は、OS情報データベース110を参照し、取得したOS管理番号がすでに登録されていないか確認する。図33の例では、確認段階では未登録である。
OS状態監視部130は、OS管理番号がOS情報データベース110に登録されていない場合、OS管理番号、OS管理キーを新規に作成し、OS211のレジストリ211aに書き込む。さらにOS状態監視部130は、OS211のレジストリ211aに登録されているソフトウェア211bに関する情報を含む新規のレコードを、OS情報データベース110に登録する。図33の例では、OS211のIPアドレス「192.168.10.10」、OS管理番号「os02」、OS管理キー「bbb」、およびインストール有無フラグ「○」が設定されたレコードが、OS情報データベース110に登録されている。
このように、仮想マシンのコピーによって、同じOS管理番号およびOS管理キーを有するOSが複数存在することになった場合、管理サーバ100は最初に情報取得ができたほうのOSを、すでに認識しているOSであると認識する。そして管理サーバ100は、後から情報を取得したほうのOSを新規のOSとして認識する。
このように、OS管理番号にOS管理キーを組み合わせ、認識しているOS管理キーを適宜更新することで、OSごと仮想マシンがコピーされた場合でも、コピー元のOSとコピー先のOSとの区別が可能となる。
<全体を通した処理手順>
以下、第2の実施の形態における一連の処理手順を、さらに具体的に説明する。なお、ライセンス数分のOSへのソフトウェアのインストール、および顧客企業30とサービス提供業者40との間のソフトウェアのサポート契約は、すでに完了しているものとする。
まず、OS情報を管理サーバ100に登録する際の処理手順について詳細に説明する。
図34は、OS情報の登録処理の手順の前半を示すシーケンス図である。以下、図34に示す処理を、ステップ番号に沿って説明する。
[ステップS101]ユーザインタフェース120は、ユーザ31が入力したOSの登録指示を取得する。OSの登録指示には、登録対象のOSのIPアドレスが含まれる。
[ステップS102]ユーザインタフェース120は、取得したOSの登録指示を、OS状態監視部130に転送する。
[ステップS103]OSの登録指示を受信したOS状態監視部130は、OS情報データベース110に対して、OS情報を示す全レコードの呼び出し要求を送信する。
[ステップS104]OS情報データベース110は、OS情報を示す全レコードを、OS状態監視部130に送信する。
[ステップS105]OS状態監視部130は、OS情報データベース110にOS情報が存在するか否かを判断する。例えばOS状態監視部130は、OS情報データベース110から、少なくとも1つのレコードを受信した場合、OS情報が存在すると判断する。また、OS状態監視部130は、OS情報データベース110から、1つのレコードも受信できなかった場合、OS情報が存在しないと判断する。OS状態監視部130は、OS情報が存在した場合、処理をステップS106に進める。またOS状態監視部130は、OS情報が存在しない場合、処理をステップS121(図35参照)に進める。
[ステップS106]OS状態監視部130は、取得したOS情報のレコードの数分だけ、ステップS107〜S110の処理を実行する。すなわちOS状態監視部130は、OS情報データベース110から取得したレコードを1つずつ選択し、選択したレコードに対して、ステップS107〜S110の処理を行う。図34の例では、OS211のOS情報を示すレコードが取得できた場合の処理が、ステップS107〜S110に示されている。
[ステップS107]OS状態監視部130は、新規のOS管理キーを生成し、選択したレコードに対応するOS211のレジストリ211aに、生成したOS管理キーを書き込む。例えばOS状態監視部130は、OS211に対して、レジストリ211aへのOS管理キーの書き込み要求を送信する。
[ステップS108]OS211は、OS状態監視部130へ、レジストリ211aへの書き込み結果を応答する。例えばOS211は、書き込みが成功した場合、書き込みコマンドの正常終了を応答する。またOS211は、書き込みに失敗した場合、書き込み失敗を示すエラーメッセージを応答する。
[ステップS109]OS状態監視部130は、書き込み結果の応答に基づいて、書き込みが成功したか否かを判断する。例えばOS状態監視部130は、OS211から、書き込み成功の応答を受信した場合に、書き込みが成功したと判断する。またOS状態監視部130は、エラーメッセージの応答を受信した場合や、OS211との通信接続に失敗した場合、書き込みに失敗したと判断する。OS状態監視部130は、書き込みに成功した場合、処理をステップS110に進める。またOS状態監視部130は、書き込みに失敗した場合、処理をステップS112に進める。
[ステップS110]OS状態監視部130は、OS211のレジストリ211aに書き込んだOS管理キーを、OS情報データベース110内のOS211のOS情報を示すレコードに書き込む。
[ステップS111]OS情報データベース110は、OS管理キーの書き込み後、書き込み成功を示す書き込み結果応答を、OS状態監視部130に送信する。
[ステップS112]OS状態監視部130は、OS情報データベース110から取得したすべてのレコードに対する処理が完了すると、処理をステップS121(図35参照)に進める。
図35は、OS情報の登録処理の手順の後半を示すシーケンス図である。以下、図35に示す処理を、ステップ番号に沿って説明する。なお、OSの登録指示には、OS223のIPアドレスが含まれていたものとする。
[ステップS121]OS状態監視部130は、OS223のレジストリ223aから、OS管理番号、OS管理キー、インストール有無フラグの各情報を取得する。例えばOS状態監視部130は、OS223に対して、レジストリ223a内のOS管理番号、OS管理キー、およびインストール有無フラグの読み出し要求を送信する。
[ステップS122]OS223は、読み出し要求に応じて、レジストリ223a内のOS管理番号、OS管理キー、およびインストール有無フラグの各情報を、OS状態監視部130に送信する。なおOS223は、図24に示したように、他のOSのコピーの場合、OSの登録指示の際にすでにOS管理番号とOS管理キーとが設定されている。他方、他のOSのコピーでなければ、OS管理番号とOS管理キーとは未設定である。OS223は、レジストリ223aにOS管理番号とOS管理キーとが未設定の場合、インストール有無フラグのみをOS状態監視部130に送信する。
[ステップS123]OS状態監視部130は、OS管理番号とOS管理キーとを取得できたか否かを判断する。OS状態監視部130は、OS管理番号とOS管理キーとを取得できた場合、処理をステップS124に進める。またOS状態監視部130は、OS管理番号とOS管理キーとを取得できなかった場合、処理をステップS131に進める。
[ステップS124]OS状態監視部130は、OS223から取得したOS管理番号を含むレコードを、OS情報データベース110から検索する。
[ステップS125]OS情報データベース110は、指定されたOS管理番号を含むレコードを、検索結果としてOS状態監視部130に送信する。なお、該当するレコードがない場合、OS情報データベース110は、該当レコードなしを示す応答を、OS状態監視部130に送信する。
[ステップS126]OS状態監視部130は、OS223から取得したOS管理番号が、OS情報データベース110に登録済みか否かを判断する。例えばOS状態監視部130は、OS情報データベース110に対する検索により、該当するレコードが見つかった場合、登録済みであると判断する。OS状態監視部130は、OS223から取得したOS管理番号が登録済みであれば、処理をステップS127に進める。またOS状態監視部130は、OS223から取得したOS管理番号が未登録であれば、処理をステップS131に進める。
[ステップS127]OS状態監視部130は、OS223から取得したOS管理キーと、OS情報データベース110から取得したレコードに含まれるOS管理キーとが一致するか否かを照合する。
[ステップS128]OS状態監視部130は、OS管理キーが一致した場合、処理をステップS137に進める。またOS状態監視部130は、OS管理キーが一致しない場合、処理をステップS129に進める。
[ステップS129]OS状態監視部130は、新たなOS管理番号を割り当てることを示す情報を、ユーザインタフェース120に通知する。
[ステップS130]ユーザインタフェース120は、新たなOS管理番号を割り当てることを示すメッセージを、モニタ21に表示する。
[ステップS131]OS状態監視部130は、OS管理番号とOS管理キーとを、OS223のレジストリ223aに書き込む。
[ステップS132]OS223は、OS管理番号とOS管理キーとの書き込み結果の応答を、OS状態監視部130に送信する。
[ステップS133]OS状態監視部130は、新規のレコードをOS情報データベース110に登録する。登録されるレコードには、OS223のIPアドレス、ステップS131で書き込んだOS管理番号およびOS管理キー、ステップS121,122の処理で取得したインストール有無フラグが含まれる。
[ステップS134]OS情報データベース110は、レコードの書き込み後、書き込み結果の応答を、OS状態監視部130に送信する。
[ステップS135]OS状態監視部130は、操作結果をユーザインタフェース120に通知する。
[ステップS136]ユーザインタフェース120は、通知された操作結果をモニタ21に表示する。
ステップS128でOS管理キーが一致しないと判断された場合、以上でOS情報の登録処理が終了する。以下は、ステップS128でOS管理キーが一致すると判断された場合の処理である。
[ステップS137]OS状態監視部130は、IPアドレスを変更することを、ユーザインタフェース120に通知する。
[ステップS138]ユーザインタフェース120は、IPアドレスを変更する旨のメッセージを、モニタ21に表示する。
[ステップS139]OS状態監視部130は、OS情報データベース110における、ステップS124の検索でヒットしたレコードのIPアドレスを、取得したOS情報の登録指示に含まれるIPアドレスに変更する。
[ステップS140]OS情報データベース110は、変更後のIPアドレスを該当レコードに書き込み、書き込み結果の応答を、OS状態監視部130に送信する。
[ステップS141]OS状態監視部130は、操作結果をユーザインタフェース120に通知する。
[ステップS142]ユーザインタフェース120は、通知された操作結果をモニタ21に表示する。
このようにして、OS情報の登録指示に応じて、その登録指示に示されるOSのOS情報が、OS情報データベース110に登録される。
次に、インストールの有無を示す情報の定期取得処理について説明する。
図36は、インストール情報定期取得処理の手順の一例を示すシーケンス図である。以下、図36に示す処理をステップ番号に沿って説明する。
[ステップS201]OS状態監視部130は、予め設定された時間ごとに、ステップS202〜S210の処理を実行する。
[ステップS202]OS状態監視部130は、OS情報データベース110に、登録されたOS情報を示すレコードの取得要求を送信する。
[ステップS203]OS情報データベース110は、OS情報を示すレコードをOS状態監視部130に送信する。
[ステップS204]OS状態監視部130は、OS情報のレコードを取得できたか否かを判断する。OS状態監視部130は、レコードを取得できた場合、処理をステップS205に進める。またOS状態監視部130は、レコードを取得できなかった場合、処理をステップS211に進める。
[ステップS205]OS状態監視部130は、OS情報データベース110に登録されていたレコードごとに、ステップS206〜S210の処理を実行する。
以下、OS212の情報を示すレコードに対する処理を実行するものとして、ステップS206〜S209の処理を説明する。
[ステップS206]OS状態監視部130は、処理対象のレコードに対応するOS212のレジストリ212a内のインストール有無フラグの取得要求を、OS212に送信する。
[ステップS207]OS212は、レジストリ212a内のインストール有無フラグを、OS状態監視部130に送信する。
[ステップS208]OS状態監視部130は、OS情報データベース110に対して、OS212に対応するレコードへのOS212から取得したインストール有無フラグの書き込み要求を送信する。
[ステップS209]OS情報データベース110は、インストール有無フラグの書き込みを行い、書き込み結果を示す応答を、OS状態監視部130に送信する。
[ステップS210]OS状態監視部130は、OS情報データベース110から取得したすべてのレコードに対する処理が完了した場合、処理をステップS211に進める。
[ステップS211]OS状態監視部130は、例えばユーザ31により、インストール情報の定期取得処理の終了指示が入力されたとき、ステップS202〜S210の繰り返し処理の実行を終了する。
このようにして、例えば図14に示したように、各サーバにソフトウェアがインストールされているか否かを示す情報が、管理サーバ100で取得され、OS情報データベース110に反映される。
次に、OS管理キーの定期更新処理手順について説明する。
図37は、OS管理キー定期更新処理の手順の一例を示すシーケンス図である。以下、図37に示す処理をステップ番号に沿って説明する。
[ステップS301]OS状態監視部130は、予め設定された時間ごとに、ステップS302〜S311の処理を実行する。
[ステップS302]OS状態監視部130は、OS情報データベース110に、登録されたOS情報を示すレコードの取得要求を送信する。
[ステップS303]OS情報データベース110は、OS情報を示すレコードをOS状態監視部130に送信する。
[ステップS304]OS状態監視部130は、OS情報のレコードを取得できたか否かを判断する。OS状態監視部130は、レコードを取得できた場合、処理をステップS305に進める。またOS状態監視部130は、レコードを取得できなかった場合、処理をステップS312に進める。
[ステップS305]OS状態監視部130は、OS情報データベース110に登録されていたレコードごとに、ステップS306〜S310の処理を実行する。
以下、OS211の情報を示すレコードに対する処理を実行するものとして、ステップS306〜S309の処理を説明する。
[ステップS306]OS状態監視部130は、新たなOS管理キーを生成し、OS211のレジストリ211aへの新たなOS管理キーの書き込み要求を、OS211に送信する。
[ステップS307]OS211は、OS管理キーをレジストリ211aに書き込み、書き込み結果を示す応答を、OS状態監視部130に送信する。
[ステップS308]OS状態監視部130は、OS管理キーの書き込みが成功したか否かを判断する。OS状態監視部130は、書き込みが成功した場合、処理をステップS309に進める。またOS状態監視部130は、書き込みに失敗した場合、処理をステップS311に進める。
[ステップS309]OS状態監視部130は、OS情報データベース110に対して、OS211に対応するレコードへの新たなOS管理キーの書き込み要求を送信する。
[ステップS310]OS情報データベース110は、OS管理キーの書き込みを行い、書き込み結果を示す応答を、OS状態監視部130に送信する。
[ステップS311]OS状態監視部130は、OS情報データベース110から取得したすべてのレコードに対する処理が完了した場合、処理をステップS312に進める。
[ステップS312]OS状態監視部130は、例えばユーザ31により、OS管理キーの定期取得処理の終了指示が入力されたとき、ステップS302〜S311の繰り返し処理の実行を終了する。
このようにして、各OSのOS管理キーが定期的に更新される。
次に、ソフトウェアで不具合が発生し、サポートサービスを依頼する場合の処理について説明する。サポートサービスを依頼する場合、顧客企業30側のシステムでは、OS管理番号特定処理と暗号ファイル作成処理とが行われる。
図38は、OS管理番号特定処理の手順の一例を示すフローチャートである。以下、図38に示す処理をステップ番号に沿って説明する。
[ステップS401]ユーザインタフェース120は、ユーザ31からの、OS管理番号問い合わせの入力を受け付ける。
[ステップS402]ユーザインタフェース120は、OS管理番号問い合わせに示されるIPアドレスを指定したOS管理番号取得要求を、OS状態監視部130に送信する。
[ステップS403]OS状態監視部130は、IPアドレスを指定したOS管理暗号の読み出し要求を、OS情報データベース110に送信する。
[ステップS404]OS情報データベース110は、指定されたIPアドレスを含むレコードからOS管理番号を読み出し、読み出したOS管理番号を、OS状態監視部130に送信する。
[ステップS405]OS状態監視部130は、取得したOS管理番号をユーザインタフェース120に送信する。
[ステップS406]ユーザインタフェース120は、OS状態監視部130から送られたOS管理番号を、OS管理番号問い合わせに応じた処理結果としてモニタ21に表示する。
これにより、ユーザ31は、不具合が発生したソフトウェアがインストールされているOSのOS管理番号を認識することができる。そしてユーザ31が、OS管理番号を指定して、ログ取得指示を管理サーバ100に入力すると、暗号ファイル作成処理が実行される。
図39は、暗号ファイル作成処理の手順の一例を示すフローチャートである。以下、図39に示す処理をステップ番号に沿って説明する。
[ステップS501]ユーザインタフェース120は、ユーザ31からの、ログ取得指示の入力を受け付ける。
[ステップS502]ユーザインタフェース120は、ログ管理部140に対して、OS管理番号を指定したログ取得要求を送信する。
[ステップS503]ログ管理部140は、OS状態監視部130に対して、OS管理番号を指定した、ログとOS管理キーとの取得要求を送信する。
[ステップS504]OS状態監視部130は、指定されたOS管理番号に対応するOS211に対して、OS管理番号とOS管理キーとの読み出し要求を送信する。
[ステップS505]OS211は、レジストリ211aからOS管理番号とOS管理キーとを読み出し、読み出したOS管理番号とOS管理キーとをOS状態監視部130に送信する。
[ステップS506]OS状態監視部130は、OS211に対して、ログ211cの読み出し要求を送信する。
[ステップS507]OS211は、ログ211cを読み出し、読み出したログ211cをOS状態監視部130に送信する。
[ステップS508]OS状態監視部130は、読み出したOS管理番号、OS管理キー、およびログ211cを、ログ管理部140に送信する。
[ステップS509]ログ管理部140は、OS管理番号、OS管理キー、およびログ211cを暗号化し、暗号データを生成する。そしてログ管理部140は、生成した暗号データを含むファイルを作成する。ログ管理部140は、作成したファイルを、処理の場所に格納する。
[ステップS510]ログ管理部140は、ログの取得結果を、ユーザインタフェース120に通知する。
[ステップS511]ユーザインタフェース120は、ログの取得結果を、モニタ21に表示する。例えば暗号化されたOS管理番号、OS管理キー、およびログ211cを含むファイルの格納場所が、モニタ21に表示される。
ユーザ31は、サポート担当者41へのサポート依頼の際、OS管理番号と不具合内容とをサポート担当者41に伝えると共に、サポート担当者41に暗号化されたログ211cを含むファイルを渡す。サポート担当者41は、受け取ったファイルを用いて、不具合のあったソフトウェアがサポート契約の対象か否かを判断する。
なお図18〜図22に示した例では、サポート担当者41自身がサポート契約の対象か否かの判断を行っているが、その判断をサポート契約管理サーバ300に実行させることもできる。以下、サポート契約管理サーバ300による、サポート対象か否かを判断する処理(サポート契約確認処理)の手順について説明する。
図40は、サポート契約確認処理の手順の一例を示すフローチャートである。以下、図40に示す処理をステップ場合に沿って説明する。
[ステップS601]サポート契約管理部320は、顧客名、ソフトウェア名、OS管理番号、および不具合内容の入力を受け付ける。例えばサポート担当者41が、サポート契約管理部320によって表示された画面内の所定のフィールドに、顧客名などの情報を入力する。OS管理番号と不具合内容とは、サポート依頼の際にユーザ31から伝えられた情報が入力される。不具合内容は、例えば不具合発生時に表示されたエラーコードである。サポート契約管理部320は、所定のフィールドに入力された各情報を取得する。
[ステップS602]サポート契約管理部320は、暗号データを含むファイルを取得する。例えばサポート担当者41が、サポート契約管理サーバ300のストレージ装置内にファイルを格納し、そのファイルの格納場所を入力する。サポート契約管理部320は、入力された場所からファイルを取得する。
[ステップS603]サポート契約管理部320は、取得したファイル内の暗号データを復号する。暗号データの復号により、OS管理番号、OS管理キー、およびログが取得できる。
[ステップS604]サポート契約管理部320は、復号したデータ内のOS管理番号と、ステップS601で入力されたOS管理番号とを比較する。
[ステップS605]サポート契約管理部320は、ステップS604の比較において、OS管理番号が一致したか否かを判断する。サポート契約管理部320は、OS管理番号が一致した場合、処理をステップS607に進める。またサポート契約管理部320は、OS管理番号が不一致の場合、処理をステップS606に進める。
[ステップS606]サポート契約管理部320は、ログの再取得の連絡を促すメッセージをモニタに表示する。サポート担当者41は、表示されたメッセージを確認し、ユーザ31から受け取ったログの採取元が間違っていることを認識し、ユーザ31に対して、正しいログの再取得を依頼する。その後、サポート契約確認処理は終了する。
[ステップS607]サポート契約管理部320は、入力された不具合内容と、ログに示されている不具合内容とを比較する。例えばサポート契約管理部320は、不具合内容を示すエラーコードを比較する。
[ステップS608]サポート契約管理部320は、不具合内容が一致したか否かを判断する。サポート契約管理部320は、不具合内容が一致した場合、処理をステップS610に進める。またサポート契約管理部320は、不具合内容が不一致の場合、処理をステップS609に進める。
[ステップS609]サポート契約管理部320は、不具合内容の再確認を促すメッセージをモニタに表示する。サポート担当者41は、表示されたメッセージを確認し、ユーザ31から受け取ったログの採取元、あるいは通知された不具合内容が間違っていることを認識し、ユーザ31に対して、不具合内容の再確認を依頼する。その後、サポート契約確認処理は終了する。
[ステップS610]サポート契約管理部320は、入力された顧客名とソフトウェア名との組に対応するレコードを、サポート契約情報データベース310から取得する。
[ステップS611]サポート契約管理部320は、取得したレコードの中に、入力されたOS管理番号と一致するOS管理番号を有するレコードがあるか否かを判断する。サポート契約管理部320は、該当するレコードがあれば、処理をステップS615に進める。またサポート契約管理部320は、該当するレコードがなければ、処理をステップS612に進める。
[ステップS612]サポート契約管理部320は、取得したレコードの中に、OS管理番号が未設定のレコードがあるか否かを判断する。サポート契約管理部320は、該当するレコードがあれば、処理をステップS614に進める。またサポート契約管理部320は、該当するレコードがなければ、処理をステップS613に進める。
[ステップS613]サポート契約管理部320は、新規サポート契約の提案を促すメッセージを、モニタに表示する。サポート担当者41は、表示されたメッセージを確認することで、サポート契約の対象のソフトウェア本数が不足していることを認識し、ユーザ31に対して新規のサポート契約を提案する。その後、サポート契約確認処理が終了する。
[ステップS614]サポート契約管理部320は、取得したレコードのうちの、OS管理番号が未設定のレコードの1つに、入力されたOS管理番号を設定する。サポート契約管理部320は、OS管理番号を設定したレコードを、サポート契約情報データベース310に書き戻す。
[ステップS615]サポート契約管理部320は、サポート依頼によるサポート対象のソフトウェアが、サポート契約の適用対象であることをモニタに表示する。サポート担当者41は、サポート契約の適用対象であることを示す表示を確認し、ユーザ31に対してサポートを実施する。その後、サポート契約確認処理が終了する。
このように、第2の実施の形態によれば、ソフトウェアが仮想マシン上にインストールされている場合でもその個体を特定し、サポート契約と結びつけることができる。その結果、ユーザ31がサポート担当者41にサポートを依頼した際に、サポート担当者41は、ユーザの問い合わせ内容が正しいかどうかを判断することができ、適切な対応を行うことができる。
さらに管理サーバ100は、仮想マシンのコピーを行っても、コピー元とコピー先とのそれぞれの仮想マシンで動作しているOSを違う個体だと認識し、それぞれにOS管理番号を割り当てることできる。これによって、仮想マシンのコピーが行われた場合でも、ソフトウェア1本分のサポート契約で、コピー元とコピー先との両方のソフトウェアに対してサポートを実施してしまうことを防ぐことができる。
〔その他の実施の形態〕
第2の実施の形態において、図17に示した例では、ユーザ31は、OS管理番号の問い合わせと、OSに関するログ取得指示とを個別に行っているが、これらの入力を1回で済ませることもできる。例えばユーザ31は、OSのIPアドレスを指定したログ取得指示を入力する。ユーザインタフェース120は、ログ取得指示を受け取り、IPアドレスを指定したログ取得要求を、ログ管理部140に送信する。ログ管理部140は、IPアドレスを指定して、OS管理番号、OS管理キー、およびログの取得要求を、OS状態監視部130に送信する。OS状態監視部130は、IPアドレスに対応するOSのレジストリから、OS管理番号とOS管理キーとを取得する。またOS状態監視部130は、IPアドレスに対応するOSからソフトウェアのログを取得する。OS状態監視部130は、取得したOS管理番号、OS管理キー、およびログを、ログ管理部140に送信する。ログ管理部140は、取得したOS管理番号、OS管理キー、およびログを暗号化し、暗号データを含むファイルを作成する。そしてログ管理部140は、ユーザインタフェース120に、ログ取得完了の応答を送信する。ユーザインタフェース120は、ログを含むファイルの格納が完了したことを、モニタ21に表示する。このようにして、ログを含む暗号データを作成する際のユーザ31の入力の手間を削減することができる。
なお、第2の実施の形態では、ネットワーク上でOSを特定する情報としてIPアドレスを用いているが、他の情報でOSを特定してもよい。例えばOSに個体識別番号が設定されている場合、その個体識別番号によってOSを特定することもできる。
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。
以上の実施の形態に関し、さらに以下の付記を開示する。
(付記1) 管理対象コンピュータ上で実行されている複数のオペレーティングシステムのうちの一オペレーティングシステムにインストールされているソフトウェアに関するログ取得指示に応じて、前記ソフトウェアの実行過程で出力されたメッセージのログと、前記一オペレーティングシステムを識別する識別子とを、前記一オペレーティングシステムから取得し、前記ログと前記識別子とを含むファイルを出力する第1情報処理装置と、
前記ファイルを取得し、サポート契約のサポート対象となるサポート対象ソフトウェアがインストールされているオペレーティングシステムを示すサポート対象識別子と、前記識別子とが一致するか否か、および前記ログに不具合の発生を示すメッセージが含まれるか否かに基づいて、前記ログに基づく前記ソフトウェアへのサポートが前記サポート契約の適用対象か否かを判定する第2情報処理装置と、
を有する情報処理システム。
(付記2) 前記第1情報処理装置は、前記ログと前記識別子とを暗号化した暗号データを生成し、前記暗号データを含む前記ファイルを出力し、
前記第2情報処理装置は、前記ファイル内の前記暗号データを復号し、復号結果から前記ログと前記識別子とを取得する、
付記1記載の情報処理システム。
(付記3) 前記第1情報処理装置は、前記複数のオペレーティングシステムそれぞれに対応する前記識別子を生成し、前記複数のオペレーティングシステムそれぞれの設定情報の格納領域に、対応する前記識別子を書き込む、
付記1または2に記載の情報処理システム。
(付記4) 前記第2情報処理装置は、前記サポート対象識別子と前記識別子とが一致し、かつ前記ログに不具合の発生を示すメッセージが含まれている場合に、前記ログに基づく前記ソフトウェアへのサポートが前記サポート契約の適用対象であると判定する、
付記1ないし3のいずれかに記載の情報処理システム。
(付記5) 前記第2情報処理装置は、前記サポート契約に定められたサポート対象のソフトウェア数以下の前記サポート対象識別子を記憶する記憶部を有し、前記識別子と一致する前記サポート対象識別子が前記記憶部に格納されていない場合、前記記憶部が記憶している前記サポート対象識別子の数が、前記ソフトウェア数に達しているか否かを判定し、前記サポート対象識別子の数が前記ソフトウェア数に満たないとき、前記識別子を前記サポート対象識別子として前記記憶部に格納し、前記サポート対象識別子と前記識別子とが一致すると判定する、
付記1ないし4のいずれかに記載の情報処理システム。
(付記6) 管理対象コンピュータ上で実行されている複数のオペレーティングシステムのうちの一オペレーティングシステムにインストールされているソフトウェアに関するログ取得指示に応じて、前記ソフトウェアの実行過程で出力されたメッセージのログと、前記一オペレーティングシステムを識別する識別子とを、前記一オペレーティングシステムから取得し、前記ログと前記識別子とを含むファイルを出力する処理部、
を有する情報処理装置。
(付記7) 前記処理部は、前記ファイルの出力では、前記ログと前記識別子とを暗号化した暗号データを生成し、前記暗号データを含む前記ファイルを出力する、
付記6記載の情報処理装置。
(付記8) 前記処理部は、前記複数のオペレーティングシステムそれぞれに対応する前記識別子を生成し、前記複数のオペレーティングシステムそれぞれの設定情報の格納領域に、対応する前記識別子を書き込む、
付記6または7に記載の情報処理装置。
(付記9) コンピュータに、
管理対象コンピュータ上で実行されている複数のオペレーティングシステムのうちの一オペレーティングシステムにインストールされているソフトウェアに関するログ取得指示に応じて、前記ソフトウェアの実行過程で出力されたメッセージのログと、前記一オペレーティングシステムを識別する識別子とを、前記一オペレーティングシステムから取得し、
前記ログと前記識別子とを含むファイルを出力する、
処理を実行させる管理プログラム。
(付記10) 前記ファイルの出力では、前記ログと前記識別子とを暗号化した暗号データを生成し、前記暗号データを含む前記ファイルを出力する、
付記9記載の管理プログラム。
(付記11) 前記コンピュータに、さらに、
前記複数のオペレーティングシステムそれぞれに対応する前記識別子を生成し、前記複数のオペレーティングシステムそれぞれの設定情報の格納領域に、対応する前記識別子を書き込む、
処理を実行させる付記9または10に記載の管理プログラム。
1 管理対象コンピュータ
2,3 OS
2a,3a レジストリ
2b,3b ソフトウェア
2c,3c ログ
4,5 ファイル
10 情報処理システム
11 第1情報処理装置
11a,12b 処理部
12 第2情報処理装置
12a 記憶部

Claims (7)

  1. 管理対象コンピュータ上で実行されている複数のオペレーティングシステムのうちの一オペレーティングシステムにインストールされているソフトウェアに関するログ取得指示に応じて、前記ソフトウェアの実行過程で出力されたメッセージのログと、前記一オペレーティングシステムを識別する識別子とを、前記一オペレーティングシステムから取得し、前記ログと前記識別子とを含むファイルを出力する第1情報処理装置と、
    前記ファイルを取得し、サポート契約のサポート対象となるサポート対象ソフトウェアがインストールされているオペレーティングシステムを示すサポート対象識別子と、前記識別子とが一致するか否か、および前記ログに不具合の発生を示すメッセージが含まれるか否かに基づいて、前記ログに基づく前記ソフトウェアへのサポートが前記サポート契約の適用対象か否かを判定する第2情報処理装置と、
    を有する情報処理システム。
  2. 前記第1情報処理装置は、前記ログと前記識別子とを暗号化した暗号データを生成し、前記暗号データを含む前記ファイルを出力し、
    前記第2情報処理装置は、前記ファイル内の前記暗号データを復号し、復号結果から前記ログと前記識別子とを取得する、
    請求項1記載の情報処理システム。
  3. 前記第1情報処理装置は、前記複数のオペレーティングシステムそれぞれに対応する前記識別子を生成し、前記複数のオペレーティングシステムそれぞれの設定情報の格納領域に、対応する前記識別子を書き込む、
    請求項1または2に記載の情報処理システム。
  4. 前記第2情報処理装置は、前記サポート対象識別子と前記識別子とが一致し、かつ前記ログに不具合の発生を示すメッセージが含まれている場合に、前記ログに基づく前記ソフトウェアへのサポートが前記サポート契約の適用対象であると判定する、
    請求項1ないし3のいずれかに記載の情報処理システム。
  5. 前記第2情報処理装置は、前記サポート契約に定められたサポート対象のソフトウェア数以下の前記サポート対象識別子を記憶する記憶部を有し、前記識別子と一致する前記サポート対象識別子が前記記憶部に格納されていない場合、前記記憶部が記憶している前記サポート対象識別子の数が、前記ソフトウェア数に達しているか否かを判定し、前記サポート対象識別子の数が前記ソフトウェア数に満たないとき、前記識別子を前記サポート対象識別子として前記記憶部に格納し、前記サポート対象識別子と前記識別子とが一致すると判定する、
    請求項1ないし4のいずれかに記載の情報処理システム。
  6. 管理対象コンピュータ上で実行されている複数のオペレーティングシステムのうちの一オペレーティングシステムにインストールされているソフトウェアに関するログ取得指示に応じて、前記ソフトウェアの実行過程で出力されたメッセージのログと、前記一オペレーティングシステムを識別する識別子とを、前記一オペレーティングシステムから取得し、前記ログと前記識別子とを含むファイルを出力する処理部、
    を有する情報処理装置。
  7. コンピュータに、
    管理対象コンピュータ上で実行されている複数のオペレーティングシステムのうちの一オペレーティングシステムにインストールされているソフトウェアに関するログ取得指示に応じて、前記ソフトウェアの実行過程で出力されたメッセージのログと、前記一オペレーティングシステムを識別する識別子とを、前記一オペレーティングシステムから取得し、
    前記ログと前記識別子とを含むファイルを出力する、
    処理を実行させる管理プログラム。
JP2017106730A 2017-05-30 2017-05-30 情報処理システム、情報処理装置、および管理プログラム Pending JP2018205816A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017106730A JP2018205816A (ja) 2017-05-30 2017-05-30 情報処理システム、情報処理装置、および管理プログラム
US15/989,684 US20180349915A1 (en) 2017-05-30 2018-05-25 Information processing system, method and non-transitory computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017106730A JP2018205816A (ja) 2017-05-30 2017-05-30 情報処理システム、情報処理装置、および管理プログラム

Publications (1)

Publication Number Publication Date
JP2018205816A true JP2018205816A (ja) 2018-12-27

Family

ID=64458363

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017106730A Pending JP2018205816A (ja) 2017-05-30 2017-05-30 情報処理システム、情報処理装置、および管理プログラム

Country Status (2)

Country Link
US (1) US20180349915A1 (ja)
JP (1) JP2018205816A (ja)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11143743A (ja) * 1997-11-11 1999-05-28 Nec Corp メッセージ分類方法および装置
JP2001356938A (ja) * 2000-06-12 2001-12-26 Hitachi Ltd コンピュータ識別装置
JP2002157039A (ja) * 2000-11-21 2002-05-31 Hitachi Ltd 保守サポート契約におけるライセンス管理方法
JP2005158067A (ja) * 2003-11-25 2005-06-16 Hewlett-Packard Development Co Lp 自動診断データ転送を用いた階層マルチソースソフトウェアサポート
JP2005158066A (ja) * 2003-11-25 2005-06-16 Hewlett-Packard Development Co Lp ベンダサービス用の自動化された顧客資格付与システム
JP2013020354A (ja) * 2011-07-08 2013-01-31 Ricoh Co Ltd ログ集計プログラム、ログ集計装置およびインストーラ・パッケージャ・プログラム
JP2014016758A (ja) * 2012-07-09 2014-01-30 Nippon Telegr & Teleph Corp <Ntt> ログデータ解凍装置、ログデータ圧縮装置、ログデータ解凍プログラム及びログデータ圧縮プログラム
JP2016181091A (ja) * 2015-03-24 2016-10-13 日本電気株式会社 情報管理装置、情報管理方法、情報管理プログラム、データ構造、及び、ソフトウェア資産管理システム
JP2017045079A (ja) * 2015-08-24 2017-03-02 株式会社日立製作所 クラウド管理方法及びクラウド管理システム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5138712A (en) * 1989-10-02 1992-08-11 Sun Microsystems, Inc. Apparatus and method for licensing software on a network of computers
US5204897A (en) * 1991-06-28 1993-04-20 Digital Equipment Corporation Management interface for license management system
US7716348B1 (en) * 1999-09-03 2010-05-11 Safenet, Inc. License management system and method with license balancing
US20020022971A1 (en) * 2000-08-21 2002-02-21 Masanori Tanaka Software rental system, software rental method, and computer program for being executed on the software rental system
US8370833B2 (en) * 2008-02-20 2013-02-05 Hewlett-Packard Development Company, L.P. Method and system for implementing a virtual storage pool in a virtual environment
US20100162237A1 (en) * 2008-12-23 2010-06-24 Vmware, Inc. Network administration in a virtual machine environment through a temporary pool
US9846899B1 (en) * 2012-08-31 2017-12-19 Amazon Technologies, Inc. Dynamic software licensing
US20150046425A1 (en) * 2013-08-06 2015-02-12 Hsiu-Ping Lin Methods and systems for searching software applications

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11143743A (ja) * 1997-11-11 1999-05-28 Nec Corp メッセージ分類方法および装置
JP2001356938A (ja) * 2000-06-12 2001-12-26 Hitachi Ltd コンピュータ識別装置
JP2002157039A (ja) * 2000-11-21 2002-05-31 Hitachi Ltd 保守サポート契約におけるライセンス管理方法
JP2005158067A (ja) * 2003-11-25 2005-06-16 Hewlett-Packard Development Co Lp 自動診断データ転送を用いた階層マルチソースソフトウェアサポート
JP2005158066A (ja) * 2003-11-25 2005-06-16 Hewlett-Packard Development Co Lp ベンダサービス用の自動化された顧客資格付与システム
JP2013020354A (ja) * 2011-07-08 2013-01-31 Ricoh Co Ltd ログ集計プログラム、ログ集計装置およびインストーラ・パッケージャ・プログラム
JP2014016758A (ja) * 2012-07-09 2014-01-30 Nippon Telegr & Teleph Corp <Ntt> ログデータ解凍装置、ログデータ圧縮装置、ログデータ解凍プログラム及びログデータ圧縮プログラム
JP2016181091A (ja) * 2015-03-24 2016-10-13 日本電気株式会社 情報管理装置、情報管理方法、情報管理プログラム、データ構造、及び、ソフトウェア資産管理システム
JP2017045079A (ja) * 2015-08-24 2017-03-02 株式会社日立製作所 クラウド管理方法及びクラウド管理システム

Also Published As

Publication number Publication date
US20180349915A1 (en) 2018-12-06

Similar Documents

Publication Publication Date Title
US7958210B2 (en) Update management method and update management unit
US9027161B2 (en) System, method, and computer-readable recording medium for supporting license acquirement
US20110321172A1 (en) Management apparatus, license management server, electronic equipment, electronic equipment management system, management method, program, and recording medium
JP5263696B2 (ja) ソフトウェア構成要素をバックアップするためのコンピュータ・システム、並びにその方法及びコンピュータ・プログラム
US8387156B2 (en) Equipment managing system, equipment managing method, and computer-readable storage medium
US20110041125A1 (en) Program introduction supporting server, program introduction supporting system, program introduction supporting method, and program introduction supporting computer program
US20110107419A1 (en) Systems and methods for improved identification and analysis of threats to a computing system
JP6447258B2 (ja) 管理プログラム、管理方法、および管理装置
US8640209B2 (en) Authentication information change facility
US8112598B2 (en) Apparatus and method for controlling copying
US8941857B2 (en) Information processing system, information processing apparatus, and non-transitory computer readable medium
JP2018205816A (ja) 情報処理システム、情報処理装置、および管理プログラム
JP2018205817A (ja) 情報処理装置、および管理プログラム
JP2000250748A (ja) 影響波及検出装置
JP4484617B2 (ja) 記録媒体の保証方法およびその保証管理プログラムならびに保証処理プログラム
JP6725856B2 (ja) 管理プログラム、管理方法、および管理装置
JP7518001B2 (ja) 基盤システム及び基盤システムの管理方法
JP6710977B2 (ja) 情報処理装置及び情報処理プログラム
JP4918844B2 (ja) 情報処理システムおよび情報処理プログラム
JP2009230458A (ja) 構成チェックシステム
JP2006113806A (ja) ソフトウェアライセンス管理方法および管理システム、ならびにそのプログラム
JP2017058711A (ja) ライセンス管理装置、ライセンス管理システム、ライセンス管理プログラムおよびライセンス管理方法
JP5810864B2 (ja) 機器識別装置、機器識別システム、機器識別方法、機器識別プログラム、及び記憶媒体
JP2014182683A (ja) 監視システム、および監視方法
Carlo et al. Debian Developer's Reference

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200310

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20200316

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20200316

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210406

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20211109