JP2019020798A - Information processing device and program - Google Patents

Information processing device and program Download PDF

Info

Publication number
JP2019020798A
JP2019020798A JP2017135962A JP2017135962A JP2019020798A JP 2019020798 A JP2019020798 A JP 2019020798A JP 2017135962 A JP2017135962 A JP 2017135962A JP 2017135962 A JP2017135962 A JP 2017135962A JP 2019020798 A JP2019020798 A JP 2019020798A
Authority
JP
Japan
Prior art keywords
version
software
firmware
dependency relationship
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017135962A
Other languages
Japanese (ja)
Inventor
尚恭 嶋田
Naoyasu Shimada
尚恭 嶋田
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 JP2017135962A priority Critical patent/JP2019020798A/en
Publication of JP2019020798A publication Critical patent/JP2019020798A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Retry When Errors Occur (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

To reduce possibility of occurrence of trouble in operation of software or hardware due to recovery.SOLUTION: A storage unit 11 stores information of a combination of a software version and a firmware version, both of which compatibility has been confirmed. When recovering an operation environment of an information processing device 20, a processing unit 12 checks a combination of a version of a recovery destination of software of the information processing device 20 and a current version of firmware corresponding to hardware 23 of the information processing device 20. The processing unit 12 determines necessity of at least one change of the version of the recovery destination of the software and the current version of the firmware on the basis of the information stored in the storage unit 11, and specifies a combination for change when it is determined that the change is necessary.SELECTED DRAWING: Figure 1

Description

本発明は情報処理装置およびプログラムに関する。   The present invention relates to an information processing apparatus and a program.

コンピュータなどの装置には様々なソフトウェアがインストールされる。そこで、ソフトウェアの導入を支援する方法が考えられている。
例えば、クライアント端末にプリンタドライバを導入する際に、プリンタのファームウェアを当該プリンタドライバに対して動作保証されたファームウェアに更新する印刷システムの提案がある。
Various software is installed in a device such as a computer. Therefore, a method for supporting the introduction of software has been considered.
For example, when a printer driver is installed in a client terminal, there is a proposal for a printing system that updates the firmware of a printer to firmware that is guaranteed to operate for the printer driver.

また、電子機器のファームウェアが新たなファームウェアに更新されると、新たなファームウェアのバージョンと整合性を有するソフトウェアのバージョンを検出し、当該バージョンのソフトウェアを自装置にインストールする情報処理装置の提案もある。   There is also a proposal for an information processing apparatus that detects a version of software that is consistent with the new firmware version when the firmware of the electronic device is updated to the new firmware, and installs the version of the software on the own apparatus. .

特開2009−230400号公報JP 2009-230400 A 特開2014−191797号公報JP 2014-191797 A

情報処理システムの運用では、ある装置に対してインストールされたソフトウェア(例えば、オペレーティングシステム、ミドルウェア、および、それらの設定データなど)のバックアップを行うことがある。バックアップにより取得されたバックアップデータにより、該当の装置のソフトウェアの環境をバックアップ時点の状態に復元可能である。   In the operation of an information processing system, software installed on a certain device (for example, operating system, middleware, and setting data thereof) may be backed up. Based on the backup data acquired by the backup, the software environment of the corresponding device can be restored to the state at the time of backup.

一方、ソフトウェアとハードウェアとは綿密に連携していることが少なくない。ハードウェアの動作はファームウェアにより制御される。ファームウェアは、機能追加や改善のためにアップデートされることがある。このため、例えば、ソフトウェアのバージョンのみをバックアップ時点の状態に復元しても、ファームウェアのバージョンと復元後のソフトウェアのバージョンとに不整合が生じることがある。両者に不整合があると、ファームウェアと復元後のソフトウェアとが適切に連携できず、ソフトウェアやハードウェアの動作に不具合が発生することがある。   On the other hand, software and hardware are often closely linked. The operation of hardware is controlled by firmware. Firmware may be updated for feature additions and improvements. For this reason, for example, even if only the software version is restored to the state at the time of backup, inconsistency may occur between the firmware version and the restored software version. If there is a mismatch between the two, the firmware and the restored software cannot be properly linked, and a malfunction may occur in the operation of the software or hardware.

1つの側面では、本発明は、復元によりソフトウェアやハードウェアの動作に不具合が発生する可能性を減らすことを目的とする。   In one aspect, an object of the present invention is to reduce the possibility of a malfunction occurring in the operation of software or hardware due to restoration.

1つの態様では、情報処理装置が提供される。情報処理装置は、記憶部と処理部とを有する。記憶部は、整合性を確認済であるソフトウェアのバージョンとファームウェアのバージョンとの組合せの情報を記憶する。処理部は、対象装置の動作環境を復旧する際に、対象装置におけるソフトウェアの復元先のバージョンと対象装置のハードウェアに対応するファームウェアの現在のバージョンとの組合せを確認し、記憶部に記憶された情報に基づいて、ソフトウェアの復元先のバージョンおよびファームウェアの現在のバージョンの少なくとも1つの変更の要否を判定し、変更要と判定すると変更のための組合せを特定する。   In one aspect, an information processing apparatus is provided. The information processing apparatus includes a storage unit and a processing unit. The storage unit stores information on a combination of a software version and a firmware version whose consistency has been confirmed. When the processing unit restores the operating environment of the target device, the processing unit confirms the combination of the software restoration destination version of the target device and the current version of the firmware corresponding to the hardware of the target device, and is stored in the storage unit Based on the received information, it is determined whether or not it is necessary to change at least one of the restoration destination version of the software and the current version of the firmware. If it is determined that the change is necessary, a combination for change is specified.

1つの側面では、復元によりソフトウェアやハードウェアの動作に不具合が発生する可能性を減らすことができる。   In one aspect, the possibility of a malfunction occurring in the operation of software or hardware due to restoration can be reduced.

第1の実施の形態の情報処理装置を示す図である。It is a figure which shows the information processing apparatus of 1st Embodiment. バージョンの組合せの他の特定例を示す図である。It is a figure which shows the other specific example of the combination of a version. 第2の実施の形態の情報処理システムを示す図である。It is a figure which shows the information processing system of 2nd Embodiment. 管理サーバのハードウェア例を示す図である。It is a figure which shows the hardware example of a management server. 管理対象のソフトウェアおよびファームウェアの例を示す図である。It is a figure which shows the example of the software and firmware of management object. 管理サーバの機能例を示す図である。It is a figure which shows the function example of a management server. 変更履歴テーブルの例を示す図である。It is a figure which shows the example of a change log | history table. バックアップ管理テーブルの例を示す図である。It is a figure which shows the example of a backup management table. 依存関係テーブルの第1の例を示す図である。It is a figure which shows the 1st example of a dependency relationship table. 依存関係テーブルの第2の例を示す図である。It is a figure which shows the 2nd example of a dependency relationship table. 依存関係管理情報の例を示す図である。It is a figure which shows the example of dependency management information. 依存関係管理情報の第1の具体例を示す図である。It is a figure which shows the 1st specific example of dependency relationship management information. 依存関係管理情報の第2の具体例を示す図である。It is a figure which shows the 2nd specific example of dependency relationship management information. 依存関係管理情報の第3の具体例を示す図である。It is a figure which shows the 3rd specific example of dependency relationship management information. ポリシー情報の例を示す図である。It is a figure which shows the example of policy information. 再起動テーブルの例を示す図である。It is a figure which shows the example of a restart table. 管理サーバの処理例を示すフローチャートである。It is a flowchart which shows the process example of a management server. バージョン選択処理例(その1)を示すフローチャートである。It is a flowchart which shows the version selection process example (the 1). バージョン選択処理例(その2)を示すフローチャートである。It is a flowchart which shows the version selection process example (the 2). バージョン選択処理例(その3)を示すフローチャートである。It is a flowchart which shows the version selection process example (the 3). バージョン選択処理例(その4)を示すフローチャートである。It is a flowchart which shows the version selection process example (the 4). 依存関係管理情報の時系列に応じた変化例を示す図である。It is a figure which shows the example of a change according to the time series of dependence management information. バージョン選択の具体例を示す図である。It is a figure which shows the specific example of version selection. 警告表示例(その1)を示す図である。It is a figure which shows the warning example (the 1). 警告表示例(その2)を示す図である。It is a figure which shows the warning example (the 2).

以下、本実施の形態について図面を参照して説明する。
[第1の実施の形態]
図1は、第1の実施の形態の情報処理装置を示す図である。第1の実施の形態の情報処理システムは、情報処理装置10,20を含む。情報処理装置10,20は、ネットワークN1に接続されている。情報処理装置20は、外部ハードウェア30と接続されている。外部ハードウェア30は、例えば、ディスクアレイやテープライブラリなどのストレージ装置やパケットを中継するスイッチなどの中継装置である。外部ハードウェア30は、ネットワークN1に接続されている。
Hereinafter, the present embodiment will be described with reference to the drawings.
[First Embodiment]
FIG. 1 is a diagram illustrating the information processing apparatus according to the first embodiment. The information processing system according to the first embodiment includes information processing apparatuses 10 and 20. The information processing apparatuses 10 and 20 are connected to the network N1. The information processing apparatus 20 is connected to the external hardware 30. The external hardware 30 is, for example, a storage device such as a disk array or a tape library, or a relay device such as a switch that relays packets. The external hardware 30 is connected to the network N1.

情報処理装置10は、記憶部11および処理部12を有する。記憶部11は、RAM(Random Access Memory)などの揮発性記憶装置でもよいし、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発性記憶装置でもよい。処理部12は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などを含み得る。処理部12はプログラムを実行するプロセッサでもよい。「プロセッサ」は、複数のプロセッサの集合(マルチプロセッサ)も含み得る。   The information processing apparatus 10 includes a storage unit 11 and a processing unit 12. The storage unit 11 may be a volatile storage device such as a RAM (Random Access Memory) or a non-volatile storage device such as an HDD (Hard Disk Drive) or a flash memory. The processing unit 12 may include a central processing unit (CPU), a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), and the like. The processing unit 12 may be a processor that executes a program. The “processor” may also include a set of multiple processors (multiprocessor).

情報処理装置20は、メモリ21、プロセッサ22およびハードウェア23を有する。メモリ21は、不揮発性メモリおよび揮発性メモリを含む。メモリ21は、ソフトウェアXのプログラムを記憶する。プロセッサ22は、メモリ21に記憶されたソフトウェアXのプログラムを実行する。ソフトウェアXは、例えば、オペレーティングシステム(OS:Operating System)やミドルウェアなどである。ソフトウェアXは、業務処理などに用いられるアプリケーションでもよい。ハードウェア23は、情報処理装置20の内蔵デバイスであり、例えば、NIC(Network Interface Card)やストレージにアクセスするためのRAID(Redundant Arrays of Inexpensive Disks)カードなどである。   The information processing apparatus 20 includes a memory 21, a processor 22, and hardware 23. The memory 21 includes a nonvolatile memory and a volatile memory. The memory 21 stores a software X program. The processor 22 executes the software X program stored in the memory 21. The software X is, for example, an operating system (OS) or middleware. The software X may be an application used for business processing. The hardware 23 is a built-in device of the information processing apparatus 20, and is, for example, a NIC (Network Interface Card) or a RAID (Redundant Array of Inexpensive Disks) card for accessing a storage.

ハードウェア23は、メモリ23aおよびプロセッサ23bを有する。メモリ23aは、不揮発性メモリおよび揮発性メモリを含む。メモリ23aは、ファームウェアYのプログラムを記憶する。プロセッサ23bは、メモリ23aに記憶されたファームウェアYを実行し、ファームウェアYの機能により、ハードウェア23の動作を制御する。プロセッサ23bは、ファームウェアYの機能によりソフトウェアXと連携する。   The hardware 23 includes a memory 23a and a processor 23b. The memory 23a includes a nonvolatile memory and a volatile memory. The memory 23a stores a firmware Y program. The processor 23b executes the firmware Y stored in the memory 23a, and controls the operation of the hardware 23 by the function of the firmware Y. The processor 23b cooperates with the software X by the function of the firmware Y.

外部ハードウェア30は、メモリ31およびプロセッサ32を有する。メモリ31は、不揮発性メモリおよび揮発性メモリを含む。メモリ31は、ファームウェアZのプログラムを記憶する。プロセッサ32は、メモリ31に記憶されたファームウェアZのプログラムを実行し、ファームウェアZの機能により、外部ハードウェア30の動作を制御する。プロセッサ32は、ファームウェアZの機能によりソフトウェアXと連携する。   The external hardware 30 has a memory 31 and a processor 32. The memory 31 includes a nonvolatile memory and a volatile memory. The memory 31 stores a program for the firmware Z. The processor 32 executes the program of the firmware Z stored in the memory 31 and controls the operation of the external hardware 30 by the function of the firmware Z. The processor 32 cooperates with the software X by the function of the firmware Z.

例えば、ソフトウェアXは、ファームウェアY,Zと連携することで、ハードウェア23や外部ハードウェア30の起動、停止および稼働情報の収集などを行う。
情報処理装置10は、情報処理装置20におけるソフトウェアXのバージョンおよびファームウェアYのバージョンを管理する。また、情報処理装置10は、外部ハードウェア30におけるファームウェアZのバージョンを管理する。ここで、ソフトウェアXのバージョンをバージョンv1と表す。ファームウェアYのバージョンをバージョンv2と表す。ファームウェアZのバージョンをバージョンv3と表す。
For example, the software X cooperates with the firmware Y and Z to start and stop the hardware 23 and the external hardware 30 and collect operation information.
The information processing apparatus 10 manages the version of software X and the version of firmware Y in the information processing apparatus 20. In addition, the information processing apparatus 10 manages the version of the firmware Z in the external hardware 30. Here, the version of the software X is represented as version v1. The version of firmware Y is represented as version v2. The version of firmware Z is represented as version v3.

具体的には、記憶部11は、バージョン管理テーブルT1を記憶する。バージョン管理テーブルT1は、ソフトウェアXおよびファームウェアY,Zについて、整合性を確認済であるバージョンの組合せの情報を記憶する。   Specifically, the storage unit 11 stores a version management table T1. The version management table T1 stores information on the combination of versions whose consistency has been confirmed for the software X and the firmware Y and Z.

例えば、バージョン管理テーブルT1は、ソフトウェアXのバージョンv1=1に対して、ファームウェアYの整合性を確認済であるバージョンv2の範囲1≦v2≦3を示す情報を含む。これは、ソフトウェアXのバージョンv1=1に対して、ファームウェアYのバージョンv2が1≦v2≦3を満たす(v1,v2)の組合せが整合性を確認済であり、当該組合せであれば、ソフトウェアXとハードウェア23とが適切に連携可能であることを示す。   For example, the version management table T1 includes information indicating the range 1 ≦ v2 ≦ 3 of the version v2 for which the consistency of the firmware Y has been confirmed with respect to the version v1 = 1 of the software X. This is because the combination of (v1, v2) in which the version v2 of the firmware Y satisfies 1 ≦ v2 ≦ 3 with respect to the version v1 = 1 of the software X has been confirmed to be consistent. X indicates that the hardware 23 can be appropriately linked.

同様に、バージョン管理テーブルT1は、ソフトウェアXのバージョンv1=1に対して、ファームウェアZの整合性を確認済であるバージョンv3の範囲1≦v3≦2を示す情報を含む。これは、ソフトウェアXのバージョンv1=1に対して、ファームウェアZのバージョンv3が1≦v3≦2を満たす(v1,v3)の組合せが整合性を確認済であり、当該組合せであれば、ソフトウェアXとハードウェア23とが適切に連携可能であることを示す。   Similarly, the version management table T1 includes information indicating the range 1 ≦ v3 ≦ 2 of the version v3 for which the consistency of the firmware Z has been confirmed with respect to the version v1 = 1 of the software X. This is because the combination of (v1, v3) in which the version v3 of the firmware Z satisfies 1 ≦ v3 ≦ 2 with respect to the version v1 = 1 of the software X has been confirmed to be consistent. X indicates that the hardware 23 can be appropriately linked.

また、同様に、バージョン管理テーブルT1は、v1=2に対して、範囲1≦v2≦4および範囲2≦v3≦4を示すレコードを含む。更に、バージョン管理テーブルT1は、v1=3に対して、範囲2≦v2≦5および範囲3≦v3≦5を示すレコードを含む。   Similarly, the version management table T1 includes records indicating range 1 ≦ v2 ≦ 4 and range 2 ≦ v3 ≦ 4 for v1 = 2. Further, the version management table T1 includes records indicating the range 2 ≦ v2 ≦ 5 and the range 3 ≦ v3 ≦ 5 for v1 = 3.

ここで、現時点において、バージョンv1=3、バージョンv2=4、バージョンv3=4であるとする。
処理部12は、情報処理装置20の動作環境を復旧する際に、情報処理装置20におけるソフトウェアXの復元先のバージョンと情報処理装置20のハードウェア23に対応するファームウェアYの現在のバージョンとの組合せを確認する。この場合、情報処理装置20は、動作環境の復旧(または復元)の対象装置であるといえる。
Here, it is assumed that version v1 = 3, version v2 = 4, and version v3 = 4 at the present time.
When the processing unit 12 restores the operating environment of the information processing apparatus 20, the processing unit 12 compares the restoration destination version of the software X in the information processing apparatus 20 and the current version of the firmware Y corresponding to the hardware 23 of the information processing apparatus 20. Check the combination. In this case, it can be said that the information processing apparatus 20 is a target apparatus for restoration (or restoration) of the operating environment.

処理部12は、記憶部11に記憶されたバージョン管理テーブルT1に基づいてソフトウェアXの復元先のバージョンおよびファームウェアYの現在のバージョンの少なくとも1つの変更の要否を判定する。処理部12は、変更要と判定すると変更のための組合せを特定する。変更のための組合せは、ソフトウェアXの復元先のバージョンとファームウェアYの現在のバージョンとの不整合を回避するソフトウェアXのバージョンおよびファームウェアYのバージョンの組合せを示す。   The processing unit 12 determines whether or not it is necessary to change at least one of the restoration destination version of the software X and the current version of the firmware Y based on the version management table T1 stored in the storage unit 11. When determining that the change is necessary, the processing unit 12 specifies a combination for change. The combination for change indicates a combination of the version of software X and the version of firmware Y that avoids inconsistency between the restoration destination version of software X and the current version of firmware Y.

ここで、動作環境の復旧処理は、情報処理装置20において予め取得されたソフトウェアXのバックアップデータを用いて行われる。動作環境の復旧処理自体では、ソフトウェアXが復旧の対象となり、ファームウェアY,Zは復旧の対象ではない。   Here, the restoration processing of the operating environment is performed using the backup data of the software X acquired in advance in the information processing apparatus 20. In the restoration processing of the operating environment itself, the software X is a target for recovery, and the firmware Y and Z are not targets for recovery.

例えば、処理部12は、ユーザによる動作環境の復旧指示R1を受け付けると、動作環境の復旧を開始する。復旧指示R1は、ソフトウェアXの復元先のバージョンv1を1とする旨の指示を含む。あるいは、処理部12は、復旧先の時刻または時刻に関連付けられた情報(例えば、リストア対象のバックアップデータの識別情報)を含む復旧指示を受け付けてもよい。この場合、処理部12は、情報処理装置20における過去の時刻でのソフトウェアXのバージョンv1の情報を記録したログを参照して、ソフトウェアXの復元先のバージョンv1を特定してもよい。   For example, when the processing unit 12 receives an operating environment recovery instruction R1 from the user, the processing unit 12 starts recovery of the operating environment. The recovery instruction R1 includes an instruction to set the restoration destination version v1 of the software X to 1. Alternatively, the processing unit 12 may receive a recovery instruction including a recovery destination time or information associated with the time (for example, identification information of backup data to be restored). In this case, the processing unit 12 may specify the restoration destination version v1 of the software X with reference to a log in which information on the version v1 of the software X at the past time in the information processing device 20 is recorded.

そして、処理部12は、ソフトウェアXの復元先のバージョンv1=1と、ファームウェアYの現在のバージョンv2=4との組合せを確認する。処理部12は、(v1,v2)=(1,4)の組合せに対し、バージョン管理テーブルT1に基づいて、ソフトウェアXの復元先のバージョンv1およびファームウェアYの現在のバージョンv2の少なくとも1つの変更の要否を判定する。本例では、バージョン管理テーブルT1によれば、v=1に対して整合性を確認済であるv2の範囲は、1≦v2≦3である。したがって、(v1,v2)=(1,4)の組合せは、整合性を確認済でなく、ソフトウェアXおよびハードウェア23の連携に不具合が生じ得る。このため、処理部12は、ソフトウェアXの復元先のバージョンv1およびファームウェアYの現在のバージョンv2の少なくとも1つについて変更要であると判定する。すると、処理部12は、バージョン管理テーブルT1に基づいて、変更のための組合せとして、例えば、(v1,v2)=(2,4)、または、(v1,v2)=(1,3)を特定する。   Then, the processing unit 12 confirms the combination of the restoration destination version v1 = 1 of the software X and the current version v2 = 4 of the firmware Y. For the combination of (v1, v2) = (1, 4), the processing unit 12 changes at least one of the restoration destination version v1 of the software X and the current version v2 of the firmware Y based on the version management table T1. Whether or not is necessary is determined. In this example, according to the version management table T1, the range of v2 whose consistency has been confirmed for v = 1 is 1 ≦ v2 ≦ 3. Therefore, the combination of (v1, v2) = (1, 4) has not been confirmed in consistency, and a malfunction may occur in the cooperation between the software X and the hardware 23. For this reason, the processing unit 12 determines that at least one of the restoration destination version v1 of the software X and the current version v2 of the firmware Y needs to be changed. Then, the processing unit 12 sets (v1, v2) = (2, 4) or (v1, v2) = (1, 3) as a combination for change based on the version management table T1, for example. Identify.

同様に、処理部12は、ソフトウェアXの復元先のバージョンと、外部ハードウェア30のファームウェアZの現在のバージョンとの組合せを確認してもよい。例えば、処理部12は、ソフトウェアXの復元先のバージョンv1=1と、ファームウェアZの現在のバージョンv3=4との組合せを確認する。処理部12は、(v1,v3)=(1,4)の組合せに対し、バージョン管理テーブルT1に基づいて、ソフトウェアXの復元先のバージョンv1およびファームウェアZの現在のバージョンv3の少なくとも1つの変更の要否を判定する。本例では、バージョン管理テーブルT1によれば、v=1に対して整合性を確認済であるv3の範囲は、1≦v3≦2である。したがって、(v1,v3)=(1,4)の組合せは、整合性を確認済でなく、ソフトウェアXおよび外部ハードウェア30の連携に不具合が生じ得る。このため、処理部12は、ソフトウェアXの復元先のバージョンv1およびファームウェアZの現在のバージョンv3の少なくとも1つについて変更要であると判定する。すると、処理部12は、バージョン管理テーブルT1に基づいて、変更のための組合せとして、例えば、(v1,v3)=(2,4)、または、(v1,v3)=(1,2)を特定する。   Similarly, the processing unit 12 may confirm the combination of the restoration destination version of the software X and the current version of the firmware Z of the external hardware 30. For example, the processing unit 12 confirms the combination of the restoration destination version v1 = 1 of the software X and the current version v3 = 4 of the firmware Z. For the combination of (v1, v3) = (1, 4), the processing unit 12 changes at least one of the restoration destination version v1 of the software X and the current version v3 of the firmware Z based on the version management table T1. Whether or not is necessary is determined. In this example, according to the version management table T1, the range of v3 whose consistency has been confirmed for v = 1 is 1 ≦ v3 ≦ 2. Therefore, the combination of (v1, v3) = (1, 4) has not been confirmed in consistency, and a malfunction may occur in the cooperation between the software X and the external hardware 30. Therefore, the processing unit 12 determines that at least one of the restoration destination version v1 of the software X and the current version v3 of the firmware Z needs to be changed. Then, based on the version management table T1, the processing unit 12 sets (v1, v3) = (2, 4) or (v1, v3) = (1, 2) as a combination for change, for example. Identify.

