WO2015136621A1 - コンピュータシステムの管理方法および管理装置 - Google Patents

コンピュータシステムの管理方法および管理装置 Download PDF

Info

Publication number
WO2015136621A1
WO2015136621A1 PCT/JP2014/056335 JP2014056335W WO2015136621A1 WO 2015136621 A1 WO2015136621 A1 WO 2015136621A1 JP 2014056335 W JP2014056335 W JP 2014056335W WO 2015136621 A1 WO2015136621 A1 WO 2015136621A1
Authority
WO
WIPO (PCT)
Prior art keywords
update
update procedure
version
computer system
firmware
Prior art date
Application number
PCT/JP2014/056335
Other languages
English (en)
French (fr)
Inventor
淳 北脇
味松 康行
幸徳 坂下
裕 工藤
Original Assignee
株式会社日立製作所
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 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to PCT/JP2014/056335 priority Critical patent/WO2015136621A1/ja
Publication of WO2015136621A1 publication Critical patent/WO2015136621A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Definitions

  • the present invention relates to a technique for updating firmware of modules constituting a computer system.
  • a computer system composed of a plurality of modules each having firmware is known.
  • the version of the firmware can be updated for the purpose of eliminating a problem or adding a function.
  • a combination of firmware versions supported by a vendor or the like may be determined.
  • Japanese Patent Application Laid-Open No. 2004-151820 discloses determining a compatibility between a driver version of a host computer and a control program version of the printer in a printing system including a host computer and a printer connected to the host computer. ing.
  • an object of the present invention is to safely update the firmware version of each module in a computer system composed of a plurality of modules. Another object of the present invention is to update the firmware version of each module without hindering the use of functions in the computer system.
  • a computer system having a plurality of modules each having firmware is managed by the following method.
  • the compatibility information representing the compatibility of the combination between the firmware versions of each module is acquired.
  • the version before updating the firmware of each module is acquired from the computer system.
  • update procedure information representing an update procedure of a plurality of update processes for updating the firmware of each module from the version before update to the version after update is generated.
  • a plurality of update processes are executed by the update procedure represented by the generated update procedure information.
  • the firmware version of each module can be safely updated in a computer system composed of a plurality of modules. Further, according to the present invention, the firmware version of each module can be updated without hindering the use of functions in the computer system.
  • FIG. 1 is a block diagram illustrating a configuration example of a management server according to Embodiment 1.
  • FIG. 3 shows a configuration example of a use function table according to the first embodiment. 3 shows a configuration example of a function correspondence table according to the first embodiment. The example of the production
  • FIG. 3 is a schematic diagram illustrating an overview of processing in the first embodiment. 6 is a flowchart illustrating an example of a support matrix correction process according to the first embodiment. 6 is a flowchart illustrating an example of an update procedure list generation process according to the first embodiment.
  • FIG. 6 is a flowchart illustrating an example of an update script execution process according to the first embodiment.
  • FIG. 10 is a block diagram illustrating a configuration example of a management server according to a second embodiment.
  • the structural example of the utilization function table which concerns on Example 2 is shown.
  • zone table which concerns on Example 2 is shown.
  • the structural example of the update required time table which concerns on Example 2 is shown.
  • FIG. 6 is a schematic diagram showing an outline of processing in Example 2.
  • An example of the update procedure list selection GUI (Graphical User Interface) according to the second embodiment is shown.
  • 12 is a flowchart illustrating an example of a support matrix correction process according to the second embodiment.
  • 12 is a flowchart illustrating an example of an execution candidate extraction process according to the second embodiment.
  • FIG. 1 is a block diagram illustrating a configuration example of the management server 10.
  • the management server 10 manages FW (Firmware) of each of a plurality of modules constituting the computer system 11.
  • the module may be a physical device constituting the computer system 11 or may be a virtual device executed on the computer.
  • the computer system 11 may be a vertically integrated system, for example, a computer system in which a plurality of modules constituting the computer system 11 are provided or supported by the same vendor.
  • the computer system 11 may be one in which a plurality of modules are connected by a predetermined cable or communication network 13 or the like, or may be one in which a plurality of modules are built in a predetermined device.
  • the FW-MM 31 is firmware that operates the management module 15 and implements various functions related to management.
  • the FW-SV 32 is firmware that operates the server module 16, and implements various functions related to the server.
  • the FW-ST 33 is firmware that operates the storage module 17 and realizes various functions related to storage.
  • the repository 12 provides various information to the management server 10.
  • the repository 12 is an external server connected to a communication network 13 such as a WAN (Wide Area Network), and may be operated by a vendor that provides or supports modules and FW.
  • the repository 12 is a server or storage connected to a communication network 13 such as a LAN (Local Area Network), and may be installed in the same facility as the management server 10 and the computer system 11.
  • the repository 12 includes each version of the FW 30 corresponding to each module, a plurality of support matrices 100, and a plurality of function correspondence tables 140.
  • the FW is executed in the installed module and realizes various functions related to the module.
  • the FW may have different functions depending on the version.
  • the support matrix 100 is information indicating which version combination of FW of each module is supported by the vendor in configuring the computer system 11. Details of the support matrix 100 will be described later.
  • the function correspondence table 140 is information indicating which function each version of FW corresponds to. Details of the function correspondence table 140 will be described later.
  • the management server 10 includes a CPU (Central Processing Unit) 21, a memory 22, a communication I / F (Interface) 24, an input / output I / F 25, a storage device 23, and an internal bus 26 that connects these elements. .
  • CPU Central Processing Unit
  • memory a memory 22
  • communication I / F Interface
  • storage device 23 a storage device 23
  • internal bus 26 that connects these elements.
  • the CPU 21 executes various calculations according to the computer program, controls the other elements 22 to 25, and realizes various functions of the management server 10.
  • the memory 22 stores computer programs and data used by the CPU 21.
  • the memory 22 includes, for example, a DRAM (Dynamic Random Access Memory), an MRAM (Magnetic Resistive Random Access Memory), or a FeRAM (Ferroelectric Random Access Memory).
  • the communication I / F 24 is an I / F for connecting the management server 10 to the communication network 13.
  • the communication I / F 24 is an I / F that conforms to a communication standard related to, for example, WAN or LAN.
  • the input / output I / F 25 is an I / F for connecting an input device and an output device to the management server 10.
  • the input device is, for example, a keyboard, a mouse, a touch pad, or a microphone.
  • the output device is, for example, a display or a speaker.
  • the storage device 23 holds various data.
  • the storage device 23 includes, for example, an HDD (Hard Disk Drive) or an SSD (Solid State Drive).
  • the storage device 23 may exist either inside or outside the management server 10.
  • the internal bus 26 is a transmission path through which the elements 21 to 25 can transmit data in both directions.
  • the internal bus 26 is a bus conforming to a standard such as SCSI (Small Computer System Interface) or PCI-Express.
  • the management server 10 stores data relating to the use function table 160, the update procedure list 200, the update script 220, and the correction support matrix 120 in the storage device 23. In addition, the management server 10 executes processing related to the support matrix correction unit 41, the update procedure list generation unit 42, the update script execution unit 43, and the input / output processing unit 44 in the CPU 21. Hereinafter, each data and processing will be described.
  • FIG. 2 shows a configuration example of the use function table 160.
  • the use function table 160 includes information about the FW that operates each module constituting the computer system 11, the function of the FW, and whether or not the function is used in the computer system 11. For example, one use function table 160 is associated with one computer system 11.
  • the used function table 160 includes a module name 161, an FW name 162, a current version 163, a function name 164, and a use status 165 as fields.
  • the module name 161 stores the name of the module.
  • the FW name 162 stores the name of the FW.
  • the current version 163 stores the FW version.
  • the function name 164 stores the name of the function.
  • the usage status 165 stores information on whether or not the function is used (for example, YES or NO).
  • the use function table 160 has one record corresponding to one module constituting the computer system 11.
  • the record 169a in FIG. 2 indicates that the “server module (161)” is operating with the firmware “FW-SV (162)” and the current version of this firmware is “1 (163)”.
  • the firmware “FW-SV” has the functions of “SV functions A to D (164)”.
  • the SV functions A and B are used ( 165: YES), indicating that the SV functions C and D are not used (165: NO).
  • FIG. 3 shows a configuration example of the function correspondence table 140.
  • the function correspondence table 140 which is a type of function information, includes information on functions supported in each version of FW. For example, one function correspondence table 140 is associated with one FW.
  • the function correspondence table 140 includes, for example, a matrix having each function of the FW in the row item 141 and each version of the FW in the column item 142. And, for example, in the column composed of the combination of the function of the row item 141 and the version of the column item 142, if the version corresponds to the function, the column is “ ⁇ ”, and if not, the column The column is “x”. Note that “o” and “x” are managed as predetermined flag data on the computer. The same applies to the following.
  • the function correspondence table 140 in FIG. 3 indicates that the functions related to the FW-SV 32 include SV functions A to D, and the FW-SV 32 includes versions 1 to 5. Further, referring to the column 149a of the function correspondence table 140, it can be seen that the version “5” FW-SV 32 corresponds to “SV functions A to C” and does not correspond to “SV function D”.
  • FIG. 4 shows a configuration example of the support matrix 100 and the modified support matrix 120.
  • the configuration of the support matrix 100 and the modified support matrix 120 which are a type of compatibility information, and the processing of the support matrix modification unit 41 will be described. Further, in the following description, when the description is made without distinguishing the same kind of elements, only the common reference sign among the reference signs is used as in the “support matrix 100”, and the same kind of elements are distinguished and explained. May use all of the reference elements (common code + branch code) as in the “support matrix 100-1”.
  • the support matrix 100 has information about which version combinations are supported (matched) and different version combinations are not supported (not matched) for different FW combinations.
  • the support matrix 100 includes, for example, a matrix having each version of one FW in the row item and each version of the other FW in the column item. For example, in a column consisting of a combination of the FW version of the row item and the FW version of the column item, if the combination is supported, the column is “O”. If the combination is not supported, The column is “x”. In addition, if a part of the supported functions is restricted, the column may be “ ⁇ ”.
  • the support matrix 100-1 in FIG. 4 represents the relationship between each version of FW-SV32 and each version of FW-ST33.
  • the support matrix 100-1 indicates that a combination of version 1 of FW-ST33 and version 1 of FW-SV32 is supported (“ ⁇ ”).
  • the support matrix 100-1 indicates that the combination of version 5 of FW-ST33 and version 1 of FW-SV32 is not supported (“ ⁇ ”).
  • the support matrix 100-1 represents that a combination of version 5 of FW-ST33 and version 2 of FW-SV32 is supported, but some functions are limited (“ ⁇ ”).
  • the support matrix correction unit 41 refers to the use function table 160 and the function correspondence table 140 and corrects the support matrix 100 so as to be adapted to the computer system 11.
  • the support matrix 100 modified in this way is referred to as a modified support matrix 120.
  • the support matrix correction unit 41 refers to the usage status 165 of the usage function table 160 and recognizes the function used by the computer system 11 for each FW. Then, the support matrix correction unit 41, in the support matrix 100, if any one of the FW versions related to the “ ⁇ ” column is not compatible with the function used in the computer system 11, the column is changed to “ ⁇ ”. Change to In other words, “ ⁇ ” indicates that the function used by the computer system 11 may not be used in a combination of the FW version of the column item and the FW version of the line item constituting the column. Show. Whether the version of the FW corresponds to the function used in the computer system 11 can be recognized by referring to the function correspondence table 140 corresponding to the FW. In this way, the support matrix correction unit 41 generates, for example, the correction support matrix 120-1 in FIG.
  • the support matrix modification unit 41 may change the “ ⁇ ” column of the modification support matrix 120-1 to “ ⁇ ”. This is to prevent combinations of FW versions that are partially incompatible with functions used in the computer system 11 from being included in the update procedure list 200 described later.
  • the support matrix modification unit 41 may change the “ ⁇ ” column of the modification support matrix 120-1 to “ ⁇ ”. This is because there is no problem even if a combination of FW versions partially unsupported for functions not used in the computer system 11 is included in the update procedure list 200 described later. In this way, the support matrix correction unit 41 generates, for example, the correction support matrix 120-2 of FIG.
  • the support matrix correction unit 41 changes a part of the column of the correction support matrix 120-2 to “x” as a pre-process for searching for an update procedure from the start version to the end version of each FW described later. Also good. For example, the support matrix correction unit 41 updates the FW-ST 33 from the starting version “1” to the ending version “5” and the FW-SV 32 from the starting version “1” to the ending version “5”. Explore. Here, for example, when the update procedure for version upgrade is searched with the modified support matrix 120-2 in FIG. 4, the version of FW-ST33 is raised to “3” before “ ⁇ ”, and then FW -A path for raising the version of SV32 cannot be found (reference numeral 801). Therefore, the support matrix correction unit 41 generates a correction support matrix 120-3a in which a column (column 805) in which such a state can occur is set to “x” in advance.
  • the update procedure for downgrading the FW-ST33 from the starting version “5” to the ending version “1” and the FW-SV 32 from the starting version “5” to the ending version “1” is searched.
  • the update procedure for downgrading is searched with the modified support matrix 120-3
  • the FW-SV32 is lowered to the version “2” and the FW-ST33 is lowered to the version “4”.
  • a path for lowering the version of SV32 cannot be found (reference numeral 802). Therefore, the support matrix correction unit 41 generates a correction support matrix 120-3b in which columns (reference numerals 806 and 807) in which such a state can occur are set to “x” in advance.
  • the support matrix 100 does not necessarily include “ ⁇ ”, and may include “ ⁇ ” and “X”.
  • the process in the support matrix correction unit 41 does not have to be executed. That is, the update procedure list generation unit 42 to be described later uses the support matrix 100 or the modified support matrix 120 composed of “ ⁇ ” and “x”.
  • the support matrix illustrated above may not be explicitly used as long as an update procedure via a combination of FWs that can confirm compatibility can be searched according to information for managing the compatibility between FWs.
  • FIG. 5 shows a generation example of the update procedure list 200.
  • the process of the update procedure list generation unit 42 and the configuration of the update procedure list 200 which is a kind of update procedure information will be described.
  • the update procedure list 200 includes information on how to update the FW of each module constituting the computer system 11.
  • the update procedure list 200 includes an order 201, an FW name 202, and an update version 203 as fields.
  • the order 201 stores a number indicating the order.
  • the FW name 202 stores the name of the FW.
  • the update version 203 stores versions before and after the update.
  • the update procedure list 200 has one record corresponding to one update process.
  • the update procedure list 200 of FIG. 5 updates “FW-ST (202)” from version “2” to “3” (203) in the update process of “first (201)”.
  • “FW-SV (202)” is updated from version “1” to “3” (203). Then, the update procedure list 200 indicates that the update of all FWs is completed by five update processes.
  • the update procedure list generation unit 42 searches for a procedure (referred to as “update procedure”) for updating the FW related to each module from the start version to the end version based on the correction support matrix 120.
  • update procedure includes the meanings of both version upgrade and version down.
  • the starting version and the ending version of FW-SV32 are “1” and “5”, respectively, the starting version and the ending version of FW-ST33 are “2” and “5”, respectively, and the starting version and the ending point of FW-MM31.
  • the versions are “3” and “5”, respectively.
  • the update procedure is searched for by the following processing, and the update procedure list 200 is generated.
  • the correction support matrix 120 related to the combination of FW-ST33 and FW-SV32 is expressed as “ST ⁇ SV”. The same applies to other FW combinations.
  • the update procedure list generation unit 42 searches for a procedure for upgrading the version of FW-ST33.
  • the update procedure list generation unit 42 refers to “ST ⁇ SV” and “MM ⁇ ST”, and in “ST ⁇ SV”, an intermediate version “4” between the start version “2” and the end version “5”. Is “ ⁇ ”, the fact that FW-ST33 is upgraded to the previous version “3” is registered in the update procedure list 200. That is, “1” is registered in the order 201, “FW-ST” is registered in the FW name 202, and “2 ⁇ 3” is registered in the update version 203.
  • the update procedure list generation unit 42 searches for a procedure for upgrading the FW-SV 32 version.
  • the update procedure list generation unit 42 refers to “ST ⁇ SV” and “MM ⁇ SV”, and in “ST ⁇ SV”, an intermediate version “4” between the start version “1” and the end version “5”. Is “ ⁇ ”, it registers in the update procedure list 200 that the version of the FW-SV 32 is upgraded to the previous version “3”. That is, “2” is registered in the order 201, “FW-SV32” is registered in the FW name 202, and “1 ⁇ 3” is registered in the update version 203.
  • the update procedure list generation unit 42 searches for a procedure for upgrading the version of FW-ST33.
  • the update procedure list generation unit 42 refers to “ST ⁇ SV” and “MM ⁇ ST”, and in either of “ST ⁇ SV” and “MM ⁇ ST”, from the above-mentioned halfway version “3” to the end point of ST Since there is no “x” before the version “5”, the fact that the FW-ST 33 is upgraded to the end point version “5” is registered in the update procedure list 200. That is, “3” is registered in the order 201, “FW-ST33” is registered in the FW name 202, and “3 ⁇ 5” is registered in the update version 203.
  • the update procedure list generation unit 42 searches for a procedure for upgrading the version of the FW-MM 31.
  • the update procedure list generation unit 42 refers to “MM ⁇ SV” and “MM ⁇ ST”, and in both “MM ⁇ SV” and “MM ⁇ ST”, the start version “3” to the end version “5”. Since there is no “x” before, the fact that the FW-MM 31 is upgraded to the end point version “5” is registered in the update procedure list 200. That is, “4” is registered in the order 201, “FW-MM31” is registered in the FW name 202, and “3 ⁇ 5” is registered in the update version 203.
  • the update procedure list generation unit 42 searches for a procedure for upgrading the version of the FW-SV 32.
  • the update procedure list generation unit 42 refers to “ST ⁇ SV” and “MM ⁇ SV”, and in either of “ST ⁇ SV” and “MM ⁇ SV”, the update version list generation unit 42 changes the above-mentioned intermediate version “3” to the end point version “3”. Since there is no “x” between “5” and “5”, the fact that the FW-SV 32 is upgraded to the end point version “5” is registered in the update procedure list 200. That is, “5” is registered in the order 201, “FW-SV32” is registered in the FW name 202, and “3 ⁇ 5” is registered in the update version 203.
  • update procedure list generation unit 42 may search for update procedures other than those described above and generate a plurality of different update procedure lists 200.
  • the update procedure list generation unit 42 can generate the update procedure list 200 that upgrades all of the FW-SV 32, FW-ST 33, and FW-MM 31 to the end point version.
  • the update procedure list 200 is not a combination of unsupported versions and a combination of versions whose functions are limited at any time. As a result, it is possible to avoid the possibility that the computer system 11 operates with a combination of FW versions that are not supported. Further, it is possible to avoid the possibility that the function used by the computer system 11 becomes unavailable during the FW update of each module. Returning to the description of FIG.
  • the update script execution unit 43 generates an update script 220 for updating the FW of each module of the computer system 11 based on the update procedure list 200. Then, the update script execution unit 43 executes the generated update script 220 to update (upgrade or downgrade) the FW of each module of the computer system 11.
  • the update script 220 may be executed by the management server 10 or may be executed by the computer system 11. Further, when the update script execution unit 43 fails to update a part of the FW, the update script execution unit 43 may execute a rollback process for returning the part or all of the FWs to the original version.
  • the input / output processing unit 44 controls the input / output I / F 25 to perform processing related to input and output in the management server 10. For example, the input / output processing unit 44 generates a GUI for a user to input an instruction or a parameter to the management server 10, a GUI for presenting a processing result in the management server 10 to the user, and the like.
  • the input / output processing unit 44 may generate and display a GUI capable of selecting any one of the update procedure lists 200 among the plurality of update procedure lists 200 generated by the update procedure list generating unit 42. Then, the input / output processing unit 44 may notify the update script execution unit 43 of one update procedure list 200 selected through this GUI. The update script execution unit 43 may generate the update script 220 based on the notified one update procedure list 200.
  • the input / output processing unit 44 may generate and display a GUI that can specify the FW end point version of each module in the computer system 11. Then, the input / output processing unit 44 may notify the support matrix correction unit 41 and the update procedure list generation unit 42 of the FW end point version of each module specified through this GUI.
  • the input / output processing unit 44 may generate and display a GUI that can specify the FW end point version of any module in the computer system 11.
  • the support matrix correction unit 41 and the update procedure list generation unit 42 automatically select a version that is supported in combination with the end version of the specified FW for the other FW that has not been specified. You may set the version.
  • the input / output processing unit 44 may generate and display a GUI that can specify that the FW of all modules in the computer system 11 is updated to the latest version.
  • the support matrix correction unit 41 and the update procedure list generation unit 42 may automatically set the latest version of each FW as the end point version.
  • FIG. 6 is a schematic diagram showing an overview of the overall processing in the first embodiment.
  • the support matrix correction unit 41 recognizes FW (FW-MM31, FW-SV32, and FW-ST33) corresponding to each module constituting the computer system 11.
  • the support matrix modification unit 41 acquires each support matrix 100 (“SV ⁇ ST”, “ST ⁇ MM”, and “MM ⁇ SV”) related to the recognized FW from the repository 12.
  • the support matrix correction unit 41 corrects the version combination column that does not correspond to the function used by the computer system 11, and generates each correction support matrix 120.
  • the update procedure list generation unit 42 generates one or more update procedure lists 200 based on the information “O” and “X” of each correction support matrix 120.
  • the update script execution unit 43 selects one update procedure list 200 to be used for update from one or more update procedure lists 200. This selection may be made by the user or automatically by the management server 10. For example, the input / output processing unit 44 may display an update procedure list selection GUI 700 as shown in FIG. For example, the update script execution unit 43 may automatically select the update procedure list 200 with the smallest number of update processes (the number of the order 201), or refer to an update required time table 320 shown in FIG. The update procedure list 200 that minimizes the update required time may be automatically selected.
  • the update script execution unit 43 generates the update script 220 based on the selected update procedure list 200.
  • the update script execution unit 43 executes the generated update script 220 to update the FW of each module constituting the computer system 11.
  • FIG. 7 is a flowchart showing an example of the support matrix correction process. Details of the process for generating the correction support matrix 120 will be described below.
  • the support matrix correction unit 41 acquires the support matrix 100 and the function correspondence table 140 from the repository 12 and stores them in the storage device 23 (S101).
  • the support matrix correction unit 41 acquires the starting version of each FW from the computer system 11 (S102).
  • the support matrix correction unit 41 recognizes the end point version of each FW based on an instruction from the user or automatically (S103).
  • the support matrix correction unit 41 refers to the use function table 160, the function correspondence table 140, and the like, generates a correction support matrix 120 from the support matrix 100, stores it in the storage device 23 (S104), and ends this processing (END). ). Details of this step are as shown in FIG. Note that it is possible to determine which of the correction support matrices 120-3a and 120-3b in FIG.
  • the correction support matrix 120 is generated by the above processing. Further, this flow only needs to be performed at least before the update procedure list generation process of FIG. 8, the designation of the end point Ver from the user is not input, and the correction support matrix 120-3a or 120-3b of FIG. If it is not necessary to generate S, the steps S101 and S102 may not be executed.
  • FIG. 8 is a flowchart showing an example of the update procedure list generation process. Details of processing for generating one or more update procedure lists 200 will be described below.
  • the update procedure list generation unit 42 acquires the starting version of each FW from the computer system 11 (S201).
  • the update procedure list generation unit 42 recognizes the end point version of each FW based on an instruction from the user or automatically (S202).
  • S102 to S103 When the support matrix correction unit 41 executes S102 to S103, S201 to S202 may not be executed.
  • the update procedure list generation unit 42 repeats S203 to S230 for the number of FWs (S203).
  • the update procedure list generation unit 42 selects one FW as a starting point among unselected items (S204).
  • the update procedure list generation unit 42 sets (initializes) “1” in the order counter corresponding to the order 201 of the update procedure list 200 (S205).
  • the update procedure list generation unit 42 recognizes the starting version of the FW being selected in S204 (S206).
  • the update procedure list generation unit 42 determines whether or not “x” exists between the starting point or the halfway version of the selected FW and the ending version in any of the correction support matrices 120 (S207).
  • the update procedure list generation unit 42 determines the order counter, the selected FW, and an intermediate version before “ ⁇ ” of the selected FW. Are registered in the update procedure list 200 (S210). Then, the update procedure list generation unit 42 adds “1” to the order counter (S211). Then, the update procedure list generation unit 42 selects the FW and version opposite to the selected FW in the correction support matrix 120 that is “x” with respect to the selected FW (S212), and returns to S207. .
  • the update procedure list generation unit 42 displays the order counter, the selected FW, and the end version of the selected FW in the update procedure list 200. (S220). Then, the update procedure list generation unit 42 determines whether all the FWs have reached the end point version (S221).
  • the update procedure list generation unit 42 When all the FWs have reached the end point version (S221: YES), the update procedure list generation unit 42 outputs the update procedure list 200 (S213), and proceeds to S230.
  • the update procedure list generation unit 42 determines whether or not the search for all FWs has been completed (S222).
  • the update procedure list generation unit 42 selects one FW that has not yet reached the end point version (S223). Then, the update procedure list generation unit 42 adds “1” to the order counter (S224), and returns to S207.
  • the update procedure list generation unit 42 determines whether one or more update procedure lists 200 have been generated (S231).
  • the update procedure list generation unit 42 ends this processing (END) when one or more update procedure lists 200 are generated (S231: YES).
  • the update procedure list generation unit 42 When no update procedure list 200 has been generated (S231: NO), the update procedure list generation unit 42 outputs an error to that effect (S232) and ends this processing (END). Through the above processing, one or more update procedure lists 200 are generated.
  • FIG. 9 is a flowchart showing an example of the update script execution process. Details of the process for generating the update script 220 and the process for updating the FW will be described below.
  • the update script execution unit 43 selects one update procedure list 200 from one or more update procedure lists 200 (S301). This selection may be executed by presenting the procedure searched by the flow of FIG. 8 to the user via the GUI of FIG. 15 illustrated later and receiving any selection instruction. Alternatively, a policy may be set so that update procedure information with the smallest number of update processes is selected, and the update script execution unit 43 may perform FW update with the least number of searched procedures. Alternatively, an update required time table 320 shown in FIG. 13 to be described later is provided in the configuration of the first embodiment, and the required time in all searched procedures is calculated, and the update script execution unit 43 performs the procedure with the minimum required time. You may choose.
  • the update script execution unit 43 generates an update script 220 based on the selected update procedure list 200 (S302).
  • the update script execution unit 43 selects the update process of the next step (the first step is the first step) in the generated update script 220 as an execution target (S303). For example, one update process in the update script 220 corresponds to one record in the update procedure list 200.
  • the update script execution unit 43 acquires the version of FW instructed by the update process being selected from the repository 12 (S304). The update script execution unit 43 installs the acquired version of FW in the target module (S305). That is, the FW version of the target module is updated. The update script execution unit 43 determines whether or not the FW has been successfully updated (S306).
  • the update script execution unit 43 determines whether or not the update has been completed for all the FWs (S307). If there is an FW that has not yet been updated (S307: NO), the update script execution unit 43 returns to S303. When updating of all FWs is completed (S307: YES), the input / output processing unit 44 displays that all FWs have been successfully updated (S308). Then, the update script execution unit 43 ends this process (END).
  • the update script execution unit 43 executes a rollback process that returns the FW installed in the target module in S305 to the version of the FW before the update (S310). Then, the update script execution unit 43 determines whether the rollback process is successful (S311).
  • the input / output processing unit 44 displays an error indicating that the FW update has failed and the rollback process has been successful (S312), and ends this process (END). .
  • the input / output processing unit 44 displays an error indicating that the FW update has failed and the rollback process has also failed (S313), and ends this process (END). .
  • the FW of each module in the computer system 11 is updated.
  • FIG. 10 is a block diagram illustrating a configuration example of the management server 10 according to the second embodiment.
  • the repository 12 includes a support matrix 100, an FW 30 for each version corresponding to each module, a function correspondence table 140, and an update required time table 320. Details of the update required time table 320 will be described later.
  • the management server 10 retains data related to the use function table 360, the function time zone table 300, the update procedure list 200, the update script 220, and the time-based correction support matrix 320 in the storage device 23. In addition, the management server 10 performs processing related to the support matrix correction unit 41, the update procedure list generation unit 42, the execution candidate extraction unit 45, the update script execution unit 43, and the input / output processing unit 44 in the CPU 21. Execute.
  • the support matrix correction unit 41 the update procedure list generation unit 42, the execution candidate extraction unit 45, the update script execution unit 43, and the input / output processing unit 44 in the CPU 21. Execute.
  • data and processing different from those in the first embodiment will be described.
  • FIG. 11 shows a configuration example of the use function table 360 according to the second embodiment.
  • the use function table 360 also has information on a time zone in which the function is used in the computer system 11.
  • the usage function table 360 includes, as fields, a module name 161, an FW name 162, a current version 163, a function name 164, a usage status 165, a start time 166, and an end time 167.
  • the module name 161, FW name 162, current version 163, function name 164, and usage status 165 are as described in FIG.
  • the time is stored in the start time 166 and the end time 167.
  • the record 369a in FIG. 11 indicates that the “server module (161)” is operating with the firmware “FW-SV (162)”, and the current version of this FW is “1 (163)”.
  • the firmware “FW-SV” has the functions “SV functions A to D (164)”, and the SV functions A and B are used in the computer system 11 corresponding to the use function table 360 ( 165: YES), indicating that the SV functions C and D are not used (165: NO).
  • “SV function A (165)” is used from “23:00 (166)” to “5:00 (167)”
  • “SV function B (165)” is used from “2:00 (166)”. It shows that it is used until “5:00 (167)”.
  • FIG. 12 shows a configuration example of the function time zone table 300.
  • the function time zone table 300 includes information regarding whether or not each function is used in each function time zone.
  • the function time zone is set according to the start time 166 and end time 167 of each function in the use function table 360.
  • the functional time zone table 300 includes, for example, a matrix having a function used in the computer system 11 in the row item 301 and a functional time zone in the column item 302. And, for example, in the column composed of the combination of the function of the row item 301 and the function time zone of the column item 302, if the function is used in the function time zone, “ ⁇ ” is selected. Is the column “x”.
  • the SV function A, the SV function B, and the ST function A are all during the function time zone “2:00 to 5:00”. You can see that it is used. Further, referring to the column 309b, it is understood that the SV function A and the SV function B are not used and the ST function A is used during the function time zone “5:00 to 23:00”.
  • FIG. 13 shows a configuration example of the update required time table 320.
  • the update required time table 320 includes information on an approximate time required to update the module FW from a certain version to another certain version.
  • the update required time table 320 includes FW name 321, update version 322, and required time 323 as fields.
  • the FW name 321 stores the name of the FW.
  • the update version 322 stores a version before update and a version after update.
  • the required time 323 stores an approximate time required for updating.
  • the update required time table 320 has one record for each FW version update pattern.
  • the record 329a in FIG. 13 indicates that approximately “20 minutes (323)” is required to update (322) the version of “FW-SV (321)” from “1” to “2”.
  • FIG. 14 is a schematic diagram showing an overview of the entire processing in the second embodiment. Hereinafter, an overview of the entire process executed by the management server 10 in the second embodiment and the function of the execution candidate extraction unit 45 will be described.
  • the support matrix correction unit 41 recognizes FW (FW-MM31, FW-SV32, and FW-ST33) corresponding to each module constituting the computer system 11.
  • the support matrix correction unit 41 acquires the support matrix 100 (“SV ⁇ ST”, “ST ⁇ MM”, and “MM ⁇ SV”) related to the recognized FW from the repository 12.
  • the support matrix correction unit 41 generates the function time zone table 300 based on the use start time 166 and end time 167 of each function in the use function table 360.
  • the functional time zone table 300 has functional time zones A and B.
  • the support matrix correction unit 41 corrects the column of the combination of versions not corresponding to the functions used by the computer system 11 in the function time zone for each support matrix 100. Then, the correction support matrices 320A and 320B for each time zone are generated.
  • the update procedure list generation unit 42 selects the function time zone A (B) based on “O” and “X” of the correction support matrix 320A (320B) for each time zone corresponding to the function time zone A (B). ) To generate one or more update procedure lists 200A (200B).
  • the execution candidate extraction unit 45 updates from the one or more update procedure lists 200A (200B) corresponding to the function time zone A (B) to complete the update within the range of the function time zone A (B).
  • a list 200AA (200BB) is extracted and registered as an execution candidate. That is, the execution candidate extraction unit 45 refers to the update required time table 320 and calculates an approximate time required for updating each update procedure list 200 (referred to as “update required time”).
  • the execution candidate extraction unit 45 then updates the update required time within the function time zone within one or more update procedure lists 200 corresponding to the function time zone (function time zone> update required time zone).
  • the procedure list 200 is extracted and registered as an execution candidate.
  • the update script execution unit 43 selects, for example, one update procedure list 200AA used for update from one or more update procedure lists 200AA and 200BB registered in the execution candidates. This selection may be made by the user or automatically by the management server 10. For example, as shown in FIG. 15 described later, the input / output processing unit 44 may generate and display an update procedure list selection GUI and allow the user to select one update procedure list 200 used for updating. For example, the update script execution unit 43 may automatically select the update procedure list 200 having the smallest number of update processes (the number of the order 201) or automatically select the update procedure list 200 having the shortest update time. You may choose.
  • the update script execution unit 43 generates the update script 220 based on the selected update procedure list 200AA.
  • the update script execution unit 43 starts executing the generated update script 220 within the range of the functional time zone A corresponding to the selected update procedure list 200AA (for example, the start time of the functional time zone A). Then, the FW of each module constituting the computer system 11 is updated.
  • FIG. 15 shows an example of the configuration of the update procedure list selection GUI 700.
  • the update procedure list selection GUI 700 is a GUI for selecting one update procedure list 200 used for update from a plurality of update procedure lists 200.
  • the update procedure list selection GUI 700 is generated by, for example, the input / output processing unit 44.
  • the update procedure list selection GUI 700 includes, for example, one or more update procedure lists 701a and 701b, list selection areas 702a and 702b corresponding to the update procedure lists 701a and 702b, and an OK button 703, respectively.
  • the execution time zones 705a and 705b and the required update times 706a and 706b may be displayed.
  • time zones 705a and 705b time zones in which the update procedure lists 701a and 701b are scheduled to be executed are displayed.
  • functional time zones corresponding to the update procedure lists 701a and 701b may be displayed, or the time at which the update is scheduled to start may be displayed.
  • the update required times 706a and 706b indicate how much time is required when the FW of each module constituting the computer system 11 is updated by the update script 220 generated based on the update procedure lists 701a and 701b. Is done.
  • the update required times 706 a and 706 b can be calculated by referring to the update required time table 320.
  • the update procedure list selection GUI 700 shown in FIG. 15 when the user selects the list selection region 702b among the list selection regions 702a and 702b and presses the OK button 703, the update procedure list 702b is selected.
  • the update script execution unit 43 generates an update script 220 corresponding to the selected update procedure list 702b. Then, the update script execution unit 43 executes the generated update script 220 so that the update is completed between “5:00 and 23:00 (705b)”.
  • the update processing script 43 may execute the update from “5:00” which is the start time of the execution time zone. In the case of the first embodiment, elements other than the execution time zones 705a and 705b and the update required times 706a and 706b may be displayed.
  • FIG. 16 is a flowchart illustrating an example of a support matrix correction process according to the second embodiment.
  • the support matrix correction unit 41 acquires the support matrix 100, the function correspondence table 140, and the update required time table 320 from the repository 12 (S401).
  • the support matrix correction unit 41 generates a function time zone table 300 based on the use function table 360 and the function correspondence table 140 (S402).
  • the support matrix correction unit 41 acquires the starting version of each FW from the computer system 11 (S403).
  • the support matrix correction unit 41 recognizes the end point version of each FW based on an instruction from the user or automatically (S404).
  • S403 and S404 are not essential as in the first embodiment.
  • the support matrix correction unit 41 repeats S405 to S408 for the number of function time zones (S405).
  • the support matrix correction unit 41 selects one function time zone among the unselected items (S406).
  • the support matrix correction unit 41 generates a time-based correction support matrix in consideration of the function used in the selected function time zone (S407). For example, in the support matrix 110-1 in FIG. 4, the support matrix correction unit 41 changes the “ ⁇ ” column corresponding to the function used in the selected function time zone to “ ⁇ ”. A correction support matrix for each time period corresponding to the correction support matrix 120-1 is generated.
  • the support matrix correction unit 41 ends this processing (END) after completing the repetition of S405 to S408 (S408). Through the above processing, a time-based correction support matrix for each functional time zone is generated.
  • FIG. 17 is a flowchart showing an example of the execution candidate extraction process.
  • the execution candidate extraction unit 45 repeats S501 to S509 for the number of function time zones (S501). In the execution candidate extraction, one function time zone is selected among unselected (S502).
  • the execution candidate extraction unit 45 repeats S503 to S508 for the number of update procedure lists 200 corresponding to the selected function time zone (S503).
  • the execution candidate extraction unit 45 selects one update procedure list 200 from among the unselected update procedure lists 200 corresponding to the selected function time zone (S504).
  • the execution candidate extraction unit 45 calculates the update required time of the update procedure list 200 being selected based on the update required time table 320 (S505).
  • the execution candidate extraction unit 45 determines whether or not the required update time falls within the range of the selected function time zone (S506). When the update required time falls within the range of the selected function time zone (S506: YES), the execution candidate extraction unit 45 registers the selected update procedure list 200 and the function time zone as execution candidates (S507). , The process proceeds to S508. If the update required time does not fall within the range of the selected function time zone (S506: NO), the execution candidate extraction unit 45 proceeds directly to S508.
  • the execution candidate extraction unit 45 completes the repetition of S503 to S508, and further completes the repetition of S501 to S509, and then ends this processing (END).
  • the update procedure list 200 that can be updated within the function time zone is registered as an execution candidate.
  • the update procedure list 200 registered in the execution candidate is displayed on, for example, the update procedure list selection GUI 700 shown in FIG. 15, and one update procedure list 200 is selected by the user.
  • the process for generating the update script 220 from the selected update procedure list 200 and the process for updating the FW are the same as in the first embodiment.
  • the update script 220 is not always executed immediately, but is executed so that the update is completed within the function time zone corresponding to the selected update procedure list 200.
  • the update script 220 is started at the start time of the function time zone.
  • an effective FW update procedure can be searched and executed in consideration of the time zone.
  • the FW can be updated without restricting the use of the user's function.
  • Updates can be completed in fewer procedures or times.
  • Management server 11 Computer system 12: Repository 15, 16, 17: Module 30, 31, 32, 33: Firmware 100: Support matrix

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

 それぞれがファームウェアを有する複数のモジュールを有するコンピュータシステムを以下の方法で管理する。各モジュールのファームウェアのバージョン間の組み合わせの適合性を表す適合性情報を取得する。コンピュータシステムから、各モジュールのファームウェアの更新前のバージョンを取得する。各モジュールのファームウェアの更新後のバージョンを決定する。適合性情報に基づいて、各モジュールのファームウェアを更新前のバージョンから更新後のバージョンへ更新するための複数の更新処理の更新手順を表す更新手順情報を生成する。生成された更新手順情報が表す更新手順で複数の更新処理を実行する。