処理部12は、変更のための組合せとして特定された(v1,v2)の組合せ候補および(v1,v3)の組合せ候補をマージした組合せを特定し、ソフトウェアXおよびファームウェアY,Zに対するバージョン変更内容を警告として出力してもよい。上記の例の場合、ソフトウェアXの復元先のバージョンv1を、v1=1ではなく、v1=2とすることで、現在のv2=4、および、現在のv3=4の両方との整合性を満たせる。すなわち、処理部12は、(v1,v2,v3)=(2,4,4)の組合せを特定する。このため、処理部12は、ソフトウェアXとファームウェアY,Zとの整合性を満たすために、警告R2を出力することが考えられる。警告R2は、ソフトウェアXの復元先のバージョンv1を、v1=2に変更要である旨を示す。   The processing unit 12 specifies the combination of the (v1, v2) combination candidate and the (v1, v3) combination candidate specified as the combination for change, and the version change contents for the software X and the firmware Y, Z May be output as a warning. In the case of the above example, by setting the restoration destination version v1 of the software X to v1 = 2 instead of v1 = 1, consistency with both the current v2 = 4 and the current v3 = 4 can be achieved. I can meet. That is, the processing unit 12 specifies a combination of (v1, v2, v3) = (2, 4, 4). For this reason, it is conceivable that the processing unit 12 outputs the warning R2 in order to satisfy the consistency between the software X and the firmware Y and Z. The warning R2 indicates that it is necessary to change the restoration destination version v1 of the software X to v1 = 2.

あるいは、上記の例の場合、ファームウェアYの現在のバージョンv2をv2=3に、ファームウェアZの現在のバージョンv3をv3=2にそれぞれ変更することで、ソフトウェアXの復元先のバージョンv1=1との整合性を満たせる。すなわち、処理部12は、(v1,v2,v3)=(1,3,2)の組合せを特定する。このため、他の例では、処理部12は、ソフトウェアXとファームウェアY,Zとの整合性を満たすために、警告R3を出力することが考えられる。警告R3は、ファームウェアYの現在のバージョンv2をv2=3に、ファームウェアZの現在のバージョンv3をv3=2にそれぞれ変更要である旨を示す。   Alternatively, in the above example, the current version v2 of the firmware Y is changed to v2 = 3, and the current version v3 of the firmware Z is changed to v3 = 2. Can be satisfied. That is, the processing unit 12 specifies a combination of (v1, v2, v3) = (1, 3, 2). Therefore, in another example, the processing unit 12 may output the warning R3 in order to satisfy the consistency between the software X and the firmware Y and Z. The warning R3 indicates that the current version v2 of the firmware Y needs to be changed to v2 = 3, and the current version v3 of the firmware Z needs to be changed to v3 = 2.

なお、整合性を満たすバージョンの組合せの特定方法の基準を示すポリシーを記憶部11に予め設定可能としてもよい。例えば、ソフトウェアXを旧バージョンへ復元するが、ファームウェアY,Zの現バージョンとの整合性を満たす最新のバージョンを選択するというポリシーであれば、処理部12は、復元先のバージョンv1=2とする警告R2を出力することが考えられる。このポリシーは、極力既にアップデート済の状態を活かして整合性を担保する組合せを導き出すポリシーであるといえる。   It should be noted that a policy indicating a standard for specifying a combination of versions satisfying the consistency may be set in the storage unit 11 in advance. For example, if the policy is to restore the software X to the old version but select the latest version that satisfies the consistency with the current versions of the firmware Y and Z, the processing unit 12 sets the restoration destination version v1 = 2. It is conceivable to output the warning R2 to be performed. This policy can be said to be a policy for deriving a combination that guarantees consistency by utilizing an already updated state as much as possible.

また、例えば、ソフトウェアXの復元先のバージョンを変更せずに、ファームウェアY,Zのバージョンを、当該復元先のバージョンと整合性を満たす最新のバージョンにするというポリシーも考えられる。このポリシーの場合に、処理部12は、(v2,v3)=(3,2)に変更する旨の警告R3を出力することが考えられる。このポリシーは、極力バックアップ時の組合せに近い状態で整合性を合わせるポリシーであるといえる。   Further, for example, a policy may be considered in which the versions of the firmware Y and Z are updated to the latest version satisfying the consistency with the restoration destination version without changing the restoration destination version of the software X. In the case of this policy, it is conceivable that the processing unit 12 outputs a warning R3 for changing to (v2, v3) = (3, 2). This policy can be said to be a policy that matches the consistency as close as possible to the combination at the time of backup.

また、バージョン管理テーブルT1の内容によっては、処理部12は、上記とは異なるバージョンの組合せを特定することも考えられる。
図2は、バージョンの組合せの他の特定例を示す図である。記憶部11は、バージョン管理テーブルT1に代えて、バージョン管理テーブルT2を記憶する。
Further, depending on the contents of the version management table T1, the processing unit 12 may specify a combination of versions different from the above.
FIG. 2 is a diagram illustrating another specific example of the combination of versions. The storage unit 11 stores a version management table T2 instead of the version management table T1.

バージョン管理テーブルT2は、v1=1に対して、範囲1≦v2≦3および範囲1≦v3≦2を示すレコードを含む。また、バージョン管理テーブルT2は、v1=2に対して、範囲1≦v2≦4および範囲2≦v3≦4を示すレコードを含む。更に、バージョン管理テーブルT2は、v1=3に対して、範囲5≦v2≦7および範囲3≦v3≦5を示すレコードを含む。   The version management table T2 includes records indicating a range 1 ≦ v2 ≦ 3 and a range 1 ≦ v3 ≦ 2 with respect to v1 = 1. In addition, the version management table T2 includes records indicating range 1 ≦ v2 ≦ 4 and range 2 ≦ v3 ≦ 4 with respect to v1 = 2. Further, the version management table T2 includes records indicating the range 5 ≦ v2 ≦ 7 and the range 3 ≦ v3 ≦ 5 with respect to v1 = 3.

ここで、現時点において、v1=3、v2=5、v3=4であるとする。
例えば、処理部12は、ユーザによる動作環境の復旧指示R1を受け付けると、動作環境の復旧を開始する。復旧指示R1は、ソフトウェアXの復元先のバージョンv1を1とする旨の指示を含む。あるいは、前述のように、処理部12は、復旧先の時刻または時刻に関連付けられた情報(例えば、リストア対象のバックアップデータの識別情報)を含む復旧指示を受け付けてもよい。この場合、処理部12は、情報処理装置20における過去の時刻でのソフトウェアXのバージョンv1の情報を記録したログを参照して、ソフトウェアXの復元先のバージョンv1を特定してもよい。
Here, it is assumed that v1 = 3, v2 = 5, and v3 = 4 at the present time.
For example, when the processing unit 12 receives an operating environment recovery instruction R1 from the user, the processing unit 12 starts recovery of the operating environment. The recovery instruction R1 includes an instruction to set the restoration destination version v1 of the software X to 1. Alternatively, as described above, the processing unit 12 may accept a recovery instruction including a recovery destination time or information associated with the time (for example, identification information of backup data to be restored). In this case, the processing unit 12 may specify the restoration destination version v1 of the software X with reference to a log in which information on the version v1 of the software X at the past time in the information processing device 20 is recorded.

そして、処理部12は、ソフトウェアXの復元先のバージョンv1=1と、ファームウェアYの現在のバージョンv2=5との組合せを確認する。処理部12は、(v1,v2)=(1,5)の組合せに対し、バージョン管理テーブルT2に基づいて、ソフトウェアXの復元先のバージョンv1およびファームウェアYの現在のバージョンv2の少なくとも1つの変更の要否を判定する。本例では、バージョン管理テーブルT2によれば、v=1に対して整合性を確認済であるv2の範囲は、1≦v2≦3である。したがって、(v1,v2)=(1,5)の組合せは、整合性を確認済でなく、ソフトウェアXおよびハードウェア23の連携に不具合が生じ得る。このため、処理部12は、ソフトウェアXの復元先のバージョンv1およびファームウェアYの現在のバージョンv2の少なくとも1つについて変更要であると判定する。すると、処理部12は、バージョン管理テーブルT2に基づいて、変更のための組合せとして、例えば、(v1,v2)=(2,4)、または、(v1,v2)=(1,3)を特定する。   Then, the processing unit 12 confirms the combination of the restoration destination version v1 = 1 of the software X and the current version v2 = 5 of the firmware Y. For the combination of (v1, v2) = (1, 5), the processing unit 12 changes at least one of the restoration destination version v1 of the software X and the current version v2 of the firmware Y based on the version management table T2. Whether or not is necessary is determined. In this example, according to the version management table T2, the range of v2 whose consistency has been confirmed for v = 1 is 1 ≦ v2 ≦ 3. Therefore, the combination of (v1, v2) = (1, 5) has not been confirmed in consistency, and a malfunction may occur in the cooperation between the software X and the hardware 23. For this reason, the processing unit 12 determines that at least one of the restoration destination version v1 of the software X and the current version v2 of the firmware Y needs to be changed. Then, the processing unit 12 sets, for example, (v1, v2) = (2, 4) or (v1, v2) = (1, 3) as a combination for change based on the version management table T2. Identify.

同様に、処理部12は、ソフトウェアXの復元先のバージョンと、外部ハードウェア30のファームウェアZの現在のバージョンとの組合せを確認してもよい。例えば、処理部12は、ソフトウェアXの復元先のバージョンv1=1と、ファームウェアZの現在のバージョンv3=4との組合せを確認する。処理部12は、(v1,v3)=(1,4)の組合せに対し、バージョン管理テーブルT2に基づいて、ソフトウェアXの復元先のバージョンv1およびファームウェアZの現在のバージョンv3の少なくとも1つの変更の要否を判定する。本例では、バージョン管理テーブルT2によれば、v=1に対して整合性を確認済であるv3の範囲は、1≦v3≦2である。したがって、(v1,v3)=(1,4)の組合せは、整合性を確認済でなく、ソフトウェアXおよび外部ハードウェア30の連携に不具合が生じ得る。このため、処理部12は、ソフトウェアXの復元先のバージョンv1およびファームウェアZの現在のバージョンv3の少なくとも1つについて変更要であると判定する。すると、処理部12は、バージョン管理テーブルT2に基づいて、変更のための組合せとして、例えば、(v1,v3)=(2,4)、または、(v1,v3)=(1,2)を特定する。   Similarly, the processing unit 12 may confirm the combination of the restoration destination version of the software X and the current version of the firmware Z of the external hardware 30. For example, the processing unit 12 confirms the combination of the restoration destination version v1 = 1 of the software X and the current version v3 = 4 of the firmware Z. For the combination of (v1, v3) = (1, 4), the processing unit 12 changes at least one of the restoration destination version v1 of the software X and the current version v3 of the firmware Z based on the version management table T2. Whether or not is necessary is determined. In this example, according to the version management table T2, the range of v3 for which consistency is confirmed for v = 1 is 1 ≦ v3 ≦ 2. Therefore, the combination of (v1, v3) = (1, 4) has not been confirmed in consistency, and a malfunction may occur in the cooperation between the software X and the external hardware 30. Therefore, the processing unit 12 determines that at least one of the restoration destination version v1 of the software X and the current version v3 of the firmware Z needs to be changed. Then, the processing unit 12 sets, for example, (v1, v3) = (2, 4) or (v1, v3) = (1, 2) as a combination for change based on the version management table T2. Identify.

処理部12は、変更のための組合せとして特定された(v1,v2)の組合せ候補および(v1,v3)の組合せ候補をマージした組合せを特定し、ソフトウェアXおよびファームウェアY,Zに対するバージョン変更内容を警告として出力してもよい。上記の例の場合、ソフトウェアXの復元先のバージョンv1を、v1=1ではなく、v1=2とし、ファームウェアYの現在のバージョンv2をv2=4とすることで、v1,v2,v3の整合性を満たせる。すなわち、処理部12は、(v1,v2,v3)=(2,4,4)の組合せを特定する。このため、処理部12は、ソフトウェアXとファームウェアY,Zとの整合性を満たすために、警告R4を出力することが考えられる。警告R4は、ソフトウェアXの復元先のバージョンv1をv1=2に、ファームウェアYの現在のバージョンv2をv2=4にそれぞれ変更要である旨を示す。   The processing unit 12 specifies the combination of the (v1, v2) combination candidate and the (v1, v3) combination candidate specified as the combination for change, and the version change contents for the software X and the firmware Y, Z May be output as a warning. In the case of the above example, the restoration destination version v1 of the software X is not v1 = 1, but v1 = 2, and the current version v2 of the firmware Y is v2 = 4, thereby matching v1, v2, and v3. Can satisfy the sex. That is, the processing unit 12 specifies a combination of (v1, v2, v3) = (2, 4, 4). For this reason, it is conceivable that the processing unit 12 outputs the warning R4 in order to satisfy the consistency between the software X and the firmware Y and Z. The warning R4 indicates that it is necessary to change the restoration destination version v1 of the software X to v1 = 2 and the current version v2 of the firmware Y to v2 = 4.

あるいは、上記の例の場合、ファームウェアYの現在のバージョンv2をv2=3に、ファームウェアZの現在のバージョンv3をv3=2にそれぞれ変更することで、ソフトウェアXの復元先のバージョンv1との整合性を満たせる。すなわち、処理部12は、(v1,v2,v3)=(1,3,2)の組合せを特定する。このため、他の例では、処理部12は、ソフトウェアXとファームウェアY,Zとの整合性を満たすために、警告R5を出力することが考えられる。警告R5は、ファームウェアYの現在のバージョンv2をv2=3に、ファームウェアZの現在のバージョンv3をv3=2にそれぞれ変更要である旨を示す。   Alternatively, in the case of the above example, the current version v2 of the firmware Y is changed to v2 = 3, and the current version v3 of the firmware Z is changed to v3 = 2, thereby matching with the restoration destination version v1 of the software X Can satisfy the sex. That is, the processing unit 12 specifies a combination of (v1, v2, v3) = (1, 3, 2). For this reason, in another example, the processing unit 12 may output the warning R5 in order to satisfy the consistency between the software X and the firmware Y and Z. The warning R5 indicates that the current version v2 of the firmware Y needs to be changed to v2 = 3, and the current version v3 of the firmware Z needs to be changed to v3 = 2.

情報処理装置10によれば、復元によりソフトウェアやハードウェアの動作に不具合が発生する可能性を減らすことができる。具体的には次の通りである。
ソフトウェアXは、ハードウェア23や外部ハードウェア30と連携して所定の処理を実行することもある。しかし、ソフトウェアXのバージョンとファームウェアYのバージョンとの組合せによっては、ソフトウェアXとハードウェア23とが適切に連携できないことがある。また、ソフトウェアXのバージョンとファームウェアZのバージョンとの組合せによっては、ソフトウェアXと外部ハードウェア30とが適切に連携できないことがある。
According to the information processing apparatus 10, it is possible to reduce the possibility that a malfunction occurs in the operation of software or hardware due to the restoration. Specifically, it is as follows.
The software X may execute a predetermined process in cooperation with the hardware 23 or the external hardware 30. However, depending on the combination of the version of software X and the version of firmware Y, software X and hardware 23 may not be properly linked. Further, depending on the combination of the software X version and the firmware Z version, the software X and the external hardware 30 may not be properly linked.

このため、ソフトウェアXを、あるバックアップ時点のバージョンに復元すると、ソフトウェアXのバージョンとファームウェアYのバージョンとが不整合となり、ソフトウェアXやハードウェア23の動作に不具合が生じる可能性がある。同様に、ソフトウェアXを、あるバックアップ時点のバージョンに復元すると、ソフトウェアXのバージョンとファームウェアZのバージョンとが不整合となり、ソフトウェアXや外部ハードウェア30の動作に不具合が生じる可能性がある。   For this reason, when the software X is restored to a version at the time of backup, the version of the software X and the version of the firmware Y become inconsistent, and there is a possibility that a malfunction occurs in the operation of the software X or the hardware 23. Similarly, if the software X is restored to a version at the time of backup, the version of the software X and the version of the firmware Z become inconsistent, and there is a possibility that the operation of the software X or the external hardware 30 may be defective.

そこで、処理部12は、バージョン管理テーブルT1(または、バージョン管理テーブルT2)に基づいて、ソフトウェアXの復元先のバージョンに対して不整合となるファームウェアYのバージョンを特定する。そして、処理部12は、ファームウェアYの現バージョンで不整合が発生し得る場合には、不整合を回避するように、ソフトウェアXの復元先のバージョンおよびファームウェアYの少なくとも一方の変更内容を特定する。これにより、ソフトウェアXの復元によって、ソフトウェアXやハードウェア23の動作に不具合が発生する可能性を減らすことができる。   Therefore, the processing unit 12 specifies the version of the firmware Y that is inconsistent with the restoration destination version of the software X based on the version management table T1 (or the version management table T2). Then, when inconsistency may occur in the current version of the firmware Y, the processing unit 12 specifies the change contents of at least one of the version to which the software X is restored and the firmware Y so as to avoid the inconsistency. . As a result, it is possible to reduce the possibility of malfunctions occurring in the operation of the software X and the hardware 23 due to the restoration of the software X.

また、上記のように、処理部12は、ユーザにより指定されたポリシーに応じて、ソフトウェアXの復元先のバージョンおよびファームウェアYの現在のバージョンのうち、変更対象を決定してもよい。これにより、ユーザの運用方針に応じたバージョン変更を実現できる。   Further, as described above, the processing unit 12 may determine a change target among the restoration destination version of the software X and the current version of the firmware Y according to the policy designated by the user. Thereby, the version change according to the user's operation policy can be realized.

また、処理部12は、ソフトウェアXの復元先のバージョンを変更対象に決定すると、ファームウェアYの現在のバージョンに対して整合性を確認済であるソフトウェアXのバージョンのうち、最新のバージョンまたは復元先のバージョンとの差が最小のバージョンを、変更後のバージョンとして特定してもよい。あるいは、処理部12は、ファームウェアYの現在のバージョンを変更対象に決定すると、ソフトウェアXの復元先のバージョンに対して整合性を確認済であるファームウェアYのバージョンのうち、最新のバージョンまたは現在のバージョンとの差が最小のバージョンを、変更後のバージョンとして特定してもよい。これにより、上記と同様に、ユーザの運用方針(例えば、極力最新バージョンを使用する、または、極力更新回数を減らすなど)に応じたバージョン変更を実現できる。   In addition, when the processing unit 12 determines the restoration destination version of the software X as a change target, the latest version or the restoration destination among the versions of the software X whose consistency with the current version of the firmware Y has been confirmed. The version with the smallest difference from the version may be specified as the version after the change. Alternatively, when the processing unit 12 determines that the current version of the firmware Y is a change target, the latest version or the current version of the firmware Y versions whose consistency with the restoration destination version of the software X has been confirmed. The version with the smallest difference from the version may be specified as the version after the change. Thereby, similarly to the above, it is possible to realize version change according to the user's operation policy (for example, use the latest version as much as possible or reduce the number of updates as much as possible).

更に、処理部12は、上記変更後のバージョンの候補のうち、適用後の情報処理装置20の再起動が不要である候補がある場合、当該再起動が不要である候補の中から、変更後のバージョンを特定してもよい。これにより、ユーザの業務への影響を抑えてバージョン変更を行うよう支援できる。   Further, when there is a candidate that does not need to restart the information processing apparatus 20 after application among the candidates for the version after the change, the processing unit 12 changes the candidate from among candidates that do not need to be restarted. You may specify the version of. Thereby, it is possible to support the version change while suppressing the influence on the user's business.

また、上記のように、処理部12は、情報処理装置20に内蔵のハードウェア23だけでなく、情報処理装置20の外部にある外部ハードウェア30のファームウェアZについても、同様にして、ソフトウェアXの復元先のバージョンとの整合性を確認する。これにより、ソフトウェアXの復元によって、ソフトウェアXや外部ハードウェア30の動作に不具合が発生する可能性を減らすことができる。   In addition, as described above, the processing unit 12 applies not only the hardware 23 built in the information processing apparatus 20 but also the firmware Z of the external hardware 30 outside the information processing apparatus 20 in the same way. Check the consistency with the restore destination version. As a result, it is possible to reduce the possibility of problems occurring in the operation of the software X and the external hardware 30 due to the restoration of the software X.

処理部12は、ソフトウェアXの復元先のバージョンおよびファームウェアY,Zの現在のバージョンの少なくとも1つに対して特定された変更後のバージョンを表示装置(図1,図2では図示を省略している)により表示させてもよい。   The processing unit 12 displays the changed version specified for at least one of the restoration destination version of the software X and the current version of the firmware Y, Z (not shown in FIGS. 1 and 2). May be displayed.

より具体的には、処理部12は、ソフトウェアXの復元先のバージョンおよびファームウェアY,Zの現在のバージョンに対する変更内容を含む警告を、情報処理装置10に接続された表示装置に出力してもよい。これにより、ユーザは、表示装置により表示された警告を確認し、変更内容に従ったバージョンを適用するか否かを判断できる。   More specifically, the processing unit 12 may output a warning including changes to the restoration destination version of the software X and the current versions of the firmware Y and Z to a display device connected to the information processing apparatus 10. Good. As a result, the user can confirm the warning displayed by the display device and determine whether to apply the version according to the changed content.

また、処理部12は、ソフトウェアXの復元先のバージョンおよびファームウェアY,Zの現在のバージョンの少なくとも1つに対して特定された変更後のバージョンの適用を情報処理装置20に指示してもよい。   In addition, the processing unit 12 may instruct the information processing apparatus 20 to apply the changed version specified for at least one of the restoration destination version of the software X and the current version of the firmware Y and Z. .

より具体的には、ユーザは、変更内容に従ったバージョンの適用を情報処理装置10に指示することもできる。例えば、処理部12は、当該指示に応じて、情報処理装置20の動作環境の復旧を行い、その際に、ソフトウェアXの復元先のバージョンを変更してもよい。あるいは、情報処理装置10は、ファームウェアY,Zの現在のバージョンを変更してもよい。こうして、情報処理装置10は、動作環境の復旧に当たり、ソフトウェアXおよびファームウェアY,Zの動作に不具合が発生しないように支援することもできる。   More specifically, the user can also instruct the information processing apparatus 10 to apply a version according to the changed content. For example, the processing unit 12 may restore the operating environment of the information processing apparatus 20 according to the instruction, and change the restoration destination version of the software X at that time. Alternatively, the information processing apparatus 10 may change the current versions of the firmware Y and Z. In this way, the information processing apparatus 10 can also assist the software X and the firmware Y and Z so as not to malfunction when the operating environment is restored.

[第2の実施の形態]
図3は、第2の実施の形態の情報処理システムを示す図である。第2の実施の形態の情報処理システムは、管理サーバ100、業務サーバ200、ストレージ300および公開サーバ400を含む。公開サーバ400は、ネットワーク40に接続されている。ネットワーク40は、LAN(Local Area Network)でもよいし、インターネットでもよい。管理サーバ100および業務サーバ200は、スイッチ50に接続されている。スイッチ50は、データパケットを中継する中継装置である。スイッチ50は、ネットワーク40に接続されている。
[Second Embodiment]
FIG. 3 illustrates an information processing system according to the second embodiment. The information processing system according to the second embodiment includes a management server 100, a business server 200, a storage 300, and a public server 400. The public server 400 is connected to the network 40. The network 40 may be a LAN (Local Area Network) or the Internet. The management server 100 and the business server 200 are connected to the switch 50. The switch 50 is a relay device that relays data packets. The switch 50 is connected to the network 40.

管理サーバ100は、業務サーバ200にインストールされたソフトウェアのバージョンと、業務サーバ200に関連するハードウェアを制御するファームウェアのバージョンとを管理するサーバコンピュータである。業務サーバ200に関連するハードウェアは、例えば、業務サーバ200の内蔵のハードウェアや、業務サーバ200の外部のハードウェア(業務サーバ200に外付けされたハードウェア)である。また、管理サーバ100は、業務サーバ200によるバックアップおよびリストアの処理を管理する。管理サーバ100は、第1の実施の形態の情報処理装置10の一例である。   The management server 100 is a server computer that manages the version of software installed on the business server 200 and the version of firmware that controls hardware related to the business server 200. The hardware related to the business server 200 is, for example, internal hardware of the business server 200 or hardware external to the business server 200 (hardware externally attached to the business server 200). The management server 100 also manages backup and restore processing by the business server 200. The management server 100 is an example of the information processing apparatus 10 according to the first embodiment.

業務サーバ200は、ユーザの業務を支援するサーバコンピュータである。業務サーバ200には、OS、ミドルウェアおよびアプリケーションなどの種々のソフトウェアがインストールされる。また、業務サーバ200は、ネットワークインタフェースカード(NIC:Network Interface Card)やストレージ300と接続するためのホストバスアダプタ(HBA:Host Bus Adapter)などの種々のハードウェアを含む。ハードウェアは、当該ハードウェアに組み込まれたファームウェアの機能により制御される。   The business server 200 is a server computer that supports a user's business. Various software such as OS, middleware, and applications are installed in the business server 200. The business server 200 includes various hardware such as a network interface card (NIC) and a host bus adapter (HBA) for connecting to the storage 300. The hardware is controlled by functions of firmware incorporated in the hardware.

業務サーバ200により実行されるソフトウェアの動作環境(ソフトウェアのプログラムや設定データなど)は、所定のタイミングで(例えば、定期的に)バックアップされる。業務サーバ200では、バックアップされたデータ(バックアップデータ)に基づいて、ソフトウェアの動作環境がリストア(復元)されることがある。業務サーバ200は、第1の実施の形態の情報処理装置20の一例である。   The operating environment of software executed by the business server 200 (software program, setting data, etc.) is backed up at a predetermined timing (for example, periodically). In the business server 200, the software operating environment may be restored based on the backed up data (backup data). The business server 200 is an example of the information processing apparatus 20 according to the first embodiment.

ストレージ300は、業務サーバ200の業務処理に用いられるデータを格納するストレージ装置である。ストレージ300は、ストレージ300に組み込まれたファームウェアの機能により制御される。ここで、ストレージ300は、業務サーバ200の外部のハードウェアであり、第1の実施の形態の外部ハードウェア30の一例である。また、スイッチ50も、第1の実施の形態の外部ハードウェア30の一例である(スイッチ50も、スイッチ50のファームウェアにより制御される)。   The storage 300 is a storage device that stores data used for business processing of the business server 200. The storage 300 is controlled by functions of firmware incorporated in the storage 300. Here, the storage 300 is hardware external to the business server 200, and is an example of the external hardware 30 of the first embodiment. The switch 50 is also an example of the external hardware 30 according to the first embodiment (the switch 50 is also controlled by the firmware of the switch 50).

公開サーバ400は、業務サーバ200で実行される各種のソフトウェアに対する機能追加プログラムや修正プログラム(パッチ)を業務サーバ200に配布するサーバコンピュータである。ソフトウェアに適用されている追加プログラムや修正プログラムに応じて、ソフトウェアのバージョンが定められる。また、公開サーバ400は、ストレージ300やスイッチ50を制御するファームウェアのプログラムをバージョン毎に配布する。公開サーバ400は、複数設けられてもよい。例えば、ソフトウェアやハードウェアのベンダ毎に、公開サーバ400が複数設けられることもある。   The public server 400 is a server computer that distributes function addition programs and correction programs (patches) for various software executed by the business server 200 to the business server 200. The version of the software is determined according to the additional program or correction program applied to the software. The public server 400 distributes a firmware program for controlling the storage 300 and the switch 50 for each version. A plurality of public servers 400 may be provided. For example, a plurality of public servers 400 may be provided for each software or hardware vendor.

更に、公開サーバ400は、ソフトウェアのバージョンと、ファームウェアのバージョンとの整合性を満たす組合せの情報を配布する。
図4は、管理サーバのハードウェア例を示す図である。管理サーバ100は、プロセッサ101、RAM102、HDD103、画像信号処理部104、入力信号処理部105、媒体リーダ106およびNIC107を有する。各ハードウェアは管理サーバ100のバスに接続されている。業務サーバ200および公開サーバ400も管理サーバ100と同様のハードウェアを用いて実現できる。
Further, the public server 400 distributes combination information that satisfies the consistency between the software version and the firmware version.
FIG. 4 is a diagram illustrating a hardware example of the management server. The management server 100 includes a processor 101, a RAM 102, an HDD 103, an image signal processing unit 104, an input signal processing unit 105, a medium reader 106, and a NIC 107. Each hardware is connected to the bus of the management server 100. The business server 200 and the public server 400 can also be realized using the same hardware as the management server 100.

プロセッサ101は、管理サーバ100の情報処理を制御するハードウェアである。プロセッサ101は、マルチプロセッサであってもよい。プロセッサ101は、例えばCPU、DSP、ASICまたはFPGAなどである。プロセッサ101は、CPU、DSP、ASIC、FPGAなどのうちの2以上の要素の組合せであってもよい。   The processor 101 is hardware that controls information processing of the management server 100. The processor 101 may be a multiprocessor. The processor 101 is, for example, a CPU, DSP, ASIC, or FPGA. The processor 101 may be a combination of two or more elements among CPU, DSP, ASIC, FPGA, and the like.

RAM102は、管理サーバ100の主記憶装置である。RAM102は、プロセッサ101に実行させるOSのプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、RAM102は、プロセッサ101による処理に用いる各種データを記憶する。   The RAM 102 is a main storage device of the management server 100. The RAM 102 temporarily stores at least part of an OS program and application programs to be executed by the processor 101. The RAM 102 stores various data used for processing by the processor 101.

HDD103は、管理サーバ100の補助記憶装置である。HDD103は、内蔵した磁気ディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。HDD103は、OSのプログラム、アプリケーションプログラム、および各種データを記憶する。管理サーバ100は、フラッシュメモリやSSD(Solid State Drive)などの他の種類の補助記憶装置を備えてもよく、複数の補助記憶装置を備えてもよい。   The HDD 103 is an auxiliary storage device of the management server 100. The HDD 103 magnetically writes and reads data to and from the built-in magnetic disk. The HDD 103 stores an OS program, application programs, and various data. The management server 100 may include other types of auxiliary storage devices such as flash memory and SSD (Solid State Drive), or may include a plurality of auxiliary storage devices.

画像信号処理部104は、プロセッサ101からの命令に従って、管理サーバ100に接続されたディスプレイ61に画像を出力する。ディスプレイ61として、CRT(Cathode Ray Tube)ディスプレイや液晶ディスプレイなどを用いることができる。   The image signal processing unit 104 outputs an image to the display 61 connected to the management server 100 in accordance with an instruction from the processor 101. As the display 61, a CRT (Cathode Ray Tube) display, a liquid crystal display, or the like can be used.

入力信号処理部105は、管理サーバ100に接続された入力デバイス62から入力信号を取得し、プロセッサ101に出力する。入力デバイス62として、例えば、マウスやタッチパネルなどのポインティングデバイス、キーボードなどを用いることができる。   The input signal processing unit 105 acquires an input signal from the input device 62 connected to the management server 100 and outputs it to the processor 101. As the input device 62, for example, a pointing device such as a mouse or a touch panel, a keyboard, or the like can be used.

媒体リーダ106は、記録媒体63に記録されたプログラムやデータを読み取る装置である。記録媒体63として、例えば、フレキシブルディスク(FD:Flexible Disk)やHDDなどの磁気ディスク、CD(Compact Disc)やDVD(Digital Versatile Disc)などの光ディスク、光磁気ディスク(MO:Magneto-Optical disk)を使用できる。また、記録媒体63として、例えば、フラッシュメモリカードなどの不揮発性の半導体メモリを使用することもできる。媒体リーダ106は、例えば、プロセッサ101からの命令に従って、記録媒体63から読み取ったプログラムやデータをRAM102またはHDD103に格納する。   The medium reader 106 is a device that reads programs and data recorded on the recording medium 63. As the recording medium 63, for example, a magnetic disk such as a flexible disk (FD) or an HDD, an optical disk such as a CD (Compact Disc) or a DVD (Digital Versatile Disc), or a magneto-optical disk (MO) is used. Can be used. As the recording medium 63, for example, a non-volatile semiconductor memory such as a flash memory card can be used. For example, the medium reader 106 stores the program and data read from the recording medium 63 in the RAM 102 or the HDD 103 in accordance with an instruction from the processor 101.

NIC107は、スイッチ50を介して業務サーバ200や公開サーバ400と通信を行う。NIC107は、有線通信インタフェースでもよいし、無線通信インタフェースでもよい。   The NIC 107 communicates with the business server 200 and the public server 400 via the switch 50. The NIC 107 may be a wired communication interface or a wireless communication interface.

図5は、管理対象のソフトウェアおよびファームウェアの例を示す図である。第2の実施の形態の情報処理システムでは、種々のソフトウェアやファームウェアが実行される。
例えば、業務サーバ200は、仮想マシンVM1を実現するオペレーティングシステム(OS)aやOSa上のソフトウェアAおよびソフトウェアBを有する。また、業務サーバ200は、仮想マシンVM2を実現するオペレーティングシステム(OS)bやOSb上のソフトウェアFおよびソフトウェアGを有する。また、業務サーバ200は、仮想マシンVM1,VM2を実現するソフトウェアであるハイパーバイザhvを有する。
FIG. 5 is a diagram illustrating an example of software and firmware to be managed. In the information processing system according to the second embodiment, various software and firmware are executed.
For example, the business server 200 includes an operating system (OS) a that implements the virtual machine VM1 and software A and software B on the OSa. Further, the business server 200 includes an operating system (OS) b that implements the virtual machine VM2 and software F and software G on the OSb. In addition, the business server 200 includes a hypervisor hv that is software that implements the virtual machines VM1 and VM2.

業務サーバ200は、業務サーバ200のメインボードを制御するファームウェアC(サーバファームウェアC)を有する。例えば、ファームウェアCのプログラムは、メインボード上の不揮発性メモリ(NVRAM:Non-Volatile RAM)に書き込まれている。業務サーバ200は、メインボード上に接続されたRAIDカードを制御するファームウェアDを有する。例えば、ファームウェアDのプログラムは、RAIDカード上のNVRAMに書き込まれている。業務サーバ200は、メインボード上に接続されたNICを制御するファームウェアEを有する。例えば、ファームウェアEのプログラムは、NIC上のNVRAMに書き込まれている。   The business server 200 has firmware C (server firmware C) that controls the main board of the business server 200. For example, the firmware C program is written in a nonvolatile memory (NVRAM: Non-Volatile RAM) on the main board. The business server 200 has firmware D for controlling the RAID card connected on the main board. For example, the program of firmware D is written in NVRAM on the RAID card. The business server 200 has firmware E for controlling the NIC connected on the main board. For example, the firmware E program is written in NVRAM on the NIC.

スイッチ50は、スイッチ50を制御するファームウェアMを有する。例えば、ファームウェアMのプログラムは、スイッチ50が備えるNVRAMに書き込まれている。
ストレージ300は、ストレージ300を制御するファームウェアNを有する。例えば、ファームウェアNは、ストレージ300が備えるNVRAMに書き込まれている。
The switch 50 has firmware M that controls the switch 50. For example, the firmware M program is written in the NVRAM included in the switch 50.
The storage 300 has firmware N that controls the storage 300. For example, the firmware N is written in NVRAM included in the storage 300.

公開サーバ400は、依存関係DB(DataBase)410を有する。依存関係DB410は、ソフトウェアと他のソフトウェアとのバージョン間、または、ソフトウェアとファームウェアとのバージョン間の整合性の確認結果のDBである。例えば、依存関係DB410には、あるソフトウェアのバージョンと、当該ソフトウェアのバージョンに対し、整合性が保証されている他のソフトウェアのバージョンやファームウェアのバージョンとの組合せの情報を含む。   The public server 400 has a dependency DB (DataBase) 410. The dependency relationship DB 410 is a DB for checking the consistency between the versions of software and other software, or between the versions of software and firmware. For example, the dependency DB 410 includes information on a combination of a certain software version and another software version or firmware version that is guaranteed to be consistent with the software version.

整合性は、例えば、ソフトウェアのベンダなどによる動作確認に応じて、当該ベンダにより保証される。あるソフトウェアと別のソフトウェアとの整合性が保証されたバージョンの組合せは、システムにおいて両方を組合せて使用した場合に、両ソフトウェアの動作に不具合がないことを確認済(整合性確認済)の組合せであるといえる。また、あるソフトウェアとファームウェアとの整合性が保証されたバージョンの組合せは、システムにおいて両方を組合せて使用した場合に、当該ソフトウェアの動作とファームウェアの動作とに不具合がないことを確認済(整合性確認済)の組合せであるといえる。   Consistency is guaranteed by the vendor in accordance with, for example, an operation check by a software vendor or the like. The combination of versions for which the consistency between one software and another software is guaranteed is a combination that has been confirmed that there is no problem in the operation of both software when both are combined in the system. You can say that. In addition, it is confirmed that there is no problem in the operation of the software and the firmware of the combination of versions for which the consistency between the software and the firmware is guaranteed when both are used in the system. It can be said that this is a combination of (confirmed).

依存関係DB410は、管理サーバ100に対して公開されている。管理サーバ100は、公開サーバ400から依存関係DB410の内容をダウンロードすることができる。
図6は、管理サーバの機能例を示す図である。管理サーバ100は、ソフトウェア管理部110、インフラ管理部120およびバックアップ管理部130を有する。ソフトウェア管理部110、インフラ管理部120およびバックアップ管理部130の機能は、プロセッサ101により実現される。例えば、プロセッサ101は、RAM102に記憶されたプログラムを実行することで、ソフトウェア管理部110、インフラ管理部120およびバックアップ管理部130の機能を発揮する。ただし、ソフトウェア管理部110、インフラ管理部120およびバックアップ管理部130の機能は、FPGAやASICなどのハードワイヤードロジックにより実現されてもよい。
The dependency DB 410 is open to the management server 100. The management server 100 can download the contents of the dependency DB 410 from the public server 400.
FIG. 6 is a diagram illustrating an example of functions of the management server. The management server 100 includes a software management unit 110, an infrastructure management unit 120, and a backup management unit 130. The functions of the software management unit 110, the infrastructure management unit 120, and the backup management unit 130 are realized by the processor 101. For example, the processor 101 performs the functions of the software management unit 110, the infrastructure management unit 120, and the backup management unit 130 by executing a program stored in the RAM 102. However, the functions of the software management unit 110, the infrastructure management unit 120, and the backup management unit 130 may be realized by a hard wired logic such as an FPGA or an ASIC.

ソフトウェア管理部110は、管理情報記憶部111、ソフトウェア情報取得部112、インフラ情報取得部113、依存関係管理部114、バックアップ時刻取得部115、依存関係判定部116および連携指示部117を有する。   The software management unit 110 includes a management information storage unit 111, a software information acquisition unit 112, an infrastructure information acquisition unit 113, a dependency relationship management unit 114, a backup time acquisition unit 115, a dependency relationship determination unit 116, and a cooperation instruction unit 117.

管理情報記憶部111は、RAM102やHDD103の記憶領域を用いて実現される。管理情報記憶部111は、管理情報を記憶する。管理情報は、例えば、業務サーバ200におけるソフトウェアやファームウェアの更新の履歴やバックアップの履歴、および、公開サーバ400からダウンロードされた依存関係DB410の情報を含む。   The management information storage unit 111 is realized using a storage area of the RAM 102 or the HDD 103. The management information storage unit 111 stores management information. The management information includes, for example, software and firmware update history and backup history in the business server 200 and information on the dependency DB 410 downloaded from the public server 400.

ソフトウェア情報取得部112は、業務サーバ200から利用されているソフトウェアおよび当該ソフトウェアのバージョンの情報を取得し、依存関係管理部114に提供する。   The software information acquisition unit 112 acquires information on the software used and the version of the software from the business server 200 and provides the information to the dependency relationship management unit 114.

インフラ情報取得部113は、業務サーバ200の各種ハードウェアや業務サーバ200の外部ハードウェアであるストレージ300やスイッチ50のファームウェアのバージョンの情報をインフラ管理部120から取得し、依存関係管理部114に提供する。   The infrastructure information acquisition unit 113 acquires firmware version information of the storage 300 and switch 50 that are various hardware of the business server 200 and external hardware of the business server 200 from the infrastructure management unit 120, and sends them to the dependency management unit 114. provide.

依存関係管理部114は、ソフトウェア情報取得部112およびインフラ情報取得部113から取得した情報に基づいて、ソフトウェアやファームウェアの更新の履歴を生成し、管理情報記憶部111に格納する。依存関係管理部114は、公開サーバ400から依存関係DB410の内容をダウンロードし、管理情報記憶部111に格納する。   The dependency relationship management unit 114 generates a history of software and firmware updates based on the information acquired from the software information acquisition unit 112 and the infrastructure information acquisition unit 113 and stores the history in the management information storage unit 111. The dependency relationship management unit 114 downloads the content of the dependency relationship DB 410 from the public server 400 and stores it in the management information storage unit 111.

バックアップ時刻取得部115は、バックアップ管理部130からバックアップが行われた時刻を取得し、バックアップデータの識別情報に対応付けて、管理情報記憶部111に格納する。管理情報記憶部111には、バックアップデータの識別情報に対応付けて、バックアップデータ取得時の業務サーバ200、ストレージ300およびスイッチ50のソフトウェアやファームウェアの構成情報が格納される。   The backup time acquisition unit 115 acquires the time when the backup was performed from the backup management unit 130 and stores it in the management information storage unit 111 in association with the identification information of the backup data. The management information storage unit 111 stores software and firmware configuration information of the business server 200, the storage 300, and the switch 50 at the time of backup data acquisition in association with backup data identification information.

依存関係判定部116は、バックアップ管理部130によるソフトウェアの動作環境の復旧が行われる場合に、ソフトウェアの復元先のバージョンと、ファームウェアの現在のバージョン(現バージョン)との組合せを確認する。依存関係判定部116は、管理情報記憶部111に記憶された依存関係DB410の内容を参照して、ソフトウェアの復元先のバージョンおよびファームウェアの現バージョンの少なくとも一方を変更要であるか否かを判定する。依存関係判定部116は、変更要である場合に、当該変更の内容を特定し、ディスプレイ61に表示させる。変更の内容は、現バージョンからのバージョンダウンのこともあるし、現バージョンからのバージョンアップのこともある。   When the backup management unit 130 restores the software operating environment, the dependency relationship determination unit 116 checks the combination of the software restoration destination version and the current firmware version (current version). The dependency relationship determination unit 116 refers to the content of the dependency relationship DB 410 stored in the management information storage unit 111 and determines whether at least one of the software restoration destination version and the current firmware version needs to be changed. To do. When it is necessary to make a change, the dependency relationship determination unit 116 identifies the content of the change and displays it on the display 61. The content of the change may be a version down from the current version, or a version upgrade from the current version.

連携指示部117は、ソフトウェアの復元先のバージョンおよびファームウェアの現バージョンの少なくとも一方について変更要であると依存関係判定部116により判定された場合、ユーザによる当該変更の適用の指示を受け付ける。連携指示部117は、ユーザによる指示に応じて、ソフトウェアの復元先のバージョンの変更をバックアップ管理部130に指示する。あるいは、連携指示部117は、ファームウェアの現バージョンの更新をインフラ管理部120に指示する。   When the dependency relationship determination unit 116 determines that at least one of the software restoration destination version and the current version of the firmware needs to be changed, the cooperation instruction unit 117 receives an instruction to apply the change from the user. The cooperation instruction unit 117 instructs the backup management unit 130 to change the version of the software restoration destination in accordance with an instruction from the user. Alternatively, the cooperation instruction unit 117 instructs the infrastructure management unit 120 to update the current version of the firmware.

インフラ管理部120は、業務サーバ200の内蔵のハードウェアや外付けのハードウェア(ストレージ300やスイッチ50)のファームウェアのバージョンを管理する。
インフラ管理部120は、インフラ情報記憶部121およびFW(FirmWare)更新部122を有する。
The infrastructure management unit 120 manages the firmware version of the internal hardware of the business server 200 and external hardware (storage 300 and switch 50).
The infrastructure management unit 120 includes an infrastructure information storage unit 121 and an FW (FirmWare) update unit 122.

インフラ情報記憶部121は、RAM102やHDD103の記憶領域を用いて実現される。インフラ情報記憶部121は、インフラ情報を記憶する。インフラ情報は、業務サーバ200の内蔵ハードウェアのファームウェアであるファームウェアC,D,Eの現バージョンの情報を含む。また、インフラ情報は、業務サーバ200の外部ハードウェアであるスイッチ50のファームウェアMのバージョンやストレージ300のファームウェアNの現バージョンの情報を含む。   The infrastructure information storage unit 121 is realized using a storage area of the RAM 102 or the HDD 103. The infrastructure information storage unit 121 stores infrastructure information. The infrastructure information includes information on current versions of firmware C, D, and E, which are firmware of the internal hardware of the business server 200. The infrastructure information includes information on the version of the firmware M of the switch 50 and the current version of the firmware N of the storage 300 that are external hardware of the business server 200.

FW更新部122は、業務サーバ200、ストレージ300およびスイッチ50の何れかのファームウェアの更新(アップグレードまたはダウングレード)を、該当の装置に指示する。FW更新部122は、ファームウェアの更新結果を、インフラ情報記憶部121に記録する。また、FW更新部122は、業務サーバ200、ストレージ300およびスイッチ50の何れかから、ファームウェアの更新を行った旨の通知を受け付けることもある(FW更新部122の指示に依らずにファームウェアの更新が行われた場合)。この場合も、FW更新部122は、当該ファームウェアの更新結果をインフラ情報記憶部121に記録する。   The FW update unit 122 instructs the corresponding apparatus to update (upgrade or downgrade) the firmware of any of the business server 200, the storage 300, and the switch 50. The FW update unit 122 records the firmware update result in the infrastructure information storage unit 121. Further, the FW update unit 122 may receive a notification that the firmware has been updated from any of the business server 200, the storage 300, and the switch 50 (firmware update without depending on the instruction of the FW update unit 122). Is done). Also in this case, the FW update unit 122 records the update result of the firmware in the infrastructure information storage unit 121.

バックアップ管理部130は、バックアップ記憶部131、バックアップ制御部132およびリストア制御部133を有する。
バックアップ記憶部131は、RAM102やHDD103の記憶領域を用いて実現される。バックアップ記憶部131は、バックアップデータを記憶する。バックアップデータは、業務サーバ200のソフトウェアの動作環境のバックアップである。業務サーバ200のバックアップは、所定のタイミング(例えば、所定の周期)で行われる。
The backup management unit 130 includes a backup storage unit 131, a backup control unit 132, and a restore control unit 133.
The backup storage unit 131 is realized using a storage area of the RAM 102 or the HDD 103. The backup storage unit 131 stores backup data. The backup data is a backup of the software operating environment of the business server 200. The business server 200 is backed up at a predetermined timing (for example, a predetermined cycle).

バックアップ制御部132は、業務サーバ200のバックアップデータを取得し、バックアップ記憶部131に格納する。バックアップ制御部132は、バックアップデータの取得時刻(バックアップ時刻)を、バックアップ時刻取得部115に提供する。   The backup control unit 132 acquires backup data of the business server 200 and stores it in the backup storage unit 131. The backup control unit 132 provides the backup time acquisition unit 115 with backup data acquisition time (backup time).

例えば、バックアップ制御部132は、業務サーバ200で実行されるOSやミドルウェアなどのソフトウェア、ソフトウェアの処理に用いられるデータや設定情報などをファイル単位でバックアップしてもよい。あるいは、バックアップ制御部132は、業務サーバ200全体の情報を1つのイメージファイルとしてバックアップしてもよい。あるいは、バックアップ制御部132は、スナップショットと呼ばれる技術を用いて、業務サーバ200のバックアップを行ってもよい。   For example, the backup control unit 132 may back up software such as an OS and middleware executed on the business server 200, data used for software processing, setting information, and the like in units of files. Alternatively, the backup control unit 132 may back up information on the entire business server 200 as one image file. Alternatively, the backup control unit 132 may back up the business server 200 using a technique called snapshot.

リストア制御部133は、バックアップ記憶部131に記憶されたバックアップデータを用いて、業務サーバ200の動作環境を特定の時点の状態に復元する。
図7は、変更履歴テーブルの例を示す図である。変更履歴テーブル141は、管理情報記憶部111に格納されている。変更履歴テーブル141は、時刻、コンポーネントおよびバージョンの項目を含む。
The restore control unit 133 restores the operating environment of the business server 200 to a specific state using the backup data stored in the backup storage unit 131.
FIG. 7 is a diagram illustrating an example of the change history table. The change history table 141 is stored in the management information storage unit 111. The change history table 141 includes items of time, component, and version.