Description

コンピュータシステムの管理方法および管理装置
 本発明は、コンピュータシステムを構成するモジュールのファームウェアを更新する技術に関する。
 それぞれがファームウェアを有する複数のモジュールから構成されるコンピュータシステムが知られている。ファームウェアのバージョンは、不具合の解消や機能の追加などの目的で更新され得る。コンピュータシステムを構成する複数のモジュールが互いに連携して動作する場合、ベンダ等によってサポートされている各ファームウェアのバージョンの組み合わせが決まっていることがある。
 特許文献1には、ホストコンピュータと、そのホストコンピュータに接続されたプリンタとからなる印刷システムにおいて、ホストコンピュータのドライバのバージョンと、プリンタにおける制御プログラムのバージョンとの適合性を判断することが開示されている。
特開2001-27940号公報
 高可用性が要求されるコンピュータシステムでは、システムを稼働させたまま各モジュールのファームウェアを順次、新バージョンに更新することが考えられる。この場合、コンピュータシステムを構成する全てのモジュールのファームウェアが新バージョンに更新される途中の時点では、或るモジュールは旧バージョンのファームウェアで稼働し、別の或るモジュールは新バージョンのファームウェアで稼働するといった状態が発生し得る。この旧バージョンと新バージョンの組み合わせがサポート対象外であると、各モジュールから構成されるコンピュータシステム全体の稼働に不具合が発生するおそれがある。また、コンピュータシステムにおいて利用中の或る機能がこの旧バージョンと新バージョンの組み合わせでは利用できないものである場合、コンピュータシステムは、ファームウェアの更新の途中の時点において、この機能を利用できないおそれがある。
 そこで、本発明の目的は、複数のモジュールから構成されるコンピュータシステムにおいて、各モジュールのファームウェアのバージョンを安全に更新することにある。また、本発明の別の目的は、コンピュータシステムにおける機能の利用を妨げることなく、各モジュールのファームウェアのバージョンを更新することにある。
 一実施例として、それぞれがファームウェアを有する複数のモジュールを有するコンピュータシステムを、以下の方法で管理する。各モジュールのファームウェアのバージョン間の組み合わせの適合性を表す適合性情報を取得する。コンピュータシステムから、各モジュールのファームウェアの更新前のバージョンを取得する。各モジュールのファームウェアの更新後のバージョンを決定する。適合性情報に基づいて、各モジュールのファームウェアを更新前のバージョンから更新後のバージョンへ更新するための複数の更新処理の更新手順を表す更新手順情報を生成する。その生成された更新手順情報が表す更新手順で複数の更新処理を実行する。
 本発明によれば、複数のモジュールから構成されるコンピュータシステムにおいて、各モジュールのファームウェアのバージョンを安全に更新することができる。また、本発明によれば、コンピュータシステムにおける機能の利用を妨げることなく、各モジュールのファームウェアのバージョンを更新することができる。