時刻の項目には、時刻が登録される。コンポーネントの項目には、管理サーバ100による管理対象のコンポーネントの名称が登録される。コンポーネントとは、ソフトウェアおよびファームウェアの総称である。1つの時刻に対して、複数のコンポーネントが登録され得る。バージョンの項目には、該当の時刻における該当のコンポーネントのバージョンが登録される。   The time is registered in the time item. In the component item, the name of the component to be managed by the management server 100 is registered. A component is a general term for software and firmware. Multiple components can be registered for one time. In the version item, the version of the corresponding component at the corresponding time is registered.

例えば、変更履歴テーブル141には、時刻が“t1”、コンポーネントが“ソフトウェアA”、バージョンが“1.0”という情報が登録される。これは、時刻t1におけるソフトウェアAのバージョンが1.0であったことを示す。   For example, information indicating that the time is “t1”, the component is “software A”, and the version is “1.0” is registered in the change history table 141. This indicates that the version of software A at time t1 was 1.0.

変更履歴テーブル141には、時刻t1における管理対象の他のコンポーネントのバージョンも同様に登録される。また、変更履歴テーブル141には、他の時刻について、ソフトウェアAを含む複数のコンポーネントのバージョンも同様に登録される。変更履歴テーブル141における最新の時刻のコンポーネントのバージョンが、該当のコンポーネントの現バージョンを示す。   In the change history table 141, versions of other components to be managed at time t1 are also registered. In the change history table 141, the versions of a plurality of components including the software A are also registered at other times. The version of the component at the latest time in the change history table 141 indicates the current version of the corresponding component.

図8は、バックアップ管理テーブルの例を示す図である。バックアップ管理テーブル151は、管理情報記憶部111に格納されている。バックアップ管理テーブル151は、バックアップデータ、コンポーネントおよびバージョンの項目を含む。   FIG. 8 is a diagram illustrating an example of a backup management table. The backup management table 151 is stored in the management information storage unit 111. The backup management table 151 includes items of backup data, component, and version.

バックアップデータの項目には、バックアップデータの識別名が登録される。コンポーネントの項目には、管理対象のコンポーネントの名称が登録される。1つのバックアップデータの識別名に対して、複数のコンポーネントが登録され得る。ただし、バックアップデータにはソフトウェアの情報は含まれるが、ファームウェアの情報は含まれない点に注意されたい。バージョンの項目には、該当のバックアップデータが取得された時点における該当のコンポーネントのバージョンが登録される。   In the backup data item, the identification name of the backup data is registered. In the component item, the name of the component to be managed is registered. Multiple components can be registered for one backup data identifier. Note that the backup data includes software information, but not firmware information. In the version item, the version of the corresponding component at the time when the corresponding backup data is acquired is registered.

例えば、バックアップ管理テーブル151には、バックアップデータが“バックアップBa”、コンポーネントが“ソフトウェアA”、バージョンが“a1”という情報が登録される。これは、バックアップデータ“バックアップBa”が取得された時点におけるソフトウェアAのバージョンがa1であったことを示す。   For example, information that backup data is “backup Ba”, component is “software A”, and version is “a1” is registered in the backup management table 151. This indicates that the version of the software A at the time when the backup data “backup Ba” is acquired is a1.

バックアップ管理テーブル151には、バックアップデータ“バックアップBa”に対して、他のコンポーネントのバージョンも同様に登録される。また、バックアップ管理テーブル151には、他のバックアップデータについて、ソフトウェアAを含む複数のコンポーネントのバージョンも同様に登録される。   In the backup management table 151, versions of other components are similarly registered for the backup data “backup Ba”. In the backup management table 151, versions of a plurality of components including the software A are registered in the same manner for other backup data.

図9は、依存関係テーブルの第1の例を示す図である。依存関係テーブル161は、ソフトウェアAの各バージョンに対して整合性確認済の他のコンポーネントのバージョンを示す情報である。依存関係テーブル161は、管理情報記憶部111に格納されている。依存関係テーブル161には、ソフトウェアAバージョンおよびコンポーネントの項目を含む。   FIG. 9 is a diagram illustrating a first example of the dependency relationship table. The dependency relationship table 161 is information indicating the versions of other components whose consistency has been confirmed for each version of the software A. The dependency relationship table 161 is stored in the management information storage unit 111. The dependency relationship table 161 includes items of software A version and component.

ソフトウェアAバージョンの項目には、ソフトウェアAのバージョンが登録される。コンポーネントの項目には、コンポーネント毎に、ソフトウェアAの該当のバージョンに対して整合性が保証されたバージョン範囲が登録される。なお、依存関係テーブル161の例では、コンポーネントの項目にソフトウェアAを含んでいる。ソフトウェアAに対するバージョン範囲は、設定なし(ハイフン記号“−”で表している)である。また、ソフトウェアAの該当のバージョンに対して依存関係(整合性有無)を考慮しなくてよい場合も、当該コンポーネントのバージョン範囲は、設定なしとなる。   The version of software A is registered in the item of software A version. In the component item, a version range in which consistency is guaranteed for the corresponding version of the software A is registered for each component. In the example of the dependency relationship table 161, the component A includes software A. The version range for software A is not set (represented by a hyphen symbol “-”). In addition, even when it is not necessary to consider the dependency relationship (whether there is consistency) for the corresponding version of software A, the version range of the component is not set.

例えば、依存関係テーブル161には、ソフトウェアAバージョンが“1.0”、ソフトウェアAのバージョン範囲が設定なし、ソフトウェアBのバージョン範囲が“α(1.0,m)≦b≦α(1.0,n)”、・・・、サーバファームウェアCのバージョン範囲が“α(1.0,o)≦fc≦α(1.0,p)”、・・・、ストレージファームウェアNのバージョン範囲が“α(1.0,r)≦fn≦α(1.0,s)”という情報が登録される。 For example, in the dependency relationship table 161, the software A version is “1.0”, the version range of the software A is not set, and the version range of the software B is “α (1.0, m) ≦ b ≦ α (1.0, n). ,..., The server firmware C version range is “α (1.0, o) ≦ fc ≦ α (1.0, p) ”,..., And the storage firmware N version range is “α (1.0, r) ≦ Information “fn ≦ α (1.0, s) ” is registered.

これは、ソフトウェアAのバージョン1.0に対して、整合性が保証されたソフトウェアBのバージョン範囲がα(1.0,m)≦b≦α(1.0,n)であることを示す。また、ソフトウェアAのバージョン1.0に対して、整合性が保証されたファームウェアCのバージョン範囲がα(1.0,o)≦fc≦α(1.0,p)であることを示す。更に、ソフトウェアAのバージョン1.0に対して、整合性が保証されたファームウェアNのバージョン範囲がα(1.0,r)≦fn≦α(1.0,s)であることを示す。 This indicates that the version range of software B for which consistency is guaranteed is α (1.0, m) ≦ b ≦ α (1.0, n) with respect to version 1.0 of software A. It also indicates that the version range of firmware C for which consistency is guaranteed is α (1.0, o) ≦ fc ≦ α (1.0, p) with respect to version 1.0 of software A. Further, it indicates that the version range of firmware N for which consistency is guaranteed is α (1.0, r) ≦ fn ≦ α (1.0, s) with respect to version 1.0 of software A.

依存関係テーブル161には、ソフトウェアAの他のバージョンについても同様に、整合性が保証された他のコンポーネントのバージョン範囲が登録される。
図10は、依存関係テーブルの第2の例を示す図である。依存関係テーブル162は、ソフトウェアBの各バージョンに対して整合性確認済の他のコンポーネントのバージョンを示す情報である。依存関係テーブル162は、管理情報記憶部111に格納されている。依存関係テーブル162には、ソフトウェアBバージョンおよびコンポーネントの項目を含む。
Similarly, in the dependency relationship table 161, the version ranges of other components whose consistency is guaranteed are registered for other versions of the software A.
FIG. 10 is a diagram illustrating a second example of the dependency relationship table. The dependency relationship table 162 is information indicating the versions of other components whose consistency has been confirmed for each version of the software B. The dependency relationship table 162 is stored in the management information storage unit 111. The dependency relationship table 162 includes items of software B version and component.

ソフトウェアBバージョンの項目には、ソフトウェアBのバージョンが登録される。コンポーネントの項目には、コンポーネント毎に、ソフトウェアBの該当のバージョンに対して整合性が保証されたバージョン範囲が登録される。なお、依存関係テーブル162の例では、コンポーネントの項目にソフトウェアBを含んでいる。ソフトウェアBに対するバージョン範囲は、設定なし(ハイフン記号“−”で表している)である。また、ソフトウェアBの該当のバージョンに対して依存関係(整合性有無)を考慮しなくてよい場合も、当該コンポーネントのバージョン範囲は、設定なしとなる。   The version of software B is registered in the item of software B version. In the component item, a version range in which consistency is guaranteed for the corresponding version of the software B is registered for each component. In the example of the dependency relationship table 162, the component B includes software B. The version range for software B is not set (represented by a hyphen symbol “-”). Further, even when it is not necessary to consider the dependency relationship (whether or not there is consistency) with respect to the corresponding version of software B, the version range of the component is not set.

例えば、依存関係テーブル162には、ソフトウェアBバージョンが“1.0”、ソフトウェアAのバージョン範囲が“β(1.0,k)≦a≦β(1.0,l)”、ソフトウェアBのバージョン範囲が設定なし、・・・、サーバファームウェアCのバージョン範囲が“β(1.0,o)≦fc≦β(1.0,p)”、・・・、ストレージファームウェアNのバージョン範囲が“β(1.0,r)≦fn≦β(1.0,s)”という情報が登録される。 For example, in the dependency relationship table 162, the software B version is “1.0”, the version range of the software A is “β (1.0, k) ≦ a ≦ β (1.0, l) ”, and the version range of the software B is set. None, the version range of the server firmware C is “β (1.0, o) ≦ fc ≦ β (1.0, p) ”,..., The version range of the storage firmware N is “β (1.0, r) ≦ Information “fn ≦ β (1.0, s) ” is registered.

これは、ソフトウェアBのバージョン1.0に対して、整合性が保証されたソフトウェアAのバージョン範囲がβ(1.0,k)≦a≦β(1.0,l)であることを示す。また、ソフトウェアBのバージョン1.0に対して、整合性が保証されたファームウェアCのバージョン範囲がβ(1.0,o)≦fc≦β(1.0,p)であることを示す。更に、ソフトウェアBのバージョン1.0に対して、整合性が保証されたファームウェアNのバージョン範囲がβ(1.0,r)≦fn≦β(1.0,s)であることを示す。 This indicates that the version range of software A for which consistency is guaranteed is β (1.0, k) ≦ a ≦ β (1.0, l) with respect to version 1.0 of software B. Further, the version range of the firmware C for which the consistency is guaranteed with respect to the version 1.0 of the software B is β (1.0, o) ≦ fc ≦ β (1.0, p) . Further, it indicates that the version range of firmware N for which consistency is guaranteed is β (1.0, r) ≦ fn ≦ β (1.0, s) with respect to version 1.0 of software B.

依存関係テーブル162には、ソフトウェアBの他のバージョンについても同様に、整合性が保証された他のコンポーネントのバージョン範囲が登録される。
図9,図10では、ソフトウェアAに関する依存関係テーブル161およびソフトウェアBに関する依存関係テーブル162を例示したが、他のソフトウェアおよびファームウェアに関する他の依存関係テーブルも管理情報記憶部111に格納されている。
Similarly, the version ranges of other components whose consistency is guaranteed are registered in the dependency relationship table 162 for other versions of the software B as well.
9 and 10 exemplify the dependency relationship table 161 related to the software A and the dependency relationship table 162 related to the software B, but other dependency relationship tables related to other software and firmware are also stored in the management information storage unit 111.

図11は、依存関係管理情報の例を示す図である。依存関係管理情報171は、管理情報記憶部111に記憶された各ソフトウェアおよび各ファームウェアの依存関係テーブルに基づいて、依存関係判定部116により作成され、管理情報記憶部111に格納される。依存関係管理情報171は、時刻tにおける、あるコンポーネントのバージョンと他のコンポーネントのバージョンとの依存関係を表す。依存関係管理情報171は、コンポーネント名、時刻tのバージョン、バージョン範囲の項目を含む。   FIG. 11 is a diagram illustrating an example of dependency management information. The dependency relationship management information 171 is created by the dependency relationship determination unit 116 based on the dependency relationship table of each software and each firmware stored in the management information storage unit 111 and stored in the management information storage unit 111. The dependency relationship management information 171 represents the dependency relationship between the version of a certain component and the version of another component at time t. The dependency relationship management information 171 includes items of component name, version at time t, and version range.

コンポーネント名の項目には、コンポーネントの名称が登録される。時刻tのバージョンの項目には、時刻tにおけるバージョンが登録される。バージョン範囲の項目には、該当のコンポーネントに対して、整合性が保証された他のコンポーネントのバージョン範囲が登録される。コンポーネント名の項目と同じコンポーネントに対するバージョン範囲は、設定なし(ハイフン記号“−”で表している)である。また、コンポーネント名の項目のコンポーネントに対して依存関係を考慮しなくてよい場合も、当該コンポーネントのバージョン範囲は、設定なしとなる。   In the component name item, the name of the component is registered. In the version item at time t, the version at time t is registered. In the version range item, the version range of another component whose consistency is guaranteed for the corresponding component is registered. The version range for the same component as the component name item is not set (represented by a hyphen symbol “-”). In addition, even when it is not necessary to consider the dependency on the component of the component name item, the version range of the component is not set.

例えば、依存関係管理情報171には、コンポーネント名が“ソフトウェアA”、時刻tのバージョンが“1.0”、ソフトウェアAのバージョン範囲が設定なし“−”、ソフトウェアBのバージョン範囲が“α(1.0,m)≦b≦α(1.0,n)”、・・・、サーバファームウェアCのバージョン範囲が“α(1.0,o)≦fc≦α(1.0,p)”、・・・、ストレージファームウェアNのバージョン範囲が“α(1.0,r)≦fn≦α(1.0,s)”という情報が登録される。 For example, in the dependency relationship management information 171, the component name is “software A”, the version at time t is “1.0”, the version range of software A is not set “−”, and the version range of software B is “α ( 1.0, m) ≦ b ≦ α (1.0, n) ”,..., The version range of the server firmware C is“ α (1.0, o) ≦ fc ≦ α (1.0, p) ”,..., Storage firmware Information that the version range of N is “α (1.0, r) ≦ fn ≦ α (1.0, s) ” is registered.

これは、ソフトウェアAのバージョン1.0に対して、整合性が保証されたソフトウェアBのバージョン範囲がα(1.0,m)≦b≦α(1.0,n)であることを示す。また、ソフトウェアAのバージョン1.0に対して、整合性が保証されたファームウェアCのバージョン範囲がα(1.0,o)≦fc≦α(1.0,p)であることを示す。更に、ソフトウェアAのバージョン1.0に対して、整合性が保証されたファームウェアNのバージョン範囲がα(1.0,r)≦fn≦α(1.0,s)であることを示す。 This indicates that the version range of software B for which consistency is guaranteed is α (1.0, m) ≦ b ≦ α (1.0, n) with respect to version 1.0 of software A. It also indicates that the version range of firmware C for which consistency is guaranteed is α (1.0, o) ≦ fc ≦ α (1.0, p) with respect to version 1.0 of software A. Further, it indicates that the version range of firmware N for which consistency is guaranteed is α (1.0, r) ≦ fn ≦ α (1.0, s) with respect to version 1.0 of software A.

依存関係管理情報171には、他のコンポーネントの時刻tのバージョンについても同様に、整合性が保証された他のコンポーネントのバージョン範囲が登録される。
依存関係判定部116は、依存関係管理情報171により、あるコンポーネントについて、時刻tにおける全ての他のコンポーネントのバージョンと整合性が保証されたバージョン範囲(集合)を得ることができる。
Similarly, for the version at time t of other components, the version range of other components for which consistency is guaranteed is registered in the dependency relationship management information 171.
Based on the dependency management information 171, the dependency determination unit 116 can obtain a version range (set) for which a certain component is guaranteed to be consistent with the versions of all other components at time t.

例えば、ソフトウェアAの列に着目すると、“β(1.0,k)≦a≦β(1.0,l)”、・・・、“γ(1.a,k)≦a≦γ(1.a,l)”、・・・、“ν(2.0,k)≦a≦ν(2.0,l)”の条件を全て満たすaの集合Sa(t)を得ることができる。 For example, when focusing on the column of software A, “β (1.0, k) ≦ a ≦ β (1.0, l) ”,..., “Γ (1.a, k) ≦ a ≦ γ (1.a, l) A set Sa (t) satisfying all the conditions of “,...,“ ν (2.0, k) ≦ a ≦ ν (2.0, l) ”can be obtained.

この場合、Sa(t)={[β(1.0,k)≦a≦β(1.0,l)]∧,・・・,∧[γ(1.a,k)≦a≦γ(1.a,l)]∧、・・・、∧[ν(2.0,k)≦a≦ν(2.0,l)]}である。ここで、記号∧は、アンド演算(論理積)を表す。 In this case, Sa (t) = {[β (1.0, k) ≦ a ≦ β (1.0, l) ] ∧,..., ∧ [γ (1.a, k) ≦ a ≦ γ (1.a , l) ] ∧,..., ∧ [ν (2.0, k) ≦ a ≦ ν (2.0, l) ]}. Here, the symbol ∧ represents an AND operation (logical product).

同様に、依存関係判定部116は、例えば、ソフトウェアBのバージョンbに対して集合Sb(t)を得る。また、依存関係判定部116は、ファームウェアCのバージョンfcに対して集合Sfc(t)を得る。依存関係判定部116は、ファームウェアNのバージョンfnに対して集合Sfn(t)を得る。   Similarly, the dependency relationship determination unit 116 obtains a set Sb (t) for the version b of the software B, for example. Further, the dependency relationship determination unit 116 obtains a set Sfc (t) for the version fc of the firmware C. The dependency determination unit 116 obtains a set Sfn (t) for the version fn of the firmware N.

図12は、依存関係管理情報の第1の具体例を示す図である。依存関係管理情報172は、依存関係管理情報171の時刻t=taの場合を示している。時刻taにおける各コンポーネントのバージョンは次の通りである。ソフトウェアAのバージョンは“1.5”である。ソフトウェアBのバージョンは“1.1”である。ファームウェアCのバージョンは“7.0”である。ファームウェアNのバージョンは“2.0”である。ここで、説明を簡単にするために、ソフトウェアA,BおよびファームウェアC,N以外のコンポーネントについては、依存関係を考慮しなくてよいものとする(図13,図14も同様)。   FIG. 12 is a diagram illustrating a first specific example of the dependency relationship management information. The dependency relationship management information 172 indicates a case where the dependency relationship management information 171 has a time t = ta. The version of each component at time ta is as follows. The version of software A is “1.5”. The version of software B is “1.1”. The version of the firmware C is “7.0”. The version of the firmware N is “2.0”. Here, in order to simplify the description, it is assumed that dependencies other than the software A and B and the firmware C and N need not be considered (the same applies to FIGS. 13 and 14).

依存関係管理情報171によれば、ソフトウェアAのバージョンaが、他のコンポーネントとの整合性確保の上で満たすべき条件は、集合Sa(ta)で表される。Sa(ta)={[1.0≦a≦2.0]∧[1.5≦a≦3.0]}={1.5≦a≦2.0}である。   According to the dependency relationship management information 171, the condition that the version a of the software A should satisfy in order to ensure consistency with other components is represented by a set Sa (ta). Sa (ta) = {[1.0 ≦ a ≦ 2.0] ∧ [1.5 ≦ a ≦ 3.0]} = {1.5 ≦ a ≦ 2.0}.

ソフトウェアBのバージョンbが他のコンポーネントとの整合性確保の上で満たすべき条件は、集合Sb(ta)で表される。Sb(ta)={[1.0≦b≦2.5]∧[1.0≦b≦2.0]∧[1.0≦b≦1.5]}={1.0≦b≦1.5}である。   A condition that the version b of the software B should satisfy in order to ensure consistency with other components is represented by a set Sb (ta). Sb (ta) = {[1.0 ≦ b ≦ 2.5] ∧ [1.0 ≦ b ≦ 2.0] ∧ [1.0 ≦ b ≦ 1.5]} = {1.0 ≦ b ≦ 1.5}.

ファームウェアCのバージョンfcが他のコンポーネントとの整合性確保の上で満たすべき条件は、集合Sfc(ta)で表される。Sfc(ta)={[2.0≦fc≦7.2]∧[2.0≦fc≦7.2]}={2.0≦fc≦7.2}である。   A condition that the version fc of the firmware C should satisfy in order to ensure consistency with other components is represented by a set Sfc (ta). Sfc (ta) = {[2.0 ≦ fc ≦ 7.2] ∧ [2.0 ≦ fc ≦ 7.2]} = {2.0 ≦ fc ≦ 7.2}.

ファームウェアNのバージョンfnが他のコンポーネントとの整合性確保の上で満たすべき条件は、集合Sfc(ta)で表される。Sfc(ta)={1.0≦fn≦2.5}である。   A condition that the version fn of the firmware N should satisfy in order to ensure consistency with other components is represented by a set Sfc (ta). Sfc (ta) = {1.0 ≦ fn ≦ 2.5}.

図13は、依存関係管理情報の第2の具体例を示す図である。依存関係管理情報173は、依存関係管理情報171の時刻t=tbの場合を示している。ここで、時刻tbは、時刻taよりも後の時刻である。時刻tbにおける各コンポーネントのバージョンは次の通りである。ソフトウェアAのバージョンは“1.5”である。ソフトウェアBのバージョンは“1.2”である。ファームウェアCのバージョンは“7.2”である。ファームウェアNのバージョンは“4.0”である。   FIG. 13 is a diagram illustrating a second specific example of the dependency management information. The dependency relationship management information 173 indicates a case where the dependency relationship management information 171 has a time t = tb. Here, the time tb is a time later than the time ta. The version of each component at time tb is as follows. The version of software A is “1.5”. The version of software B is “1.2”. The version of the firmware C is “7.2”. The version of the firmware N is “4.0”.

図14は、依存関係管理情報の第3の具体例を示す図である。依存関係管理情報174は、依存関係管理情報173に対して、ソフトウェアA,Bを時刻taの状態にリストアする場合の例を示している。依存関係管理情報174では、ファームウェアC,Nのバージョンは、依存関係管理情報173のバージョン(時刻tbのバージョン)となる。一方、依存関係管理情報174では、ソフトウェアA,Bのバージョンは、依存関係管理情報172のバージョン(時刻ta)のバージョンとなる。   FIG. 14 is a diagram illustrating a third specific example of the dependency relationship management information. The dependency relationship management information 174 shows an example in which the software A and B are restored to the state at time ta with respect to the dependency relationship management information 173. In the dependency relationship management information 174, the versions of the firmware C and N are the version of the dependency relationship management information 173 (version at time tb). On the other hand, in the dependency relationship management information 174, the versions of the software A and B are the version of the dependency relationship management information 172 (time ta).

依存関係判定部116は、依存関係管理情報174に基づいて、各コンポーネントのバージョンが時刻taへのリストア後も他のコンポーネントとの整合性が保証されたバージョンであるか否かを確認することができる。ここで、該当のコンポーネントがリストア後の状態で満たすべき条件を表すバージョン範囲を、例えば、集合Sa(ta’)と表すこととする。依存関係管理情報174によれば、Sa(ta’)=[1.5≦a≦2.0]である。Sb(ta’)=[1.2≦b≦1.5]である。Sfc(ta’)=[2.0≦fc≦7.2]である。Sfn(ta’)=[1.0≦fn≦2.5]である。   Based on the dependency management information 174, the dependency relationship determination unit 116 may check whether the version of each component is a version that is guaranteed to be consistent with other components even after restoration at time ta. it can. Here, the version range representing the condition that the corresponding component should satisfy in the state after restoration is represented as, for example, the set Sa (ta ′). According to the dependency management information 174, Sa (ta ′) = [1.5 ≦ a ≦ 2.0]. Sb (ta ′) = [1.2 ≦ b ≦ 1.5]. Sfc (ta ′) = [2.0 ≦ fc ≦ 7.2]. Sfn (ta ′) = [1.0 ≦ fn ≦ 2.5].

例えば、依存関係判定部116は、リストア後のソフトウェアAのバージョン“1.5”は、集合Sa(ta’)=[1.5≦a≦2.0]に属するので、全ての他のコンポーネントとの整合性を満たすと判断する。   For example, since the version “1.5” of the restored software A belongs to the set Sa (ta ′) = [1.5 ≦ a ≦ 2.0], the dependency determination unit 116 determines that all other components It is judged that the consistency with is satisfied.