実施例1に係る管理サーバの構成例を示すブロック図である。 実施例1に係る利用機能テーブルの構成例を示す。 実施例1に係る機能対応テーブルの構成例を示す。 実施例1に係る修正サポートマトリックスの生成例を示す。 実施例1に係る更新手順リストの生成例を示す。 実施例1における処理の概要を示す模式図である。 実施例1に係るサポートマトリックス修正処理の一例を示すフローチャートである。 実施例1に係る更新手順リスト生成処理の一例を示すフローチャートである。 実施例1に係る更新スクリプト実行処理の一例を示すフローチャートである。 実施例2に係る管理サーバの構成例を示すブロック図である。 実施例2に係る利用機能テーブルの構成例を示す。 実施例2に係る機能時間帯テーブルの構成例を示す。 実施例2に係る更新所要時間テーブルの構成例を示す。 実施例2における処理の概要を示す模式図である。 実施例2に係る更新手順リスト選択用GUI(Graphical User Interface)の一例を示す。 実施例2に係るサポートマトリックス修正処理の一例を示すフローチャートである。 実施例2に係る実行候補抽出処理の一例を示すフローチャートである。
 以下、一実施例を説明する。
 以下の説明では、「×××テーブル」、「×××マトリックス」又は「×××リスト」の表現にて情報を説明することがあるが、情報は、どのようなデータ構造で表現されていてもよい。すなわち、情報がデータ構造に依存しないことを示すために、「×××マトリックス」又は「×××リスト」を「×××情報」と呼ぶことができる。
 図1は、管理サーバ10の構成例を示すブロック図である。
 管理サーバ10は、コンピュータシステム11を構成する複数のモジュールの各々のFW(Firmware)を管理する。モジュールは、コンピュータシステム11を構成する物理的なデバイスであっても良いし、コンピュータ上で実行される仮想的なデバイスであっても良い。コンピュータシステム11は、垂直統合型システム、例えば、そのコンピュータシステム11を構成する複数のモジュールが同一のベンダによって提供又はサポートされているコンピュータシステムであってもよい。コンピュータシステム11は、複数のモジュールが所定のケーブル又は通信ネットワーク13等で接続されたものであってもよいし、複数のモジュールが所定の装置に内蔵されたものであってもよい。
 図1におけるコンピュータシステム11は、管理に関する機能を有する管理モジュール15と、サーバに関する機能を有するサーバモジュール16と、ストレージに関する機能を有するストレージモジュール17とによって構成されている。FW-MM31は、管理モジュール15を稼働させるファームウェアであり、管理に関する様々な機能を実現する。FW-SV32は、サーバモジュール16を稼働させるファームウェアであり、サーバに関する様々な機能を実現する。FW-ST33は、ストレージモジュール17を稼働させるファームウェアであり、ストレージに関する様々な機能を実現する。
 リポジトリ12は、管理サーバ10に様々な情報を提供する。リポジトリ12は、WAN(Wide Area Network)などの通信ネットワーク13に接続された外部のサーバであって、モジュール及びFWを提供又はサポートするベンダによって運営されてもよい。若しくは、リポジトリ12は、LAN(Local Area Network)などの通信ネットワーク13に接続されたサーバ又はストレージであって、管理サーバ10及びコンピュータシステム11と同じ施設内に設置されてもよい。リポジトリ12は、各モジュールに対応する各バージョンのFW30と、複数のサポートマトリックス100と、複数の機能対応テーブル140とを有する。
 FWは、インストールされたモジュール内で実行され、そのモジュールに係る様々な機能を実現する。FWは、バージョンによって異なる機能を有してよい。
 サポートマトリックス100は、コンピュータシステム11を構成するにあたり、各モジュールのFWの何れのバージョンの組み合わせがベンダによってサポートされているかを表す情報である。サポートマトリックス100の詳細については後述する。
 機能対応テーブル140は、各バージョンのFWが何れの機能に対応しているかを表す情報である。機能対応テーブル140の詳細については後述する。
 管理サーバ10は、CPU(Central Processing Unit)21と、メモリ22と、通信I/F(Interface)24と、入出力I/F25と、記憶デバイス23と、それらの要素を接続する内部バス26と、を備える。
 CPU21は、コンピュータプログラムに従って様々な演算を実行し、他の要素22乃至25を制御し、管理サーバ10の有する様々な機能を実現する。
 メモリ22には、CPU21が使用するコンピュータプログラム及びデータなどが記憶される。メモリ22は、例えば、DRAM(Dynamic Random Access Memory)、MRAM(Magnetoresistive random access memory)又はFeRAM(Ferroelectric random access memory)などで構成される。
 通信I/F24は、管理サーバ10を通信ネットワーク13に接続するためのI/Fである。通信I/F24は、例えば、WAN又はLANなどに関する通信規格に準拠するI/Fである。
 入出力I/F25は、入力デバイス及び出力デバイスを管理サーバ10に接続するためのI/Fである。入力デバイスは、例えば、キーボード、マウス、タッチパッド又はマイクなどである。出力デバイスは、例えば、ディスプレイ又はスピーカなどである。
 記憶デバイス23には、様々なデータが保持される。記憶デバイス23は、例えば、HDD(Hard Disk Drive)又はSSD(Solid State Drive)などで構成される。記憶デバイス23は、管理サーバ10の内部及び外部の何れに存在しても良い。
 内部バス26は、要素21乃至25が双方向にデータ伝送可能な伝送路である。内部バス26は、例えば、SCSI(Small Computer System Interface)又はPCI-Expressなどの規格に準拠するバスである。
 管理サーバ10は、記憶デバイス23に、利用機能テーブル160と、更新手順リスト200と、更新スクリプト220と、修正サポートマトリックス120と、に係るデータを保持する。また、管理サーバ10は、CPU21において、サポートマトリックス修正部41と、更新手順リスト生成部42と、更新スクリプト実行部43と、入出力処理部44と、に係る処理を実行する。以下、各データ及び処理について説明する。
 図2は、利用機能テーブル160の構成例を示す。
 利用機能テーブル160は、コンピュータシステム11を構成する各モジュールを稼働させるFW、そのFWの有する機能、およびその機能がコンピュータシステム11において利用されているか否か、に関する情報を有する。例えば、1のコンピュータシステム11に、1の利用機能テーブル160が対応付けられる。
 利用機能テーブル160は、フィールドとして、モジュール名161と、FW名162と、現バージョン163と、機能名164と、利用状況165とを有する。モジュール名161には、モジュールの名称が格納される。FW名162には、FWの名称が格納される。現バージョン163には、FWのバージョンが格納される。機能名164には、機能の名称が格納される。利用状況165には、機能が利用されているか否かの情報(例えば、YES又はNO)が格納される。
 利用機能テーブル160は、コンピュータシステム11を構成する1のモジュールに対応する1のレコードを有する。例えば、図2のレコード169aは、「サーバモジュール(161)」はファームウェア「FW-SV(162)」で稼働しており、このファームウェアの現在のバージョンは「1(163)」であることを示す。そして、このファームウェア「FW-SV」は「SV機能A乃至D(164)」の機能を有し、この利用機能テーブル160に対応するコンピュータシステム11では、SV機能A及びBが利用されており(165:YES)、SV機能C及びDが利用されていない(165:NO)ことを示す。
 図3は、機能対応テーブル140の構成例を示す。
 機能情報の一種である機能対応テーブル140は、FWの各バージョンにおいて対応している機能に関する情報を有する。例えば、1のFWに、1の機能対応テーブル140が対応付けられる。機能対応テーブル140は、例えば、行項目141にFWが有する各機能を有し、列項目142にFWの各バージョンを有するマトリックスで構成される。そして、例えば、行項目141の機能と列項目142のバージョンと組み合わせからなる欄において、そのバージョンがその機能に対応している場合にはその欄を「○」、対応していない場合にはその欄を「×」とする。なお、この「○」及び「×」は、コンピュータ上では所定のフラグデータとして管理される。以下についても同様である。
 例えば、図3の機能対応テーブル140は、FW-SV32に関する機能にはSV機能A乃至Dが存在し、FW-SV32にはバージョン1乃至5が存在することを表す。また、機能対応テーブル140の列149aを参照すると、バージョン「5」のFW-SV32は、「SV機能A乃至C」に対応しており、「SV機能D」に対応していないことがわかる。
 図4は、サポートマトリックス100及び修正サポートマトリックス120の構成例を示す。以下、適合性情報の一種であるサポートマトリックス100及び修正サポートマトリックス120の構成と、サポートマトリックス修正部41の処理とについて説明する。また、以下の説明では、同種の要素を区別しないで説明する場合には、「サポートマトリックス100」のように参照符号のうちの共通符号のみを使用し、同種の要素を区別して説明する場合には、「サポートマトリックス100-1」のように、参照要素の全て(共通符号+枝符号)を使用することがある。
 サポートマトリックス100は、異なるFWの組み合わせについて、どのバージョンの組み合わせがサポートされており(適合するか)、どのバージョンの組み合わせがサポートされていないか(適合しないか)についての情報を有する。サポートマトリックス100は、例えば、行項目に一方のFWの各バージョンを有し、列項目に他方のFWの各バージョンを有するマトリックスで構成される。そして、例えば、行項目のFWのバージョンと列項目のFWのバージョンとの組み合わせからなる欄において、その組み合わせがサポートされている場合にはその欄を「○」、サポートされていない場合にはその欄を「×」とする。また、サポートされているものの一部の機能が制限される場合にはその欄を「△」としてもよい。
 例えば、図4のサポートマトリックス100-1は、FW-SV32の各バージョンとFW-ST33の各バージョンとの関係を表す。サポートマトリックス100-1は、FW-ST33のバージョン1と、FW-SV32のバージョン1との組み合わせがサポートされていること(「○」)を表す。サポートマトリックス100-1は、FW-ST33のバージョン5と、FW-SV32のバージョン1との組み合わせがサポートされていないこと(「×」)を表す。サポートマトリックス100-1は、FW-ST33のバージョン5と、FW-SV32のバージョン2との組み合わせはサポートされているものの一部の機能が制限されること(「△」)を表す。
 サポートマトリックス修正部41は、利用機能テーブル160及び機能対応テーブル140を参照し、サポートマトリックス100をコンピュータシステム11に適応するように修正する。このように修正されたサポートマトリックス100を、修正サポートマトリックス120という。
 例えば、サポートマトリックス修正部41は、利用機能テーブル160の利用状況165を参照し、各FWについて、コンピュータシステム11が利用している機能を認識する。そして、サポートマトリックス修正部41は、サポートマトリックス100において「△」の欄に係る何れか一方のFWのバージョンが、コンピュータシステム11で利用されている機能に未対応な場合、その欄を「▲」に変更する。つまり、「▲」は、コンピュータシステム11が利用している機能が、その欄を構成する列項目のFWのバージョンと行項目のFWのバージョンとの組み合わせでは利用できなくなってしまうおそれがある旨を示す。そのFWのバージョンが、コンピュータシステム11で利用されている機能に対応しているか否かは、そのFWに対応する機能対応テーブル140を参照することにより認識できる。このようにして、サポートマトリックス修正部41は、例えば、図4の修正サポートマトリックス120-1を生成する。
 次に、サポートマトリックス修正部41は、上記の修正サポートマトリックス120-1の「▲」の欄を「×」に変更してもよい。コンピュータシステム11で利用されている機能に一部未対応なFWのバージョンの組み合わせが、後述する更新手順リスト200に含まれないようにするためである。サポートマトリックス修正部41は、上記の修正サポートマトリックス120-1の「△」の欄を「○」に変更してもよい。コンピュータシステム11で利用されていない機能に一部未対応なFWのバージョンの組み合わせは、後述する更新手順リスト200に含まれても問題ないからである。このようにして、サポートマトリックス修正部41は、例えば、図4の修正サポートマトリックス120-2を生成する。
 次に、サポートマトリックス修正部41は、後述する各FWの起点バージョンから終点バージョンまでの更新手順の探索の前処理として、修正サポートマトリックス120-2の一部の欄を「×」に変更してもよい。例えば、サポートマトリックス修正部41は、FW-ST33を起点バージョン「1」から終点バージョン「5」へ、FW-SV32を起点バージョン「1」から終点バージョン「5」へとバージョンアップするための更新手順を探索する。ここで、例えば、図4の修正サポートマトリックス120-2のままでバージョンアップの更新手順を探索すると、FW-ST33のバージョンを「×」の手前の「3」まで上げた段階で、次にFW-SV32のバージョンを上げる経路を発見できない(符号801)。そこで、サポートマトリックス修正部41は、このような状態が発生し得る欄(符号805の欄)を予め「×」にした修正サポートマトリックス120-3aを生成する。
 同様に、FW-ST33を起点バージョン「5」から終点バージョン「1」へ、FW-SV32を起点バージョン「5」から終点バージョン「1」へとバージョンダウンするための更新手順を探索する。ここで、修正サポートマトリックス120-3のままでバージョンダウンの更新手順を探索すると、例えば、FW-SV32をバージョン「2」、FW-ST33をバージョン「4」まで下げた段階で、次にFW-SV32のバージョンを下げる経路を発見することができない(符号802)。そこで、サポートマトリックス修正部41は、このような状態が発生し得る欄(符号806、807)を予め「×」にした修正サポートマトリックス120-3bを生成する。
 なお、サポートマトリックス100は、必ずしも「△」を含んでいなくても良く、「○」及び「×」で構成されていてもよい。この場合、上記のサポートマトリックス修正部41における処理は実行されなくてもよい。すなわち、後述する更新手順リスト生成部42は、「○」及び「×」で構成されたサポートマトリックス100又は修正サポートマトリックス120を使用する。また、FW間の適合性の可否を管理する情報に従って、適合性を確認できるFWの組み合わせを経由する更新手順を探索できるならば、上記例示したサポートマトリックスを明示的に用いなくても良い。
 図5は、更新手順リスト200の生成例を示す。以下、更新手順リスト生成部42の処理と、更新手順情報の一種である更新手順リスト200の構成について説明する。
 更新手順リスト200は、コンピュータシステム11を構成する各モジュールのFWをどのような手順で更新するかに関する情報を有する。更新手順リスト200は、フィールドとして、順序201と、FW名202と、更新バージョン203とを有する。順序201には、順序を示す番号が格納される。FW名202には、FWの名称が格納される。更新バージョン203には、更新前と更新後のバージョンが格納される。
 更新手順リスト200は、1の更新処理に対応する1のレコードを有する。例えば、図5の更新手順リスト200は、「1番目(201)」の更新処理で、「FW-ST(202)」を、バージョン「2」から「3」へ更新する(203)し、「2番目(201)」の更新処理で、「FW-SV(202)」を、バージョン「1」から「3」へ更新する(203)ことを示す。そして、更新手順リスト200は、5回の更新処理によって、全てのFWの更新を完了することを示す。
 更新手順リスト生成部42は、修正サポートマトリックス120に基づいて、各モジュールに係るFWを起点バージョンから終点バージョンまで更新する手順(「更新手順」という)を探索する。ここで、「更新」とは、バージョンアップとバージョンダウンの両方の意味を含むものとする。
 図5において、FW-SV32の起点バージョン及び終点バージョンはそれぞれ「1」及び「5」、FW-ST33の起点バージョン及び終点バージョンはそれぞれ「2」及び「5」、FW-MM31の起点バージョン及び終点バージョンはそれぞれ「3」及び「5」である。この場合、例えば、以下の処理によって更新手順を探索し、更新手順リスト200を生成する。なお、以下において、FW-ST33とFW-SV32の組み合わせに係る修正サポートマトリックス120を「ST×SV」と表現する。他のFWの組み合わせについても同様とする。
 (S1)更新手順リスト生成部42は、FW-ST33のバージョンアップの手順を探索する。更新手順リスト生成部42は、「ST×SV」及び「MM×ST」を参照すると、「ST×SV」において、起点バージョン「2」から終点バージョン「5」までの間の途中バージョン「4」が「×」であるので、FW-ST33をその手前の途中バージョン「3」までバージョンアップさせる旨を更新手順リスト200に登録する。つまり、順序201に「1」、FW名202に「FW-ST」、更新バージョン203に「2→3」を登録する。
 (S2)更新手順リスト生成部42は、FW-SV32のバージョンアップの手順を探索する。更新手順リスト生成部42は、「ST×SV」及び「MM×SV」を参照すると、「ST×SV」において、起点バージョン「1」から終点バージョン「5」までの間の途中バージョン「4」が「×」であるので、FW-SV32をその手前の途中バージョン「3」までバージョンアップさせる旨を更新手順リスト200に登録する。つまり、順序201に「2」、FW名202に「FW-SV32」、更新バージョン203に「1→3」を登録する。
 (S3)更新手順リスト生成部42は、FW-ST33のバージョンアップの手順を探索する。更新手順リスト生成部42は、「ST×SV」及び「MM×ST」を参照すると、「ST×SV」及び「MM×ST」の何れにおいても、上記の途中バージョン「3」からSTの終点バージョン「5」までの間に「×」がないので、FW-ST33を終点バージョン「5」までバージョンアップさせる旨を更新手順リスト200に登録する。つまり、順序201に「3」、FW名202に「FW-ST33」、更新バージョン203に「3→5」を登録する。
 (S4)次に、更新手順リスト生成部42は、FW-MM31のバージョンアップの手順を探索する。更新手順リスト生成部42は、「MM×SV」及び「MM×ST」を参照すると、「MM×SV」及び「MM×ST」の何れにおいても、起点バージョン「3」から終点バージョン「5」までの間に「×」がないので、FW-MM31を終点バージョン「5」までバージョンアップさせる旨を更新手順リスト200に登録する。つまり、順序201に「4」、FW名202に「FW-MM31」、更新バージョン203に「3→5」を登録する。
 (S5)更新手順リスト生成部42は、FW-SV32のバージョンアップの手順を探索する。更新手順リスト生成部42は、「ST×SV」及び「MM×SV」を参照すると、「ST×SV」及び「MM×SV」の何れにおいても、上記の途中バージョン「3」から終点バージョン「5」までの間に「×」がないので、FW-SV32を終点バージョン「5」までバージョンアップさせる旨を更新手順リスト200に登録する。つまり、順序201に「5」、FW名202に「FW-SV32」、更新バージョン203に「3→5」)を登録する。
 なお、更新手順リスト生成部42は、上記以外の更新手順を探索し、複数の異なる更新手順リスト200を生成してもよい。
 以上の処理により、更新手順リスト生成部42は、FW-SV32、FW-ST33及びFW-MM31の全てを終点バージョンまでバージョンアップさせる更新手順リスト200を生成することができる。そして、この更新手順リスト200は、何れの時点おいても、サポートされていないバージョンの組み合わせ及び一部機能が制限されるバージョンの組み合わせとならない。これにより、コンピュータシステム11が、サポートされていないFWのバージョンの組み合わせで稼働するおそれを回避することができる。また、コンピュータシステム11が利用している機能が、各モジュールのFWの更新中に利用できなくなってしまうおそれを回避することができる。以下、図1の説明に戻る。
 更新スクリプト実行部43は、更新手順リスト200に基づいて、コンピュータシステム11の各モジュールのFWを更新するための更新スクリプト220を生成する。そして、更新スクリプト実行部43は、その生成した更新スクリプト220を実行し、コンピュータシステム11の各モジュールのFWを更新(バージョンアップ又はバージョンダウン)する。更新スクリプト220は、管理サーバ10で実行されてもよいし、コンピュータシステム11で実行されてもよい。また、更新スクリプト実行部43は、一部のFWの更新に失敗した場合、その一部又は全部のFWを元のバージョンに戻すロールバック処理を実行してもよい。
 入出力処理部44は、入出力I/F25を制御して、管理サーバ10における入力及び出力に関する処理を行う。例えば、入出力処理部44は、ユーザが管理サーバ10に指示又はパラメータ等を入力するためのGUIや、管理サーバ10での処理結果をユーザに提示するためのGUIなどを生成する。
 入出力処理部44は、更新手順リスト生成部42が生成した複数の更新手順リスト200の内、何れか1つの更新手順リスト200を選択できるGUIを生成及び表示してもよい。そして、入出力処理部44は、このGUIを通じて選択された1つの更新手順リスト200を、更新スクリプト実行部43に通知してもよい。更新スクリプト実行部43は、この通知された1つの更新手順リスト200に基づいて更新スクリプト220を生成してもよい。
 入出力処理部44は、コンピュータシステム11における各モジュールのFWの終点バージョンを指定できるGUIを生成及び表示してもよい。そして、入出力処理部44は、このGUIを通じて指定された各モジュールのFWの終点バージョンを、サポートマトリックス修正部41及び更新手順リスト生成部42に通知してもよい。
 入出力処理部44は、コンピュータシステム11における何れかのモジュールのFWの終点バージョンを指定できるGUIを生成及び表示してもよい。この場合、サポートマトリックス修正部41及び更新手順リスト生成部42は、指定されなかった他のFWについて、その指定されたFWの終点バージョンとの組み合わせおいてサポートされているバージョンを、自動的に終点バージョンに設定してもよい。
 入出力処理部44は、コンピュータシステム11における全てのモジュールのFWを最新のバージョンに更新する旨を指定できるGUIを生成及び表示してもよい。この場合、サポートマトリックス修正部41及び更新手順リスト生成部42は、各FWの最新のバージョンを自動的に終点バージョンに設定してもよい。
 図6は、実施例1における全体の処理の概要を示す模式図である
 (1)サポートマトリックス修正部41は、コンピュータシステム11を構成する各モジュールに対応するFW(FW-MM31、FW-SV32およびFW-ST33)を認識する。
 (2)サポートマトリックス修正部41は、リポジトリ12から、それら認識したFWに係る各サポートマトリックス100(「SV×ST」、「ST×MM」および「MM×SV」)を取得する。
 (3)サポートマトリックス修正部41は、各サポートマトリックス100について、コンピュータシステム11が利用している機能に未対応のバージョンの組み合わせの欄を修正し、各修正サポートマトリックス120を生成する。
 (4)更新手順リスト生成部42は、各修正サポートマトリックス120の「○」及び「×」の情報に基づいて、1以上の更新手順リスト200を生成する。
 (5)更新スクリプト実行部43は、1以上の更新手順リスト200の内、更新に用いる1の更新手順リスト200を選択する。この選択は、ユーザによってなされても良いし、管理サーバ10によって自動的になされても良い。例えば、入出力処理部44が、後述の図15に示すような更新手順リスト選択用GUI700を表示し、ユーザに選択させてもよい。例えば、更新スクリプト実行部43が、更新処理の数(順序201の数)が最少の更新手順リスト200を自動的に選択しても良いし、後述の図13に示す更新所要時間テーブル320を参照して算出された更新所要時間が最短となる更新手順リスト200を自動的に選択しても良い。
 (6)更新スクリプト実行部43は、その選択された更新手順リスト200に基づいて、更新スクリプト220を生成する。
 (7)更新スクリプト実行部43は、その生成した更新スクリプト220を実行し、コンピュータシステム11を構成する各モジュールのFWを更新する。
 以上の処理により、コンピュータシステム11を構成する各モジュールのFWが安全に更新される。以下、これらの処理の詳細について説明する。
 図7は、サポートマトリックス修正処理の一例を示すフローチャートである。以下、修正サポートマトリックス120を生成する処理の詳細について説明する。
 サポートマトリックス修正部41は、リポジトリ12から、サポートマトリックス100と機能対応テーブル140を取得し、記憶デバイス23へ格納する(S101)。
 サポートマトリックス修正部41は、コンピュータシステム11から各FWの起点バージョンを取得する(S102)。
 サポートマトリックス修正部41は、ユーザからの指示に基づいて又は自動的に各FWの終点バージョンを認識する(S103)。
 サポートマトリックス修正部41は、利用機能テーブル160及び機能対応テーブル140などを参照し、サポートマトリックス100から修正サポートマトリックス120を生成し、記憶デバイス23へ格納し(S104)、本処理を終了する(END)。本ステップの詳細は図4に示した通りである。なお、S102,S103で取得した起点と終点の情報からバージョンアップかバージョンダウンかを判断して、図4の修正サポートマトリックス120-3a又は120-3bの何れを生成すべきか判断することができる。以上の処理により、修正サポートマトリックス120が生成される。又、本フローは少なくとも図8の更新手順リスト生成処理の前に行われていれば良く、ユーザからの終点Verの指定が未入力、又、図4の修正サポートマトリックス120-3a又は120-3bの生成を行う必要がなければS101,102のステップは実行されなくてもよい。
 図8は、更新手順リスト生成処理の一例を示すフローチャートである。以下、1以上の更新手順リスト200を生成する処理の詳細について説明する。
 更新手順リスト生成部42は、コンピュータシステム11から各FWの起点バージョンを取得する(S201)。
 更新手順リスト生成部42は、ユーザからの指示に基づいて又は自動的に各FWの終点バージョンを認識する(S202)。サポートマトリックス修正部41がS102~S103を実行する場合、このS201~S202は実行されなくてもよい。
 更新手順リスト生成部42は、FWの数の分、S203~S230を繰り返す(S203)。
 更新手順リスト生成部42は、未選択の内、1つのFWを出発点に選択する(S204)。
 更新手順リスト生成部42は、更新手順リスト200の順序201に対応する順序カウンタに「1」をセット(初期化)する(S205)。
 更新手順リスト生成部42は、S204によって選択中のFWの起点バージョンを認識する(S206)。
 更新手順リスト生成部42は、何れかの修正サポートマトリックス120において、選択中のFWの起点又は途中バージョンから終点バージョンまでの間に「×」が存在するか否かを判定する(S207)。
 終点バージョンまでの間に「×」が存在する場合(S207:YES)、更新手順リスト生成部42は、順序カウンタと、選択中のFWと、選択中のFWの「×」の手前の途中バージョンとを更新手順リスト200に登録する(S210)。
 そして、更新手順リスト生成部42は、順序カウンタに「1」を加算する(S211)。
 そして、更新手順リスト生成部42は、選択中のFWに対して「×」となった修正サポートマトリックス120において、その選択中のFWに対向するFW及びバージョンを選択し(S212)、S207へ戻る。
 終点バージョンまでの間に「×」が存在しない場合(S207:NO)、更新手順リスト生成部42は、順序カウンタと、選択中のFWと、選択中のFWの終点バージョンとを更新手順リスト200に登録する(S220)。
 そして、更新手順リスト生成部42は、全てのFWが終点バージョンに到達したか否かを判定する(S221)。
 全てのFWが終点バージョンに到達した場合(S221:YES)、更新手順リスト生成部42は、更新手順リスト200を出力し(S213)、S230へ進む。
 終点バージョンに未到達のFWが存在する場合(S221:NO)、更新手順リスト生成部42は、全てのFWの探索を完了したか否かを判定する(S222)。
 全てのFWの探索を完了した場合(S222:YES)、更新手順リスト生成部42は、S230へ進む。
 まだ探索が完了していないFWが存在する場合(S222:NO)、更新手順リスト生成部42は、終点バージョンに未到達の1つのFWを選択する(S223)。そして、更新手順リスト生成部42は、順序カウンタに「1」を加算し(S224)、S207へ戻る。
 FWの数の分、S203~S230を繰り返した後(S230)、更新手順リスト生成部42は、1つ以上の更新手順リスト200が生成されたか否かを判定する(S231)。
 更新手順リスト生成部42は、1以上の更新手順リスト200が生成された場合(S231:YES)、本処理を終了する(END)。
 更新手順リスト生成部42は、1つも更新手順リスト200が生成されなかった場合(S231:NO)、その旨のエラーを出力し(S232)、本処理を終了する(END)。以上の処理により、1以上の更新手順リスト200が生成される。
 図9は、更新スクリプト実行処理の一例を示すフローチャートである。以下、更新スクリプト220を生成する処理及びFWを更新する処理の詳細について説明する。
 更新スクリプト実行部43は、1以上の更新手順リスト200から1の更新手順リスト200を選択する(S301)。この選択は、図8のフローによって探索された手順を、後に例示する図15のGUIを介してユーザに提示し、何れかの選択指示を受けることによって実行されてよい。又は、更新処理の数が最少の更新手順情報を選択するようにポリシーを設定しておき、更新スクリプト実行部43が、探索された中で最も少ない手順でFW更新を行うとしてもよい。又は、後述する図13に示した更新所要時間テーブル320を実施例1の構成に設け、探索されたすべての手順における所要時間を算出し、更新スクリプト実行部43は、所要時間が最も少ない手順を選択してもよい。
 更新スクリプト実行部43は、その選択中の更新手順リスト200に基づいて更新スクリプト220を生成する(S302)。
 更新スクリプト実行部43は、その生成した更新スクリプト220における次のステップの(初回は最初のステップの)更新処理を実行対象に選択する(S303)。例えば、更新スクリプト220における1の更新処理は、更新手順リスト200の1のレコードに対応する。
 更新スクリプト実行部43は、その選択中の更新処理の指示するバージョンのFWを、リポジトリ12から取得する(S304)。
 更新スクリプト実行部43は、対象モジュールにその取得したバージョンのFWをインストールするする(S305)。つまり、対象モジュールのFWのバージョンを更新する。
 更新スクリプト実行部43は、FWの更新に成功したか否かを判定する(S306)。
 FWの更新に成功した場合(S306:YES)、更新スクリプト実行部43は、全てのFWについて更新が完了したか否かを判定する(S307)。
 まだ更新が完了していないFWが存在する場合(S307:NO)、更新スクリプト実行部43は、S303へ戻る。
 全てのFWの更新が完了した場合(S307:YES)、入出力処理部44は、全てのFWの更新が成功した旨を表示する(S308)。そして、更新スクリプト実行部43は、本処理を終了する(END)。
 FWの更新に失敗した場合(S306:NO)、更新スクリプト実行部43は、S305で対象モジュールにインストールしたFWを、更新前のバージョンのFWに戻すロールバック処理を実行する(S310)。
 そして、更新スクリプト実行部43は、ロールバック処理が成功したか否かを判定する(S311)。
 ロールバック処理が成功した場合(S311:YES)、入出力処理部44は、FW更新が失敗し、ロールバック処理が成功した旨のエラーを表示し(S312)、本処理を終了する(END)。
 ロールバック処理が失敗した場合(S311:NO)、入出力処理部44は、FW更新が失敗し、ロールバック処理も失敗した旨のエラーを表示し(S313)、本処理を終了する(END)。以上の処理により、コンピュータシステム11における各モジュールのFWが更新される。
 実施例2では、コンピュータシステム11が機能を利用しない時間帯が存在する場合における、各モジュールのFW更新方法について説明する。以下、実施例1と同じ要素には同一の符号を付し、説明を省略する。
 図10は、実施例2に係る管理サーバ10の構成例を示すブロック図である。
 リポジトリ12は、サポートマトリックス100と、各モジュールに対応するバージョン毎のFW30と、機能対応テーブル140と、更新所要時間テーブル320とを有する。更新所要時間テーブル320の詳細については後述する。
 管理サーバ10は、記憶デバイス23に、利用機能テーブル360と、機能時間帯テーブル300と、更新手順リスト200と、更新スクリプト220と、時間帯別修正サポートマトリックス320と、に係るデータを保持する。また、管理サーバ10は、CPU21において、サポートマトリックス修正部41と、更新手順リスト生成部42と、実行候補抽出部45と、更新スクリプト実行部43と、入出力処理部44と、に係る処理を実行する。以下、実施例1とは異なるデータ及び処理について説明する。
 図11は、実施例2に係る利用機能テーブル360の構成例を示す。
 利用機能テーブル360は、図2に示した情報に加えて、その機能がコンピュータシステム11において利用される時間帯に関する情報も有する。利用機能テーブル360は、フィールドとして、モジュール名161と、FW名162と、現バージョン163と、機能名164と、利用状況165と、開始時刻166と、終了時刻167とを有する。モジュール名161、FW名162、現バージョン163、機能名164、および利用状況165は、図2で説明したとおりである。開始時刻166及び終了時刻167には、時刻が格納される。
 例えば、図11のレコード369aは、「サーバモジュール(161)」はファームウェア「FW-SV(162)」で稼働しており、このFWの現在のバージョンは「1(163)」であることを示す。そして、このファームウェア「FW-SV」は「SV機能A乃至D(164)」の機能を有し、この利用機能テーブル360に対応するコンピュータシステム11では、SV機能A及びBが利用されており(165:YES)、SV機能C及びDが利用されていない(165:NO)ことを示す。そして、「SV機能A(165)」は「23:00(166)」から「5:00(167)」まで利用され、「SV機能B(165)」は「2:00(166)」から「5:00(167)」まで利用されることを示す。
 図12は、機能時間帯テーブル300の構成例を示す。
 機能時間帯テーブル300は、各機能時間帯において各機能が利用されるか否かに関する情報を有する。機能時間帯とは、利用機能テーブル360における各機能の開始時刻166と終了時刻167に従って設定される。機能時間帯テーブル300は、例えば、行項目301にコンピュータシステム11において利用されている機能を有し、列項目302に機能時間帯を有するマトリックスで構成される。そして、例えば、行項目301の機能と列項目302の機能時間帯との組み合わせからなる欄において、その機能がその機能時間帯に利用される場合にはその欄を「○」、利用されない場合にはその欄「×」とする。
 例えば、図12の機能時間帯テーブル300の列309aを参照すると、機能時間帯である「2:00~5:00」の間は、SV機能A、SV機能B及びST機能Aの何れもが利用されることがわかる。また、列309bを参照すると、機能時間帯である「5:00~23:00」の間は、SV機能A及びSV機能Bが利用されず、ST機能Aが利用されることがわかる。
 図13は、更新所要時間テーブル320の構成例を示す。
 更新所要時間テーブル320は、モジュールのFWを或るバージョンから別の或るバージョンへ更新する際に要するおおよその時間に関する情報を有する。更新所要時間テーブル320は、フィールドとして、FW名321と、更新バージョン322と、所要時間323とを有する。FW名321には、FWの名称が格納される。更新バージョン322は、更新前のバージョン及び更新後のバージョンが格納される。所要時間323には、更新に要するおおよその時間が格納される。
 更新所要時間テーブル320は、FWのバージョン更新のパターン毎に1のレコードを有する。例えば、図13のレコード329aは、「FW-SV(321)」のバージョンを「1」から「2」に更新(322)するのにおおよそ「20分(323)」を要することを示す。
 図14は、実施例2における全体の処理の概要を示す模式図である。以下、実施例2において管理サーバ10で実行される全体の処理の概要と、実行候補抽出部45の機能について説明する。
 (1)サポートマトリックス修正部41は、コンピュータシステム11を構成する各モジュールに対応するFW(FW-MM31、FW-SV32およびFW-ST33)を認識する。
 (2)サポートマトリックス修正部41は、リポジトリ12から、それら認識したFWに係るサポートマトリックス100(「SV×ST」、「ST×MM」および「MM×SV」)を取得する。
 (3)サポートマトリックス修正部41は、利用機能テーブル360の各機能の利用の開始時刻166及び終了時刻167に基づいて、機能時間帯テーブル300を生成する。ここで、機能時間帯テーブル300は、機能時間帯A及びBを有するものとする。
 (4)サポートマトリックス修正部41は、機能時間帯A、Bごとに、各サポートマトリックス100について、その機能時間帯にコンピュータシステム11が利用している機能に未対応のバージョンの組み合わせの欄を修正し、各時間帯別修正サポートマトリックス320A、320Bを生成する。
 (5)更新手順リスト生成部42は、機能時間帯A(B)に対応する各時間帯別修正サポートマトリックス320A(320B)の「○」及び「×」に基づいて、機能時間帯A(B)に対応する1以上の更新手順リスト200A(200B)を生成する。
 (6)実行候補抽出部45は、機能時間帯A(B)に対応する1以上の更新手順リスト200A(200B)から、その機能時間帯A(B)の範囲内で更新が完了する更新手順リスト200AA(200BB)を抽出し、実行候補に登録する。すなわち、実行候補抽出部45は、更新所要時間テーブル320を参照し、各更新手順リスト200について更新に要するおおよその時間(「更新所要時間」という)を算出する。そして、実行候補抽出部45は、機能時間帯に対応する1以上の更新手順リスト200の内、更新所要時間が機能時間帯の範囲内に納まる(機能時間帯>更新所要時間帯である)更新手順リスト200を抽出し、実行候補に登録する。
 (7)更新スクリプト実行部43は、実行候補に登録されている1以上の更新手順リスト200AA、200BBの内、例えば更新に使用する1の更新手順リスト200AAを選択する。この選択は、ユーザによってなされても良いし、管理サーバ10によって自動的になされても良い。例えば、入出力処理部44は、後述の図15に示すように、更新手順リスト選択用GUIを生成及び表示し、更新に使用する1の更新手順リスト200をユーザに選択させてもよい。例えば、更新スクリプト実行部43は、更新処理の数(順序201の数)が最少の更新手順リスト200を自動的に選択しても良いし、更新所要時間が最短の更新手順リスト200を自動的に選択しても良い。
 (8)更新スクリプト実行部43は、その選択された更新手順リスト200AAに基づいて、更新スクリプト220を生成する。
 (9)更新スクリプト実行部43は、その選択された更新手順リスト200AAが対応する機能時間帯Aの範囲内(例えば、機能時間帯Aの開始時刻)にその生成した更新スクリプト220の実行を開始し、コンピュータシステム11を構成する各モジュールのFWを更新する。
 以上の処理により、コンピュータシステム11を構成する各モジュールのFWが安全に更新される。以下、これらの処理の詳細について説明する。
 図15は、更新手順リスト選択用GUI700の構成の一例を示す。
 更新手順リスト選択用GUI700は、複数の更新手順リスト200から更新に使用する1の更新手順リスト200を選択するためのGUIである。更新手順リスト選択用GUI700は、例えば、入出力処理部44によって生成される。
 更新手順リスト選択GUI700は、例えば、1以上の更新手順リスト701a、701bと、更新手順リスト701a、702bにそれぞれ対応するリスト選択領域702a、702bと、OKボタン703とを有する。
 更新手順リスト701a、701bには、図5に示した更新手順リスト200のフィールドに格納されている値に加えて、実行時間帯705a、705b、および更新所要時間706a、706bが表示されてよい。
 実行時間帯705a、705bには、更新手順リスト701a、701bが実行される予定の時間帯が表示される。実行時間帯705a、705bには、この更新手順リスト701a、701bに対応する機能時間帯が表示されてもよいし、更新が開始される予定の時刻が表示されてもよい。
 更新所要時間706a、706bには、更新手順リスト701a、701bに基づいて生成される更新スクリプト220によって、コンピュータシステム11を構成する各モジュールのFWを更新した場合、おおよそどのくらいの時間を要するかが表示される。この更新所要時間706a、706bは、更新所要時間テーブル320を参照することによって算出できる。
 図15に示す更新手順リスト選択用GUI700において、ユーザが、リスト選択領域702a、702bの内、リスト選択領域702bを選択して、OKボタン703を押下すると、更新手順リスト702bが選択される。更新スクリプト実行部43は、この選択された更新手順リスト702bに対応する更新スクリプト220を生成する。そして、更新スクリプト実行部43は、この生成した更新スクリプト220を、「5:00~23:00(705b)」の間で更新が終了するように実行する。更新処理スクリプト43は、実行時間帯の開始時刻である「5:00」から更新を実行するとしてもよい。なお、実施例1の場合、実行時間帯705a、705b、及び、更新所要時間706a、706b以外の要素が表示されてよい。
 図16は、実施例2に係るサポートマトリックス修正処理の一例を示すフローチャートである。
 サポートマトリックス修正部41は、リポジトリ12から、サポートマトリックス100と、機能対応テーブル140と、更新所要時間テーブル320とを取得する(S401)。
 サポートマトリックス修正部41は、利用機能テーブル360及び機能対応テーブル140に基づき、機能時間帯テーブル300を生成する(S402)。
 サポートマトリックス修正部41は、コンピュータシステム11から各FWの起点バージョンを取得する(S403)。サポートマトリックス修正部41は、ユーザからの指示に基づいて又は自動的に各FWの終点バージョンを認識する(S404)。S403とS404については実施例1と同様に必須ではない。
 サポートマトリックス修正部41は、機能時間帯の数の分、S405~S408を繰り返す(S405)。
 サポートマトリックス修正部41は、未選択の内、1つの機能時間帯を選択する(S406)。
 サポートマトリックス修正部41は、選択中の機能時間帯に利用される機能を考慮して時間帯別修正サポートマトリックスを生成する(S407)。例えば、サポートマトリックス修正部41は、図4のサポートマトリックス110-1において、選択中の機能時間帯に利用される機能と対応関係を有する「△」の欄を「▲」に変更し、図4の修正サポートマトリックス120-1に相当する時間帯別修正サポートマトリックスを生成する。
 サポートマトリックス修正部41は、S405~S408の繰り返しを完了後(S408)、本処理を終了する(END)。以上の処理により、機能時間帯ごとの時間帯別修正サポートマトリックスが生成される。
 図17は、実行候補抽出処理の一例を示すフローチャートである。
 実行候補抽出部45は、機能時間帯の数の分、S501~S509を繰り返す(S501)。
 実行候補抽出は、未選択の内、1つの機能時間帯を選択する(S502)。
 実行候補抽出部45は、選択中の機能時間帯に対応する更新手順リスト200の数の分、S503~508を繰り返す(S503)。
 実行候補抽出部45は、選択中の機能時間帯に対応する未選択の更新手順リスト200の内、1つの更新手順リスト200を選択する(S504)。
 実行候補抽出部45は、更新所要時間テーブル320に基づき、選択中の更新手順リスト200の更新所要時間を算出する(S505)。
 実行候補抽出部45は、更新所要時間が、選択中の機能時間帯の範囲内に納まるか否かを判定する(S506)。
 更新所要時間が、選択中の機能時間帯の範囲内に納まる場合(S506:YES)、実行候補抽出部45は、選択中の更新手順リスト200及び機能時間帯を実行候補に登録し(S507)、S508へ進む。
 更新所要時間が、選択中の機能時間帯の範囲内に納まらない場合(S506:NO)、実行候補抽出部45は、そのままS508へ進む。
 実行候補抽出部45は、S503~S508の繰り返しを完了し、さらにS501~S509の繰り返しを完了した後、本処理を終了する(END)。以上の処理により、実行候補に、機能時間帯の範囲内で更新可能な更新手順リスト200が登録される。
 実行候補に登録された更新手順リスト200は、例えば、図15に示した更新手順リスト選択用GUI700に表示され、ユーザによって1の更新手順リスト200が選択される。その選択された更新手順リスト200から更新スクリプト220を生成する処理及びFWを更新する処理は、実施例1と同様である。実施例2の場合、更新スクリプト220は、直ちに実行されるとは限らず、その選択された更新手順リスト200に対応する機能時間帯の範囲内で更新が完了するように実行される。例えば、更新スクリプト220は、機能時間帯の開始時刻に開始される。
 本実施例によれば、所定の機能を利用している時間帯が限定されている場合に、当該時間帯を考慮した上で、有効なFWの更新手順を探索および実行することができる。本実施例によれば、ユーザの機能の利用が制限されることなく、FWを更新することができる。本実施例によれば、更新に関わる機能が利用されていない時間帯にFWの更新を実行することにより、その機能が利用されている時間帯にFWの更新を実行する場合と比較して、より少ない手順又は時間で更新を完了し得る。
 上述した本発明の実施例は、本発明の説明のための例示であり、本発明の範囲をそれらの実施例にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
10:管理サーバ 11:コンピュータシステム 12:リポジトリ 15、16、17:モジュール 30、31、32、33:ファームウェア 100:サポートマトリックス
 
 

 

Claims (15)

  1.  それぞれがファームウェアを有する複数のモジュールを有するコンピュータシステムの管理方法であって、
     各モジュールのファームウェアのバージョン間の組み合わせの適合性を表す適合性情報を取得し、
     前記コンピュータシステムから、前記各モジュールのファームウェアの更新前のバージョンを取得し、
     前記各モジュールのファームウェアの更新後のバージョンを決定し、
     前記適合性情報に基づいて、前記各モジュールのファームウェアを更新前のバージョンから更新後のバージョンへ更新するための複数の更新処理の更新手順を表す更新手順情報を生成し、
     前記生成された更新手順情報が表す更新手順で前記複数の更新処理を実行する
    コンピュータシステムの管理方法。
     
  2.  前記更新手順情報は、何れのファームウェアを何れのバージョンへ更新する更新処理を何れの順序で実行するかを表す情報を含み、
     前記複数の更新処理は、それぞれ前記更新手順情報に定義されており、前記更新手順情報に含まれる順序で実行される
    請求項1に記載のコンピュータシステムの管理方法。
     
  3.  前記更新手順情報は、或るファームウェアのバージョンが更新された時点における前記各モジュールのファームウェアのバージョン間の組み合わせが、前記適合性情報において適合性を有するように生成されている
    請求項2に記載のコンピュータシステムの管理方法。
     
  4.  前記更新手順情報を、前記適合性情報において適合性を有するように生成できない場合は、その旨を通知する
    請求項3に記載のコンピュータシステムの管理方法。
     
  5.  複数の更新手順情報が生成される場合、その複数の更新手順情報を出力し、その出力した複数の更新手順情報の内から選択された1の更新手順情報に基づいて前記複数の更新処理を実行する
    請求項1に記載のコンピュータシステムの管理方法。
     
  6.  複数の更新手順情報が生成される場合、その複数の更新手順情報の内から選択された1の更新手順情報に基づいて前記複数の更新処理を実行し、
     前記選択された1の更新手順情報は、前記複数の更新手順情報の内、更新処理の数が最少の更新手順情報である、
    請求項2に記載のコンピュータシステムの管理方法。
     
  7.  さらに、前記各モジュールのファームウェアのそれぞれのバージョンが何れの機能に対応しているかを表す機能情報を取得し、
     前記コンピュータシステムにおいて利用されている機能を認識し、
     前記適合性情報及び前記機能情報に基づいて前記更新手順情報を生成するにあたり、或るファームウェアのバージョンが更新された時点における前記各モジュールのファームウェアのバージョン間の組み合わせが、前記適合性を有し、且つ、前記コンピュータシステムに利用されている機能が利用不可とならないように生成する
    請求項2に記載のコンピュータシステムの管理方法。
     
  8.  さらに、前記各モジュールのファームウェアのそれぞれのバージョンが何れの機能に対応しているかを表す機能情報を取得し、
     前記コンピュータシステムに利用されている機能と、その機能が利用されている時間帯とを認識し、
     前記適合性情報及び前記機能情報に基づいて前記時間帯に対応する更新手順情報を生成するにあたり、或るファームウェアのバージョンが更新された時点における前記各モジュールのファームウェアのバージョン間の組み合わせが、前記適合性を有し、且つ、前記コンピュータシステムにおいて前記時間帯に利用されている機能が利用不可とならないように生成する
    請求項2に記載のコンピュータシステムの管理方法。
     
  9.  さらに、前記時間帯に対応する更新手順情報に基づいて前記各モジュールのファームウェアを更新する場合に要する時間を表す更新所要時間を算出し、
     前記複数の更新処理は、前記時間帯に対応する更新手順情報の内、前記更新所要時間が前記時間帯の範囲内に納まる更新手順情報に基づいて実行される
    請求項8に記載のコンピュータシステムの管理方法。
     
  10.  前記時間帯に対応する更新手順情報に基づく前記複数の更新処理は、前記時間帯の範囲内の何れかの時刻から開始される
    請求項9に記載のコンピュータシステムの管理方法。
     
  11.  それぞれがファームウェアを有する複数のモジュールを有するコンピュータシステムに接続されたインターフェイスデバイスと、
     各モジュールのファームウェアのバージョン間の組み合わせの適合性を表す適合性情報を有するメモリと、
     前記インターフェイスデバイス及び前記メモリに接続されたプロセッサと
    を有し、
     前記プロセッサが、
      前記コンピュータシステムから、前記各モジュールのファームウェアの更新前のバージョンを取得し、
      前記各モジュールのファームウェアの更新後のバージョンを決定し、
      前記適合性情報に基づいて、前記各モジュールのファームウェアを更新前のバージョンから更新後のバージョンへ更新するための複数の更新処理の更新手順を表す更新手順情報を生成し、
      前記生成された更新手順情報が表す更新手順で前記複数の更新処理を実行する、
    管理装置。
     
  12.  前記更新手順情報は、何れのファームウェアを何れのバージョンへ更新する更新処理を何れの順序で実行するかを表す情報を含み、
     前記複数の更新処理は、それぞれ前記更新手順情報に定義されており、前記更新手順情報に含まれる順序で実行される
    請求項11に記載の管理装置。
     
  13.  前記更新手順情報は、或るファームウェアのバージョンが更新された時点における前記各モジュールのファームウェアのバージョン間の組み合わせが、前記適合性情報において適合性を有するように生成されている
    請求項12に記載の管理装置。
     
  14.  前記プロセッサが、
     さらに、前記各モジュールのファームウェアのそれぞれのバージョンが何れの機能に対応しているかを表す機能情報を取得し、
     前記コンピュータシステムにおいて利用されている機能を認識し、
     前記適合性情報及び前記機能情報に基づいて前記更新手順情報を生成するにあたり、或るファームウェアのバージョンが更新された時点における前記各モジュールのファームウェアのバージョン間の組み合わせが、前記適合性を有し、且つ、前記コンピュータシステムに利用されている機能が利用不可とならないように生成する
    請求項12に記載の管理装置。
     
  15.  前記プロセッサが、
     さらに、前記各モジュールのファームウェアのそれぞれのバージョンが何れの機能に対応しているかを表す機能情報を取得し、
     前記コンピュータシステムに利用されている機能と、その機能が利用されている時間帯とを認識し、
     前記適合性情報及び前記機能情報に基づいて前記時間帯に対応する更新手順情報を生成するにあたり、或るファームウェアのバージョンが更新された時点における前記各モジュールのファームウェアのバージョン間の組み合わせが、前記適合性を有し、且つ、前記コンピュータシステムにおいて前記時間帯に利用されている機能が利用不可とならないように生成する
    請求項12に記載の管理装置。
     
     

     