依存関係判定部116は、リストア後のソフトウェアBのバージョン“1.1”は、集合Sb(ta’)=[1.2≦b≦1.5]に属さないので、一部のコンポーネントに対して不整合が発生すると判断する。   Since the version “1.1” of the software B after restoration does not belong to the set Sb (ta ′) = [1.2 ≦ b ≦ 1.5], the dependency determining unit 116 determines that for some components It is determined that inconsistency occurs.

依存関係判定部116は、ファームウェアCのバージョン“7.2”は、集合Sfc(ta’)=[2.0≦fc≦7.2]に属するので、全ての他のコンポーネントとの整合性を満たすと判断する。   Since the version “7.2” of the firmware C belongs to the set Sfc (ta ′) = [2.0 ≦ fc ≦ 7.2], the dependency determination unit 116 checks the consistency with all other components. Judging to meet.

依存関係判定部116は、ファームウェアNのバージョン“4.0”は、集合Sfn(ta’)=[1.0≦fn≦2.5]に属さないので、一部のコンポーネントに対して不整合が発生すると判断する。   The dependency determination unit 116 determines that the version “4.0” of the firmware N does not belong to the set Sfn (ta ′) = [1.0 ≦ fn ≦ 2.5]. Is determined to occur.

更に、依存関係管理情報174によれば、ファームウェアNのバージョン“4.0”に対して、ソフトウェアBのバージョンbは“1.2≦b≦1.5”の範囲が整合性の保証されたバージョンであるが、b=1.1は、当該範囲に属さない。また、ソフトウェアBに対して、ファームウェアNのバージョンfnは“1.0≦fn≦2.5”の範囲が整合性の保証されたバージョンであるが、fn=4.0は、当該範囲に属さない。したがって、依存関係判定部116は、ソフトウェアBのリストア先のバージョン“1.1”と、ファームウェアNの現バージョン“4.0”との間に不整合が発生すると判断する。   Further, according to the dependency management information 174, the consistency of the version “b” of the software B with the version “1.2 ≦ b ≦ 1.5” of the version “4.0” of the firmware N is guaranteed. Although it is a version, b = 1.1 does not belong to the range. For software B, version fn of firmware N is a version whose consistency is guaranteed in the range of “1.0 ≦ fn ≦ 2.5”, but fn = 4.0 belongs to the range. Absent. Therefore, the dependency relationship determination unit 116 determines that inconsistency occurs between the restore destination version “1.1” of the software B and the current version “4.0” of the firmware N.

このように、依存関係判定部116は、依存関係管理情報174に基づいて、複数のファームウェアそれぞれの現バージョンの全てに対して整合性を確認済であるソフトウェアBのバージョン範囲を特定する。そして、依存関係判定部116は、ソフトウェアBの復元後のバージョンが当該バージョン範囲に属するか否かに応じて、ソフトウェアBの復元先のバージョンまたは他のコンポーネントの現バージョンの変更の要否を判定する。   As described above, the dependency relationship determination unit 116 specifies the version range of the software B whose consistency has been confirmed for all of the current versions of the plurality of firmwares based on the dependency relationship management information 174. Then, the dependency determination unit 116 determines whether or not it is necessary to change the version to which the software B is restored or the current version of another component, depending on whether the version after the restoration of the software B belongs to the version range. To do.

更に、依存関係判定部116は、リストア後も現バージョンと変わらないソフトウェアAがある場合、依存関係管理情報174に基づいて、ファームウェアC,Nそれぞれの現在のバージョン、および、ソフトウェアAの現バージョンの全てに対して整合性を確認済であるソフトウェアBのバージョン範囲を特定する。そして、依存関係判定部116は、ソフトウェアBの復元後のバージョンが当該バージョン範囲に属するか否かに応じて、ソフトウェアBの復元先のバージョンまたは他のコンポーネントの現バージョンの変更の要否を判定する。   Furthermore, if there is software A that remains the same as the current version after restoration, the dependency determination unit 116 determines the current version of each of the firmware C and N and the current version of the software A based on the dependency management information 174. The version range of the software B whose consistency has been confirmed for all is specified. Then, the dependency determination unit 116 determines whether or not it is necessary to change the version to which the software B is restored or the current version of another component, depending on whether the version after the restoration of the software B belongs to the version range. To do.

図15は、ポリシー情報の例を示す図である。ポリシー情報181は、管理情報記憶部111に格納されている。ポリシー情報181は、リストア時にコンポーネント間のバージョンに不整合が発生する場合に、整合性を保証するためのコンポーネントのバージョン変更方法に対するポリシーを規定する情報である。ポリシー情報181は、ポリシーID(IDentifier)およびポリシー内容の項目を含む。   FIG. 15 is a diagram illustrating an example of policy information. The policy information 181 is stored in the management information storage unit 111. The policy information 181 is information that prescribes a policy for a method for changing the version of a component in order to ensure consistency when a mismatch occurs between versions at the time of restoration. The policy information 181 includes items of a policy ID (IDentifier) and policy contents.

ポリシーIDの項目には、ポリシーを識別する識別情報が登録される。ポリシー内容の項目には、ポリシーの内容が登録される。
例えば、ポリシー情報181には、ポリシーIDが“1”、ポリシー内容が“依存関係を満たすバージョンのうち、最新バージョンを使用”という情報が登録されている。
In the policy ID item, identification information for identifying a policy is registered. In the policy content item, the content of the policy is registered.
For example, in the policy information 181, information that the policy ID is “1” and the policy content is “use the latest version among the versions satisfying the dependency” is registered.

また、ポリシー情報181には、ポリシーIDが“2”、ポリシー内容が“依存関係を満たすバージョンのうち、現バージョンとの差が最小のバージョンを使用”という情報が登録されている。   In the policy information 181, information that the policy ID is “2” and the policy content is “use a version satisfying the dependency relationship with the smallest difference from the current version” is registered.

また、ポリシー情報181には、ポリシーIDが“3”、ポリシー内容が“依存関係を満たすバージョンのうち、適用後の再起動が不要なバージョンを使用”という情報が登録されている。   In the policy information 181, information that the policy ID is “3” and the policy content is “use a version that does not need to be restarted after application among versions satisfying the dependency” is registered.

また、ポリシー情報181には、ポリシーIDが“4”、ポリシー内容が“特定のコンポーネントのバージョンを固定し、ポリシーID“1”または“2”のポリシーに従って他のコンポーネントのバージョンを決定”という情報が登録される。ポリシーID“4”のポリシーでは、依存関係判定部116は、管理対象のコンポーネントのうち、1つのコンポーネントのバージョンを固定して依存関係を判定する。そして、依存関係判定部116は、固定されたコンポーネントのバージョンに対して、整合性が保証された他のコンポーネントのバージョンを導き出す。この際に、依存関係判定部116は、「最新のバージョン」(ポリシーID“1”)または「最も更新範囲が小さいバージョン」(ポリシーID“2”)の基準により該当のバージョンを特定する。   The policy information 181 includes information that the policy ID is “4” and the policy content is “fix the version of a specific component and determine the version of another component according to the policy with the policy ID“ 1 ”or“ 2 ””. Is registered. In the policy with the policy ID “4”, the dependency relationship determination unit 116 determines the dependency relationship by fixing the version of one component among the components to be managed. Then, the dependency relationship determination unit 116 derives a version of another component whose consistency is guaranteed with respect to the version of the fixed component. At this time, the dependency relationship determination unit 116 identifies the corresponding version based on the criterion of “latest version” (policy ID “1”) or “version with the smallest update range” (policy ID “2”).

依存関係判定部116は、ユーザにより指定されたポリシーに従って、不整合が発生する場合のコンポーネントのバージョン変更内容を特定する。バージョン変更内容の特定方法の具体例については後述される。   The dependency relationship determination unit 116 specifies the version change content of the component when inconsistency occurs according to the policy specified by the user. A specific example of the method of specifying the version change content will be described later.

図16は、再起動テーブルの例を示す図である。再起動テーブル191は、管理情報記憶部111に格納されている。再起動テーブル191は、コンポーネントのバージョンについて、当該バージョンを適用した場合の再起動の要否を示す情報である。再起動テーブル191は、コンポーネント、バージョンおよび再起動の項目を含む。   FIG. 16 is a diagram illustrating an example of a restart table. The restart table 191 is stored in the management information storage unit 111. The restart table 191 is information indicating whether or not a component version needs to be restarted when the version is applied. The restart table 191 includes items of component, version, and restart.

コンポーネントの項目には、コンポーネントの名称が登録される。バージョンの項目には、バージョンが登録される。再起動の項目には、該当のコンポーネントの該当のバージョンを適用した場合における適用先装置の再起動の要否が登録される。   In the component item, the name of the component is registered. The version is registered in the version item. In the restart item, the necessity of restart of the application target apparatus when the corresponding version of the corresponding component is applied is registered.

例えば、再起動テーブル191には、コンポーネントが“サーバファームウェアC”、バージョンが“1.0”、再起動が“要”という情報が登録されている。これは、ファームウェアCのバージョン“1.0”を適用した後に、業務サーバ200の再起動が必要であることを示す。   For example, information indicating that the component is “server firmware C”, the version is “1.0”, and the restart is “required” is registered in the restart table 191. This indicates that it is necessary to restart the business server 200 after applying the firmware C version “1.0”.

また、例えば、再起動テーブル191には、コンポーネントが“サーバファームウェアC”、バージョンが“1.1”、再起動が“不要”という情報が登録されている。これは、ファームウェアCのバージョン“1.1”を適用した後に、業務サーバ200の再起動が不要であることを示す。   For example, in the restart table 191, information that the component is “server firmware C”, the version is “1.1”, and the restart is “unnecessary” is registered. This indicates that it is not necessary to restart the business server 200 after applying the firmware C version “1.1”.

再起動テーブル191には、他のコンポーネントについても、バージョン毎に、適用時の再起動要否が登録される。
次に、管理サーバによる処理手順を説明する。
In the restart table 191, the necessity of restart at the time of application is registered for each version for other components as well.
Next, a processing procedure by the management server will be described.

図17は、管理サーバの処理例を示すフローチャートである。以下、図17に示す処理をステップ番号に沿って説明する。下記の手順は、管理サーバ100が、所定のバックアップデータを指定したリストア指示を受けると開始される。リストア指示は、例えば、ユーザにより管理サーバ100に入力される。   FIG. 17 is a flowchart illustrating a processing example of the management server. In the following, the process illustrated in FIG. 17 will be described in order of step number. The following procedure is started when the management server 100 receives a restore instruction designating predetermined backup data. The restore instruction is input to the management server 100 by the user, for example.

(S1)依存関係管理部114は、管理対象装置の構成情報を取得し、当該構成情報を更新する。具体的には、依存関係管理部114は、ソフトウェア情報取得部112およびインフラ情報取得部113を介して、業務サーバ200のソフトウェア構成やファームウェア構成の情報を取得する。また、依存関係管理部114は、インフラ情報取得部113を介して、業務サーバ200の外部ハードウェアであるストレージ300やスイッチ50のファームウェア構成の情報を取得する。依存関係管理部114は、取得した構成情報について、前回と変更がある場合、管理情報記憶部111に記憶された変更履歴テーブル141に最新の状態を登録する。   (S1) The dependency relationship management unit 114 acquires the configuration information of the management target device and updates the configuration information. Specifically, the dependency relationship management unit 114 acquires the software configuration and firmware configuration information of the business server 200 via the software information acquisition unit 112 and the infrastructure information acquisition unit 113. Further, the dependency relationship management unit 114 acquires information on the firmware configuration of the storage 300 and the switch 50 that are external hardware of the business server 200 via the infrastructure information acquisition unit 113. When there is a change from the previous time with respect to the acquired configuration information, the dependency relationship management unit 114 registers the latest state in the change history table 141 stored in the management information storage unit 111.

(S2)依存関係管理部114は、依存関係DB410の更新があるか否かを、公開サーバ400に問い合わせる。依存関係DB410の更新がある場合、依存関係管理部114は、ステップS3に処理を進める。依存関係DB410の更新がない場合、依存関係管理部114は、ステップS4に処理を進める。   (S2) The dependency relationship management unit 114 inquires of the public server 400 whether or not the dependency relationship DB 410 has been updated. If there is an update of the dependency DB 410, the dependency relationship management unit 114 proceeds to step S3. If the dependency DB 410 has not been updated, the dependency relationship management unit 114 proceeds with the process to step S4.

(S3)依存関係管理部114は、公開サーバ400から依存関係DB410の更新内容を取得し、取得した更新内容に基づいて、管理情報記憶部111に記憶された各コンポーネントの依存関係テーブルを更新する。   (S3) The dependency relationship management unit 114 acquires the update content of the dependency relationship DB 410 from the public server 400, and updates the dependency table of each component stored in the management information storage unit 111 based on the acquired update content. .

(S4)リストア制御部133は、ユーザによるリストア指示により指定されたリストア対象のバックアップデータを選択する。依存関係判定部116は、当該バックアップデータの識別情報をリストア制御部133から取得する。依存関係判定部116は、バックアップデータの識別情報を基に、管理情報記憶部111に記憶されたバックアップ管理テーブル151を検索し、今回のリストアによる復元対象のソフトウェアの復元先のバージョンを特定する。また、依存関係判定部116は、バックアップ時刻取得部115により記録された該当のバックアップデータに対応する時刻(復元先の時刻)を、管理情報記憶部111から読み出す。   (S4) The restore control unit 133 selects the backup data to be restored specified by the restore instruction from the user. The dependency relationship determination unit 116 acquires the identification information of the backup data from the restore control unit 133. The dependency relationship determination unit 116 searches the backup management table 151 stored in the management information storage unit 111 based on the identification information of the backup data, and identifies the restoration destination version of the software to be restored by the current restoration. Further, the dependency relationship determination unit 116 reads the time (restore destination time) corresponding to the corresponding backup data recorded by the backup time acquisition unit 115 from the management information storage unit 111.

(S5)依存関係判定部116は、ポリシーを選択する。例えば、依存関係判定部116は、ユーザにより指定されたポリシーIDに応じたポリシーを選択する。
(S6)依存関係判定部116は、ポリシーに応じたバージョン選択処理を実行する。バージョン選択処理の詳細は、後述される。
(S5) The dependency relationship determination unit 116 selects a policy. For example, the dependency relationship determination unit 116 selects a policy corresponding to the policy ID specified by the user.
(S6) The dependency relationship determination unit 116 executes version selection processing according to the policy. Details of the version selection process will be described later.

(S7)依存関係判定部116は、ポリシーに従って適用されるコンポーネントのバージョンを表示する。
(S8)依存関係判定部116は、ステップS7の表示内容(表示されたコンポーネントのバージョン)を適用するか否かを判定する。適用する場合、依存関係判定部116は、ステップS9に処理を進める。適用しない場合、依存関係判定部116は、ステップS10に処理を進める。例えば、依存関係判定部116は、ステップS7における表示内容を適用する旨の指示を受け付けた場合に、当該表示内容を適用すると判定し、当該表示内容を適用しない旨の指示を受け付けた場合に、当該表示内容を適用しないと判定する。
(S7) The dependency relationship determination unit 116 displays the version of the component applied according to the policy.
(S8) The dependency relationship determination unit 116 determines whether or not to apply the display content (version of the displayed component) in step S7. When applying, the dependency relationship determination part 116 advances a process to step S9. If not applied, the dependency determination unit 116 proceeds to step S10. For example, when the dependency determination unit 116 receives an instruction to apply the display content in step S7, the dependency determination unit 116 determines to apply the display content and receives an instruction to not apply the display content. It is determined that the display content is not applied.

(S9)連携指示部117は、バージョンの変更対象となる特定のファームウェアに対して、ステップS7で表示したバージョン(当該ファームウェアの現バージョンとは異なるバージョン)の適用をFW更新部122に指示する。FW更新部122は、連携指示部117の指示に応じて、ファームウェアのバージョン変更を、該当のハードウェアを備える装置(業務サーバ200、ストレージ300およびスイッチ50など)に指示する。これにより、ファームウェアのバージョン変更が行われる。   (S9) The cooperation instruction unit 117 instructs the FW update unit 122 to apply the version displayed in step S7 (a version different from the current version of the firmware) to the specific firmware whose version is to be changed. In response to an instruction from the cooperation instruction unit 117, the FW update unit 122 instructs a device (such as the business server 200, the storage 300, and the switch 50) including the corresponding hardware to change the firmware version. Thereby, the firmware version is changed.

(S10)連携指示部117は、業務サーバ200におけるバックアップデータのリストアの実行をリストア制御部133に指示する。リストア制御部133は、連携指示部117の指示に応じて、該当のバックアップデータによる業務サーバ200のリストアを実行する。これにより、業務サーバ200のソフトウェアの動作環境がバックアップデータの取得時点の状態に復元される。   (S10) The cooperation instruction unit 117 instructs the restore control unit 133 to execute backup data restoration in the business server 200. The restore control unit 133 executes the restore of the business server 200 with the corresponding backup data in accordance with the instruction from the cooperation instruction unit 117. As a result, the software operating environment of the business server 200 is restored to the state at the time of backup data acquisition.

なお、ステップS6では、あるソフトウェア(復元対象のソフトウェアまたは他のソフトウェア)に対するバージョン変更が選択されることもある。この場合、ステップS10において、連携指示部117は、該当のソフトウェアに対するバージョン変更をリストア制御部133に指示する。リストア制御部133は、例えば、業務サーバ200のリストア完了後に、指示されたソフトウェアのバージョン変更を当該業務サーバ200に指示する。業務サーバ200は、管理サーバ100または公開サーバ400から該当のソフトウェアについて指定されたバージョンのプログラムを取得し、当該ソフトウェアのバージョンを変更する。   In step S6, version change for certain software (restoration target software or other software) may be selected. In this case, in step S10, the cooperation instruction unit 117 instructs the restore control unit 133 to change the version of the corresponding software. For example, after the restoration of the business server 200 is completed, the restore control unit 133 instructs the business server 200 to change the version of the designated software. The business server 200 acquires a version of the program designated for the corresponding software from the management server 100 or the public server 400, and changes the version of the software.

次に、ステップS6のポリシーに応じたバージョン選択処理を例示する。選択対象となるポリシーの候補は、図15で例示したポリシーID“1”、“2”、“3”、“4”である。まず、ポリシーID“1”が選択された場合を説明する。ポリシーID“1”は、“依存関係を満たすバージョンのうち、最新のバージョンを使用”するポリシーである。   Next, the version selection process according to the policy in step S6 will be exemplified. Policy candidates to be selected are the policy IDs “1”, “2”, “3”, and “4” illustrated in FIG. First, a case where the policy ID “1” is selected will be described. The policy ID “1” is a policy that “uses the latest version among the versions satisfying the dependency”.

図18は、バージョン選択処理例(その1)を示すフローチャートである。以下、図18に示す処理をステップ番号に沿って説明する。以下の手順は、図17のステップS6(ポリシーID“1”が選択された場合)に相当する。   FIG. 18 is a flowchart illustrating an example (part 1) of the version selection process. In the following, the process illustrated in FIG. 18 will be described in order of step number. The following procedure corresponds to step S6 in FIG. 17 (when policy ID “1” is selected).

(S21)依存関係判定部116は、各コンポーネントの依存関係テーブルに基づいて、リストア先の時刻に対応する依存関係管理情報を生成する。前述の例でいえば、時刻tbから時刻taの状態へリストアする場合、依存関係判定部116は、図14で例示した依存関係管理情報174を生成する。依存関係判定部116は、変数xに1を代入する(x=1)。ここで、変数xは、今回生成された依存関係管理情報のバージョン範囲の項目における列番号を表す。例えば、依存関係管理情報174では、x=1の列は、バージョン範囲の項目におけるソフトウェアAの列に相当する。また、x=2の列は、バージョン範囲の項目におけるソフトウェアBの列に相当する。管理対象となるコンポーネント数をnとすると、依存関係管理情報174におけるx=nの列は、例えば、ファームウェアNの列に相当する。   (S21) The dependency relationship determination unit 116 generates dependency relationship management information corresponding to the restore destination time based on the dependency relationship table of each component. In the above example, when restoring from the time tb to the state at the time ta, the dependency relationship determination unit 116 generates the dependency relationship management information 174 illustrated in FIG. The dependency relationship determination unit 116 substitutes 1 for the variable x (x = 1). Here, the variable x represents the column number in the version range item of the dependency management information generated this time. For example, in the dependency relationship management information 174, the column of x = 1 corresponds to the column of software A in the version range item. The column of x = 2 corresponds to the column of software B in the version range item. When the number of components to be managed is n, the column of x = n in the dependency relationship management information 174 corresponds to, for example, the column of firmware N.

(S22)依存関係判定部116は、変数yに1を代入する(y=1)。依存関係判定部116は、Max(x)にz(x,y)=z(x,1)を代入する(Max(x)=z(x,1))。ここで、変数yは、依存関係管理情報の行番号を表す。例えば、依存関係管理情報174では、y=1の行は、ソフトウェアAのバージョン“1.5”の行に相当する。また、y=2の行は、ソフトウェアBのバージョン“1.1”の行に相当する。依存関係管理情報174におけるx=nの行は、例えば、ファームウェアNの列に相当する。また、z(x,y)は、x列目のコンポーネントPxのバージョンのうち、y行目のコンポーネントPyと整合性を有するバージョンの最大値を示す。Max(x)は、x列目のコンポーネントPxのバージョンのうち、1〜n行目のコンポーネントPy(y=1〜n)の全てと整合性を満たすバージョンの最大値を示す(Max(x)は本手順により確定される目的値である)。なお、依存関係管理情報の(x,1)に相当するバージョン範囲が設定なしの場合、依存関係判定部116は、ステップS23〜S25をスキップしてステップS26を実行してよい。   (S22) The dependency relationship determination unit 116 substitutes 1 for the variable y (y = 1). The dependency relationship determination unit 116 substitutes z (x, y) = z (x, 1) for Max (x) (Max (x) = z (x, 1)). Here, the variable y represents the line number of the dependency management information. For example, in the dependency relationship management information 174, the line of y = 1 corresponds to the line of the version “1.5” of the software A. The line y = 2 corresponds to the line of software B version “1.1”. The row of x = n in the dependency management information 174 corresponds to, for example, a firmware N column. Further, z (x, y) represents the maximum value of the version having consistency with the component Py in the y-th row among the versions of the component Px in the x-th column. Max (x) indicates the maximum value of the version satisfying the consistency with all the components Py (y = 1 to n) in the 1st to nth rows among the versions of the component Px in the x column (Max (x) Is the target value determined by this procedure). If the version range corresponding to (x, 1) of the dependency relationship management information is not set, the dependency relationship determining unit 116 may execute step S26 by skipping steps S23 to S25.

(S23)依存関係判定部116は、y行目のコンポーネントPyと整合性を満たすx列目のコンポーネントPxのバージョンのうちの最大値をバージョンz(=z(x,y))とする。   (S23) The dependency relationship determination unit 116 sets the maximum value among the versions of the component Px in the xth column that satisfies the consistency with the component Py in the yth row as the version z (= z (x, y)).

(S24)依存関係判定部116は、z(x,y)がMax(x)よりも小さい(z(x,y)<Max(x))か否かを判定する。z(x,y)がMax(x)よりも小さい場合、依存関係判定部116は、ステップS25に処理を進める。z(x,y)がMax(x)以上の場合、依存関係判定部116は、ステップS26に処理を進める。   (S24) The dependency relationship determination unit 116 determines whether z (x, y) is smaller than Max (x) (z (x, y) <Max (x)). If z (x, y) is smaller than Max (x), the dependency relationship determination unit 116 proceeds with the process to step S25. If z (x, y) is equal to or greater than Max (x), the dependency relationship determination unit 116 proceeds to step S26.

(S25)依存関係判定部116は、Max(x)にz(x,y)を代入する(Max(x)=z(x,y))。
(S26)依存関係判定部116は、yにy+1を代入する(y=y+1)。
(S25) The dependency relationship determination unit 116 substitutes z (x, y) for Max (x) (Max (x) = z (x, y)).
(S26) The dependency relationship determination unit 116 substitutes y + 1 for y (y = y + 1).

(S27)依存関係判定部116は、yがnよりも大きい(y>n)か否かを判定する。yがnよりも大きい場合、依存関係判定部116は、ステップS28に処理を進める。yがn以下の場合、依存関係判定部116は、ステップS23に処理を進める。   (S27) The dependency relationship determination unit 116 determines whether y is greater than n (y> n). If y is greater than n, the dependency relationship determination unit 116 proceeds to step S28. When y is n or less, the dependency relationship determination unit 116 proceeds to step S23.

(S28)依存関係判定部116は、コンポーネントPxに対するバージョンMax(x)を確定する。
(S29)依存関係判定部116は、xにx+1を代入する(x=x+1)。
(S28) The dependency relationship determination unit 116 determines the version Max (x) for the component Px.
(S29) The dependency relationship determination unit 116 substitutes x + 1 for x (x = x + 1).

(S30)依存関係判定部116は、xがnよりも大きい(x>n)か否かを判定する。xがnよりも大きい場合、依存関係判定部116は、バージョン選択処理を終了する。xがn以下の場合、依存関係判定部116は、ステップS22に処理を進める。   (S30) The dependency relationship determination unit 116 determines whether x is greater than n (x> n). When x is larger than n, the dependency relationship determination unit 116 ends the version selection process. When x is n or less, the dependency relationship determination unit 116 proceeds to step S22.

こうして、依存関係判定部116は、各コンポーネントについて、他のコンポーネントとの依存関係を満たすバージョンのうち、最新のバージョンMax(x)を選択することができる。   In this way, the dependency relationship determination unit 116 can select the latest version Max (x) among the versions satisfying the dependency relationship with other components for each component.

次に、ポリシーID“2”が選択された場合を説明する。ポリシーID“2”は、“依存関係を満たすバージョンのうち、現バージョンとの差が最小のバージョンを使用”するポリシーである。   Next, a case where the policy ID “2” is selected will be described. The policy ID “2” is a policy that “uses the version that satisfies the dependency relationship and has the smallest difference from the current version”.

図19は、バージョン選択処理例(その2)を示すフローチャートである。以下、図19に示す処理をステップ番号に沿って説明する。以下の手順は、図17のステップS6(ポリシーID“2”が選択された場合)に相当する。   FIG. 19 is a flowchart illustrating an example of version selection processing (part 2). In the following, the process illustrated in FIG. 19 will be described in order of step number. The following procedure corresponds to step S6 in FIG. 17 (when policy ID “2” is selected).

(S41)依存関係判定部116は、各コンポーネントの依存関係テーブルに基づいて、リストア先の時刻に対応する依存関係管理情報を生成する。前述の例でいえば、時刻tbから時刻taの状態へリストアする場合、依存関係判定部116は、図14で例示した依存関係管理情報174を生成する。依存関係判定部116は、変数xに1を代入する(x=1)。変数xの意味は、ステップS21の説明と同様である。   (S41) The dependency relationship determination unit 116 generates dependency relationship management information corresponding to the restore destination time based on the dependency relationship table of each component. In the above example, when restoring from the time tb to the state at the time ta, the dependency relationship determination unit 116 generates the dependency relationship management information 174 illustrated in FIG. The dependency relationship determination unit 116 substitutes 1 for the variable x (x = 1). The meaning of the variable x is the same as that in step S21.

(S42)依存関係判定部116は、変数yに1を代入する(y=1)。依存関係判定部116は、Min(x)にv(x,y)=(x,1)を代入する(Min(x)=v(x,y)=v(x,1))。依存関係判定部116は、Max(x)にz(x,y)=z(x,1)を代入する(Max(x)=z(x,y)=z(x,1))。依存関係判定部116は、x列目のコンポーネントPxの現バージョンを変数A(x)に代入する。ここで、変数y、Max(x)およびz(x,y)の意味は、ステップS22の説明と同様である。v(x,y)は、x列目のコンポーネントPxのバージョンのうち、y行目のコンポーネントPyと整合性を有するバージョンの最小値を示す。Min(x)は、x列目のコンポーネントPxのバージョンのうち、1〜n行目のコンポーネントPy(y=1〜n)の全てと整合性を満たすバージョンの最小値を示す(Min(x)およびMax(x)は本手順により確定される目的値である)。なお、依存関係管理情報の(x,1)に相当するバージョン範囲が設定なしの場合、依存関係判定部116は、ステップS43〜S47をスキップしてステップS48を実行してよい。   (S42) The dependency relationship determination unit 116 substitutes 1 for the variable y (y = 1). The dependency relationship determination unit 116 substitutes v (x, y) = (x, 1) for Min (x) (Min (x) = v (x, y) = v (x, 1)). The dependency relationship determination unit 116 substitutes z (x, y) = z (x, 1) for Max (x) (Max (x) = z (x, y) = z (x, 1)). The dependency relationship determination unit 116 substitutes the current version of the component Px in the x-th column for the variable A (x). Here, the meanings of the variables y, Max (x), and z (x, y) are the same as those in step S22. v (x, y) represents the minimum value of the version having consistency with the component Py in the y-th row among the versions of the component Px in the x-th column. Min (x) indicates the minimum value of the version satisfying the consistency with all of the components Py (y = 1 to n) in the 1st to nth rows among the versions of the component Px in the x column (Min (x) And Max (x) are target values determined by this procedure). When the version range corresponding to (x, 1) of the dependency relationship management information is not set, the dependency relationship determination unit 116 may execute step S48 by skipping steps S43 to S47.

(S43)依存関係判定部116は、y行目のコンポーネントPyと整合性を満たすx列目のコンポーネントPxのバージョンのうちの最小値をバージョンv(=v(x,y))とし、最大値をバージョンz(=z(x,y))とする。   (S43) The dependency relationship determination unit 116 sets the minimum value among the versions of the component Px in the x-th column that satisfies the consistency with the component Py in the y-th row as the version v (= v (x, y)), and sets the maximum value Is a version z (= z (x, y)).

(S44)依存関係判定部116は、z(x,y)がMax(x)よりも小さい(z(x,y)<Max(x))か否かを判定する。z(x,y)がMax(x)よりも小さい場合、依存関係判定部116は、ステップS45に処理を進める。z(x,y)がMax(x)以上の場合、依存関係判定部116は、ステップS46に処理を進める。   (S44) The dependency relationship determination unit 116 determines whether z (x, y) is smaller than Max (x) (z (x, y) <Max (x)). If z (x, y) is smaller than Max (x), the dependency relationship determination unit 116 proceeds with the process to step S45. When z (x, y) is greater than or equal to Max (x), the dependency relationship determination unit 116 proceeds with the process to step S46.

(S45)依存関係判定部116は、Max(x)にz(x,y)を代入する(Max(x)=z(x,y))。
(S46)依存関係判定部116は、v(x,y)がMin(x)よりも大きい(v(x,y)>Min(x))か否かを判定する。v(x,y)がMin(x)よりも大きい場合、依存関係判定部116は、ステップS47に処理を進める。v(x,y)がMin(x)以下の場合、依存関係判定部116は、ステップS48に処理を進める。
(S45) The dependency relationship determination unit 116 substitutes z (x, y) for Max (x) (Max (x) = z (x, y)).
(S46) The dependency relationship determination unit 116 determines whether v (x, y) is greater than Min (x) (v (x, y)> Min (x)). If v (x, y) is greater than Min (x), the dependency relationship determination unit 116 proceeds to step S47. If v (x, y) is equal to or smaller than Min (x), the dependency relationship determination unit 116 proceeds to step S48.

(S47)依存関係判定部116は、Min(x)にv(x,y)を代入する(Min(x)=v(x,y))。
(S48)依存関係判定部116は、yにy+1を代入する(y=y+1)。
(S47) The dependency relationship determination unit 116 substitutes v (x, y) for Min (x) (Min (x) = v (x, y)).
(S48) The dependency relationship determination unit 116 substitutes y + 1 for y (y = y + 1).

(S49)依存関係判定部116は、yがnよりも大きい(y>n)か否かを判定する。yがnよりも大きい場合、依存関係判定部116は、ステップS50に処理を進める。yがn以下の場合、依存関係判定部116は、ステップS43に処理を進める。   (S49) The dependency relationship determination unit 116 determines whether y is larger than n (y> n). If y is greater than n, the dependency relationship determination unit 116 proceeds to step S50. When y is n or less, the dependency relationship determination unit 116 proceeds to step S43.

(S50)依存関係判定部116は、Max(x)≧A(x)≧Min(x)の場合はA(x)を採用し、そうでない場合はA(x)に近いMax(x)またはMin(x)を採用する。すなわち、依存関係判定部116は、Max(x)≧A(x)≧Min(x)の場合は、現バージョンA(x)でコンポーネントPxのバージョンを維持すると決定する。一方、依存関係判定部116は、A(x)>Max(x)またはMin(x)>A(x)の場合は、Max(x),Min(x)のうち、現バージョンA(x)との差が小さい方をコンポーネントPxの変更先のバージョンVとして採用する。   (S50) The dependency relationship determination unit 116 adopts A (x) when Max (x) ≧ A (x) ≧ Min (x), otherwise, Max (x) close to A (x) or Min (x) is adopted. That is, the dependency relationship determination unit 116 determines to maintain the version of the component Px with the current version A (x) when Max (x) ≧ A (x) ≧ Min (x). On the other hand, if A (x)> Max (x) or Min (x)> A (x), the dependency relationship determination unit 116 determines the current version A (x) out of Max (x) and Min (x). The one with the smaller difference is adopted as the change destination version V of the component Px.

(S51)依存関係判定部116は、xにx+1を代入する(x=x+1)。
(S52)依存関係判定部116は、xがnよりも大きい(x>n)か否かを判定する。xがnよりも大きい場合、依存関係判定部116は、バージョン選択処理を終了する。xがn以下の場合、依存関係判定部116は、ステップS42に処理を進める。
(S51) The dependency relationship determination unit 116 substitutes x + 1 for x (x = x + 1).
(S52) The dependency relationship determination unit 116 determines whether x is larger than n (x> n). When x is larger than n, the dependency relationship determination unit 116 ends the version selection process. When x is n or less, the dependency relationship determination unit 116 proceeds with the process to step S42.

こうして、依存関係判定部116は、各コンポーネントについて、他のコンポーネントとの依存関係を満たすバージョンのうち、現バージョンとの差が最小のバージョンVを選択することができる。   In this way, the dependency relationship determination unit 116 can select the version V having the smallest difference from the current version among the versions satisfying the dependency relationship with other components.

次に、ポリシーID“3”が選択された場合を説明する。ポリシーID“3”は、“依存関係を満たすバージョンのうち、適用後の再起動が不要なバージョンを使用”するポリシーである。   Next, a case where the policy ID “3” is selected will be described. The policy ID “3” is a policy for “using a version that does not need to be restarted after application among versions satisfying the dependency”.

図20は、バージョン選択処理例(その3)を示すフローチャートである。以下、図20に示す処理をステップ番号に沿って説明する。以下の手順は、図17のステップS6(ポリシーID“3”が選択された場合)に相当する。   FIG. 20 is a flowchart illustrating a third example of version selection processing. In the following, the process illustrated in FIG. 20 will be described in order of step number. The following procedure corresponds to step S6 in FIG. 17 (when policy ID “3” is selected).

(S61)依存関係判定部116は、各コンポーネントの依存関係テーブルに基づいて、リストア先の時刻に対応する依存関係管理情報を生成する。前述の例でいえば、時刻tbから時刻taの状態へリストアする場合、依存関係判定部116は、図14で例示した依存関係管理情報174を生成する。依存関係判定部116は、変数xに1を代入する(x=1)。変数xの意味は、ステップS21の説明と同様である。   (S61) The dependency relationship determination unit 116 generates dependency relationship management information corresponding to the restore destination time based on the dependency relationship table of each component. In the above example, when restoring from the time tb to the state at the time ta, the dependency relationship determination unit 116 generates the dependency relationship management information 174 illustrated in FIG. The dependency relationship determination unit 116 substitutes 1 for the variable x (x = 1). The meaning of the variable x is the same as that in step S21.

(S62)依存関係判定部116は、変数yに1を代入する(y=1)。依存関係判定部116は、フラグR_Flag(x)に(初期値として)Trueを設定する(R_Flag(x)=True)。依存関係判定部116はMin(x)にv(x,y)=(x,1)を代入する(Min(x)=v(x,y)=v(x,1))。依存関係判定部116は、Max(x)にz(x,y)=z(x,1)を代入する(Max(x)=z(x,y)=z(x,1))。ここで、変数y、Max(x)およびz(x,y)の意味は、ステップS22の説明と同様である。また、変数Min(x)およびv(x,y)の意味は、ステップS42の説明と同様である。フラグR_Flag(x)は、x列目のコンポーネントPxのバージョン変更に伴う再起動要否を示すフラグである。R_Flag(x)=Trueは、再起動要を示す。R_Flag(x)=Falseは、再起動不要を示す。なお、依存関係管理情報の(x,1)に相当するバージョン範囲が設定なしの場合、依存関係判定部116は、ステップS63〜S67をスキップしてステップS68を実行してよい。   (S62) The dependency relationship determination unit 116 substitutes 1 for the variable y (y = 1). The dependency relationship determination unit 116 sets True (as an initial value) to the flag R_Flag (x) (R_Flag (x) = True). The dependency relationship determination unit 116 substitutes v (x, y) = (x, 1) for Min (x) (Min (x) = v (x, y) = v (x, 1)). The dependency relationship determination unit 116 substitutes z (x, y) = z (x, 1) for Max (x) (Max (x) = z (x, y) = z (x, 1)). Here, the meanings of the variables y, Max (x), and z (x, y) are the same as those in step S22. Further, the meanings of the variables Min (x) and v (x, y) are the same as those described in step S42. The flag R_Flag (x) is a flag indicating whether or not a restart is necessary due to a version change of the component Px in the x-th column. R_Flag (x) = True indicates that restart is necessary. R_Flag (x) = False indicates that restart is not required. When the version range corresponding to (x, 1) of the dependency relationship management information is not set, the dependency relationship determining unit 116 may skip steps S63 to S67 and execute step S68.

(S63)依存関係判定部116は、y行目のコンポーネントPyと整合性を満たすx列目のコンポーネントPxのバージョンのうちの最小値をバージョンv(=v(x,y))とし、最大値をバージョンz(=z(x,y))とする。   (S63) The dependency relationship determination unit 116 sets the minimum value among the versions of the component Px in the x-th column that satisfies the consistency with the component Py in the y-th row as the version v (= v (x, y)), and sets the maximum value Is a version z (= z (x, y)).

(S64)依存関係判定部116は、z(x,y)がMax(x)よりも小さい(z(x,y)<Max(x))か否かを判定する。z(x,y)がMax(x)よりも小さい場合、依存関係判定部116は、ステップS65に処理を進める。z(x,y)がMax(x)以上の場合、依存関係判定部116は、ステップS66に処理を進める。   (S64) The dependency relationship determination unit 116 determines whether z (x, y) is smaller than Max (x) (z (x, y) <Max (x)). If z (x, y) is smaller than Max (x), the dependency relationship determination unit 116 proceeds with the process to step S65. If z (x, y) is greater than or equal to Max (x), the dependency relationship determination unit 116 proceeds to step S66.

(S65)依存関係判定部116は、Max(x)にz(x,y)を代入する(Max(x)=z(x,y))。
(S66)依存関係判定部116は、v(x,y)がMin(x)よりも大きい(v(x,y)>Min(x))か否かを判定する。v(x,y)がMin(x)よりも大きい場合、依存関係判定部116は、ステップS67に処理を進める。v(x,y)がMin(x)以下の場合、依存関係判定部116は、ステップS68に処理を進める。
(S65) The dependency relationship determination unit 116 substitutes z (x, y) for Max (x) (Max (x) = z (x, y)).
(S66) The dependency relationship determination unit 116 determines whether v (x, y) is greater than Min (x) (v (x, y)> Min (x)). When v (x, y) is larger than Min (x), the dependency relationship determination unit 116 proceeds with the process to step S67. When v (x, y) is equal to or smaller than Min (x), the dependency relationship determination unit 116 proceeds with the process to step S68.

(S67)依存関係判定部116は、Min(x)にv(x,y)を代入する(Min(x)=v(x,y))。
(S68)依存関係判定部116は、yにy+1を代入する(y=y+1)。
(S67) The dependency relationship determination unit 116 substitutes v (x, y) for Min (x) (Min (x) = v (x, y)).
(S68) The dependency relationship determination unit 116 substitutes y + 1 for y (y = y + 1).

(S69)依存関係判定部116は、yがnよりも大きい(y>n)か否かを判定する。yがnよりも大きい場合、依存関係判定部116は、ステップS70に処理を進める。yがn以下の場合、依存関係判定部116は、ステップS63に処理を進める。   (S69) The dependency relationship determination unit 116 determines whether y is greater than n (y> n). If y is greater than n, the dependency relationship determination unit 116 proceeds to step S70. When y is n or less, the dependency relationship determination unit 116 proceeds to step S63.

(S70)依存関係判定部116は、管理情報記憶部111に記憶された再起動テーブル191に基づいて、Max(x)≧B(x)≧Min(x)、かつ、再起動が不要なバージョンB(x)があるか否かを判定する。Max(x)≧B(x)≧Min(x)、かつ、再起動が不要なバージョンB(x)がある場合、依存関係判定部116は、ステップS71に処理を進める。Max(x)≧B(x)≧Min(x)、かつ、再起動が不要なバージョンB(x)がない場合、依存関係判定部116は、ステップS72に処理を進める。   (S70) Based on the restart table 191 stored in the management information storage unit 111, the dependency relationship determination unit 116 is Max (x) ≧ B (x) ≧ Min (x) and does not require restart. It is determined whether there is B (x). If Max (x) ≧ B (x) ≧ Min (x) and there is a version B (x) that does not need to be restarted, the dependency relationship determination unit 116 proceeds to step S71. If Max (x) ≧ B (x) ≧ Min (x) and there is no version B (x) that does not need to be restarted, the dependency determination unit 116 proceeds to step S72.

(S71)依存関係判定部116は、ステップS70で特定されたバージョンB(x)のうち、再起動不要な最大値をMax(x)とし、R_Frag(x)=Falseに設定する。   (S71) The dependency relationship determination unit 116 sets Max (x) as the maximum value that does not need to be restarted among the versions B (x) specified in step S70, and sets R_Frag (x) = False.

(S72)依存関係判定部116は、xにx+1を代入する(x=x+1)。
(S73)依存関係判定部116は、xがnよりも大きい(x>n)か否かを判定する。xがnよりも大きい場合、依存関係判定部116は、処理をステップS74に進める。xがn以下の場合、依存関係判定部116は、ステップS62に処理を進める。
(S72) The dependency relationship determination unit 116 substitutes x + 1 for x (x = x + 1).
(S73) The dependency relationship determination unit 116 determines whether x is larger than n (x> n). When x is larger than n, the dependency relationship determination unit 116 proceeds with the process to step S74. If x is n or less, the dependency relationship determination unit 116 proceeds to step S62.

(S74)依存関係判定部116は、R_Flag(x)=Falseの場合、再起動不要なバージョンとしてMax(x)をディスプレイ61に表示させる。また、依存関係判定部116は、R_Flag(x)=Trueの場合、再起動要なバージョンとしてMax(x)をディスプレイ61に表示させる。なお、当該ステップS74は、図17のステップS7に相当する処理として実行される。   (S74) When R_Flag (x) = False, the dependency relationship determination unit 116 displays Max (x) on the display 61 as a version that does not require restart. Further, when R_Flag (x) = True, the dependency relationship determination unit 116 causes Max (x) to be displayed on the display 61 as a version requiring restart. Note that step S74 is executed as a process corresponding to step S7 in FIG.

こうして、依存関係判定部116は、各コンポーネントについて、他のコンポーネントとの依存関係を満たすバージョンのうち、適用後の再起動が不要なバージョンを優先的に選択することができる。   In this way, the dependency relationship determination unit 116 can preferentially select a version that does not need to be restarted after application from the versions that satisfy the dependency relationship with other components.

次に、ポリシーID“4”が選択された場合を説明する。ポリシーID“4”は、“特定のコンポーネントのバージョンを固定し、ポリシーID“1”または“2”のポリシーに従って他のコンポーネントのバージョンを決定”するポリシーである。ポリシーID“4”が選択される場合、サブポリシーとして、ポリシーID“1”または“2”が選択される。   Next, a case where the policy ID “4” is selected will be described. The policy ID “4” is a policy that “fixes the version of a specific component and determines the version of another component according to the policy with the policy ID“ 1 ”or“ 2 ””. When the policy ID “4” is selected, the policy ID “1” or “2” is selected as the sub-policy.

図21は、バージョン選択処理例(その4)を示すフローチャートである。以下、図21に示す処理をステップ番号に沿って説明する。以下の手順は、図17のステップS6(ポリシーID“4”が選択された場合)に相当する。   FIG. 21 is a flowchart illustrating an example of version selection processing (part 4). In the following, the process illustrated in FIG. 21 will be described in order of step number. The following procedure corresponds to step S6 in FIG. 17 (when policy ID “4” is selected).

(S81)依存関係判定部116は、バージョン固定化対象のコンポーネントPkを決定する。例えば、コンポーネントPkは、ユーザによって指定されてもよい。例えば、ユーザの業務への影響が比較的大きいコンポーネントのバージョンを固定することが考えられる。そして、依存関係判定部116は、各コンポーネントの依存関係テーブルに基づいて、リストア先の時刻に対応する依存関係管理情報を生成する。前述の例でいえば、時刻tbから時刻taの状態へリストアする場合、依存関係判定部116は、図14で例示した依存関係管理情報174を生成する。   (S81) The dependency relationship determination unit 116 determines a component Pk to be version-fixed. For example, the component Pk may be specified by the user. For example, it is conceivable to fix a version of a component that has a relatively large influence on the user's business. Then, the dependency relationship determination unit 116 generates dependency relationship management information corresponding to the restore destination time based on the dependency relationship table of each component. In the above example, when restoring from the time tb to the state at the time ta, the dependency relationship determination unit 116 generates the dependency relationship management information 174 illustrated in FIG.

(S82)依存関係判定部116は、ステップS81で生成した依存関係管理情報を参照して、コンポーネントPkの固定化バージョン(固定化の対象となるバージョン)が、他のコンポーネントに対する整合バージョンの範囲内に収まるか否かを確認する。   (S82) The dependency relationship determination unit 116 refers to the dependency relationship management information generated in step S81, and the fixed version of component Pk (version to be fixed) is within the range of the consistent version for other components. To see if it fits.

(S83)依存関係判定部116は、コンポーネントPkがリストア対象であるか否かを判定する。リストア対象である場合、依存関係判定部116は、ステップS84に処理を進める。リストア対象でない場合、依存関係判定部116は、ステップS85に処理を進める。   (S83) The dependency relationship determination unit 116 determines whether or not the component Pk is a restoration target. When it is a restore target, the dependency relationship determination unit 116 proceeds with the process to step S84. If it is not the restore target, the dependency relationship determination unit 116 proceeds with the process to step S85.

(S84)依存関係判定部116は、リストア対象外のコンポーネントからコンポーネントPkのバージョン(固定化バージョン)と整合性が取れていないコンポーネントを特定する。そして、依存関係判定部116は、ステップS86に処理を進める。   (S84) The dependency relationship determination unit 116 identifies a component that is not consistent with the version (fixed version) of the component Pk from the components not to be restored. Then, the dependency relationship determination unit 116 proceeds with the process to step S86.

(S85)依存関係判定部116は、リストア対象のコンポーネントからコンポーネントPkのバージョン(固定化バージョン)と整合性が取れていないコンポーネントを特定する。そして、依存関係判定部116は、ステップS86に処理を進める。   (S85) The dependency determination unit 116 identifies a component that is not consistent with the version (fixed version) of the component Pk from the components to be restored. Then, the dependency relationship determination unit 116 proceeds with the process to step S86.

(S86)依存関係判定部116は、ステップS84またはステップS85で特定したコンポーネントを優先順位に応じて1つ選択する。ここで、コンポーネント毎の優先順位は、ユーザにより予め指定される、または、所定のルール(例えば、該当コンポーネントを用いた業務の重要度など)に従い予め生成される。   (S86) The dependency relationship determination unit 116 selects one component specified in step S84 or step S85 according to the priority order. Here, the priority order for each component is specified in advance by the user, or is generated in advance according to a predetermined rule (for example, the importance level of the business using the corresponding component).

(S87)依存関係判定部116は、ステップS86で選択したコンポーネントについて、他のコンポーネントとの整合性を満たすバージョンを特定する。このとき、依存関係判定部116は、該当のバージョンを特定するために、選択されたサブポリシー(ポリシーID“1”または“2”のポリシー)の基準を用いる。   (S87) The dependency relationship determination unit 116 identifies a version that satisfies the consistency with other components for the component selected in step S86. At this time, the dependency relationship determination unit 116 uses the criterion of the selected sub-policy (policy ID “1” or “2”) in order to identify the corresponding version.

(S88)依存関係判定部116は、ステップS84またはステップS85で特定した全コンポーネントについて、ステップS86,S87の処理を行ったか否か(全コンポーネントを処理済であるか否か)を判定する。特定した全コンポーネントを処理済である場合、依存関係判定部116は、バージョン選択処理を終了する。特定した全コンポーネントを処理済でない場合、依存関係判定部116は、ステップS86に処理を進める。   (S88) The dependency relationship determination unit 116 determines whether or not the processing of steps S86 and S87 has been performed for all the components specified in step S84 or step S85 (whether or not all components have been processed). When all the specified components have been processed, the dependency relationship determination unit 116 ends the version selection process. If all the specified components have not been processed, the dependency relationship determination unit 116 proceeds to step S86.

次に、図21の手順によるバージョン選択の具体例を説明する。まず、依存関係管理情報の時系列に応じた変化例を説明する。
図22は、依存関係管理情報の時系列に応じた変化例を示す図である。図22では、説明を簡単にするために、ソフトウェアA,BおよびファームウェアC,Dが管理対象である場合を例示する。なお、図中、ソフトウェアAなどを“SW(SoftWare)−A”のように略記することがある。また、図中、ファームウェアCなどを、“FW−C”のように略記することがある。また、図中、バージョンを“ver.”と略記することがある。
Next, a specific example of version selection according to the procedure of FIG. 21 will be described. First, an example of change according to the time series of the dependency management information will be described.
FIG. 22 is a diagram illustrating a change example according to the time series of the dependency management information. FIG. 22 illustrates a case where software A and B and firmware C and D are management targets in order to simplify the description. In the figure, software A or the like may be abbreviated as “SW (SoftWare) -A”. In the figure, firmware C and the like may be abbreviated as “FW-C”. In the figure, the version may be abbreviated as “ver.”.

図22(A)は、時刻t1における依存関係管理情報175を例示する。図22(B)は、時刻t2における依存関係管理情報176を例示する。図22(C)は、時刻t3における依存関係管理情報177を例示する。   FIG. 22A illustrates the dependency management information 175 at the time t1. FIG. 22B illustrates the dependency management information 176 at time t2. FIG. 22C illustrates the dependency management information 177 at time t3.

なお、依存関係管理情報175,176,177では、各コンポーネントのバージョン範囲について、最小値および最大値を表記している。
ここで、時刻t3で示される各コンポーネントのバージョンに対し、ソフトウェアAのバージョンを“2.5”から時刻t1のバージョン“2.2”にリストアし、ソフトウェアBをリストアの対象外とする場合を想定する。このとき、更に、ソフトウェアBの時刻t3におけるバージョン“3.5”を固定化することを考える。
In the dependency relationship management information 175, 176, 177, the minimum value and the maximum value are described for the version range of each component.
Here, for the version of each component indicated at time t3, the version of software A is restored from “2.5” to version “2.2” at time t1, and software B is excluded from the restoration target. Suppose. At this time, it is further considered that the version “3.5” of software B at time t3 is fixed.

図23は、バージョン選択の具体例を示す図である。依存関係判定部116は、時刻t3の状態から時刻t1の状態へリストアする場合の依存関係管理情報178を作成する。時刻t1の状態へリストアした場合の各コンポーネントのバージョンは次の通りである。ソフトウェアAのバージョンは“2.2”である。ソフトウェアB(固定化対象)のバージョンは“3.5”である。ファームウェアCのバージョンは“7.6”である。ファームウェアDのバージョンは“1.5”である。   FIG. 23 is a diagram illustrating a specific example of version selection. The dependency relationship determination unit 116 creates dependency relationship management information 178 when restoring from the state at time t3 to the state at time t1. The version of each component when restored to the state at time t1 is as follows. The version of software A is “2.2”. The version of software B (fixed target) is “3.5”. The version of the firmware C is “7.6”. The version of the firmware D is “1.5”.

バージョン固定化の対象であるソフトウェアBは、リストアの対象外である(ステップS83 No)。したがって、依存関係判定部116は、リストア対象のコンポーネントからソフトウェアBのバージョンと整合性が取れていないコンポーネントを特定する(ステップS85)。ここでは、リストア対象のコンポーネントはソフトウェアAである。ソフトウェアAの復元先のバージョン“2.2”に対して、ソフトウェアBの整合性を満たす最小バージョンは“3”であり、最大バージョンは“3.4”である。固定化対象のソフトウェアBのバージョン“3.5”は、ソフトウェアAのバージョン“2.2”と整合性が保証された最大バージョン“3.4”よりも大きいバージョンである。このため、依存関係判定部116は、固定化対象のソフトウェアBのバージョンと整合性が取れていないコンポーネントとして、ソフトウェアAを特定する。   The software B that is the target of version fixing is not the target of restoration (No in step S83). Therefore, the dependency determination unit 116 identifies a component that is not consistent with the version of the software B from the components to be restored (step S85). Here, the component to be restored is software A. For the restoration destination version “2.2” of software A, the minimum version satisfying the consistency of software B is “3”, and the maximum version is “3.4”. The version “3.5” of the software B to be fixed is a version larger than the maximum version “3.4” that is guaranteed to be consistent with the version “2.2” of the software A. For this reason, the dependency relationship determination unit 116 identifies the software A as a component that is not consistent with the version of the software B to be fixed.

そして、依存関係判定部116は、特定したコンポーネントを所定の優先順位に応じて1つ選択する(ステップS86)。ここでは、特定したコンポーネントは、ソフトウェアAの1つであり、依存関係判定部116は、ソフトウェアAを選択する(特定したコンポーネントが複数の場合は優先順位の順に1つ選択する)。依存関係判定部116は、選択したコンポーネントについてソフトウェアBの固定化されたバージョン“3.5”と整合するバージョンを特定する(ステップS87)。ここでは、依存関係判定部116は、ソフトウェアAの依存関係テーブル163に基づいて、リストア対象であるソフトウェアAについて他のコンポーネントのバージョンに対して整合性が保証されたバージョンを選択する。依存関係判定部116は、ソフトウェアAのリストア先のバージョンを変更することになる。   Then, the dependency relationship determination unit 116 selects one identified component in accordance with a predetermined priority (step S86). Here, the identified component is one of the software A, and the dependency relationship determination unit 116 selects the software A (if there are a plurality of identified components, one is selected in the order of priority). The dependency relationship determination unit 116 identifies a version that matches the fixed version “3.5” of the software B for the selected component (step S87). Here, based on the dependency relationship table 163 of the software A, the dependency relationship determination unit 116 selects a version that is guaranteed to be consistent with other component versions for the software A that is the restore target. The dependency relationship determination unit 116 changes the restore destination version of the software A.

具体的には、依存関係判定部116は、依存関係テーブル163に基づき、ソフトウェアBのバージョン“3.5”、ファームウェアCのバージョン“7.6”、ファームウェアDのバージョン“1.5”の全てと整合性が保証されたソフトウェアAのバージョン“2.4”、“2.5”を特定する。ここで、ソフトウェアAの復元先のバージョン“2.2”は、他の全てのコンポーネントとの整合性を保つ上で満たすべきバージョン範囲“2.4”、“2.5”に含まれていないことになる。この場合に、依存関係判定部116は、ソフトウェアAのバージョン“2.2”の復元による他のコンポーネントのバージョンとの不整合の発生を検出してもよい。   Specifically, the dependency relationship determination unit 116, based on the dependency relationship table 163, includes all of the version “3.5” of the software B, the version “7.6” of the firmware C, and the version “1.5” of the firmware D. Versions “2.4” and “2.5” of software A for which consistency is guaranteed. Here, the restoration destination version “2.2” of software A is not included in the version ranges “2.4” and “2.5” that should be satisfied in order to maintain consistency with all other components. It will be. In this case, the dependency relationship determination unit 116 may detect the occurrence of inconsistency with the version of another component due to the restoration of the version “2.2” of the software A.

依存関係判定部116は、ソフトウェアAの他のコンポーネントとの整合性を満たすバージョン群{“2.4”、“2.5”}の中から、更に、1つのバージョンに絞り込む。例えば、依存関係判定部116は、ユーザにより指定されたサブポリシー(例えば、ポリシーID“1”や“2”に相当するポリシーなど)に従って、バージョンの絞り込みを行う。より具体的には、ポリシーID“1”(“依存関係を満たすバージョンのうち、最新のバージョンを使用”)がサブポリシーに選択された場合、依存関係判定部116は、バージョン群{“2.4”、“2.5”}のうち、“2.5”を選択することが考えられる。なお、本例では、ソフトウェアAの現バージョンが“2.5”である。依存関係判定部116は、ソフトウェアAのリストアを行うと、他のコンポーネントとの間に不整合が発生する旨を警告するメッセージを、ディスプレイ61に表示させてもよい。   The dependency relationship determination unit 116 further narrows down to one version from the version group {“2.4”, “2.5”} satisfying the consistency with other components of the software A. For example, the dependency relationship determination unit 116 narrows down versions according to a sub-policy specified by the user (for example, a policy corresponding to the policy ID “1” or “2”). More specifically, when the policy ID “1” (“use the latest version among the versions satisfying the dependency”) is selected as the sub-policy, the dependency determination unit 116 determines the version group {“2. It is conceivable to select “2.5” from among “4” and “2.5”}. In this example, the current version of software A is “2.5”. When the software A is restored, the dependency relationship determination unit 116 may cause the display 61 to display a message warning that an inconsistency with other components occurs.

図24は、警告表示例(その1)を示す図である。例えば、依存関係判定部116は、ディスプレイ61に警告画面70を表示させてもよい。警告画面70は、メッセージ71、実行ボタン72、キャンセルボタン73およびポインタ74を含む。   FIG. 24 is a diagram showing a warning display example (No. 1). For example, the dependency relationship determination unit 116 may display the warning screen 70 on the display 61. The warning screen 70 includes a message 71, an execution button 72, a cancel button 73, and a pointer 74.

メッセージ71は、「リストアによりコンポーネント間に不整合が発生します。」というメッセージを含む。また、メッセージ71は、“(1)リストア対象:ソフトウェアA (現バージョン2.5)”、および、“(2)リストア先バージョン:2.2”のメッセージを含む。更に、メッセージ71は、“(3)リストアにより不整合となるコンポーネント”のリストとして、“ソフトウェアB バージョン3.5”、“ファームウェアC バージョン7.6”、および、“ファームウェアD バージョン1.5”のメッセージを含む。   The message 71 includes a message “Inconsistency occurs between components due to restoration”. Further, the message 71 includes “(1) Restore target: Software A (current version 2.5)” and “(2) Restore destination version: 2.2”. Further, the message 71 indicates “software B version 3.5”, “firmware C version 7.6”, and “firmware D version 1.5” as a list of “(3) components that become inconsistent due to restoration”. Message.

実行ボタン72は、リストアの実行入力を受け付けるボタンである。キャンセルボタン73は、リストアのキャンセル入力を受け付けるボタンである。ユーザは、入力デバイス62を操作することで、ポインタ74により、実行ボタン72またはキャンセルボタン73に対する入力を行える。   The execution button 72 is a button for receiving an execution input for restoration. The cancel button 73 is a button for accepting a restoration cancel input. The user can input to the execution button 72 or the cancel button 73 with the pointer 74 by operating the input device 62.

こうして、管理サーバ100は、リストアによりソフトウェアやファームウェアの動作に不具合が発生することを防ぐことができる。
上記の例では、リストア対象でないソフトウェアBのバージョンを固定化する例を示したが、リストア対象であるソフトウェアAのリストア先のバージョンを固定化することもできる。その場合も、上記の手順により、依存関係判定部116は、不整合を回避するための他のコンポーネントのバージョンを特定する。
In this way, the management server 100 can prevent a malfunction from occurring in the operation of software or firmware due to the restoration.
In the above example, the version of the software B that is not the restore target is fixed. However, the restore destination version of the software A that is the restore target can also be fixed. Even in such a case, the dependency relationship determination unit 116 specifies the version of another component for avoiding inconsistency by the above procedure.

図25は、警告表示例(その2)を示す図である。図22の例において、時刻t3の状態から、時刻t1の状態へソフトウェアAをリストアし、ソフトウェアAのリストア先のバージョンを“2.2”で固定する例を考える。本例でも、ソフトウェアBは、リストア対象外である。この場合、依存関係判定部116は、ソフトウェアAのリストア後に不整合となるコンポーネントとして、ソフトウェアBのバージョン“3.5”、ファームウェアCのバージョン“7.6”、ファームウェアDのバージョン“1.5”を特定する。   FIG. 25 is a diagram showing a warning display example (No. 2). In the example of FIG. 22, consider an example in which software A is restored from the state at time t3 to the state at time t1, and the restore destination version of software A is fixed at “2.2”. Also in this example, the software B is not a restore target. In this case, the dependency determination unit 116, as a component that becomes inconsistent after the restoration of the software A, the version “3.5” of the software B, the version “7.6” of the firmware C, and the version “1.5 of the firmware D ”Is specified.

また、依存関係判定部116は、不整合を回避するコンポーネントのバージョンとして、ソフトウェアBのバージョン“3.4”、ファームウェアCのバージョン“7.2”、ファームウェアDのバージョン“1.4”を特定する。これらは、ソフトウェアAのリストア後のバージョン“2.2”との整合性が保証されている最新バージョンである(ソフトウェアAのバージョン固定化に加え、最新バージョンを選択するポリシーを使用)。   Further, the dependency relationship determination unit 116 identifies the version “3.4” of the software B, the version “7.2” of the firmware C, and the version “1.4” of the firmware D as the component versions that avoid inconsistencies. To do. These are the latest versions that are guaranteed to be consistent with the version “2.2” after restoration of the software A (in addition to fixing the version of the software A, a policy for selecting the latest version is used).

依存関係判定部116は、ソフトウェアB、ファームウェアCおよびファームウェアDのバージョンを、不整合を回避可能なバージョンに変更する選択を受け付けてもよい。例えば、依存関係判定部116は、ディスプレイ61に警告画面80を表示させてもよい。警告画面80は、メッセージ81、実行ボタン82、バージョン変更ボタン83、キャンセルボタン84およびポインタ85を含む。   The dependency relationship determination unit 116 may accept a selection to change the versions of the software B, firmware C, and firmware D to versions that can avoid inconsistencies. For example, the dependency relationship determination unit 116 may display the warning screen 80 on the display 61. The warning screen 80 includes a message 81, an execution button 82, a version change button 83, a cancel button 84, and a pointer 85.

メッセージ81は、“(1)リストア対象:ソフトウェアA (現バージョン2.5)”、および、“(2)リストア先バージョン:2.2”のメッセージを含む。また、メッセージ81は、“(3)リストアにより不整合となるコンポーネント”のリストとして、“ソフトウェアB バージョン3.5”、“ファームウェアC バージョン7.6”、および、“ファームウェアD バージョン1.5”のメッセージを含む。   The message 81 includes messages of “(1) Restore target: Software A (current version 2.5)” and “(2) Restore destination version: 2.2”. In addition, the message 81 displays “software B version 3.5”, “firmware C version 7.6”, and “firmware D version 1.5” as a list of “(3) inconsistent components due to restoration”. Message.

更に、メッセージ81は、“(4)不整合を回避するコンポーネントのバージョン”のリストとして、“ソフトウェアB バージョン3.4”、“ファームウェアC バージョン7.2”、および、“ファームウェアD バージョン1.4”のメッセージを含む。   Further, the message 81 includes “software B version 3.4”, “firmware C version 7.2”, and “firmware D version 1.4 as a list of“ (4) component versions to avoid inconsistencies ”. ”Message.

実行ボタン82は、“不整合を回避するコンポーネントのバージョン”を適用せずにリストアを実行する指示入力を受け付けるボタンである。
バージョン変更ボタン83は、“不整合を回避するコンポーネントのバージョン”を、該当のコンポーネントに適用してリストアを行う旨の指示入力を受け付けるボタンである。
The execution button 82 is a button for receiving an instruction input for executing restoration without applying “version of component that avoids inconsistency”.
The version change button 83 is a button for receiving an instruction input for restoring by applying “version of a component that avoids inconsistency” to the corresponding component.

キャンセルボタン84は、リストアのキャンセル入力を受け付けるボタンである。
ユーザは、入力デバイス62を操作することで、ポインタ85により、実行ボタン82、バージョン変更ボタン83またはキャンセルボタン84に対する入力を行える。
The cancel button 84 is a button for accepting a restoration cancel input.
The user can input to the execution button 82, the version change button 83, or the cancel button 84 with the pointer 85 by operating the input device 62.

依存関係判定部116は、バージョン変更ボタン83に対する入力を受け付けると、連携指示部117に対して、該当のコンポーネントのバージョン変更を指示する。連携指示部117は、FW更新部122やリストア制御部133と連携して、業務サーバ200や外部機器における該当のコンポーネントのバージョンを変更させる。各コンポーネントのバージョンについては、ソフトウェアAのリストア前に変更させてもよいし、リストア後に変更させてもよい。   When receiving an input to the version change button 83, the dependency relationship determination unit 116 instructs the cooperation instruction unit 117 to change the version of the corresponding component. The cooperation instruction unit 117 cooperates with the FW update unit 122 and the restore control unit 133 to change the version of the corresponding component in the business server 200 or the external device. The version of each component may be changed before the restoration of the software A, or may be changed after the restoration.

こうして、管理サーバ100は、リストアによりソフトウェアやファームウェアの動作に不具合が発生することを防ぐことができる。
ところで、近年、情報処理システムは複数のハードウェアやソフトウェアにより複雑に構成されており、それぞれの製品のバージョンにおける依存関係や整合性を考慮したシステム構築が求められている。特に、ハードウェアについては、当該ハードウェアを制御するファームウェア(制御用のソフトウェアともいえる)が実装され、ハードウェアの状態を監視する監視機構が組み込まれていることが多い。このため、ハードウェアであっても、実際の運用に用いる場合には、ファームウェアのバージョン毎の機能差や既存障害の考慮を要する。また、一部のソフトウェアについては、ハードウェアの制御(起動・シャットダウン)やハードウェア情報を収集するために、ファームウェアとの連携を行う。
In this way, the management server 100 can prevent a malfunction from occurring in the operation of software or firmware due to the restoration.
By the way, in recent years, information processing systems are complicatedly configured by a plurality of hardware and software, and there is a demand for system construction in consideration of dependency and consistency in versions of each product. In particular, for hardware, firmware that controls the hardware (also referred to as control software) is often mounted, and a monitoring mechanism that monitors the state of the hardware is often incorporated. For this reason, even if it is hardware, when it is used for actual operation, it is necessary to consider functional differences between firmware versions and existing faults. Some software is linked with firmware to control hardware (startup / shutdown) and collect hardware information.

また、情報処理システムで行われるバックアップ処理では、一般的にソフトウェア(OS、ミドルウェア、データ/設定など)をバックアップする。一方、ファームウェアは、バックアップ対象外であることが多い。ところが、前述のように、ソフトウェアとハードウェアとは綿密に連携しているため、ソフトウェアの動作環境のみをリストアしても、システム全体としての安定稼働に支障をきたす可能性がある。また、同様に、ハードウェア同士の接続性に関しても、ファームウェアのバージョンにより機能差が存在すると、不整合が発生し、該当のハードウェアが正常に動作しないことがある。   In backup processing performed in the information processing system, software (OS, middleware, data / setting, etc.) is generally backed up. On the other hand, firmware is often not a backup target. However, as described above, since software and hardware are closely linked, there is a possibility that even if only the operating environment of software is restored, stable operation of the entire system may be hindered. Similarly, regarding the connectivity between hardware, if there is a functional difference depending on the firmware version, inconsistency may occur and the corresponding hardware may not operate normally.

この点について、通常は、ソフトウェアのバックアップ/リストアとソフトウェアが動作する機器のファームウェアの管理を独立して行うことが多い。すなわち、システム単位でバックアップデータとシステムを構成するコンポーネントのバージョン情報を管理する仕組みや、リストアを実行する前に、これらのコンポーネント間でバージョンの不整合により問題が発生することを未然に防ぐ仕組みがなかった。   In this regard, usually, software backup / restoration and firmware management of the device on which the software operates are often performed independently. In other words, there is a mechanism for managing backup data and version information of the components that make up the system on a system-by-system basis, and a mechanism for preventing problems from occurring between these components due to version inconsistencies before performing a restore. There wasn't.

例えば、ある時点で取得されたバックアップデータを用いてリストアする場合、バックアップデータに含まれるソフトウェアのバージョンと、システムを構成する他のソフトウェア、ファームウェアのバージョンとがバックアップ時点と異なっている可能性が高い。
第1の時点で取得した、バックアップデータに含まれるソフトウェアSA(v1.0)は、バックアップを取得した時点ではファームウェアFB(v1.0)と整合性の取れた状態である。第2の時点では、ファームウェアFBが運用中に新しいバージョン(v2.0)にアップデートされていたとする。第2の時点でソフトウェアSA(v1.0)とファームウェアFB(v2.0)で整合性が取れていない場合、第1の時点のバックアップをリストアすると、問題が発生する。
For example, when restoring using backup data acquired at a certain point in time, it is highly likely that the version of software included in the backup data is different from the version of other software or firmware that constitutes the system. .
The software SA (v1.0) included in the backup data acquired at the first time is in a state of being consistent with the firmware FB (v1.0) at the time of acquiring the backup. Assume that the firmware FB is updated to a new version (v2.0) during operation at the second time point. If the software SA (v1.0) and the firmware FB (v2.0) are not consistent at the second time point, a problem occurs when the backup at the first time point is restored.

この様に、システムを構成するコンポーネント間の依存関係に問題が無いことを確認する必要があるが、複雑な依存関係を全て網羅した状況で整合性を確認することが難しい。また、各コンポーネント間の整合性については、ある時点で障害といった問題が発生した際に、依存するバージョン情報をタイムリーに把握する必要があるが、この様な情報に追随することは手動では困難である。   As described above, it is necessary to confirm that there is no problem in the dependency relationship between the components constituting the system, but it is difficult to confirm the consistency in a situation where all the complicated dependency relationships are covered. In addition, regarding the consistency between components, when a problem such as a failure occurs at a certain point in time, it is necessary to grasp the dependent version information in a timely manner, but it is difficult to follow such information manually. It is.

より具体的には、あるバックアップデータをリストアする際には、以下のようなケースが運用上想定される。第1のケースは、極力バックアップ時の組合せに近い状態で整合性を合わせるケースである。また、第2のケースは、極力既にアップデート済みの状態を活かして整合性を担保する組合せを導き出すケースである。前者の場合は、全てのファームウェアをバックアップ時のバージョンに戻すことが最適と考えられる。しかし、古いバージョンに戻すことが不可能な場合や、古いバージョンへ戻すことに伴って機器やOSの再起動が必要になる場合が想定され、システムに対する影響度も考慮し、適用の可否を検討する必要がある。このように、それぞれの機器の複雑な依存関係を確認しながら、整合性が担保される組合せを導き出すことは困難であり、最適なポリシーに従って最適な解を導き出すには複数のパラメータを考慮する必要があり、困難である。   More specifically, when restoring certain backup data, the following cases are assumed in operation. The first case is a case where consistency is matched in a state as close as possible to the combination at the time of backup. The second case is a case of deriving a combination that ensures consistency by making use of an already updated state as much as possible. In the former case, it is considered optimal to return all firmware to the version at the time of backup. However, there are cases where it is impossible to revert to the old version, or when the device or OS needs to be restarted due to reverting to the old version, considering the impact on the system and considering whether it can be applied. There is a need to. In this way, it is difficult to derive a combination that ensures consistency while confirming the complex dependency of each device, and it is necessary to consider multiple parameters in order to derive the optimal solution according to the optimal policy. It is difficult.

そこで、管理サーバ100は、ソフトウェアのバックアップに加えて、リストア時にファームウェアとの整合性を確保する機能を有する。
具体的には、管理サーバ100は、バックアップ時にシステムを構成するコンポーネント(ハードウェアとソフトウェア)の構成リストと、各バージョンの情報を取得し、バックアップデータの識別情報に対応付けてバックアップ管理テーブル151に記録する。管理サーバ100は、バックアップ管理テーブル151により、過去のバックアップ取得時点を安定稼働していたシステムの構成情報(各コンポーネントのバージョンの組合せ)の実績として使用可能である。また、管理サーバ100は、公開サーバ400からもユーザが安定稼働していると判断した異なる外部システムの構成情報を取得してもよい。更に、管理サーバ100は、ソフトウェアなどのベンダが定期的に実施する動作検証結果(複数の機器を組合せた動作検証)の結果を使用することも可能である。
Therefore, the management server 100 has a function of ensuring consistency with firmware at the time of restoration in addition to software backup.
Specifically, the management server 100 acquires a configuration list of components (hardware and software) constituting the system at the time of backup and information of each version, and associates them with backup data identification information in the backup management table 151. Record. Based on the backup management table 151, the management server 100 can be used as a record of the configuration information (combination of versions of each component) of the system that has been operating stably at the past backup acquisition time point. In addition, the management server 100 may acquire configuration information of different external systems that the user has determined to be operating stably from the public server 400. Furthermore, the management server 100 can also use the results of operation verification results (operation verification combining a plurality of devices) periodically performed by a vendor such as software.

各コンポーネントは動作要件として、依存する他のコンポーネントおよび他のコンポーネントのバージョンが存在する。管理サーバ100は、各コンポーネントの他のコンポーネントとの依存関係を示す依存関係テーブルを保持し、複数のコンポーネントの依存関係を満たす組合せを導き出す。これにより、各コンポーネントについて動作要件を満たすバージョンの組合せを得ることができる。この際に、管理サーバ100は、実際にシステムの運用方針に応じたポリシーに従って、適切な組合せを特定できる。また、管理サーバ100は、特定した組合せのバージョンに合わせるため、既存のソフトウェアやファームウェアのアップデートやダウングレードの実行を可能とする。   Each component has a dependent component and a version of another component as operation requirements. The management server 100 holds a dependency relationship table indicating the dependency relationship between each component and other components, and derives a combination that satisfies the dependency relationships of a plurality of components. Thereby, a combination of versions satisfying the operation requirements for each component can be obtained. At this time, the management server 100 can actually identify an appropriate combination according to a policy according to the system operation policy. Also, the management server 100 can update or downgrade existing software or firmware to match the specified combination version.

上記ポリシーは、ユーザによって予め指定可能である。例えば、最も安定稼働が考えられるのは、バックアップ時と同等のバージョンの組合せであるが、通常はバックアップ時より複数の機器のファームウェアが更新されている可能性がある。この場合、動作要件を満たしつつ、バックアップ時の最も近いバージョンに近づけることや、その他のシステムおよび開発元が組合せ検証として実績がある組合せに近づけるポリシーを予め用意することができる。   The policy can be designated in advance by the user. For example, the most stable operation is considered to be a combination of versions equivalent to those at the time of backup, but normally there is a possibility that the firmware of a plurality of devices has been updated since the time of backup. In this case, it is possible to prepare in advance a policy for satisfying the operation requirements, approaching the closest version at the time of backup, or approaching a combination that other systems and developers have proven as combination verification.

更に、バージョンアップやバージョンダウンを実施すると、該当の装置の再起動が必要な場合が想定される。このため、管理サーバ100は、再起動テーブル191を保持する。例えば、構成されるシステムがクラスター構成であれば、冗長化されているため、システムが許容可能な範囲であれば再起動可能である。逆に、冗長化されていない機器であれば再起動することはシステムが停止することとなり、システムの運用に影響が出る。この様に、システム構成に合わせ、システムへの影響を最小にすることを可能とする方針を予め用意し、コンポーネントのバージョン変更に伴うシステムへの影響を抑えられる。   Furthermore, when version upgrade or version down is performed, it is assumed that the corresponding device needs to be restarted. For this reason, the management server 100 holds the restart table 191. For example, if the system to be configured is a cluster configuration, the system is redundant, and can be restarted if the system is within an allowable range. On the other hand, if the device is not made redundant, restarting will cause the system to stop, affecting the operation of the system. In this way, in accordance with the system configuration, a policy that makes it possible to minimize the influence on the system is prepared in advance, and the influence on the system due to the component version change can be suppressed.

以上のように、管理サーバ100によれば、バックアップ時点の各コンポーネントのバージョンをバックアップデータと関連付けて管理し、業務サーバ200のリストア処理時に復元対象のソフトウェアの復元先のバージョンとの整合性を事前に確認可能にする。これにより、復元後のシステムにおけるソフトウェアやハードウェアの動作に不具合が発生する可能性を減らし、システム全体として安定稼働するように支援できる。また、管理サーバ100は、復元により整合性の取れなくなるコンポーネントを表示する際に、ユーザにより選択されたポリシーに応じて、整合性が保証される組合せを提示することで、コンポーネントのバージョン変更に伴うユーザの作業の省力化を図れる。また、バージョン変更に伴う運用中にシステムに対する影響を抑えられる。   As described above, according to the management server 100, the version of each component at the time of backup is managed in association with the backup data, and the consistency with the restoration destination version of the software to be restored is restored in advance when the business server 200 is restored. Make it possible to confirm. As a result, it is possible to reduce the possibility of problems in the operation of software and hardware in the restored system and to support stable operation of the entire system. In addition, when displaying a component that cannot be consistent due to restoration, the management server 100 presents a combination that guarantees consistency according to the policy selected by the user, thereby accompanying the version change of the component. Labor saving of user's work can be achieved. In addition, the influence on the system can be suppressed during operation due to version change.

なお、第1の実施の形態の情報処理は、処理部12にプログラムを実行させることで実現できる。また、第2の実施の形態の情報処理は、プロセッサ101にプログラムを実行させることで実現できる。プログラムは、コンピュータ読み取り可能な記録媒体63に記録できる。   The information processing according to the first embodiment can be realized by causing the processing unit 12 to execute a program. The information processing according to the second embodiment can be realized by causing the processor 101 to execute a program. The program can be recorded on a computer-readable recording medium 63.

例えば、プログラムを記録した記録媒体63を配布することで、プログラムを流通させることができる。また、プログラムを他のコンピュータに格納しておき、ネットワーク経由でプログラムを配布してもよい。コンピュータは、例えば、記録媒体63に記録されたプログラムまたは他のコンピュータから受信したプログラムを、RAM102やHDD103などの記憶装置に格納し(インストールし)、当該記憶装置からプログラムを読み込んで実行してもよい。   For example, the program can be distributed by distributing the recording medium 63 on which the program is recorded. Alternatively, the program may be stored in another computer and distributed via a network. For example, the computer stores (installs) a program recorded in the recording medium 63 or a program received from another computer in a storage device such as the RAM 102 or the HDD 103, and reads and executes the program from the storage device. Good.

以上の第1,第2の実施の形態を含む実施形態に関し、更に以下の付記を開示する。
(付記1) 整合性を確認済であるソフトウェアのバージョンとファームウェアのバージョンとの組合せの情報を記憶する記憶部と、
対象装置の動作環境を復旧する際に、前記対象装置における前記ソフトウェアの復元先のバージョンと前記対象装置のハードウェアに対応する前記ファームウェアの現在のバージョンとの組合せを確認し、前記記憶部に記憶された前記情報に基づいて、前記ソフトウェアの復元先のバージョンおよび前記ファームウェアの現在のバージョンの少なくとも1つの変更の要否を判定し、変更要と判定すると前記変更のための組合せを特定する処理部と、
を有する情報処理装置。
Regarding the embodiments including the first and second embodiments, the following additional notes are disclosed.
(Supplementary Note 1) A storage unit that stores information on a combination of a software version and a firmware version whose consistency has been confirmed;
When restoring the operating environment of the target device, the combination of the restoration destination version of the software in the target device and the current version of the firmware corresponding to the hardware of the target device is confirmed and stored in the storage unit A processor that determines whether or not it is necessary to change at least one of the restoration destination version of the software and the current version of the firmware based on the information that has been changed, and identifies a combination for the change when the change is determined to be necessary When,
An information processing apparatus.

(付記2) 前記処理部は、指定されたポリシーに応じて、前記ソフトウェアの復元先のバージョンおよび前記ファームウェアの現在のバージョンのうち、変更対象を決定する、付記1記載の情報処理装置。   (Supplementary note 2) The information processing apparatus according to supplementary note 1, wherein the processing unit determines a change target among a restoration destination version of the software and a current version of the firmware according to a designated policy.

(付記3) 前記処理部は、前記ソフトウェアの復元先のバージョンを変更対象に決定すると、前記ファームウェアの現在のバージョンに対して整合性を確認済である前記ソフトウェアのバージョンのうち、最新のバージョンまたは復元先のバージョンとの差が最小のバージョンを、変更後のバージョンとして特定する、付記1または2記載の情報処理装置。   (Additional remark 3) When the said process part determines the version of the restoration | restoration destination of the said software as a change object, the latest version among the versions of the said software which have confirmed the consistency with respect to the current version of the said firmware, or The information processing apparatus according to appendix 1 or 2, wherein the version having the smallest difference from the restoration destination version is specified as the version after the change.

(付記4) 前記処理部は、前記ファームウェアの現在のバージョンを変更対象に決定すると、前記ソフトウェアの復元先のバージョンに対して整合性を確認済である前記ファームウェアのバージョンのうち、最新のバージョンまたは現在のバージョンとの差が最小のバージョンを、変更後のバージョンとして特定する、付記1または2記載の情報処理装置。   (Supplementary Note 4) When the processing unit determines the current version of the firmware to be changed, the processing unit confirms the consistency with the restoration destination version of the software. The information processing apparatus according to appendix 1 or 2, wherein the version having the smallest difference from the current version is specified as the version after the change.

(付記5) 前記処理部は、変更後のバージョンの候補のうち、適用後の前記対象装置の再起動が不要である候補がある場合、前記再起動が不要である前記候補の中から、変更後のバージョンを特定する、付記3または4記載の情報処理装置。   (Supplementary Note 5) If there is a candidate that does not require restart of the target device after application among the candidates for the version after the change, the processing unit changes the candidate from among the candidates that do not require the restart. The information processing apparatus according to attachment 3 or 4, which specifies a later version.

(付記6) 前記ファームウェアは、複数であり、
前記処理部は、前記記憶部に記憶された前記情報に基づいて、複数の前記ファームウェアそれぞれの現在のバージョンに対して整合性を確認済である前記ソフトウェアのバージョン範囲を特定し、前記ソフトウェアの復元後のバージョンが前記バージョン範囲に属するか否かに応じて、前記変更の要否を判定する、
付記1乃至5の何れか1つに記載の情報処理装置。
(Appendix 6) The firmware is plural,
Based on the information stored in the storage unit, the processing unit identifies a version range of the software that has been confirmed to be consistent with a current version of each of the plurality of firmware, and restores the software Determining whether the change is necessary or not, depending on whether a later version belongs to the version range;
The information processing apparatus according to any one of appendices 1 to 5.

(付記7) 前記処理部は、前記記憶部に記憶された前記情報に基づいて、前記ファームウェアの現在のバージョンおよび前記対象装置における他のソフトウェアの現在のバージョンに対して整合性を確認済である前記ソフトウェアのバージョン範囲を特定し、前記ソフトウェアの復元後のバージョンが前記バージョン範囲に属するか否かに応じて、前記変更の要否を判定する、付記1乃至5の何れか1つに記載の情報処理装置。   (Additional remark 7) The said process part has confirmed consistency with respect to the current version of the said firmware, and the current version of the other software in the said target apparatus based on the said information memorize | stored in the said memory | storage part. The version range of the software is specified, and the necessity for the change is determined according to whether the version after restoration of the software belongs to the version range, or any one of appendices 1 to 5 Information processing device.

(付記8) 前記ハードウェアは、前記対象装置の外部にあり、前記対象装置と接続されている外部ハードウェアを含む、付記1乃至7の何れか1つに記載の情報処理装置。
(付記9) 前記処理部は、前記ソフトウェアの復元先のバージョンおよび前記ファームウェアの現在のバージョンの少なくとも1つに対して特定された変更後のバージョンを表示装置により表示させる、付記1乃至8の何れか1つに記載の情報処理装置。
(Supplementary note 8) The information processing device according to any one of supplementary notes 1 to 7, wherein the hardware is outside the target device and includes external hardware connected to the target device.
(Supplementary note 9) Any one of Supplementary notes 1 to 8, wherein the processing unit causes the display device to display a changed version specified for at least one of the restoration destination version of the software and the current version of the firmware. The information processing apparatus as described in any one.

(付記10) 前記処理部は、前記ソフトウェアの復元先のバージョンおよび前記ファームウェアの現在のバージョンの少なくとも1つに対して特定された変更後のバージョンの適用を前記対象装置に指示する、付記1乃至9の何れか1つに記載の情報処理装置。   (Additional remark 10) The said process part instruct | indicates the application of the version after the change specified with respect to at least 1 of the restoration destination version of the said software, and the current version of the said firmware, Additional remark 1 thru | or The information processing apparatus according to any one of 9.

(付記11) 対象装置の動作環境を復旧する際に、前記対象装置におけるソフトウェアの復元先のバージョンと前記対象装置におけるハードウェアに対応するファームウェアの現在のバージョンとの組合せを確認し、
整合性を確認済である前記ソフトウェアのバージョンと前記ファームウェアのバージョンとの組合せの情報に基づいて、前記ソフトウェアの復元先のバージョンおよび前記ファームウェアの現在のバージョンの少なくとも1つの変更の要否を判定し、変更要と判定すると前記変更のための組合せを特定する、
処理をコンピュータに実行させるプログラム。
(Supplementary Note 11) When restoring the operating environment of the target device, confirm the combination of the version of the software restoration destination in the target device and the current version of the firmware corresponding to the hardware in the target device,
Based on information on a combination of the software version and the firmware version whose consistency has been confirmed, it is determined whether at least one of the restoration destination version of the software and the current version of the firmware needs to be changed. When it is determined that the change is necessary, a combination for the change is specified.
A program that causes a computer to execute processing.

10,20 情報処理装置
11 記憶部
12 処理部
21,23a,31 メモリ
22,23b,32 プロセッサ
23 ハードウェア
30 外部ハードウェア
N1 ネットワーク
T1 バージョン管理テーブル
R1 復旧指示
R2,R3 警告
10, 20 Information processing device 11 Storage unit 12 Processing unit 21, 23a, 31 Memory 22, 23b, 32 Processor 23 Hardware 30 External hardware N1 Network T1 Version management table R1 Recovery instruction R2, R3 Warning

Claims (8)

整合性を確認済であるソフトウェアのバージョンとファームウェアのバージョンとの組合せの情報を記憶する記憶部と、
対象装置の動作環境を復旧する際に、前記対象装置における前記ソフトウェアの復元先のバージョンと前記対象装置のハードウェアに対応する前記ファームウェアの現在のバージョンとの組合せを確認し、前記記憶部に記憶された前記情報に基づいて、前記ソフトウェアの復元先のバージョンおよび前記ファームウェアの現在のバージョンの少なくとも1つの変更の要否を判定し、変更要と判定すると前記変更のための組合せを特定する処理部と、
を有する情報処理装置。
A storage unit for storing information on a combination of a software version and a firmware version whose consistency has been confirmed;
When restoring the operating environment of the target device, the combination of the restoration destination version of the software in the target device and the current version of the firmware corresponding to the hardware of the target device is confirmed and stored in the storage unit A processor that determines whether or not it is necessary to change at least one of the restoration destination version of the software and the current version of the firmware based on the information that has been changed, and identifies a combination for the change when the change is determined to be necessary When,
An information processing apparatus.
前記処理部は、指定されたポリシーに応じて、前記ソフトウェアの復元先のバージョンおよび前記ファームウェアの現在のバージョンのうち、変更対象を決定する、請求項1記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the processing unit determines a change target among a restoration destination version of the software and a current version of the firmware according to a designated policy. 前記処理部は、前記ソフトウェアの復元先のバージョンを変更対象に決定すると、前記ファームウェアの現在のバージョンに対して整合性を確認済である前記ソフトウェアのバージョンのうち、最新のバージョンまたは復元先のバージョンとの差が最小のバージョンを、変更後のバージョンとして特定する、請求項1または2記載の情報処理装置。   When the processing unit determines the restoration destination version of the software as a change target, the latest version or the restoration destination version of the software versions whose consistency with the current version of the firmware has been confirmed. The information processing apparatus according to claim 1, wherein the version having the smallest difference from the above is specified as the version after the change. 前記処理部は、前記ファームウェアの現在のバージョンを変更対象に決定すると、前記ソフトウェアの復元先のバージョンに対して整合性を確認済である前記ファームウェアのバージョンのうち、最新のバージョンまたは現在のバージョンとの差が最小のバージョンを、変更後のバージョンとして特定する、請求項1または2記載の情報処理装置。   When the processing unit determines the current version of the firmware as a change target, the latest version or the current version of the firmware versions that have been confirmed to be consistent with the restoration destination version of the software. The information processing apparatus according to claim 1, wherein the version with the smallest difference is specified as the version after the change. 前記処理部は、変更後のバージョンの候補のうち、適用後の前記対象装置の再起動が不要である候補がある場合、前記再起動が不要である前記候補の中から、変更後のバージョンを特定する、請求項3または4記載の情報処理装置。   When there is a candidate that does not need to restart the target device after application among the candidate versions after the change, the processing unit selects a version after the change from the candidates that do not require the restart. The information processing apparatus according to claim 3 or 4, wherein the information processing apparatus is specified. 前記ファームウェアは、複数であり、
前記処理部は、前記記憶部に記憶された前記情報に基づいて、複数の前記ファームウェアそれぞれの現在のバージョンに対して整合性を確認済である前記ソフトウェアのバージョン範囲を特定し、前記ソフトウェアの復元後のバージョンが前記バージョン範囲に属するか否かに応じて、前記変更の要否を判定する、
請求項1乃至5の何れか1項に記載の情報処理装置。
The firmware is plural,
Based on the information stored in the storage unit, the processing unit identifies a version range of the software that has been confirmed to be consistent with a current version of each of the plurality of firmware, and restores the software Determining whether the change is necessary or not, depending on whether a later version belongs to the version range;
The information processing apparatus according to any one of claims 1 to 5.
前記処理部は、前記記憶部に記憶された前記情報に基づいて、前記ファームウェアの現在のバージョンおよび前記対象装置における他のソフトウェアの現在のバージョンに対して整合性を確認済である前記ソフトウェアのバージョン範囲を特定し、前記ソフトウェアの復元後のバージョンが前記バージョン範囲に属するか否かに応じて、前記変更の要否を判定する、請求項1乃至5の何れか1項に記載の情報処理装置。   Based on the information stored in the storage unit, the processing unit has confirmed the consistency with the current version of the firmware and the current version of other software in the target device. 6. The information processing apparatus according to claim 1, wherein a range is specified, and whether or not the change is necessary is determined according to whether or not the version after restoration of the software belongs to the version range. . 対象装置の動作環境を復旧する際に、前記対象装置におけるソフトウェアの復元先のバージョンと前記対象装置におけるハードウェアに対応するファームウェアの現在のバージョンとの組合せを確認し、
整合性を確認済である前記ソフトウェアのバージョンと前記ファームウェアのバージョンとの組合せの情報に基づいて、前記ソフトウェアの復元先のバージョンおよび前記ファームウェアの現在のバージョンの少なくとも1つの変更の要否を判定し、変更要と判定すると前記変更のための組合せを特定する、
処理をコンピュータに実行させるプログラム。
When restoring the operating environment of the target device, confirm the combination of the version of the software restoration destination in the target device and the current version of the firmware corresponding to the hardware in the target device,
Based on information on a combination of the software version and the firmware version whose consistency has been confirmed, it is determined whether at least one of the restoration destination version of the software and the current version of the firmware needs to be changed. When it is determined that the change is necessary, a combination for the change is specified.
A program that causes a computer to execute processing.
JP2017135962A 2017-07-12 2017-07-12 Information processing device and program Pending JP2019020798A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017135962A JP2019020798A (en) 2017-07-12 2017-07-12 Information processing device and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017135962A JP2019020798A (en) 2017-07-12 2017-07-12 Information processing device and program

Publications (1)

Publication Number Publication Date
JP2019020798A true JP2019020798A (en) 2019-02-07

Family

ID=65355664

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017135962A Pending JP2019020798A (en) 2017-07-12 2017-07-12 Information processing device and program

Country Status (1)

Country Link
JP (1) JP2019020798A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021149191A1 (en) * 2020-01-22 2021-07-29
JP7069431B1 (en) * 2021-05-12 2022-05-17 三菱電機株式会社 Data distribution program, server equipment, terminal equipment, data distribution method and data distribution system
JP2022150141A (en) * 2021-03-26 2022-10-07 本田技研工業株式会社 Program update management system, mobile body failure diagnostic device, and program update management method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004355596A (en) * 2003-03-28 2004-12-16 Konica Minolta Holdings Inc Image forming apparatus and image forming program driver management system
JP2009230400A (en) * 2008-03-21 2009-10-08 Fuji Xerox Co Ltd Print system, and unit and program for software introduction

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004355596A (en) * 2003-03-28 2004-12-16 Konica Minolta Holdings Inc Image forming apparatus and image forming program driver management system
JP2009230400A (en) * 2008-03-21 2009-10-08 Fuji Xerox Co Ltd Print system, and unit and program for software introduction

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021149191A1 (en) * 2020-01-22 2021-07-29
WO2021149191A1 (en) * 2020-01-22 2021-07-29 三菱電機株式会社 Service system for updating control program, server device, and method for updating control program in server device
JP2022150141A (en) * 2021-03-26 2022-10-07 本田技研工業株式会社 Program update management system, mobile body failure diagnostic device, and program update management method
JP7434205B2 (en) 2021-03-26 2024-02-20 本田技研工業株式会社 Program update management system, mobile failure diagnosis device, program update management method
JP7069431B1 (en) * 2021-05-12 2022-05-17 三菱電機株式会社 Data distribution program, server equipment, terminal equipment, data distribution method and data distribution system
WO2022239150A1 (en) * 2021-05-12 2022-11-17 三菱電機株式会社 Data distribution program, server equipment, terminal equipment, data distribution method, and data distribution system
US11835937B2 (en) 2021-05-12 2023-12-05 Mitsubishi Electric Corporation Non-transitory computer readable medium storing data distribution program, server apparatus, terminal apparatus, and data distribution system

Similar Documents

Publication Publication Date Title
US8533304B2 (en) Remotely deploying and automatically customizing workstation images
JP4467624B2 (en) Software update management program, software update management apparatus, and software update management method
JP7090657B2 (en) Methods, devices, devices and storage media for upgrading applications
US7310801B2 (en) Servicing a component-based software product throughout the software product lifecycle
US7958210B2 (en) Update management method and update management unit
US7769990B1 (en) Using a monitoring process to update system configuration settings during restore operations
US8584115B2 (en) Automated operating system device driver updating system
US8458392B2 (en) Upgrading a guest operating system of an active virtual machine
US9043778B2 (en) Method and system for upgrading software
US9405630B2 (en) Methods and apparatus to perform site recovery of a virtual data center
US10474445B2 (en) Updating dependent services
US8495609B2 (en) Methods, systems, and computer program products for taking a snapshot of installed software on a data processing system as part of a software update process
US8132186B1 (en) Automatic detection of hardware and device drivers during restore operations
US8146060B2 (en) Data processing system and method for execution of a test routine in connection with an operating system
US8316224B2 (en) Systems and methods for tracking a history of changes associated with software packages and configuration management in a computing system
US7886185B1 (en) Creation of a device database and synthesis of device driver information during dissimilar system restore
US10338910B2 (en) Multi-tenant upgrading
JP2019020798A (en) Information processing device and program
US20180349125A1 (en) Information processing apparatus and program management method
EP2648092A1 (en) Updating method and multi-domain embedded system
JP2008171241A (en) Backup device and restoration method
US20190065168A1 (en) Apparatus and method to shorten software installation time based on a history of file installation
WO2016120989A1 (en) Management computer and rule test method
JP2020119115A (en) Information processing device, information providing program, and information providing system
JP2018018273A (en) Information processing system, information processing apparatus, update control apparatus, and update control program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200409

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20200414

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20200414

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210326

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210413

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20211109