PCT/JP2014/056335 2014-03-11 2014-03-11 コンピュータシステムの管理方法および管理装置 WO2015136621A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/056335 WO2015136621A1 (ja) 2014-03-11 2014-03-11 コンピュータシステムの管理方法および管理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/056335 WO2015136621A1 (ja) 2014-03-11 2014-03-11 コンピュータシステムの管理方法および管理装置

Publications (1)

Publication Number Publication Date
WO2015136621A1 true WO2015136621A1 (ja) 2015-09-17

Family

ID=54071101

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/056335 WO2015136621A1 (ja) 2014-03-11 2014-03-11 コンピュータシステムの管理方法および管理装置

Country Status (1)

Country Link
WO (1) WO2015136621A1 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017154763A1 (ja) * 2016-03-10 2017-09-14 日本電気株式会社 変更手順生成装置、変更手順生成方法および変更手順生成プログラムを記憶する記憶媒体
JP2017187996A (ja) * 2016-04-07 2017-10-12 富士機械製造株式会社 フィーダの管理装置および管理方法
CN110119280A (zh) * 2018-02-06 2019-08-13 深圳市帝迈生物技术有限公司 多固件升级的方法及装置
JP2020135678A (ja) * 2019-02-25 2020-08-31 株式会社日立製作所 ソフトウエアパッケージ更新支援装置、ソフトウエアパッケージ更新支援方法及びソフトウエアパッケージ更新支援プログラム
CN112732296A (zh) * 2020-12-31 2021-04-30 青岛海尔科技有限公司 软件版本更新方法和装置、存储介质及电子设备
US11620122B2 (en) * 2020-02-28 2023-04-04 Verinex Corp. Automation controller for upgrading an IT infrastructure

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10143361A (ja) * 1996-11-12 1998-05-29 Nippon Telegr & Teleph Corp <Ntt> 分散システムのプログラム更新手順例自動生成方法
JP2009193218A (ja) * 2008-02-13 2009-08-27 Fuji Xerox Co Ltd ファームウェア更新装置およびファームウェア更新システム
US20130297928A1 (en) * 2010-12-28 2013-11-07 Jurg Wyss Field device with long-term firmware compatability

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10143361A (ja) * 1996-11-12 1998-05-29 Nippon Telegr & Teleph Corp <Ntt> 分散システムのプログラム更新手順例自動生成方法
JP2009193218A (ja) * 2008-02-13 2009-08-27 Fuji Xerox Co Ltd ファームウェア更新装置およびファームウェア更新システム
US20130297928A1 (en) * 2010-12-28 2013-11-07 Jurg Wyss Field device with long-term firmware compatability

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017154763A1 (ja) * 2016-03-10 2017-09-14 日本電気株式会社 変更手順生成装置、変更手順生成方法および変更手順生成プログラムを記憶する記憶媒体
JPWO2017154763A1 (ja) * 2016-03-10 2019-01-17 日本電気株式会社 変更手順生成装置、変更手順生成方法および変更手順生成プログラム
JP2017187996A (ja) * 2016-04-07 2017-10-12 富士機械製造株式会社 フィーダの管理装置および管理方法
CN110119280A (zh) * 2018-02-06 2019-08-13 深圳市帝迈生物技术有限公司 多固件升级的方法及装置
JP2020135678A (ja) * 2019-02-25 2020-08-31 株式会社日立製作所 ソフトウエアパッケージ更新支援装置、ソフトウエアパッケージ更新支援方法及びソフトウエアパッケージ更新支援プログラム
JP7103973B2 (ja) 2019-02-25 2022-07-20 株式会社日立製作所 ソフトウエアパッケージ更新支援装置、ソフトウエアパッケージ更新支援方法及びソフトウエアパッケージ更新支援プログラム
US11620122B2 (en) * 2020-02-28 2023-04-04 Verinex Corp. Automation controller for upgrading an IT infrastructure
CN112732296A (zh) * 2020-12-31 2021-04-30 青岛海尔科技有限公司 软件版本更新方法和装置、存储介质及电子设备
CN112732296B (zh) * 2020-12-31 2023-10-24 青岛海尔科技有限公司 软件版本更新方法和装置、存储介质及电子设备

Similar Documents

Publication Publication Date Title
WO2015136621A1 (ja) コンピュータシステムの管理方法および管理装置
JP6011479B2 (ja) アプリケーション管理装置、アプリケーション管理システムおよびプログラム
JP4467624B2 (ja) ソフトウェアアップデート管理プログラム、ソフトウェアアップデート管理装置、およびソフトウェアアップデート管理方法
JP5491675B2 (ja) 情報処理装置及び情報処理装置制御方法
JP6663109B2 (ja) 情報処理装置および実行制御プログラム
JP2009230398A (ja) ソフトウェア更新支援装置およびソフトウェア更新支援プログラム
JPWO2010116473A1 (ja) 管理サーバ、ブートサーバ、ネットワークブートシステムおよびネットワークブート方法
KR20120083130A (ko) 컴퓨터시스템 및 그 프로그램 업데이트 방법
JP2017224292A (ja) 情報処理システム、操作デバイス、情報処理方法及び情報処理プログラム
JP5870696B2 (ja) 情報処理装置、情報処理装置のシステム動作設定方法及びプログラム
JP6515462B2 (ja) 情報処理装置、情報処理装置の設定方法及び設定プログラム
JP2008055849A (ja) 画像形成装置及びその管理方法
JP2019020798A (ja) 情報処理装置およびプログラム
CN106484442B (zh) 服务器系统及更新开机映像档的方法
JP2022188197A (ja) プログラマブルロジックコントローラ、端末装置、プログラム管理システム、プログラム管理方法及びプログラム
JP2017033079A (ja) ソフトウェア導入支援プログラム、ソフトウェア導入支援装置およびソフトウェア導入支援方法
JP5182349B2 (ja) 情報処理装置、情報処理システム、bios設定更新方法およびプログラム
JP2009266149A (ja) ジョブ管理プログラム及びジョブ管理装置
JP7156995B2 (ja) 更新システム
JP5760618B2 (ja) 管理装置および管理方法
JP2017084014A (ja) 情報処理装置
JP6572762B2 (ja) 電子機器、方法、およびプログラム
JP2020119115A (ja) 情報処理装置、情報提供プログラム及び情報提供システム
JP2014099082A (ja) 情報処理システム、情報処理装置、情報処理プログラム、アプリケーションの実行方法、および、記憶媒体
JP6869428B2 (ja) データ作成装置、データ転送方法およびデータ転送プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14885408

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14885408

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP