WO2013042182A1 - リスク判定方法及びリスク判定サーバ - Google Patents

リスク判定方法及びリスク判定サーバ Download PDF

Info

Publication number
WO2013042182A1
WO2013042182A1 PCT/JP2011/071334 JP2011071334W WO2013042182A1 WO 2013042182 A1 WO2013042182 A1 WO 2013042182A1 JP 2011071334 W JP2011071334 W JP 2011071334W WO 2013042182 A1 WO2013042182 A1 WO 2013042182A1
Authority
WO
WIPO (PCT)
Prior art keywords
risk
setting item
information
setting
value
Prior art date
Application number
PCT/JP2011/071334
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/JP2011/071334 priority Critical patent/WO2013042182A1/ja
Priority to JP2013534472A priority patent/JP5681804B2/ja
Publication of WO2013042182A1 publication Critical patent/WO2013042182A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Definitions

  • the present invention relates to a risk determination method in a work for changing the configuration of a computer system.
  • the system configuration is changed in order to change the physical configuration and logical configuration of the computer system.
  • a virtualization technology which has been introduced in recent years, is applied
  • a lot of system configuration change processing occurs along with a logical configuration change.
  • a new virtual machine (Virtual Machine; VM) is added or a resource allocation amount of the virtual machine is changed.
  • VM Virtual Machine
  • the system administrator designs the system configuration in response to a change request from a customer and creates a sheet describing the system configuration information.
  • the system administrator performs confirmation work to confirm whether or not the created sheet has an error.
  • a sheet describing system configuration information is referred to as a configuration information sheet.
  • the confirmation work is referred to as a review.
  • a system administrator different from the system administrator who created the configuration information sheet checks whether there is an erroneous setting item among the setting items included in the configuration information sheet.
  • Patent Document 1 a technique for supporting a review for a configuration change.
  • Patent Document 1 describes a technique for improving the efficiency of reviewing an operation procedure by calculating a risk included in the operation procedure of a configuration change.
  • the operation procedure includes information such as a worker in charge of changing the system configuration, a work period, an operation input method for setting the system configuration, and an input order.
  • Patent Document 1 the risk of each operation procedure and the risk of the entire operation procedure are quantified. At the time of review, dangerous operational procedures can be determined based on the magnitude of the risk value.
  • the operation procedure accompanying the change in the system configuration is created after the design of the system configuration is completed and the content of the configuration information sheet is finalized. For this reason, it is not possible to specify an error location included in the configuration information sheet created before creating the operation procedure.
  • Patent Document 1 consider the case where the entire configuration information sheet is included in the operation procedure manual itself.
  • risk value 10 points if the number of years is 1 year or less, 0 risk value if it is 5 years or more” for the information of the operation procedure such as “year of experience of worker”
  • risk value of the information of each operation procedure is calculated.
  • an integrated risk value obtained by superimposing all information included in the operation procedure is calculated.
  • the configuration information sheet contains hundreds to thousands of setting items, which is very large compared to the amount of information included in the operation procedure. Therefore, in the invention described in Patent Document 1, even if the risk value of the operation procedure including the configuration information sheet is calculated, the output risk value is too fine or too rough, and therefore the review range in the configuration information is specified. Is difficult.
  • the purpose is to provide a computer system in which a system administrator can specify a review range without relying on know-how in system configuration change work.
  • a typical example of the invention disclosed in the present application is as follows. That is, a risk determination method for specifying an error location in configuration information for constructing a computer system managed by a risk determination server, wherein the risk determination server includes a processor, a memory connected to the processor, A network interface connected to the processor and connected to the computing system, the computer system including one or more computers, one or more network devices, and one or more storage systems;
  • the information includes a plurality of types of setting items configured by a hierarchical structure, and the method includes a first step in which the risk determination server receives an input of new configuration information, and the risk determination server includes the new setting information.
  • a second step of calculating a set value For each of the setting items included in the configuration information input in A second step of calculating a set value, a third step of specifying the setting item that is an error location in the newly input configuration information based on the calculated risk value, and the specified And a fourth step of generating risk display information for displaying information relating to the setting item.
  • the operation manager can quickly specify the range that needs to be reviewed in the configuration information of the computer system to be managed. Therefore, the review time can be shortened.
  • an error of each setting item included in the changed configuration information is specified based on the configuration information of the computer system input in the past.
  • the configuration information of the computer system will be described as including setting items necessary for VM settings. Note that the present invention is not limited to this, and the same effects can be achieved by the network configuration and storage configuration of the computer system.
  • FIG. 1 is a block diagram illustrating a configuration of a computer system according to the first embodiment of this invention.
  • the computer system includes a management terminal 1, a risk determination server 2, and a management target system 10.
  • the management terminal 1, the risk determination server 2, and the management target system 10 are connected via the network 4 so that mutual communication is possible.
  • the managed system 10 includes a physical machine 7, a switch 6, a router 5, a fiber channel switch (FC-SW) 8, and a storage system 9.
  • the management target system 10 may include other devices.
  • the physical machine 7 is connected to the storage system 9 via the FC-SW 8 and connected to the network 4 via the switch 6.
  • the physical machine 7 is a computer including a CPU (not shown), a memory (not shown), and a network interface (not shown).
  • virtualization software for managing the VM operates.
  • a guest OS (not shown) runs on the VM generated by the virtualization software.
  • middleware and applications are executed on the guest OS.
  • a VM generation method is a known technique, and thus description thereof is omitted.
  • the virtualization software may run on an OS provided in the physical machine 7.
  • the storage system 9 includes a controller and a plurality of storage media, and provides a storage area to be allocated to a VM running on the physical machine 7.
  • a storage medium an HDD, an SSD, or the like can be considered.
  • the storage system 9 may configure a RAID using a plurality of storage media.
  • the risk determination server 2 calculates a value obtained by quantifying the risk in the configuration information, that is, a risk value based on the configuration information of the management target system 10, and determines the error location of the changed configuration information based on the risk value. Identify. Furthermore, the risk determination server 2 presents the error location of the configuration information to the system administrator. In the present embodiment, the error part of the configuration information is presented as the review range.
  • the risk in the configuration information indicates an error in the setting item included in the configuration information.
  • the configuration information of the management target system 10 includes setting information of devices that configure the management target system 10, setting information of software executed by the device, and information that represents the dependency relationship of each setting information.
  • the setting information stores numerical values and character string data.
  • the software includes virtualization software, an OS running on the physical machine 7 or a guest OS running on the VM, and middleware (database, Web container, etc.) and application running on the OS or guest OS. .
  • the software setting information is usually stored in a setting file (config file) of each device constituting the managed system 10.
  • Management terminal 1 is a computer operated by a system administrator.
  • the computer includes a CPU (not shown), a memory (not shown), a storage medium (not shown), a network interface (not shown), and an input / output device (not shown).
  • the input / output device includes a keyboard and a display.
  • the system administrator uses the management terminal 1 to operate the management target system 10.
  • the risk determination server 2 calculates the risk value in the configuration information changed by applying the risk determination rule.
  • the risk determination rule indicates a rule for determining whether or not an erroneous setting item is included in the changed configuration information.
  • the risk determination rule includes a determination method based on an assignment history of setting items included in configuration information input in the past, a determination method based on the presence / absence of a setting clone, and the like.
  • the setting clone indicates a setting item obtained by copying and pasting the contents of other setting items.
  • a determination method based on an assignment history of setting items included in configuration information input in the past is used as a risk determination rule.
  • the risk determination rule in this embodiment is also referred to as an allocation history rule.
  • the allocation history rule the allocation history of setting items included in the past configuration information is analyzed, and whether there is a setting item that matches the setting item included in the configuration information input in the past in the configuration information after the change. By determining whether or not, the risk value R1 is calculated.
  • FIG. 2 is a block diagram illustrating the hardware configuration and software configuration of the risk determination server 2 in the first embodiment of the present invention.
  • the risk determination server 2 includes a CPU 21, a memory 20, and a network interface (I / F) 22.
  • CPU21 executes the program stored in the memory 20.
  • the function with which the risk determination server 2 is provided is realizable because CPU21 runs a program.
  • the network IF 22 is an interface for communicating with other devices via the network 4.
  • the memory 20 stores a program executed by the CPU 21 and information necessary for executing the program. Specifically, the memory 20 stores a configuration information input unit 200, a risk value calculation unit 201, a risk display unit 204, an allocation performance totaling unit 205, and an allocation tendency analysis unit 206. Each processing unit described above is provided as a program module. Further, the memory 20 stores a configuration information table T100, a risk value table T300, an allocation performance table T400, and an allocation trend analysis table T420.
  • the configuration information input unit 200 receives input of configuration information of the management target system 10, converts the input configuration information into a predetermined data format, and stores it in the configuration information table T100.
  • the risk value calculation unit 201 calculates a risk value R1 in the input configuration information.
  • the risk value is calculated based on one risk determination rule.
  • the risk value may be calculated based on a plurality of risk determination rules.
  • the risk determination rule may be defined in advance by the administrator, or may be determined automatically by the risk determination server 2.
  • the risk display unit 204 generates risk display information for displaying an error location based on the risk value R1 calculated by the risk value calculation unit 201.
  • the risk display information includes information for displaying a high-risk setting item, an affected range, a warning message, and the like.
  • the risk display information is transmitted to the management terminal 1.
  • the management terminal 1 Upon receiving the risk display information, the management terminal 1 displays the input configuration information and displays a warning message for an error location in the configuration information.
  • the risk determination server 2 itself may display the processing result based on the generated risk display information.
  • the allocation result totaling unit 205 totals the history of the setting values assigned to the setting items and stores them in the allocation result table T400.
  • the assignment trend analysis unit 206 analyzes the assignment tendency of the setting values for the setting items and stores them in the assignment tendency analysis table T420.
  • the configuration information table T100 stores configuration information from the initial construction of the management target system 10 to the present. Details of the configuration information table T100 will be described later with reference to FIG.
  • the risk value table T300 stores information on risk values in the configuration information. Details of the risk value table T300 will be described later with reference to FIG.
  • the assignment result table T400 stores history information of setting values assigned to setting items in the past setting information. Details of the allocation result table T400 will be described later with reference to FIG. Hereinafter, history information of setting values set in setting items is referred to as allocation history.
  • the assignment trend analysis table T420 stores information indicating the tendency of the setting value assigned to the setting item in the setting information in the past. Details of the allocation trend analysis table T420 will be described later with reference to FIG.
  • each table is stored in the memory 20 of the risk determination server 2, but may be stored in another server or database.
  • the risk determination server 2 reads each table from the external database and stores it in the memory 20.
  • the system administrator creates a configuration information sheet for changing the configuration of the management target system 10, and inputs the configuration information sheet created using the management terminal 1 to the risk determination server 2.
  • the risk determination server 2 calculates a risk value R1 based on the input configuration information sheet. Thereafter, the risk determination server 2 generates risk display information based on the calculated risk value, and transmits the generated risk display information to the management terminal 1.
  • the management terminal 1 presents the processing result to the system administrator based on the received risk display information.
  • FIG. 3A and 3B are explanatory diagrams illustrating an example of a configuration information sheet according to the first embodiment of the present invention.
  • FIG. 3A shows an example of the configuration information sheet 300 before the configuration information is changed.
  • FIG. 3B shows an example of a newly created configuration information sheet 301.
  • the configuration information of the management target system 10 is described in a hierarchical structure (tree structure).
  • the configuration information sheets 300 and 301 are created using a spreadsheet, a configuration information dedicated file, an XML file, or the like. In the present embodiment, it is assumed that the configuration information sheet is created using a spreadsheet.
  • the system administrator determines a setting value necessary for changing the configuration of the managed system 10 and changes the configuration information sheet.
  • the system administrator can reproduce or change the configuration of the management target system 10 by referring to the configuration information sheet.
  • the configuration information sheets 300 and 301 include a plurality of setting items as configuration information.
  • the setting item is composed of a set of a setting attribute and a setting value.
  • the setting attribute indicates a label indicating a parameter type such as “physical machine”, “VM”, “disk information”, and “disk name”.
  • Each setting attribute has a tree-like hierarchical relationship. For example, “disk information” is present under “VM” and “disk name” is present under “disk information”.
  • the setting attribute at the lowest layer of the tree structure holds the setting value.
  • the setting value is a value set in the parameter corresponding to the setting attribute. For example, when the setting attribute is “memory”, a value such as “2 GB” is stored as the setting value. An arbitrary data type may be used for the set value.
  • the changed configuration information sheet 301 indicates a setting item that has been changed or added. Specifically, in the configuration information sheet 300 before the change, it can be seen that two VMs are set in the physical machine 7. In the configuration information sheet 301 after the change, the setting value of the VM whose VM name on the physical machine 7 is “VM2” is changed, and one new VM whose VM name is “VM3” is added. I understand that.
  • FIG. 4 is an explanatory diagram showing the configuration information of the management target system 10 in the first embodiment of the present invention in a tree structure representation.
  • FIG. 4 is a diagram showing a part of the tree structure representation of the configuration information sheet 301 corresponding to FIG. 3B.
  • the configuration information is represented by a tree structure having the setting items as one element.
  • each element constituting the tree structure is described as a node.
  • elements 100 to 127 correspond to nodes.
  • a node at the highest hierarchy is described as a root node
  • a node at the lowest hierarchy is described as a leaf node
  • a node in the intermediate hierarchy between the root node and the leaf node is referred to as a branch node.
  • a set of nodes starting from an arbitrary node is described as a subtree. That is, the configuration information shown in FIG. 4 is a single tree, and the configuration information includes a plurality of subtrees. In the present embodiment, the review range is specified based on the subtree.
  • the node 100 whose setting attribute is “physical machine” is the root node.
  • each node is given a setting attribute and setting attribute ID for identifying the setting item.
  • the setting attribute ID is an identifier for uniquely identifying a node represented by the same setting attribute. Note that when different setting attribute IDs are assigned to the nodes in the upper hierarchy, the setting attribute IDs of the nodes in the lower hierarchy may overlap. In the example illustrated in FIG. 4, there are three nodes having the setting attribute “VM”, and setting attributes IDs “1” to “3” are assigned to the nodes, respectively.
  • the setting value assigned to the leaf node is displayed below the leaf node.
  • “VM1” is set as the setting value for the leaf node 103 whose setting attribute is “VM name”.
  • the setting item is determined using the node path in the tree structure.
  • a setting item type and a node name are defined.
  • the setting item type is information for identifying the type of the setting item.
  • the setting item type is represented by a path of setting attributes in order from the root node to the leaf node.
  • the setting item type is expressed by a character string in which the setting attributes of each node are separated by “/”.
  • the setting item type of the node 103 can be described as “/ physical machine / VM / VM basic information / VM name”.
  • the node name is information for uniquely identifying the node.
  • the node name is expressed by a path of a setting attribute with an ID that sequentially follows from the root node to the leaf node.
  • the node name is described in a format in which the setting attribute ID is added to the character string representing the setting attribute.
  • the node name of the leaf node 103 is expressed as “/ physical machine [1] / VM [1] / VM basic information [1] / VM name [1]”.
  • the number stored in the parentheses of the character string indicating the setting attribute represents the setting attribute ID.
  • setting item type and the node name can be mutually searched using either one as a search key.
  • setting attribute ID is automatically assigned by the risk determination server 2.
  • system administrator may manually assign the setting attribute ID.
  • a pointer that refers to an object may be used instead of the setting attribute ID.
  • FIG. 5 is an explanatory diagram illustrating an example of the configuration information table T100 according to the first embodiment of this invention.
  • the configuration information table T100 stores configuration information from the initial construction of the management target system 10 to the present.
  • One entry of the configuration information table T100 corresponds to a setting item to which a setting value can be assigned. That is, the entry in the configuration information table T100 corresponds to a leaf node.
  • the configuration information table T100 includes a system ID (T101), a revision (T102), a changed revision (T103), a set time (T104), a node name (T105), a set value (T106), a changed set value (T107), and a change.
  • a flag (T108) is included.
  • the system ID (T101) stores an identifier for uniquely identifying the management target system 10.
  • Revision (T102) and change revision (T103) each store a revision number indicating the number of changes of configuration information.
  • the revision (T102) stores the revision number before the configuration information is changed.
  • the revision revision (T103) stores the revision number after the configuration information is changed.
  • the set time (T104) stores the time when the changed configuration information is actually reflected in the managed system 10. Note that “null” indicating an empty value is stored at the set time (T104) before the changed configuration information is reflected in the managed system 10. When the changed configuration information is reflected in the management target system 10, a predetermined time is stored in the set time (T104).
  • the node name (T105) stores a setting attribute path with an ID for uniquely identifying a setting item (node).
  • the configuration information table T100 stores setting items for which setting values can be set, that is, setting attribute paths with IDs representing leaf nodes.
  • the set value (T106) stores the set value in the configuration information before the change. If the setting value is not set before the configuration information is changed, “null” is stored in the setting value (T106).
  • the changed set value (T107) stores the set value in the changed configuration information.
  • “null” is stored in the changed setting value (T107) of the entry corresponding to the setting item.
  • the setting value in the configuration information sheet 300 is stored in the setting value (T106), and the setting value in the configuration information sheet 301 is stored in the changed setting value (T107).
  • the change flag (T108) stores information indicating whether or not the setting value is changed in the changed configuration information. Specifically, “1” is stored when the set value is changed, and “0” is stored when the set value is not changed.
  • FIG. 6 is an explanatory diagram showing an example of the risk value table T300 in the first embodiment of the present invention.
  • the risk value table T300 stores a risk value R1 for each setting item. Specifically, the risk value table T300 includes a node name (T301) and a risk value R1 (T302).
  • the risk value table T300 includes entries corresponding to all nodes from the root node to the leaf node, that is, entries corresponding to all setting items.
  • the node name (T301) stores a setting attribute path with ID for uniquely identifying a setting item (node).
  • the risk value R1 (T302) stores the value of the risk value R1 obtained by quantifying errors with respect to the set value.
  • the risk value R1 is calculated for each setting item to which a setting value can be assigned, that is, for each leaf node. This is because the risk value R1 is a value obtained by quantifying errors with respect to the set value. Therefore, the risk value R1 is not calculated because no setting value is assigned to any node other than the leaf node. Therefore, “null” is stored in the risk value R1 (T302) of the entry for which the risk value R1 is not calculated.
  • FIG. 7 is an explanatory diagram showing an example of the allocation record table T400 in the first embodiment of the present invention.
  • the allocation record table T400 stores history information of setting values actually allocated in the past configuration information, that is, the total result of allocation history.
  • the allocation result table T400 includes not only an allocation history for one setting item but also an allocation history for a combination of two or more setting items.
  • an allocation history for one setting item and an allocation history for a combination of two setting items are to be counted.
  • the two setting items are referred to as setting item A and setting item B.
  • the allocation result table T400 includes a setting item type A (T401), a setting item type B (T402), a setting value A (T403), a setting value B (T404), and the number of allocations (T405).
  • Setting item type A (T401) stores a setting attribute path for uniquely identifying the type of setting item A.
  • the setting item type B (T402) stores a setting attribute path for uniquely identifying the type of the setting item B.
  • a setting attribute path to be processed is stored in the setting item type A (T401), and a code representing a wild card is stored in the setting item type B (T402).
  • a code representing a wild card is stored in the setting item type B (T402).
  • different setting attribute paths are stored in the setting item type A (T401) and the setting item type B (T402), respectively.
  • the setting value A (T403) stores the setting value assigned to the setting item A corresponding to the setting item type A (T401).
  • the setting value B (T404) stores the setting value assigned to the setting item type B corresponding to the setting item type B (T402).
  • a predetermined setting value is stored in the setting value A (T403), but a code representing a wild card is stored in the setting value B (T404).
  • the condition of the setting value set in the setting item may be stored.
  • the setting attribute is “memory”
  • a condition such as “2 GB or more” may be stored.
  • the number of allocations (T405) matches the conditions stored in the setting item type A (T401), the setting item type B (T402), the setting value A (T403), and the setting value B (T404) in the past configuration information. Stores the number of allocation history records to be used.
  • the number of allocation histories actually allocated is handled as the allocation record, but other criteria may be used. For example, the length of a period during which a set value that satisfies a predetermined condition is set may be used as the allocation record.
  • FIG. 8 is an explanatory diagram illustrating an example of the allocation trend analysis table T420 according to the first embodiment of this invention.
  • the allocation trend analysis table T420 stores the analysis result of the tendency of the setting values in the past configuration information. Specifically, the allocation trend analysis table T420 includes a setting item type A (T421), a setting item type B (T422), the number of variations (T423), the total number of results (T424), and a distribution (T425).
  • the setting item type A (T421) and the setting item type B (T422) store a setting attribute path for uniquely identifying the setting item type.
  • the setting item type B (T422) stores a symbol representing a wild card.
  • Setting item type A (T421) and setting item type B (T422) are the same as setting item type A (T401) and setting item type B (T402), respectively.
  • the number of variations (T423) stores the number of combinations of the setting value of the setting item corresponding to the setting item type A and the setting value of the setting item corresponding to the setting item type B.
  • the total number of allocations (T424) stores the total value of the number of allocations (T405) of entries that match the setting item type A (T421) and the setting item type B (T422) in the allocation result table T400.
  • the distribution (T425) stores a value indicating a variation in allocation history with respect to a combination of set value combinations. Specifically, the distribution is calculated by dividing the number of variations (T423) by the total number of achievements (T424).
  • a value indicating the distribution is referred to as a distribution D.
  • setting items there are a setting item that preferably matches the setting value assigned in the past configuration change and a setting item that preferably does not match.
  • the setting values such as “memory” and “CPU” have the same setting value.
  • setting values such as “VM name” do not match the setting values.
  • the IP address or the like does not match. This is because if the same IP address exists in one system, the IP address conflicts and the network may not function normally.
  • the setting value is preferably a setting item that matches the past setting value.
  • Distribution D is a numerical value between “0” and “1”. The smaller the numerical value, the smaller the number of variations, and the larger the numerical value, the larger the number of variations. For example, since the setting attribute “VM name” is a unique setting value, the value of the distribution (T425) is close to “1”.
  • the tendency of the set value is grasped based on the analysis result of the allocation result table T400, but the present invention is not limited to this.
  • a distribution T425, may be given in advance.
  • allocation result table T400 and the allocation trend analysis table T420 may be combined into one table.
  • a column corresponding to the distribution (T425) may be added to the allocation result table.
  • FIG. 9 is a flowchart illustrating an outline of processing executed by the risk determination server 2 according to the first embodiment of the present invention.
  • the risk determination server 2 starts processing upon receiving an input of the changed configuration information sheet.
  • the risk determination server 2 updates the configuration information table T100 based on the changed configuration information sheet (step S100).
  • the configuration information input unit 200 assigns a setting attribute ID and a change flag to each node included in the changed configuration information, and stores necessary information in the configuration information table T100. Details of the update processing of the configuration information table T100 will be described later with reference to FIG.
  • the risk determination server 2 calculates the risk value R1 for the setting item included in the changed configuration information, and updates the risk value table T300 (step S200).
  • the risk value calculation unit 201 calculates and calculates a risk value R1 for each setting item (node) based on the changed configuration information, the allocation result table T400, and the allocation trend analysis table T420.
  • the risk value and other necessary information are stored in the risk value table T300. Details of the update process of the risk value table T300 will be described later with reference to FIG.
  • the risk determination server 2 generates risk display information based on the calculated risk value R1, transmits the generated risk display information to the management terminal 1, and ends the process (step S500).
  • the risk display unit 204 identifies an error location of the setting item included in the changed configuration information based on the changed configuration information and the calculated risk value R1, and displays a warning for the error location.
  • the risk display information for displaying etc. is generated. Details of the risk display information generation process will be described later with reference to FIG.
  • FIG. 10 is a flowchart for explaining the update process of the configuration information table T100 executed by the configuration information input unit 200 according to the first embodiment of the present invention.
  • the configuration information input unit 200 first assigns a setting attribute ID to a node included in the changed configuration information (step S101). At this time, the configuration information input unit 200 identifies leaf nodes, and creates as many entries in the configuration information input unit 200 as the number of leaf nodes. Information is not yet stored in the generated entry.
  • the configuration information input unit 200 acquires the configuration information before the change from the configuration information table T100 (step S102). Specifically, the configuration information input unit 200 acquires all the revisions whose update revision (T103) is the latest, that is, all entries in which “n” is stored in the update revision (T103).
  • the configuration information input unit 200 identifies a setting item whose setting value has been changed in the configuration information after the change based on the configuration information after the change and the acquired configuration information before the change (step S103). Specifically, the following processing is executed.
  • the configuration information input unit 200 selects a target leaf node, and acquires setting values corresponding to the selected leaf node from each of the configuration information after the change and the configuration information before the change.
  • the configuration information input unit 200 determines whether or not the setting value of the leaf node in the configuration information after the change is the same as the setting value of the leaf node in the configuration information before the change. When the setting values are the same, it indicates that the setting values are not changed.
  • step S103 The above is the process of step S103.
  • the configuration information input unit 200 stores necessary information in the entry corresponding to the changed configuration information based on the processing results from step S101 to step S103 (step S104).
  • the same identifier as the system ID (T101) included in the configuration information before update is stored in the system ID (T101), “n” is stored in the revision (T102), and the update revision (T103) ) Stores “n + 1”.
  • the node name (T105) stores the setting attribute path with the same ID as the node name (T105) of the configuration information before update.
  • the setting value (T106) stores the same value as the updated setting value (T107) of the setting information before update, and the updated setting value (T107) stores the setting value of the updated setting information.
  • “1” is stored in the change flag (T108) when the set value is changed, and “0” is stored when the set value is not changed.
  • the updated setting information is not reflected in the management target system 10 at the time of the above-described processing, and therefore “null” is stored at the setting time (T104).
  • FIG. 11A and FIG. 11B are flowcharts for explaining the risk value R1 calculation process executed by the risk value calculation unit 201 according to the first embodiment of the present invention.
  • the risk value calculation unit 201 calculates the risk value R1 with reference to the changed configuration information, the allocation result table T400, and the allocation trend analysis table T420.
  • the risk value calculation unit 201 acquires the changed configuration information H (n + 1) from the configuration information table T100 (step S201). Specifically, the risk value calculation unit 201 acquires all entries whose change revision (T103) is “n + 1” from the configuration information table T100.
  • the risk value calculation unit 201 extracts all subtrees (ST1,..., STm) in a hierarchy lower than the predetermined hierarchy L of the acquired configuration information H (n + 1) (step S202).
  • the hierarchy L represents a hierarchy in which combinations of set values are aggregated.
  • the hierarchy L may be set in advance or may be set automatically.
  • the risk analysis accuracy is improved by automatically adjusting the appropriate hierarchy L based on the past failure tendency and review tendency. Note that the present invention is not limited to the learning method described above.
  • the configuration information shown in FIG. 4 extracts the subtree in the hierarchy lower than “VM basic information” and the subtree in the hierarchy lower than “disk information”.
  • the risk value calculation unit 201 calculates a risk value R1 when any two setting items included in the subtree are combined.
  • the risk value R1 for the combination of the setting attribute “guest OS” and the setting attribute “memory” is calculated.
  • the subtree to which the setting attribute “guest OS” and the setting attribute “disk name” belong is different, the risk value R1 for the combination of the setting attribute “guest OS” and the setting attribute “disk name” is not calculated.
  • the risk value calculation unit 201 selects a subtree STj to be processed from the extracted subtree, and executes a loop process (step S204 to step S220) for the subtree STj (step S203).
  • j represents an integer from 1 to m.
  • the risk value calculation unit 201 extracts all the setting items A included in the selected subtree STj, that is, the nodes (C1,..., Ck) (step S204).
  • the risk value calculation unit 201 selects a node Cx to be processed from the extracted nodes, and executes a loop process (step S206 to step S219) for the node Cx (step S205).
  • x represents an integer from 1 to k.
  • the risk value calculation unit 201 generates an empty list for storing the risk value candidate r that is a candidate for the risk value R1 of the selected node Cx on the memory 20 (step S206).
  • the risk value calculation unit 201 calculates a risk value candidate r for the node Cx.
  • two risk value candidates r are calculated.
  • a risk value candidate r for only the node Cx and a risk value candidate r for a combination with another node Cy included in the same subtree STj as the node Cx are calculated.
  • y is an integer from 1 to k, and represents an integer different from x.
  • step S207 to step S211 corresponds to the calculation processing of the risk value candidate r for only the node Cx
  • the processing from step S212 to step S218 is the risk value candidate for the combination of the node Cx and the node Cy. This corresponds to r calculation processing.
  • the risk value calculation unit 201 refers to the allocation result table T400 and determines whether there is an entry corresponding to the node Cx (step S207).
  • the node name CPx and the setting value CVx of the node Cx are acquired from the node name (T105) and the setting value (T106) of the configuration information H (n + 1) acquired in step S201. Further, the risk value calculation unit 201 inputs information indicating a wild card as information about the setting item B as a search condition in order to obtain an entry corresponding to the first allocation result from the allocation result table T400.
  • the node Cx when the node Cx is not a leaf node, it is determined that there is no entry corresponding to the node Cx. If the node Cx is a leaf node, but the set value CVx and the set value A (T403) of the acquired configuration information are different, it is determined that there is no entry corresponding to the node Cx.
  • the node corresponding to the node Cx is a leaf node and the set value CVx of the acquired configuration information matches the set value A (T403), it is determined that an entry corresponding to the node Cx exists. Is done.
  • step S207 If the determination result in step S207 is “YES”, that is, it is determined that there is an entry corresponding to the node Cx, the risk value calculation unit 201 sets information indicating that there is an allocation record (step S208). Specifically, the risk value calculation unit 201 sets “0” to a variable E1 representing the allocation performance. Thereafter, the risk value calculation unit 201 proceeds to step S210.
  • step S207 If the determination result in step S207 is “NO”, that is, it is determined that there is no entry corresponding to the node Cx, the risk value calculation unit 201 sets information indicating that there is no allocation record (step S209). Specifically, the risk value calculation unit 201 sets “1” to a variable E1 representing the allocation performance. Thereafter, the risk value calculation unit 201 proceeds to step S210.
  • the risk value calculation unit 201 searches the assignment trend analysis table T420 for an entry corresponding to the node name CPx of the node Cx, acquires the distribution (T425), and stores it in the variable D1 (step S210).
  • the risk value calculation unit 201 calculates a risk value candidate r based on the variable E1 and the variable D1, and stores the calculated value in the list generated in step S206 (step S211).
  • the risk value calculation unit 201 calculates a risk value candidate r for the combination of the node Cx and the node Cy.
  • the risk value calculation unit 201 selects the setting item B included in the selected subtree STj, that is, the node Cy, and executes a loop process (step S212 to step S218) for the node Cy (step S212). ).
  • the risk value calculation unit 201 refers to the allocation result table T400 and determines whether or not there is an entry corresponding to the node Cx and the node Cy (step S213).
  • the node name of the node Cx and the setting item type A (T401) are compared, the node name of the node Cy and the setting item type B (T402) are compared, and the node of the node Cx The name and the setting item type B (T402) are compared, and a search process is executed for a condition for comparing the node name of the node Cy and the setting item type A (T401).
  • step S213 When the determination result of step S213 is “YES”, that is, when it is determined that there is an entry corresponding to the node Cx and the node Cy, the risk value calculation unit 201 sets information indicating that there is an allocation record (step S214). Specifically, the risk value calculation unit 201 sets “0” to a variable E2 that represents an allocation record. Thereafter, the risk value calculation unit 201 proceeds to step S216.
  • step S213 When the determination result in step S213 is “NO”, that is, when it is determined that there is no entry corresponding to the node Cx and the node Cy, the risk value calculation unit 201 sets information indicating that there is no allocation record (step S213). S215). Specifically, the risk value calculation unit 201 sets “1” to a variable E2 that represents a record. Thereafter, the risk value calculation unit 201 proceeds to step S216.
  • the risk value calculation unit 201 searches the assignment trend analysis table T420 for entries corresponding to the node name CPx of the node Cx and the node name CPy of the node Cy, acquires a distribution (T425) from the corresponding entry, and obtains a variable D2 (Step S216).
  • Risk value calculation unit 201 calculates risk value candidate r based on variable E2 and variable D2, and stores the calculated value in the list generated in step S206 (step S217).
  • the calculation formula for the risk value candidate r is the same as the formula (1).
  • the node name CPx of the node Cx is “... / Memory [1]”
  • the setting value CVx is “8 GB”
  • the node name CPy of the node Cy is “... / Guest OS [1]”
  • the setting value CVy is “ In the case of “32 bit OS”
  • the variable E2 is “1”.
  • the distribution of the corresponding entry in the allocation trend analysis table T420 shown in FIG. 8 is “0.33”
  • the risk value calculation unit 201 calculates a risk value R1 based on the risk value candidate r stored in the list (step S219).
  • the risk value calculation unit 201 calculates the risk value candidate r that is the largest value among the risk value candidates r stored in the list as the risk value R1.
  • the risk value calculation unit 201 registers the determined risk value R1 in the corresponding entry of the risk value table T300.
  • the risk value calculation unit 201 ends the process after executing the process on all the subtrees STj.
  • FIG. 12 is a flowchart for explaining risk display information generation processing executed by the risk display unit 204 according to the first embodiment of the present invention.
  • the risk display unit 204 acquires the changed configuration information H (n + 1) from the configuration information table T100, and displays display information for displaying the changed configuration information H (n + 1) in the configuration information sheet format. Generate (step S501).
  • the risk display unit 204 acquires all entries from the risk value table T300 (step S502).
  • One entry to be processed is selected from the acquired entries (step S503).
  • the selected entry is described as ROW.
  • the risk display unit 204 determines whether or not the risk value in the entry ROW is greater than a predetermined threshold T (step S504).
  • the predetermined threshold T may be set in advance or may be set automatically.
  • step S504 determines whether the risk value in the entry ROW is equal to or less than the predetermined threshold T. If the determination result in step S504 is “NO”, that is, if it is determined that the risk value in the entry ROW is equal to or less than the predetermined threshold T, the risk display unit 204 proceeds to step S508.
  • step S504 When the determination result of step S504 is “YES”, that is, when it is determined that the risk value in the entry ROW is greater than the predetermined threshold T, the risk display unit 204 identifies the setting item corresponding to the entry ROW as an error location. . Thereafter, the risk display unit 204 executes a process (steps S505 to S507) for generating a warning display for the identified error location.
  • the risk display unit 204 generates highlight display information for highlighting the display portion corresponding to the entry ROW of the configuration information H (n + 1) in the configuration information sheet format (step S505).
  • a highlighting method for example, a method of highlighting the outer frame of the setting attribute path field with ID of the setting item corresponding to the entry ROW with a bold line is conceivable.
  • the risk display unit 204 acquires a warning reason for the setting attribute path with ID of the entry ROW (step S506). For example, when acquiring the allocation result as a warning reason, the risk display unit 204 acquires the top several risk value candidates r among the risk value candidates r calculated in the risk value calculation process.
  • the risk display unit 204 generates message information for displaying a warning reason to be added to the highlighting in step S505 (step S507). Thereafter, the risk display unit 204 proceeds to step S508.
  • Risk display unit 204 determines whether or not processing has been completed for all entries ROW (step S508).
  • step S508 When the determination result of step S508 is “NO”, that is, when it is determined that the processing has not been completed for all the entries ROW, the risk display unit 204 returns to step S503 and performs the same processing (S503 to S507). Execute.
  • step S508 When the determination result of step S508 is “YES”, that is, when it is determined that the processing has been completed for all ROWs, the risk display unit 204 displays risk display information including display information, highlight display information, and message information. The generated risk display information is transmitted to the management terminal 1, and the process is terminated (step S509).
  • FIG. 13 is an explanatory diagram showing an example of risk display information displayed on the management terminal 1 in the first embodiment of the present invention.
  • the management terminal 1 displays a display screen 400 as shown in FIG. 13 on the display based on the received risk display information.
  • the display screen 400 displays a configuration information sheet 301 in a sheet format.
  • the part where the risk value is larger than the predetermined threshold that is, the error part is displayed with the highlighting 402-1, 402-2.
  • the part highlighted on the basis of the risk value R1 is the review range.
  • the outer frame of the setting item corresponding to the error location is drawn using a thick line. Further, warning messages 401-1 and 401-2 showing the reason for warning are also drawn on the highlights 402-1 and 402-2.
  • the warning message 401-1 for the highlight display 402-1 indicates that there is no allocation result of a combination with the setting attribute “guest OS” and the setting value “32-bit OS”. This is because, in general, the upper limit of the memory that can be used by the 32-bit OS is 4 GB, and a portion to which 8 GB of memory is allocated is likely to have an error in setting items.
  • the warning messages 401-1 and 401-2 include operation buttons 403-1 and 403-2, which are operated when pointing out warning contents corresponding to the warning messages 401-1 and 401-2, and warning messages, respectively. Operation buttons 404-1 and 404-2 that are operated when warning contents corresponding to 401-1 and 401-2 are not pointed out are included.
  • FIG. 14A and FIG. 14B are flowcharts for explaining processing executed by the allocation result totaling unit 205 in the first embodiment of the present invention to generate the allocation result table T400.
  • the allocation result totaling unit 205 totalizes the number of setting values actually allocated from the configuration information input in the past. In the process described below, when the allocation result totaling unit 205 counts the number of allocation histories for the combination of two setting items, control is performed so that duplication of count does not occur.
  • the allocation result totaling unit 205 executes the process when the changed configuration information is input or periodically.
  • the process execution cycle may be set in advance or may be set automatically.
  • the allocation record totaling unit 205 first resets an entry in the allocation record table T400 (step S901).
  • the allocation result totaling unit 205 acquires past configuration information (H (1),..., H (n)) of the management target system 10 from the configuration information table T100 (step S902).
  • the allocation result totaling unit 205 selects the configuration information H (i) to be processed from the acquired configuration information, and executes a loop process (step S903 to step S916) for the configuration information H (i) ( Step S903).
  • i represents an integer from 1 to m.
  • the allocation result totaling unit 205 extracts all subtrees (ST1,..., STm) in the hierarchy lower than the predetermined hierarchy L of the selected configuration information H (i) (step S903).
  • L is the same value as in step S802.
  • the allocation result totaling unit 205 selects a subtree STj to be processed from the extracted subtrees, and executes a loop process (step S905 to step S915) for the subtree STj (step S905).
  • j represents an integer from 1 to m.
  • the allocation result totaling unit 205 extracts all setting items included in the selected subtree STj, that is, nodes (C1,..., Ck) (step S906).
  • the allocation record totaling unit 205 selects a node Cx to be processed from the extracted nodes, and executes a loop process (step S907 to step S914) for the node Cx (step S907).
  • x represents an integer from 1 to k.
  • the allocation result totaling unit 205 counts the number of allocation histories of only the node Cx.
  • the allocation result totaling unit 205 determines whether or not the node Cx is a changed part (step S908).
  • the allocation result totaling unit 205 determines whether or not the change flag (T108) of the entry corresponding to the node Cx is “1”. When the change flag (T108) of the entry corresponding to the node Cx is “1”, it is determined that the node Cx is a changed portion.
  • step S908 When the determination result in step S908 is “YES”, that is, when it is determined that the node Cx is a changed portion, the allocation record totaling unit 205 sets the value of the number of corresponding entries (T405) in the allocation record table T400 to “1”. Are added (step S909). Thereafter, the allocation result totaling unit 205 proceeds to step S910.
  • the allocation record totaling unit 205 refers to the allocation record table T400, searches for a corresponding entry using the node name CPx and the set value CVx of the node Cx as a search key, and stores the number of entries (T405). Add “1” to the count value.
  • the allocation record totaling unit 205 adds a new entry to the allocation record table T400 and sets the node name CPx in the setting item type A (T401).
  • the setting value CVx is stored in the setting value A (T403), and “1” is stored as the initial value in the number of cases (T405).
  • a wild card is stored in the setting item type B (T402) and the setting value B (T404).
  • the allocation record totaling unit 205 counts the number of allocation records for the combination of the node Cx and the node Cy included in the same subtree STj.
  • the allocation result totaling unit 205 selects a node Cy included in the same subtree STj as the node Cx and different from the node Cx, and executes a loop process (steps S910 to S913) for the node Cy (step S913). S910).
  • the allocation result totaling unit 205 determines whether or not at least one of the node Cx or the node Cy is a changed portion (step S911). Specifically, it is determined whether at least one of the entry change flag (T108) corresponding to the node Cx or the entry change flag (T108) corresponding to the node Cx is “1”.
  • step S911 When the determination result of step S911 is “YES”, that is, when it is determined that at least one of the node Cx or the node Cy is a changed portion, the allocation record totaling unit 205 counts the number of corresponding entries in the allocation record table T400 ( “1” is added to the value of T405) (step S912).
  • the allocation record totaling unit 205 refers to the allocation record table T400 and uses the node name CPx and the set value CVx of the node Cx, and the node name CPy and the set value CVy of the node Cy as search keys. The entry is searched and “1” is added to the count value of the number of entries (T405).
  • the allocation record totaling unit 205 adds a new entry to the allocation record table T400.
  • the allocation result totaling unit 205 extracts the setting attribute path by deleting the ID from the node name CPx and the node name CPy, and sets the setting item type A (T401) and the setting item type B (T402), respectively. Stores the extracted setting attribute path.
  • the allocation result totaling unit 205 stores the setting value CVx in the setting value A (T403), stores the setting value CVy in the setting value B (T404), and further sets “1” as the initial value in the number of cases (T405). Is stored.
  • FIG. 15 is a flowchart illustrating processing executed by the allocation trend analysis unit 206 to generate the allocation trend analysis table T420 according to the first embodiment of this invention.
  • the allocation trend analysis unit 206 analyzes the trend of allocation results based on the allocation results table T400.
  • the allocation trend analysis unit 206 resets the allocation trend analysis table T420 (step S1001).
  • the allocation trend analysis unit 206 acquires all combinations of setting items included in the allocation result table T400 (step S1002).
  • combinations of setting items are described using Ki.
  • Ki a combination (K1,..., Kn) of setting items has been acquired.
  • a combination Ki of setting items focusing on the combination of the setting item type A (T401) and the setting item type (T402) is acquired.
  • the allocation trend analysis unit 206 selects a combination Ki of the setting country tree to be processed from the acquired combination of setting items, and executes a loop process (step S1003 to step S1011) for the setting item combination Ki. (Step S1003).
  • i represents an integer from 1 to n.
  • the allocation trend analysis unit 206 initializes a variable N representing the total number of cases matching the selected combination of setting items Ki (step S1004). Specifically, “0” is set to the variable N as an initial value.
  • the allocation trend analysis unit 206 refers to the allocation result table T400 and acquires all entries that match the selected combination of setting items Ki (step S1005). For example, in the example illustrated in FIG. 7, when the setting attribute path A in the combination Ki is “... / Memory” and the setting attribute path B is “... / Guest OS”, five entries are acquired.
  • entry ROWj the acquired entry is referred to as entry ROWj.
  • entry ROWj the acquired entry is referred to as entry ROWj.
  • the allocation trend analysis unit 206 selects an entry ROWj to be processed from the acquired entries, and executes a loop process (step S1006 to step S1008) for the entry ROWj (step S1006).
  • the allocation trend analysis unit 206 acquires the number (T405) of the selected entry ROWj and adds the acquired number (T405) to the variable N (step S1007). By this processing, the total value of all the numbers (T405) of the acquired entry ROWj is calculated.
  • the allocation tendency analysis unit 206 calculates a set value distribution D based on the variable N (step S1009).
  • a method for calculating the distribution for example, a method using the following equation (4) is conceivable.
  • D m / N (4)
  • the total number m of the acquired entry ROW is used because it represents one set value variation with different set value conditions.
  • the allocation trend analysis unit 206 adds an entry for the combination Ki to the allocation trend analysis table T420 (step S1010).
  • the allocation trend analysis unit 206 generates an entry in the allocation trend analysis table T420, stores the first setting attribute path of the setting item combination Ki in the setting item type A (T421), and the combination Ki. Is stored in the setting item type B (T422), the total number of entries ROWj is stored in the number of variations (T423), the value of the variable N is stored in the total number of results (T424), The value of distribution D is stored in distribution (T425).
  • the generation process of the allocation result table T400 and the allocation trend analysis table T420 is a process independent of the calculation process of the risk value R1. This is because the risk value R1 calculation process can be speeded up by executing the processes shown in FIGS. 14A, 14B, and 15 in advance before the risk value R1 calculation process.
  • the generation process of the allocation result table T400 and the allocation trend analysis table T420 may be executed at any timing before the risk value calculation unit 201 calculates the risk value R1.
  • the generation process described above may be executed between step S100 and step S200. As a result, the flow of processing can be simplified.
  • the table when each table is generated, the table is first reset.
  • a method may be used in which the allocation results for the changed configuration information are aggregated and the difference from the configuration information before the change is stored in the table. As a result, the time required for the table generation process can be shortened.
  • the table is generated using all the past configuration information included in all the configuration information tables T100, but the table may be generated using only a part of the configuration information. For example, the results of the configuration information included within a certain period and the set value trend analysis processing target may be used. This can shorten the processing time of table generation. Further, when the setting tendency of the management target system 10 changes in the middle and the history of old configuration information is not valid, the analysis accuracy can be improved by excluding the configuration information of the period.
  • the past configuration information of the management target system 10 is used for the totaling process and the analysis process of the setting value allocation results.
  • the present invention is not limited to this, and configuration information of another system similar to the management target system 10 may be used.
  • the risk value in the setting information can be calculated even when the number of changes of the configuration information in the computer system is small or not changed at all.
  • one managed system 10 may be regarded as a plurality of systems and used. For example, when the management target system 10 is divided by a plurality of virtual networks, the risk value R1 may be calculated by regarding each virtual network as one management target system 10.
  • the changed configuration information is acquired from the configuration information sheet, but other methods may be used.
  • a method is conceivable in which an agent program is operated on each device of the managed system 10 and the configuration information input unit 200 collects configuration information of each device extracted by the agent program.
  • the risk determination server 2 generates the risk display information. However, every time the display information, the highlight information, and the message information are generated, the risk determination server 2 displays the risk display information on the display provided in the risk determination server 2. May be.
  • the risk value for the setting item included in the configuration information can be calculated. Furthermore, setting items that need to be reviewed can be identified based on the risk display information generated based on the risk value. As a result, the review area can be specified without relying on know-how and manual work. Further, review work time can be shortened by narrowing the review range.
  • the risk value R1 is calculated by comparing the configuration information, it is not necessary to manually define a calculation rule for each setting item. Therefore, it is not necessary for the system administrator to create a calculation rule, and man-hours spent for management can be reduced.
  • the risk value for each subtree is calculated in consideration of the operation history in the review.
  • risk value R1 the risk value calculated first is referred to as risk value R1
  • risk value R2 the risk value calculated second is referred to as risk value R2
  • risk value R3 the risk value calculated third is referred to as risk value R3.
  • the risk value R1 is a risk value calculated based on the risk determination rule, and is the same as the risk value R1 in the first embodiment.
  • the risk value R2 is a risk value obtained by integrating the risk value R1 for each subtree.
  • the risk value R3 is a risk value calculated considering the operation history in the past review with respect to the risk value R2.
  • FIG. 16 is a block diagram illustrating the hardware configuration and software structure of the risk determination server 2 in the second embodiment of the present invention.
  • the hardware configuration of the risk determination server 2 is the same as that of the first embodiment.
  • the risk determination server 2 of the second embodiment has a different software configuration.
  • the memory 20 newly stores a review information totaling unit 207, a review tendency analysis unit 208, a review information table T200, and a review tendency analysis table T500.
  • the review information totaling unit 207 collects information about the operation history in the review and stores it in the review information table T200. For example, the review information totaling unit 207 collects risk display information generated by the risk display unit 204 and information related to operations on the display screen 400 displayed on the management terminal 1.
  • the review trend analysis unit 208 analyzes the review trend based on the review information table T200, and stores the analysis result in the review trend analysis table T500.
  • the review information table T200 stores the history information in the review for the changed configuration information.
  • the review trend analysis table T500 stores analysis results of past review trends. In the review, an operation based on the output (risk display information) from the risk determination server 2 is executed.
  • the risk value table T300 is also different from that in the first embodiment. Since other configurations are the same as those of the first embodiment, description thereof is omitted.
  • FIG. 17 is an explanatory diagram illustrating an example of risk display information displayed on the management terminal 1 according to the second embodiment of the present invention.
  • the system administrator browses the display screen 400 and points out an error location in the changed configuration information.
  • the changed configuration information sheet 301 is displayed on the display screen 400, and an emphasis display 402 and a warning message 401 are displayed at an error location of the configuration information sheet 301.
  • the dialog 405-1 is an interface for registering necessary information when the warning content corresponding to the warning message 401-1 is pointed out.
  • the system administrator when pointing out the warning content, the system administrator operates the operation button 403-1 in the warning message 401-1. As a result, a dialog 405-1 is displayed. The system administrator designates information such as an indication path and an indication reason shown in the dialog 405-1, and operates the “OK” button.
  • the system administrator operates the operation button 404-1 in the warning message 401-1.
  • the review information totaling unit 207 acquires operation information for the display screen 400 described above and accumulates it in the review information table T200.
  • FIG. 18 is an explanatory diagram illustrating an example of the review information table T200 according to the second embodiment of this invention.
  • the review information table T200 includes a system ID (T201), a revision (T202), a changed revision (T203), a node name (T204), a warning flag (T205), an indication flag (T206), and a reason (T207).
  • the system ID (T201) stores an identifier for uniquely identifying the management target system 10.
  • Revision (T202) and change revision (T203) each store the number of changes of the configuration information subject to review.
  • the revision (T202) stores the number of changes before the configuration information is changed.
  • the change revision (T203) stores the number of changes after the configuration information is changed.
  • the node name (T204) stores a setting attribute path with an ID for uniquely identifying the setting item on which the warning message 401 is displayed or the setting item pointed out by the system administrator.
  • the warning flag (T205) stores information indicating whether the setting item has been warned by the risk determination server 2. Specifically, “Yes” is stored when the warning message 401 for the setting item is displayed, and “None” is stored when the warning message 401 for the setting item is not displayed.
  • the indication flag (T206) stores information indicating whether the setting item is indicated by the system administrator. Specifically, “Yes” is stored when the setting item is pointed out, and “No” is stored when the setting item is not pointed out.
  • the reason (T207) stores the reason why the setting item corresponding to the node name (T204) is warned or pointed out. For example, when the risk value R1 calculated based on the actual allocation is warned that there is an error, “allocation actual” is stored.
  • FIG. 19 is an explanatory diagram showing an example of a review tendency analysis table T500 in the second embodiment of the present invention.
  • the review trend analysis table T500 stores, for each subtree, the results of analyzing the number of warnings and the number of indications in the past review, the degree of attention in the review, and the like.
  • the review tendency analysis table T500 includes a setting attribute path (T501), a reason (T502), a warning number (T503), a number of indications (T504), and a focus F (T505).
  • the setting attribute path (T501) stores the setting attribute path of the setting item that has been warned or pointed out.
  • the reason (T502) stores a warning reason or an indication reason for the setting item corresponding to the setting attribute path. For example, when the risk value R1 warns that the location is an error, “allocation record” is stored in the reason (T502).
  • the number of warnings (T503) stores the number of warnings of setting items corresponding to the setting attribute path (T501) by the risk determination server 2 in the past review.
  • the number of indications (T504) stores the number of cases in which the setting item corresponding to the setting attribute path (T501) was pointed out by the system administrator in the past review.
  • the focus (T505) stores a value indicating the frequency of the pointing operation for the warning in the past review. That is, the focus (T505) is an index indicating the degree of attention.
  • the focus takes a value of “0” or more, and becomes a larger value as the pointing operation frequency is higher.
  • the focus is assumed to be a value close to “1”.
  • the focus value is expressed using a variable F.
  • the focus is calculated based on the number of warnings (T503) and the number of indications (T504).
  • review information table T200 and the review tendency analysis table T500 may be combined into one table.
  • FIG. 20 is an explanatory diagram illustrating an example of the risk value table T300 according to the second embodiment of the present invention.
  • the risk value table T300 in the second embodiment newly includes a risk value R2 (T303) and a risk value R3 (T304).
  • Risk value R2 (T303) stores the value of risk value R2.
  • the risk value R3 (T304) stores the value of the risk value R3.
  • FIG. 21 is a flowchart illustrating an outline of processing executed by the risk determination server 2 according to the second embodiment of the present invention.
  • the risk determination server 2 calculates the risk value R1, calculates the risk value R2 based on the risk value R1, and further calculates the risk value R3 based on the risk value R2.
  • the risk determination server 2 updates the configuration information table T100 based on the changed configuration information sheet (step S100). Note that the processing in step S100 is the same as that in the first embodiment.
  • the risk determination server 2 calculates the risk value R1 for the setting item included in the changed configuration information, and updates the risk value table T300 (step S200). Note that the processing in step S200 is the same as that in the first embodiment.
  • the risk determination server 2 calculates the risk value R2 by integrating the risk values R1 for each subtree, and updates the risk value table T300 (step S300).
  • the risk value calculation unit 201 calculates the risk value R2 based on the risk value R1 stored in the risk value table T300.
  • the calculation method of the risk value R2 will be described later with reference to FIG.
  • the risk determination server 2 calculates the risk value R3 based on the risk value R2 and the review tendency analysis table T500, and updates the risk value table T300 (step S400).
  • the risk value calculation unit 201 calculates the risk value R3 based on the risk value R2 stored in the risk value table T300 and the focus (T505) of the review tendency analysis table T500. A method of calculating the risk value R3 will be described later with reference to FIG.
  • the risk determination server 2 generates risk display information for displaying an error location in the changed configuration information based on the calculated risk value R3, and uses the generated risk display information as the management terminal 1 To terminate the process (step S500).
  • the risk display unit 204 identifies an error location in the changed configuration information based on the changed configuration information and the calculated risk value R3, and displays a warning display or the like for the error location. To generate risk display information.
  • the risk display information generation process is different in that the risk value R3 is used instead of the risk value R1, but the other processes are the same, and the description thereof is omitted.
  • FIG. 22 is a flowchart illustrating a risk value R2 calculation process executed by the risk value calculation unit 201 according to the second embodiment of the present invention.
  • the risk value calculation unit 201 calls the function func () when calculating the risk value R2.
  • the function func () is a function for calculating the risk value R2 with one node as an input.
  • the risk value calculation unit 201 calculates a risk value R2 of a predetermined subtree by recursively calling the function func ().
  • NOD a variable representing a node
  • Risk value calculation unit 201 first acquires an entry from risk value table T300 (step S301).
  • the read entry corresponds to one node.
  • the entry is referred to as a node (NOD).
  • the risk value calculation unit 201 reads sequentially from entries corresponding to leaf nodes.
  • the risk value calculation unit 201 determines whether or not the acquired node (NOD) is a leaf node (step S302). Specifically, the risk value calculation unit 201 refers to the configuration information table T100 and determines whether there is an entry that matches the node name (T301) of the acquired node (NOD). When there is an entry that matches the node (NOD) acquired in the configuration information table T100, it is determined that the node (NOD) is a leaf node.
  • step S301 When the determination result in step S301 is “YES”, that is, when it is determined that the acquired node (NOD) is a leaf node, the risk value calculation unit 201 calculates the risk value R2 of the leaf node (NOD). The process proceeds to step S307 (step S306).
  • the risk value R2 of the leaf node is the same as the risk value R1 of the leaf node.
  • step S301 When the determination result in step S301 is “NO”, that is, when it is determined that the acquired node (NOD) is not a leaf node, the risk value calculation unit 201 starts with the acquired node (NOD) as a starting point. All nodes existing in the lower hierarchy are extracted (step S303).
  • a node existing in a hierarchy one level lower than the acquired node (NOD) is referred to as a child node.
  • the risk value calculation unit 201 extracts all entries that are child nodes (CHILD1,..., CHILDm) of the acquired node (NOD) from the risk value table T300.
  • the risk value calculation unit 201 inputs the child nodes (CHILD1,..., CHILDm) extracted into the function func () to calculate the child node risk value R2 (step S304). Thereby, the risk value R2 (func (CHILD1)),..., Func (CHILDm)) of each child node is calculated.
  • the risk value calculation unit 201 calculates the risk value R2 of the node (NOD) based on the calculation result in step S303 (step S305). For example, a method of calculating the risk value R2 of the node (NOD) using the following formula (5) is conceivable.
  • R2 Risk value R1 of node (NOD) + Average value of risk value R2 of child node (5)
  • the risk value calculation unit 201 stores the calculated risk value R2 of the node (NOD) in the risk value R2 (T303) of the corresponding entry in the risk value table T300 (step S307).
  • the risk value calculation unit 201 returns the calculated risk value R2 as the return value of the function func (), and ends the process (step S308). Thereafter, recursive calculation processing is executed up to the root node based on the return value.
  • the calculation process of the risk value R2 will be described using a specific example.
  • a case will be described in which the risk value R2 of the node whose node name (T301) shown in FIG. 19 is “/ physical machine [1] / VM [2] / VM basic information [1]” is calculated.
  • step S302 since the node is not a leaf node, the process proceeds to step S303.
  • step S303 four leaf nodes “... / VM name [1]”, “... / Guest OS [1]”, “... / CPU count [1]”, and “. [1] "is extracted.
  • step S304 risk values R2 of four leaf nodes are calculated.
  • the risk value R2 of the leaf node is the same as the risk value R1, “0.0”, “0.67”, “0.0”, and “0.67” are calculated, respectively. .
  • step S305 the risk value R2 of the node is calculated using equation (5).
  • the risk value R1 of “/ physical machine [1] / VM [2] / VM basic information [1]” is “ ⁇ null>”
  • the risk value R1 of the node is “0.0”.
  • the risk value R2 of the node is calculated as shown in the following formula (6).
  • FIG. 23 is a flowchart illustrating a risk value R3 calculation process executed by the risk value calculation unit 201 according to the second embodiment of the present invention.
  • the risk value calculation unit 201 calculates the risk value R3 based on the risk value table T300 and the review tendency analysis table T500 in which the calculation result of the risk value R2 is stored.
  • Risk value calculation unit 201 first acquires all entries from risk value table T300 (step S401).
  • the risk value calculation unit 201 selects one entry to be processed from the acquired entries (step S402).
  • the risk value calculation unit 201 searches the review tendency analysis table T500 for a corresponding entry using the node name (T301) of the selected entry as a search key, and acquires the focus (T505) of the searched entry (step S403). ).
  • the risk value calculation unit 201 calculates a risk value R3 based on the risk value R2 (T303) of the selected entry and the acquired focus (T505) (step S404).
  • the risk value R3 is calculated using the following equation (7).
  • R3 R2 ⁇ F (7)
  • the risk value calculation unit 201 calculates the risk value R3 with the focus F as “1”.
  • Risk value R3 calculation unit 203 updates risk value table T300 (step S405). Specifically, the calculated risk value R3 is stored in the risk value (T304) of the corresponding entry in the risk value table T300.
  • the risk value calculation unit 201 determines whether or not processing has been completed for all acquired entries (step S406).
  • step S406 When the determination result of step S406 is “NO”, that is, when it is determined that the processing has not been completed for all the acquired entries, the risk value calculation unit 201 returns to step S402 and performs similar processing (steps S402 to S402). Step S406) is executed.
  • step S406 When the determination result of step S406 is “YES”, that is, when it is determined that the processing has been completed for all the acquired entries, the risk value calculation unit 201 ends the processing.
  • step S402 the calculation process of the risk value R3 will be described using a specific example.
  • a case where “/ physical machine [1] / VM [2] / VM basic information [1]” is selected as the node name (T301) shown in FIG. 19 in step S402 will be described as an example.
  • step S403 “/ physical machine / VM / VM basic information” is searched as a corresponding entry, and the focus (T505) “1.5” of the entry is acquired.
  • step S404 since the risk value R2 of the entry corresponding to the node name is “0.33”, the risk value R3 of the entry is calculated as shown in the following equation (8).
  • FIG. 24 is a flowchart illustrating processing executed by the review information totaling unit 207 according to the second embodiment of the present invention.
  • the review information totaling unit 207 first resets the review tendency analysis table T500 (step S601).
  • the review information totaling unit 207 extracts all the reasons (T207) included in the review information table T200 (step S602).
  • reasons T207
  • the review information totaling unit 207 selects a reason O to be processed from the extracted reasons (step S603).
  • the review information totaling unit 207 refers to the review information table T200 and acquires all the entries that match the selected reason O (step S604). Specifically, an entry that matches the reason O for which the reason (T207) is selected is acquired.
  • the review information totaling unit 207 extracts the setting item type based on the node names (T204) of all entries acquired in step S604 (step S605). Specifically, the setting item type (setting attribute path) is extracted by removing the ID from the setting attribute path with ID. This is a process for aggregating operation histories in reviews for each setting item of the same type.
  • the review information totaling unit 207 selects a setting item type (CP) to be processed from the setting item types extracted in step S605 (step S606).
  • the review information totaling unit 207 acquires all the entries corresponding to the nodes included in the setting item type (CP) (step S607).
  • the review information totaling unit 207 acquires operation history information in the review from the entry acquired in step S606.
  • the review information totaling unit 207 acquires a count value (WC) that is the number of entries in which the warning flag (T205) is “Yes” among the entries acquired in Step S606 (Step S608).
  • the review information totaling unit 207 acquires a count value (IC) that is the number of entries in which the indication flag (T206) is “Yes” among the entries acquired in Step S606 (Step S609).
  • the review information totaling unit 207 updates the review tendency analysis table T500 (step S610). Specifically, the following processing is executed.
  • the review information totaling unit 207 generates an entry of the setting item type (CP) selected in step S606 in the review tendency analysis table T500.
  • the review information totaling unit 207 stores the extracted setting item type (CP) in the setting item type (T501) of the generated entry, and stores the reason O in the reason (T502). Also, the review information totaling unit 207 stores the count value (WC) in the number of warnings (T503) and stores the count value (IC) in the number of indications (T504).
  • the review information totaling unit 207 determines whether or not the processing has been completed for all the setting item types extracted in step S605 (step S611).
  • step S611 When the determination result of step S611 is “NO”, that is, when it is determined that the processing has not been completed for all the extracted setting item types, the review information totaling unit 207 returns to step S605 and performs the same processing (step Steps S605 to S611) are executed.
  • step S611 determines whether the processing has been completed for all the reasons. Determination is made (step S612).
  • step S612 If the determination result in step S612 is “NO”, that is, it is determined that the processing has not been completed for all the reasons, the review information totaling unit 207 returns to step S603 and performs the same processing (steps S603 to S612). Execute.
  • step S612 If the determination result in step S612 is “YES”, that is, if it is determined that the process has been completed for all reasons, the review information totaling unit 207 ends the process.
  • FIG. 25 is a flowchart for explaining processing executed by the review tendency analysis unit 208 according to the second embodiment of the present invention.
  • the ratio between the number of warnings and the number of indications is used as a value indicating the review tendency.
  • the average value of the review tendency with respect to all past configuration information is used as the processing reference value.
  • the focus F of each setting item type is calculated by dividing the value indicating the review tendency for the setting item type by the average value of the review tendency.
  • the review trend analysis unit 208 calculates a value BT that is an average value of review trends corresponding to all past configuration information (steps S702 to S706). Thereafter, the review tendency analysis unit 208 calculates a value T representing a review tendency for one setting item (steps S706 to S708). After that, the review tendency analysis unit 208 calculates the focus F using the value BT and the value T.
  • the review trend analysis unit 208 first extracts all the reasons (T502) included in the review trend analysis table T500 (step S701).
  • the review tendency analysis unit 208 selects the reason O to be processed from the extracted reasons (step S702).
  • the review trend analysis unit 208 acquires all the entries that match the selected reason O from the review trend analysis table T500 (step S703).
  • the review tendency analysis unit 208 obtains the “number of warnings” and the “number of indications” of all the rows acquired in S703.
  • the review tendency analysis unit 208 calculates the total value of the number of warnings (T503) of the acquired entries and the total value of the number of indications (T504) (step S704). At this time, the review tendency analysis unit 208 stores the total number of warnings (T503) in the variable WC1, and stores the total number of indications (T504) in the variable IC1.
  • an average value (BT) is used as a reference value.
  • the review tendency analysis unit 208 selects one entry to be processed from the entries acquired in step S703 (step S706).
  • the review tendency analysis unit 208 acquires the number of warnings (T503) and the number of indications (T504) of the acquired entries (step S707). At this time, the review tendency analysis unit 208 stores the value of the acquired number of warnings (T503) in the variable WC2, and stores the value of the acquired number of indications (T504) in the variable IC2.
  • the review trend analysis unit 208 uses the variable WC2 and the variable IC2 to calculate a value representing the review trend for the setting item corresponding to the selected entry, and stores the value in the variable T (step S708).
  • the review tendency analysis unit 208 calculates the focus F using the variable BT and the variable T (step S709).
  • the focus F becomes larger as the number of indications for the number of warnings increases.
  • the review trend analysis unit 208 updates the review trend analysis table T500 by storing the calculated focus F in the focus (T505) of the entry selected in step S706 (step S710).
  • the review tendency analysis unit 208 determines whether or not the processing has been completed for all entries acquired in step S703 (step S711).
  • step S711 If the determination result in step S711 is “NO”, that is, if it is determined that the processing has not been completed for all the acquired entries, the review tendency analysis unit 208 returns to step S706 and performs similar processing (steps S706 to S706). Step S711) is executed.
  • step S711 determines whether the processing has been completed for all the reasons.
  • step S712 If the determination result in step S712 is “NO”, that is, it is determined that the processing has not been completed for all the reasons, the review tendency analysis unit 208 returns to step S702 and performs the same processing (steps S702 to S712). Execute.
  • step S712 When the determination result of step S712 is “YES”, that is, when it is determined that the process has been completed for all the reasons, the review tendency analysis unit 208 ends the process.
  • the focus F of the setting item is handled as “1” as a reference value.
  • the calculation process of the focus F will be described using a specific example.
  • a case will be described in which the focus of the setting item type “/ physical machine / VM / VM basic information” is calculated using the number of warnings (T503) and the number of indications (T504) in the review trend analysis table T500 shown in FIG. To do.
  • the total number of warnings (WC1) is 60
  • the total number of indications (IC1) is 30.
  • step S707 “4” is acquired as the number of warnings (WC2) of the setting item type “/ physical machine / VM / VM basic information”, and “3” is acquired as the number of indications (IC2).
  • the item type “/ physical machine / VM / VM basic information” is a larger value than the reference value “1” of the focus F, it is considered that the item has a high degree of attention in the review.
  • the risk display information generation processing in the second embodiment is the same as that in the first embodiment, and thus the description thereof is omitted.
  • the second embodiment is different in that the risk value R3 is used instead of the risk value R1 in the process of step S504.
  • an error location may be specified based on the risk value R2.
  • the risk value R3 is not calculated, and it is determined whether or not the risk value R2 is greater than the threshold value T in the process of step S504.
  • the review location can be specified for each subtree, that is, the setting item of the upper hierarchy. Further, by calculating the risk value R3 in consideration of the operation history in the review, the accuracy for specifying the review range can be improved.
  • the determination rule for obtaining the risk value R1 is different.
  • the system administrator may shorten the work procedure by copying and pasting other setting items with similar setting values when creating the configuration information sheet. After copying and pasting, the system administrator further modifies items that need to be changed.
  • the set value may be incorrect.
  • a warning is given to a place where an error due to copy and paste as described above is suspected.
  • a place where an error caused by copy and paste is suspected is described as a set clone.
  • FIG. 26 is a block diagram illustrating the hardware configuration and software configuration of the risk determination server 2 in the third embodiment of the present invention.
  • the hardware configuration of the risk determination server 2 is the same as that of the first embodiment.
  • the risk determination server 2 of the second embodiment has a different software configuration.
  • a set clone record totaling unit 209 and a set clone trend analyzing unit 210 are stored in the memory 20.
  • a set clone record table T440 and a set clone trend analysis table T450 are stored in the memory 20.
  • FIG. 27 is a flowchart for explaining the calculation process of the risk value R1 in the third embodiment of the present invention.
  • the calculation method of the risk value R1 based on the setting clone determination rule will be described. This determination is characterized by comparing subtrees included in one piece of configuration information.
  • the set clone record totaling unit 209 totals the number of set clones included in the acquired configuration information for each set item and stores it in the set clone record table T440 (step S1101).
  • the set clone trend analysis unit 210 updates the set clone trend analysis table T450 based on the set clone record table T440 (step S1102). Specifically, the set clone trend analysis unit 210 refers to the set clone record table T440, analyzes the occurrence tendency of the set clone based on the number of set clones for each set item, and sets the analysis result to the set clone trend analysis table. Store in T450.
  • the set clone trend analysis unit 210 counts the number of set clones included in the changed configuration information for each node (step S1103).
  • the risk value calculation unit 201 calculates a risk value R1 for each node based on the aggregation result and the occurrence tendency of the set clone acquired from the set clone tendency analysis table T450, and uses the calculated risk value R1 as the risk value table T300. (Step S1104).
  • the set clone result totaling unit 209 compares the setting value included in the subtree having the node 101 as the vertex with the setting value included in the subtree having the node 119 as the vertex.
  • the VM name included in the subtree having the node 101 as the vertex is “VM1”, and the VM name included in the subtree having the node 119 as the vertex is “VM3”, and the setting values do not match. Therefore, it is determined that there is no set clone.
  • the disk name is completely matched with “Disk1” and the file name is “File1”. Therefore, it is determined that the disk information is a set clone.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

 計算機システムの管理者が、システム構成の変更作業において、ノウハウ等に頼らずに、適切なレビュー範囲を特定できるリスク判定方法を提供する。 リスク判定サーバが管理する計算機システムを構築するための構成情報における誤り箇所を特定するためのリスク判定方法であって、構成情報は、階層構造によって構成された複数種類の設定項目を含み、リスク判定サーバが、新たな前記構成情報の入力を受け付けるステップと、新たに入力された構成情報に含まれる設定項目毎に、当該設定項目の誤りを示すリスク値を算出するステップと、算出されたリスク値に基づいて、新たに入力された構成情報における誤り箇所である設定項目を特定するステップと、特定された設定項目に関する情報を表示するためのリスク表示情報を生成するステップと、を含む。

Description

リスク判定方法及びリスク判定サーバ
 本発明は、計算機システムの構成の変更作業におけるリスク判定方法に関する。
 計算機システムの運用では、計算機システムの物理構成及び論理構成を変更するために、システム構成の変更作業が行われる。例えば、近年導入事例が増えている仮想化技術を適用した計算機システムでは、論理構成の変更に伴ったシステム構成の変更処理が多く発生する。具体的には、新規仮想マシン(Virtual Machine;VM)の追加又は仮想マシンのリソース割当量の変更などが挙げられる。以降では、仮想マシンをVMと記載する。
 システム構成の変更作業では、システム管理者が、顧客などからの変更要求に応じてシステム構成を設計し、システムの構成情報を記載したシートを作成する。このとき、システム管理者は、作成された当該シートに誤りがあるか否かを確認する確認作業を行う。以降では、システムの構成情報を記載したシートを構成情報シートと記載する。また、以降では、確認作業をレビューと記載する。
 レビューでは、構成情報シートを作成したシステム管理者とは別のシステム管理者が、構成情報シートに含まれる設定項目のうち、誤りとなる設定項目が存在するか否かを確認する。
 レビューは全自動化が難しいため、一般的に、システム管理者などの人手の作業が必要となる。従来のレビューでは、システム管理者によって構成情報シートに含まれる設定項目の変更箇所をレビュー範囲の中心として個々の設定項目を確認する作業が行われる。例えば、設定項目の変更箇所を強調表示で示した構成情報シートを用いてレビューが行われる。
 しかし、計算機システムの大規模化に伴って、設定項目の変更箇所にレビュー範囲を絞り込むだけでは効率的なレビューを行うことができない。したがって、レビュー範囲をさらに絞り込むことによって、作業時間を短縮することが望まれている。
 しかし、レビュー範囲を特定するためにはノウハウや経験に基づくスキルが必要なため、構成情報シートの中からレビュー箇所を特定することは難しい。また、前述したようなスキルを有するシステム管理者も限られており、効率的なレビューが行えず、システム構成の変更回数が制限され、顧客の要求に応えることができないといった問題が発生する。
 したがって、レビュー範囲を特定するための技術が様々考えられている。例えば、構成変更に対するレビューを支援するための技術として、特許文献1に開示された技術が知られている。
 特許文献1には、構成変更の運用手順に含まれるリスクを算出することによって、運用手順のレビューを効率化する技術が記載されている。ここで、運用手順とは、システム構成を変更する作業担当者、作業期間、システム構成を設定するための操作入力方法及び入力順序などの情報を含む。
 特許文献1では、各運用手順のリスク及び運用手順全体のリスクが数値化される。レビュー時にはリスクの数値の大きさに基づいて危険な運用手順を判定できる。
 しかし、一般に、システム構成の変更に伴う運用手順は、システム構成の設計が完了して構成情報シートの内容が確定した後に作成される。そのため、運用手順の作成前に作成される構成情報シートに含まれる誤り箇所を特定することはできない。
 そこで、特許文献1において、運用手順書自体に構成情報シート全体を含めた場合を考える。ここで、特許文献1のリスク計算方法においては、「作業者の経験年数」等の運用手順の情報に対して「年数1年以下ならリスク値10点、5年以上ならリスク値0点」というようなルールを適用し、個々の運用手順の情報のリスク値が算出される。さらに、運用手順に含まれる全ての情報を重ね合わせた統合リスク値が算出される。
 構成情報シートには数百~数千を超える設定項目が含まれ、運用手順に含まれる情報量に比べて非常に大きい。したがって、特許文献1に記載の発明では、構成情報シートを含めた運用手順のリスク値を算出しても、出力されるリスク値が細かすぎる又は大まかすぎるため、構成情報におけるレビュー範囲を特定することが難しい。
米国特許出願公開第2010/0191952号明細書
 計算機システムのシステム管理者が、システム構成の変更作業において、ノウハウに頼らなくとも、レビュー範囲を特定できる計算機システムを提供することを目的とする。
 本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、リスク判定サーバが管理する計算機システムを構築するための構成情報における誤り箇所を特定するためのリスク判定方法であって、前記リスク判定サーバは、プロセッサと、前記プロセッサに接続されるメモリと、前記プロセッサに接続され、前記計算システムと接続するためのネットワークインタフェースとを有し、前記計算機システムは、1以上の計算機と、1以上のネットワーク装置と、1以上のストレージシステムとを含み、前記構成情報は、階層構造によって構成された複数種類の設定項目を含み、前記方法は、前記リスク判定サーバが、新たな前記構成情報の入力を受け付ける第1のステップと、前記リスク判定サーバが、前記新たに入力された構成情報に含まれる前記設定項目毎に、当該設定項目の誤りを示すリスク値を算出する第2のステップと、前記算出されたリスク値に基づいて、前記新たに入力された構成情報における誤り箇所である前記設定項目を特定する第3のステップと、前記特定された設定項目に関する情報を表示するためのリスク表示情報を生成する第4のステップと、を含むことを特徴とする。
 本発明によれば、構成情報に含まれる設定項目毎に誤り箇所を特定できるため、運用管理者は、管理対象の計算機システムの構成情報において、レビューが必要な範囲を迅速に特定できる。したがって、レビュー時間を短縮することができる。
本発明の第1の実施形態における計算機システムの構成を説明するブロック図である。 本発明の第1の実施形態におけるリスク判定サーバのハードウェア構成及びソフトウェア構成を説明するブロック図である。 本発明の第1の実施形態における構成情報シートの一例を示す説明図である。 本発明の第1の実施形態における構成情報シートの一例を示す説明図である。 本発明の第1の実施形態における構成情報を木構造表現で示した説明図である。 本発明の第1の実施形態における構成情報テーブルの一例を示す説明図である。 本発明の第1の実施形態におけるリスク値テーブルの一例を示す説明図である。 本発明の第1の実施形態における割当実績テーブルの一例を示す説明図である。 本発明の第1の実施形態における割当傾向分析テーブルの一例を示す説明図である。 本発明の第1の実施形態におけるリスク判定サーバによって実行される処理の概要を説明するフローチャートである。 本発明の第1の実施形態における構成情報入力部が実行する構成情報テーブルT100の更新処理を説明するフローチャートである。 本発明の第1の実施形態におけるリスク値算出部が実行するリスク値R1の算出処理を説明するフローチャートである。 本発明の第1の実施形態におけるリスク値算出部が実行するリスク値R1の算出処理を説明するフローチャートである。 本発明の第1の実施形態におけるリスク表示部が実行するリスク表示情報の生成処理を説明するフローチャートである。 本発明の第1の実施形態における管理端末に表示されるリスク表示情報の一例を示す説明図である。 本発明の第1の実施形態における割当実績集計部が割当実績テーブルを生成するために実行する処理を説明するフローチャートである。 本発明の第1の実施形態における割当実績集計部が割当実績テーブルを生成するために実行する処理を説明するフローチャートである。 本発明の第1の実施形態における割当傾向分析部が割当傾向分析テーブルを生成するために実行する処理を説明するフローチャートである。 本発明の第2の実施形態におけるリスク判定サーバのハードウェア構成及びソフトウェア構造を説明するブロック図である。 本発明の第2の実施形態における管理端末に表示されたリスク表示情報の一例を示す説明図である。 本発明の第2の実施形態におけるレビュー情報テーブルの一例を示す説明図である。 本発明の第2の実施形態におけるレビュー傾向分析テーブルの一例を示す説明図である。 本発明の第2の実施形態におけるリスク値テーブルの一例を示す説明図である。 本発明の第2の実施形態におけるリスク判定サーバによって実行される処理の概要を説明するフローチャートである。 本発明の第2の実施形態におけるリスク値算出部が実行するリスク値R2の算出処理を説明するフローチャートである。 本発明の第2の実施形態におけるリスク値算出部が実行するリスク値R3の算出処理を説明するフローチャートである。 本発明の第2の実施形態におけるレビュー情報集計部が実行する処理を説明するフローチャートである。 本発明の第2の実施形態におけるレビュー傾向分析部が実行する処理を説明するフローチャートである。 本発明の第3の実施形態におけるリスク判定サーバのハードウェア構成及びソフトウェア構成を説明するブロック図である。 本発明の第3の実施形態におけるリスク値R1の算出処理を説明するフローチャートである。
 以下、図面を用いて実施形態を説明する。
 <第1の実施形態>
 第1の実施形態では、過去に入力された計算機システムの構成情報に基づいて、変更された構成情報に含まれる各設定項目の誤りを特定する。第1の実施形態では、計算機システムの構成情報は、VMの設定に必要な設定項目を含むものとして説明する。なお、本発明はこれに限定されず、計算機システムのネットワーク構成及びストレージ構成などでも同様の効果を奏する。
 図1は、本発明の第1の実施形態における計算機システムの構成を説明するブロック図である。
 計算機システムは、管理端末1、リスク判定サーバ2及び管理対象システム10から構成される。管理端末1、リスク判定サーバ2及び管理対象システム10は、ネットワーク4を介して相互通信ができるように接続される。
 管理対象システム10は、物理マシン7、スイッチ6、ルータ5、ファイバチャネルスイッチ(FC-SW)8、及びストレージシステム9から構成される。なお、管理対象システム10は、他の装置を含んでいてもよい。
 物理マシン7は、FC-SW8を介して、ストレージシステム9と接続され、また、スイッチ6を介してネットワーク4に接続される。
 物理マシン7は、CPU(図示省略)、メモリ(図示省略)、及びネットワークインタフェース(図示省略)を備える計算機である。
 物理マシン7上では、VMを管理する仮想化ソフトウェア(図示省略)が稼動する。また、仮想化ソフトウェアによって生成されたVM上ではゲストOS(図示省略)が稼動する。さらに、ゲストOS上では、ミドルウェア及びアプリケーションが実行される。なお、VMの生成方法は公知の技術であるため説明を省略する。なお、仮想化ソフトウェアは、物理マシン7が備えるOS上で稼動してもよい。
 ストレージシステム9は、コントローラ及び複数の記憶媒体を備え、物理マシン7上で稼動するVMに割り当てる記憶領域を提供する。記憶媒体としては、HDD及びSSD等が考えられる。なお、ストレージシステム9は、複数の記憶媒体を用いてRAIDを構成してもよい。
 リスク判定サーバ2は、管理対象システム10の構成情報に基づいて、当該構成情報におけるリスクを定量化した値、すなわち、リスク値を算出し、リスク値に基づいて変更後の構成情報の誤り箇所を特定する。さらに、リスク判定サーバ2は、構成情報の誤り箇所をシステム管理者に提示する。本実施形態では、構成情報の誤り箇所がレビュー範囲として提示される。
 なお、構成情報におけるリスクとは、構成情報に含まれる設定項目の誤りを示すものである。
 ここで、管理対象システム10の構成情報は、管理対象システム10を構成する装置の設定情報、当該装置が実行するソフトウェアの設定情報、及び、各設定情報の依存関係を表す情報を含む。なお、設定情報には、数値及び文字列データなどが格納される。また、ソフトウェアには、仮想化ソフトウェア、物理マシン7上で稼動するOS又はVM上で稼動するゲストOS、並びに、OS又はゲストOS上で動作するミドルウェア(データベース、Webコンテナなど)及びアプリケーションが含まれる。
 なお、ソフトウェアの設定情報は、通常、管理対象システム10を構成する各装置が有する設定ファイル(コンフィグファイル)に格納される。
 管理端末1は、システム管理者が操作する計算機である。当該計算機は、CPU(図示省略)、メモリ(図示省略)、記憶媒体(図示省略)、ネットワークインタフェース(図示省略)及び入出力装置(図示省略)を備える。入出力装置には、キーボード及びディスプレイなどが含まれる。システム管理者は、管理端末1を用いて、管理対象システム10への操作を行う。
 第1の実施形態では、リスク判定サーバ2が、リスク判定ルールを適用することによって変更された構成情報におけるリスク値を算出する。
 ここで、リスク判定ルールとは、変更後の構成情報において誤った設定項目が含まれるか否かを判定するためのルールを示す。リスク判定ルールとしては、過去に入力された構成情報に含まれる設定項目の割当履歴に基づいた判定方法、及び設定クローンの有無に基づいた判定方法などがある。なお、設定クローンは、他の設定項目の内容をコピーアンドペーストした設定項目を示す。
 第1の実施形態では、リスク判定ルールとして、過去に入力された構成情報に含まれる設定項目の割当履歴に基づいた判定方法が用いられる。以降、本実施形態におけるリスク判定ルールを割当履歴ルールとも記載する。
 割当履歴ルールでは、過去の構成情報に含まれる設定項目の割当履歴が分析され、変更後の構成情報に、過去に入力された構成情報に含まれる設定項目と一致する設定項目が存在するか否かを判定することによって、リスク値R1が算出される。
 図2は、本発明の第1の実施形態におけるリスク判定サーバ2のハードウェア構成及びソフトウェア構成を説明するブロック図である。
 リスク判定サーバ2は、CPU21、メモリ20、及びネットワークインタフェース(I/F)22を備える。
 CPU21は、メモリ20に格納されるプログラムを実行する。CPU21がプログラムを実行することによって、リスク判定サーバ2が備える機能を実現することができる。
 ネットワークIF22は、ネットワーク4を介して他の装置と通信するためのインタフェースである。
 メモリ20は、CPU21によって実行されるプログラム及び当該プログラムの実行に必要な情報を格納する。具体的には、メモリ20は、構成情報入力部200、リスク値算出部201、リスク表示部204、割当実績集計部205、及び割当傾向分析部206を格納する。前述した各処理部は、プログラムモジュールとして提供される。また、メモリ20は、構成情報テーブルT100、リスク値テーブルT300、割当実績テーブルT400及び割当傾向分析テーブルT420を格納する。
 構成情報入力部200は、管理対象システム10の構成情報の入力を受け付け、入力された構成情報を所定のデータ形式に変換して構成情報テーブルT100に格納する。
 リスク値算出部201は、入力された構成情報におけるリスク値R1を算出する。本実施形態では、1つのリスク判定ルールに基づいてリスク値が算出されるものとする。ただし、複数のリスク判定ルールに基づいてリスク値が算出されてもよい。また、リスク判定ルールは管理者が予め定義したものでもよいし、リスク判定サーバ2が自動的に決定したものでもよい。
 リスク表示部204は、リスク値算出部201によって算出されたリスク値R1に基づいて、誤り箇所を表示するためのリスク表示情報を生成する。リスク表示情報には、リスクの高い設定項目、影響が及ぶ範囲、及び警告メッセージなどを表示するための情報が含まれる。
 本実施形態では、リスク表示情報は、管理端末1に送信されるものとする。管理端末1は、リスク表示情報を受信すると、入力された構成情報を表示し、当該構成情報における誤り箇所に対して警告メッセージを表示する。なお、リスク判定サーバ2自身が、生成されたリスク表示情報に基づいて処理結果を表示してもよい。
 割当実績集計部205は、設定項目に割り当てられていた設定値の履歴を集計して、割当実績テーブルT400に格納する。
 割当傾向分析部206は、設定項目に対する設定値の割り当て傾向を分析して、割当傾向分析テーブルT420に格納する。
 構成情報テーブルT100は、管理対象システム10の構築初期から現在に至るまでの構成情報を格納する。なお、構成情報テーブルT100の詳細については図5を用いて後述する。
 リスク値テーブルT300は、構成情報におけるリスク値に関する情報を格納する。なお、リスク値テーブルT300の詳細については図6を用いて後述する。
 割当実績テーブルT400は、過去の設定情報において、設定項目に割り当てられた設定値の履歴情報を格納する。割当実績テーブルT400の詳細については図7を用いて後述する。以降では、設定項目に設定された設定値の履歴情報を割当履歴と記載する。
 割当傾向分析テーブルT420は、過去に設定情報において、設定項目に割り当てられた設定値の傾向を示す情報を格納する。割当傾向分析テーブルT420の詳細については図8を用いて後述する。
 図2に示す例では、各テーブルは、リスク判定サーバ2のメモリ20に格納されているが、他のサーバ又はデータベースに格納されていてもよい。例えば、各テーブルが外部のデータベースに格納されている場合、リスク判定サーバ2が、外部のデータベースから各テーブルを読み出して、メモリ20に格納する。
 ここで、リスク値R1の算出処理の概要について説明する。
 まず、システム管理者が、管理対象システム10の構成を変更するための構成情報シートを作成し、管理端末1を用いて作成された構成情報シートをリスク判定サーバ2に入力する。
 リスク判定サーバ2は、入力された構成情報シートに基づいてリスク値R1を算出する。その後、リスク判定サーバ2は、算出されたリスク値に基づいてリスク表示情報を生成し、管理端末1に生成されたリスク表示情報を送信する。
 管理端末1は、受信したリスク表示情報に基づいて、システム管理者に処理結果を提示する。
 図3A及び図3Bは、本発明の第1の実施形態における構成情報シートの一例を示す説明図である。図3Aは、構成情報が変更される前の構成情報シート300の一例を示す。図3Bは、新たに作成された構成情報シート301の一例を示す。
 構成情報シート300、301は、管理対象システム10の構成情報が階層的な構造(木構造)で記述される。構成情報シート300、301は、スプレッドシート、構成情報の専用ファイル又はXMLファイルなどを用いて作成される。本実施形態では、スプレッドシートを用いて構成情報シートが作成されているものとする。
 システム管理者は、顧客などから管理対象システム10の構成変更を要求された場合に、管理対象システム10の構成変更に必要な設定値を決定し、構成情報シートを変更する。システム管理者は、構成情報シートを参照することによって、管理対象システム10の構成を再現し、又は変更することができる。
 図3A及び図3Bに示す例では、構成情報シート300、301は、構成情報として複数の設定項目を含む。ここで、設定項目とは、設定属性と設定値との組から構成される。
 設定属性は、「物理マシン」、「VM」、「ディスク情報」及び「ディスク名」等のパラメータの種別を示すラベルを示す。各設定属性は互いに木構造の階層関係を持つ。例えば、「VM」の下に「ディスク情報」があり、「ディスク情報」の下に「ディスク名」があるというような階層関係を有する。
 さらに、木構造の最下層の設定属性は設定値を保持する。設定値は、設定属性に対応するパラメータに設定される値である。例えば、設定属性が「メモリ」の場合、設定値には「2GB」などの値が格納される。なお、設定値には任意のデータ型を用いてよい。
 図3Bに示すように、変更された構成情報シート301のうち斜線で表示した箇所が、変更又は追加された設定項目を示す。具体的には、変更前の構成情報シート300では、物理マシン7に2つのVMが設定されていることが分かる。変更後の構成情報シート301では、物理マシン7上のVM名が「VM2」であるVMの設定値が変更され、さらに、VM名が「VM3」であるVMが新たに1つ追加されていることが分かる。
 図4は、本発明の第1の実施形態における管理対象システム10の構成情報を木構造表現で示した説明図である。図4は、図3Bに対応する構成情報シート301の木構造表現の一部を示した図である。
 図4の丸印は構成情報に含まれる設定項目を示しており、構成情報は、設定項目を一つの要素とする木構造で表される。ここで、木構造を構成する各要素をノードと記載する。図4に示す例では、要素100~127がノードに該当する。
 以降では、木構造を意識した設定項目をノードと記載する。また、最上位の階層のノードを根ノードと記載し、最下位の階層のノードを葉ノードと記載する。また、根ノードと葉ノードとの間の中間階層のノードを枝ノードと記載する。
 また、任意のノードを起点としたノードの集合を部分木と記載する。すなわち、図4に示す構成情報は一つの木となり、当該構成情報には複数の部分木が含まれる。本実施形態では、部分木に基づいてレビュー範囲が特定される。
 図4に示す例では、設定属性が「物理マシン」であるノード100が根ノードである。「物理マシン」の下に、設定属性が「VM」であるノードが複数存在する。各「VM」を頂点とした部分木は3つ存在している。これは「物理マシン」の下に3つの「VM」があることを示す。
 また、各ノードには、設定項目を識別するための設定属性及び設定属性IDが付与される。設定属性IDは、同一の設定属性で表されるノードを一意に識別するための識別子である。なお、上位の階層のノードに異なる設定属性IDが付与されている場合、下位の階層のノードの設定属性IDは重複してもよい。図4に示す例では、設定属性が「VM」であるノードが3つ存在し、それぞれノードに「1」から「3」まで設定属性IDが付与されている。
 また、図4に示す例では、葉ノードの下には、当該葉ノードに割り当てられる設定値が表示される。例えば、設定属性が「VM名」である葉ノード103は、設定値として「VM1」が設定されることが分かる。
 本実施形態では、木構造におけるノードのパスを用いて設定項目を判別する。ここで、設定項目種別と、ノード名とを定義する。
 設定項目種別は、設定項目の種別を識別するための情報である。設定項目種別は、根ノードから葉ノードまでを順にたどった設定属性のパスによって表現される。以降では、各ノードの設定属性を「/」で区切った文字列で設定項目種別を表現する。例えば、ノード103の設定項目種別は、「/物理マシン/VM/VM基本情報/VM名」と記載できる。
 ノード名は、ノードを一意に特定するための情報である。ノード名は、根ノードから葉ノードまでを順にたどったID付きの設定属性のパスによって表現される。以降では、設定属性を表す文字列に設定属性IDを加えた形式でノード名を記載する。例えば、葉ノード103のノード名は、「/物理マシン[1]/VM[1]/VM基本情報[1]/VM名[1]」と表記する。ここで、設定属性を示す文字列の括弧に格納される数字が設定属性IDを表す。
 なお、設定項目種別及びノード名は、いずれか一方を検索キーにして相互に検索できるものとする。
 例えば、設定項目種別として「/物理マシン/VM/VM基本情報/VM名」が指定された検索処理では、「/物理マシン[1]/VM[1]/VM基本情報[1]/VM名[1]」、「/物理マシン[1]/VM[2]/VM基本情報[1]/VM名[1]」、及び、「/物理マシン[1]/VM[3]/VM基本情報[1]/VM名[1]」の3つのノードが検索される。また、ノード名として「/物理マシン[1]/VM[1]/VM基本情報[1]/VM名[1]」が指定された検索処理では、「/物理マシン/VM/VM基本情報/VM名」が設定項目種別として検索される。
 以降では、設定項目種別及びノード名の表記については、パスにおける最下位の階層の設定属性を用いて記載する。例えば、設定項目種別が「/物理マシン/VM/VM基本情報/VM名」の場合、以降では「…/VM名」と記載するものとする。
 なお、設定属性IDは、リスク判定サーバ2によって自動的に割り当てられるものとする。ただし、システム管理者が手動で設定属性IDを割り当ててもよい。また、設定属性IDの代わりにオブジェクトを参照するポインタなどを用いてもよい。
 図5は、本発明の第1の実施形態における構成情報テーブルT100の一例を示す説明図である。
 構成情報テーブルT100は、管理対象システム10の初期構築時から現在に至るまでの構成情報を格納する。なお、構成情報テーブルT100の一つのエントリは、設定値が割り当て可能な設定項目に対応する。すなわち、構成情報テーブルT100のエントリは、葉ノードに対応する。
 構成情報テーブルT100は、システムID(T101)、リビジョン(T102)、変更リビジョン(T103)、設定時刻(T104)、ノード名(T105)、設定値(T106)、変更設定値(T107)、及び変更フラグ(T108)を含む。
 システムID(T101)は、管理対象システム10を一意に識別するための識別子を格納する。
 リビジョン(T102)及び変更リビジョン(T103)は、それぞれ、構成情報の変更回数を示すリビジョン番号を格納する。リビジョン(T102)は、構成情報が変更される前のリビジョン番号を格納する。変更リビジョン(T103)は、構成情報が変更された後のリビジョン番号を格納する。
 初めて構成情報が入力された場合、リビジョン(T102)には「0」が格納され、一方、変更リビジョン(T103)は空白となる。以後、構成情報が変更されると、リビジョン(T102)及び変更リビジョン(T103)に格納されるリビジョン番号が「1」を加算される。
 設定時刻(T104)は、変更後の構成情報が実際に管理対象システム10に反映された時刻を格納する。なお、変更後の構成情報が管理対象システム10に反映される前の設定時刻(T104)には、空の値を示す「null」が格納される。変更後の構成情報が管理対象システム10に反映された場合には、設定時刻(T104)に所定の時刻が格納される。
 ノード名(T105)は、設定項目(ノード)を一意に識別するためのID付きの設定属性パスを格納する。なお、構成情報テーブルT100には、設定値を設定できる設定項目、すなわち、葉ノードを表すID付きの設定属性パスが格納される。
 設定値(T106)は、変更前の構成情報における設定値を格納する。なお、構成情報の変更前に設定値が設定されていない場合、設定値(T106)には「null」が格納される。
 変更設定値(T107)は、変更後の構成情報における設定値を格納する。構成情報の変更後の設定情報において設定値が削除された設定項目がある場合、当該設定項目に対応するエントリの変更設定値(T107)には「null」が格納される。
 図3A及び図3Bに示す例では、設定値(T106)には構成情報シート300における設定値が格納され、変更設定値(T107)には構成情報シート301における設定値が格納される。
 変更フラグ(T108)は、変更後の構成情報において設定値が変更されるか否かを示す情報を格納する。具体的には、設定値が変更される場合には「1」が格納され、設定値が変更されない場合には「0」が格納される。
 以降では、変更リビジョン(T103)が「i」である構成情報をH(i)と記載する。
 図6は、本発明の第1の実施形態におけるリスク値テーブルT300の一例を示す説明図である。
 リスク値テーブルT300は、設定項目毎のリスク値R1を格納する。具体的には、リスク値テーブルT300は、ノード名(T301)及びリスク値R1(T302)を含む。
 リスク値テーブルT300は、根ノードから葉ノードに至るまでの全てのノードに対応するエントリ、すなわち、全ての設定項目に対応するエントリが含まれる。
 ノード名(T301)は、設定項目(ノード)を一意に識別するためのID付き設定属性パスを格納する。
 リスク値R1(T302)は、設定値に対する誤りを定量化したリスク値R1の値を格納する。
 なお、リスク値R1は、設定値が割り当て可能な設定項目、すなわち、葉ノードごとに1つ算出される。これは、リスク値R1が設定値に対する誤りを定量化した値であるためである。そのため、葉ノード以外のノードには設定値が割り当てられないためリスク値R1は算出されない。したがって、リスク値R1が算出されないエントリのリスク値R1(T302)には、「null」が格納される。
 図7は、本発明の第1の実施形態における割当実績テーブルT400の一例を示す説明図である。
 割当実績テーブルT400は、過去の構成情報において実際に割り当てられた設定値の履歴情報、すなわち、割当履歴の集計結果を格納する。割当実績テーブルT400には、1つの設定項目に対する割当履歴だけではなく、2つ以上の設定項目の組み合わせに対する割当履歴も含まれる。本実施形態では、1つの設定項目に対する割当履歴、及び、2つの設定項目の組み合わせに対する割当履歴を集計対象とする。以降では、2つの設定項目を、設定項目A及び設定項目Bと記載する。
 割当実績テーブルT400は、設定項目種別A(T401)、設定項目種別B(T402)、設定値A(T403)、設定値B(T404、)及び割当件数(T405)を含む。
 設定項目種別A(T401)は、設定項目Aの種別を一意に識別するための設定属性パスを格納する。設定項目種別B(T402)は、設定項目Bの種別を一意に識別するための設定属性パスを格納する。
 ここで、1つの設定項目に対応するエントリでは、設定項目種別A(T401)に対象となる設定属性パスが格納され、設定項目種別B(T402)にはワイルドカードを表す符号が格納される。また、2つの設定項目に対応するエントリでは、設定項目種別A(T401)及び設定項目種別B(T402)に、それぞれ異なる設定属性パスが格納される。
 設定値A(T403)は、設定項目種別A(T401)に対応する設定項目Aに割り当てられた設定値を格納する。設定値B(T404)は、設定項目種別B(T402)に対応する設定項目種別Bに割り当てられた設定値を格納する。
 なお、1つの設定項目に対応するエントリの場合、設定値A(T403)には所定の設定値が格納されるが、設定値B(T404)にはワイルドカードを表す符号が格納される。
 なお、設定値A(T403)及び設定値B(T404)には、設定項目に設定される設定値の条件を格納してもよい。例えば、設定属性が「メモリ」である場合、「2GB以上」などの条件を格納してもよい。
 割当数(T405)は、過去の構成情報において、設定項目種別A(T401)、設定項目種別B(T402)、設定値A(T403)、及び設定値B(T404)に格納される条件と一致する割当履歴の件数を格納する。
 なお、割当実績テーブルT400では、実際に割り当てられた割当履歴の件数を割当実績として扱っているが、他の基準を用いてもよい。例えば、所定の条件を満たす設定値が設定されていた期間の長さを割当実績として用いてもよい。
 図8は、本発明の第1の実施形態における割当傾向分析テーブルT420の一例を示す説明図である。
 割当傾向分析テーブルT420は、過去の構成情報における設定値の傾向の分析結果を格納する。具体的には、割当傾向分析テーブルT420は、設定項目種別A(T421)、設定項目種別B(T422)、バリエーション数(T423)、実績総数(T424)、及び分布(T425)を含む。
 設定項目種別A(T421)及び設定項目種別B(T422)は、設定項目の種別を一意に識別するための設定属性パスを格納する。なお、1つの設定項目に対応するエントリの場合、設定項目種別B(T422)には、ワイルドカードを表す符号が格納される。設定項目種別A(T421)及び設定項目種別B(T422)は、それぞれ、設定項目種別A(T401)及び設定項目種別B(T402)と同一のものである。
 バリエーション数(T423)は、設定項目種別Aに対応する設定項目の設定値と、設定項目種別Bに対応する設定項目の設定値との組み合わせの数を格納する。
 割当総数(T424)は、割当実績テーブルT400において、設定項目種別A(T421)及び設定項目種別B(T422)と一致するエントリの割当件数(T405)の合計値を格納する。
 例えば、図7に示す割当実績テーブルT400では、設定項目種別A(T421)が「…/メモリ」、設定項目種別B(T422)が「…/ゲストOS」であるエントリは5つあるため、バリエーション数(T423)には「5」が格納される。また、実績総数(T424)には、5つのエントリの割当件数(T422)の合計値である「15」が格納される。
 分布(T425)は、設定値の組み合わせのバリエーションに対する割当履歴のばらつきを示す値を格納する。具体的には、バリエーション数(T423)を実績総数(T424)で除算することによって分布が算出される。以降、分布を示す値を分布Dと記載する。
 設定項目には、過去の構成変更において割り当てられた設定値と一致することが好ましいものと、一致しない方が好ましいものとが存在する。
 例えば、ホモジニアスなマシン群を利用する場合において、「メモリ」及び「CPU」など設定項目は、設定値が一致する方が好ましい。一方、「VM名」などの設定項目は、設定値が一致しない方が好ましい。また、IPアドレスなども一致しない方が好ましい設定項目である。これは、1つのシステム内に同一のIPアドレスが存在すると、IPアドレスが競合し、ネットワークが正常に機能しなくなってしまう可能性があるためである。
 前述したように、設定項目によって設定値が一致する方が好ましい否かが異なる。そこで本実施形態では、設定値の分布に基づいて、設定値が過去の設定値と一致することが好ましい設定項目であるか否かを判定する。
 分布Dは「0」から「1」の間の数値であり、数値が小さいほどバリエーション数が少ないことを示し、数値が大きいほどバリエーション数が多いことを示す。例えば、設定属性「VM名」は、一意な設定値であるため、分布(T425)の値は「1」に近い値となる。
 なお、本実施形態では、割当実績テーブルT400の分析結果に基づいて、設定値の傾向を把握したが本発明はこれに限定されない。例えば、設定値の傾向が把握できる場合には、予め分布(T425)を与えてもよい。
 また、割当実績テーブルT400と割当傾向分析テーブルT420とを一つのテーブルにまとめてもよい。この場合、割当実績テーブルに分布(T425)に対応するカラムを追加すればよい。
 図9は、本発明の第1の実施形態におけるリスク判定サーバ2によって実行される処理の概要を説明するフローチャートである。
 ここでは、変更前の構成情報のリビジョン(T102)が「n」の場合を例に説明する。
 リスク判定サーバ2は、変更された構成情報シートの入力を受け付けると処理を開始する。
 まず、リスク判定サーバ2は、変更後の構成情報シートに基づいて構成情報テーブルT100を更新する(ステップS100)。
 具体的には、構成情報入力部200が、変更後の構成情報に含まれる各ノードに設定属性ID及び変更フラグを付与して、構成情報テーブルT100に必要な情報を格納する。なお、構成情報テーブルT100の更新処理の詳細は、図10を用いて後述する。
 次に、リスク判定サーバ2は、変更後の構成情報に含まれる設定項目に対するリスク値R1を算出して、リスク値テーブルT300を更新する(ステップS200)。
 具体的には、リスク値算出部201が、変更後の構成情報、割当実績テーブルT400、及び割当傾向分析テーブルT420に基づいて、設定項目(ノード)毎のリスク値R1を算出し、算出されたリスク値及びその他必要な情報をリスク値テーブルT300に格納する。なお、リスク値テーブルT300の更新処理の詳細は、図11を用いて後述する。
 最後に、リスク判定サーバ2は、算出されたリスク値R1に基づいて、リスク表示情報を生成して、生成されたリスク表示情報を管理端末1に送信し、処理を終了する(ステップS500)。
 具体的には、リスク表示部204が、変更後の構成情報及び算出されたリスク値R1に基づいて、変更後の構成情報に含まれる設定項目の誤り箇所を特定し、当該誤り箇所に対する警告表示等を表示するためのリスク表示情報を生成する。なお、リスク表示情報の生成処理の詳細は、図12を用いて後述する。
 図10は、本発明の第1の実施形態における構成情報入力部200が実行する構成情報テーブルT100の更新処理を説明するフローチャートである。
 構成情報入力部200は、まず、変更後の構成情報に含まれるノードに対して、設定属性IDを付与する(ステップS101)。このとき、構成情報入力部200は、葉ノードを特定し、葉ノードの数だけ構成情報入力部200にエントリを生成する。なお、生成されたエントリにはまだ情報は格納されていない。
 次に、構成情報入力部200は、構成情報テーブルT100から、変更前の構成情報を取得する(ステップS102)。具体的には、構成情報入力部200は、更新リビジョン(T103)が最も新しいリビジョン、すなわち、更新リビジョン(T103)に「n」が格納されるエントリを全て取得する。
 構成情報入力部200は、変更後の構成情報及び取得された変更前の構成情報に基づいて、変更後の構成情報において設定値が変更された設定項目を特定する(ステップS103)。具体的には、以下のような処理が実行される。
 構成情報入力部200は、対象となる葉ノードを選択して、選択された葉ノードに対応する設定値を、変更後の構成情報及び変更前の構成情報のそれぞれから取得する。
 構成情報入力部200は、変更後の構成情報における葉ノードの設定値と、変更前の構成情報における葉ノードの設定値とが同一であるか否かを判定する。同一の設定値である場合には、設定値が変更されていないことを示す。
 以上がステップS103の処理である。
 次に、構成情報入力部200は、ステップS101からステップS103の処理結果に基づいて変更後の構成情報に対応するエントリに必要な情報を格納する(ステップS104)。
 具体的には、システムID(T101)には更新前の構成情報に含まれるシステムID(T101)と同一の識別子が格納され、リビジョン(T102)には「n」が格納され、更新リビジョン(T103)には「n+1」が格納される。また、ノード名(T105)には更新前の構成情報のノード名(T105)と同一のID付きの設定属性パスが格納される。設定値(T106)には更新前の設定情報の更新設定値(T107)と同一の値が格納され、更新設定値(T107)には更新後の設定情報の設定値が格納される。さらに、変更フラグ(T108)には、設定値が変更されている場合には「1」が格納され、設定値が変更されていない場合には「0」が格納される。
 なお、更新された設定情報は、前述した処理の時点では管理対象システム10に反映されていないため、設定時刻(T104)には「null」が格納される。
 図11A及び図11Bは、本発明の第1の実施形態におけるリスク値算出部201が実行するリスク値R1の算出処理を説明するフローチャートである。
 リスク値算出部201は、変更後の構成情報、割当実績テーブルT400及び割当傾向分析テーブルT420を参照してリスク値R1を算出する。
 まず、リスク値算出部201は、構成情報テーブルT100から変更後の構成情報H(n+1)を取得する(ステップS201)。具体的には、リスク値算出部201は、構成情報テーブルT100から、変更リビジョン(T103)が「n+1」であるエントリを全て取得する。
 リスク値算出部201は、取得された構成情報H(n+1)の所定の階層Lより下位の階層の部分木(ST1,…,STm)を全て抽出する(ステップS202)。
 ここで、階層Lは、設定値の組み合わせを集計する階層を表す。階層Lは、予め設定されてもよいし、自動的に設定されてもよい。自動的に階層Lを設定する場合、過去の障害傾向、及びレビュー傾向から適切な階層Lを自動調整することによって、リスクの分析精度を向上させる効果がある。なお、本発明は、前述した学習方法には限定されない。
 例えば、階層Lが「3」に設定された場合、図4に示す構成情報では「VM基本情報」より下位の階層の部分木と、「ディスク情報」より下位の階層の部分木とが抽出される。リスク値算出部201は、部分木内に含まれる任意の2つの設定項目を組み合わせた場合のリスク値R1を算出する。
 すなわち、設定属性「ゲストOS」と設定属性「メモリ」とは同一の部分木に含まれるため、設定属性「ゲストOS」と設定属性「メモリ」との組み合わせに対するリスク値R1が算出される。一方、設定属性「ゲストOS」と設定属性「ディスク名」とは属する部分木が異なるため、設定属性「ゲストOS」と設定属性「ディスク名」との組み合わせに対するリスク値R1は算出されない。
 次に、リスク値算出部201は、抽出された部分木から処理対象とする部分木STjを選択し、当該部分木STjに対するループ処理(ステップS204からステップS220)を実行する(ステップS203)。ここで、jは、1からmまでの整数を表す。
 部分木STjごとにリスク値を算出することによって、レビュー範囲を的確に特定することが可能となる。すなわち、部分木STjを選択する処理は、レビュー範囲を選択する処理に対応する。
 リスク値算出部201は、選択された部分木STjに含まれる設定項目A、すなわち、ノード(C1,…,Ck)を全て抽出する(ステップS204)。
 リスク値算出部201は、抽出されたノードから処理対象となるノードCxを選択し、当該ノードCxに対するループ処理(ステップS206からステップS219)を実行する(ステップS205)。ここで、xは1からkまでの整数を表す。
 次に、リスク値算出部201は、メモリ20上に、選択されたノードCxのリスク値R1の候補となるリスク値候補rを格納するための空のリストを生成する(ステップS206)。リスク値算出部201は、ノードCxのリスク値候補rを算出する。ここでは、2つのリスク値候補rが算出される。具体的には、ノードCxのみに対するリスク値候補r、及び、ノードCxと同一の部分木STjに含まれる他のノードCyとの組み合わせに対するリスク値候補rが算出される。ここで、yは1からkまでの整数であり、かつ、xとは異なる整数を表す。
 具体的には、ステップS207からステップS211の処理が、ノードCxのみに対するリスク値候補rの算出処理に該当し、ステップS212からステップS218の処理が、ノードCxとノードCyとの組み合わせに対するリスク値候補rの算出処理に該当する。
 リスク値算出部201は、割当実績テーブルT400を参照し、ノードCxに対応するエントリが存在するか否かを判定する(ステップS207)。
 なお、ノードCxのノード名CPx及び設定値CVxは、ステップS201において取得された構成情報H(n+1)のノード名(T105)及び設定値(T106)から取得される。また、リスク値算出部201は、割当実績テーブルT400から、第1の割当実績に対応するエントリを取得するために、検索条件として、設定項目Bに関する情報にはワイルドカードを示す情報を入力する。
 ここで、ノードCxが葉ノードでない場合には、ノードCxに対応するエントリが存在しないと判定される。また、ノードCxが葉ノードであるが、取得された構成情報の設定値CVxと設定値A(T403)とが異なる場合には、ノードCxに対応するエントリが存在しないと判定される。
 一方、ノードCxに対応するノードが葉ノードであり、かつ、取得された構成情報の設定値CVxと設定値A(T403)とが一致する場合には、ノードCxに対応するエントリが存在すると判定される。
 ステップS207の判定結果が「YES」、すなわち、ノードCxに対応するエントリが存在すると判定された場合、リスク値算出部201は、割当実績があることを示す情報を設定する(ステップS208)。具体的には、リスク値算出部201は、割当実績を表す変数E1に「0」を設定する。その後、リスク値算出部201は、ステップS210に進む。
 ステップS207の判定結果が「NO」、すなわち、ノードCxに対応するエントリが存在しないと判定された場合、リスク値算出部201は、割当実績がないことを示す情報を設定する(ステップS209)。具体的には、リスク値算出部201は、割当実績を表す変数E1に「1」を設定する。その後、リスク値算出部201は、ステップS210に進む。
 リスク値算出部201は、割当傾向分析テーブルT420から、ノードCxのノード名CPxに対応するエントリを検索し、分布(T425)を取得して変数D1に格納する(ステップS210)。
 リスク値算出部201は、変数E1及び変数D1に基づいてリスク値候補rを算出し、算出された値をステップS206において生成されたリストに格納する(ステップS211)。ここで、リスク値候補rは、例えば、下式(1)を用いて算出できる。
r=E×(1-D)+(1-E)×D…(1)
 例えば、ノード名CPxが「…/メモリ[1]」かつ設定値CVxが「4GB」である場合、図7に示す割当実績テーブルT400には、対応するエントリが存在するため、変数E1は「0」となる。また、図8に示す割当傾向分析テーブルT420の対応するエントリの分布(T425)は「0.2」であるため、変数D1は「0.2」となる。したがって、リスク値候補rは、下式(2)のように算出される。
r=0×(1-0.8)+(1-0)×0.8=0.8…(2)
 次に、リスク値算出部201は、ノードCxとノードCyとの組み合わせに対するリスク値候補rを算出する。
 まず、リスク値算出部201は、選択された部分木STjに含まれ設定項目B、すなわち、ノードCyを選択して、当該ノードCyに対するループ処理(ステップS212からステップS218)を実行する(ステップS212)。
 リスク値算出部201は、割当実績テーブルT400を参照し、ノードCx及びノードCyに対応するエントリが存在するか否かを判定する(ステップS213)。
 具体的には、ノードCxのノード名CPx及び設定値CVx、並びに、ノードCyのノード名CPy及び設定値CVyに一致するエントリが存在するか否かが判定される。
 なお、検索条件としては、ノードCxのノード名と設定項目種別A(T401)とを比較し、ノードCyのノード名と設定項目種別B(T402)とを比較する条件、及び、ノードCxのノード名と設定項目種別B(T402)とを比較し、ノードCyのノード名と設定項目種別A(T401)とを比較する条件について検索処理が実行される。
 ステップS213の判定結果が「YES」、すなわち、ノードCx及びノードCyに対応するエントリが存在すると判定された場合、リスク値算出部201は、割当実績があることを示す情報を設定する(ステップS214)。具体的には、リスク値算出部201は、割当実績を表す変数E2に「0」を設定する。その後、リスク値算出部201は、ステップS216に進む。
 ステップS213の判定結果が「NO」、すなわち、ノードCx及びノードCyに対応するエントリが存在しないと判定された場合、リスク値算出部201は、割当実績がないことを示す情報を設定する(ステップS215)。具体的には、リスク値算出部201は、実績を表す変数E2に「1」を設定する。その後、リスク値算出部201は、ステップS216に進む。
 リスク値算出部201は、割当傾向分析テーブルT420から、ノードCxのノード名CPx及び、ノードCyのノード名CPyに対応するエントリを検索し、対応するエントリから分布(T425)を取得して変数D2に格納する(ステップS216)。
 リスク値算出部201は、変数E2と変数D2とに基づいてリスク値候補rを算出し、算出された値をステップS206において生成されたリストに格納する(ステップS217)。なお、リスク値候補rの算出式は式(1)と同一のものを用いる。
 例えば、ノードCxのノード名CPxが「…/メモリ[1]」、設定値CVxが「8GB」であり、ノードCyのノード名CPyが「…/ゲストOS[1]」、設定値CVyが「32bitOS」である場合、図7に示す割当実績テーブルT400には、対応するエントリが存在しないため変数E2は「1」となる。また、図8に示す割当傾向分析テーブルT420の対応するエントリの分布は「0.33」であるため、変数D2は「0.33」となる。したがって、リスク値候補rは、下式(3)のように算出される。
r=1×(1-0.33)+(1-1)×0.33=0.67…(3)
 設定項目種別「…/メモリ」と設定項目種別「…/ゲストOS」のバリエーションが多いため、割当実績が無い設定値の組み合わせを入力した場合にリスク値が大きくなる。
 リスク値算出部201は、リストに格納されるリスク値候補rに基づいてリスク値R1を算出する(ステップS219)。
 具体的には、リスク値算出部201は、リストに格納されるリスク値候補rのうち、最も大きな値であるリスク値候補rをリスク値R1として算出する。リスク値算出部201は、決定されたリスク値R1をリスク値テーブルT300の対応するエントリに登録する。
 リスク値算出部201は、全ての部分木STjに対して処理を実行した後、処理を終了する。
 図12は、本発明の第1の実施形態におけるリスク表示部204が実行するリスク表示情報の生成処理を説明するフローチャートである。
 リスク表示部204は、まず、構成情報テーブルT100から、変更後の構成情報H(n+1)を取得し、構成情報シート形式に、変更後の構成情報H(n+1)を表示するための表示情報を生成する(ステップS501)。
 次に、リスク表示部204は、リスク値テーブルT300から全てのエントリを取得し(ステップS502)。取得されたエントリの中から処理対象とするエントリを1つ選択する(ステップS503)。以降では、選択されたエントリをROWと記載する。
 次に、リスク表示部204は、エントリROWにおけるリスク値が所定の閾値Tより大きいか否かを判定する(ステップS504)。なお、所定の閾値Tは、予め設定されたものでもよいし、自動的に設定されたものでもよい。
 ステップS504の判定結果が「NO」、すなわち、エントリROWにおけるリスク値が所定の閾値T以下であると判定された場合、リスク表示部204は、ステップS508に進む。
 ステップS504の判定結果が「YES」、すなわち、エントリROWにおけるリスク値が所定の閾値Tより大きいと判定された場合、リスク表示部204は、当該エントリROWに対応する設定項目を誤り箇所として特定する。その後、リスク表示部204は、特定された誤り箇所に対する警告表示を生成するための処理(ステップS505~ステップS507)を実行する。
 まず、リスク表示部204は、構成情報シート形式の構成情報H(n+1)のエントリROWに対応する表示部分を強調表示するための強調表示情報を生成する(ステップS505)。強調表示の方法としては、例えば、エントリROWに対応する設定項目のID付き設定属性パスの欄の外枠を太線で強調する方法が考えられる。
 さらに、リスク表示部204は、エントリROWのID付き設定属性パスに対する警告理由を取得する(ステップS506)。例えば、リスク表示部204は、割当実績を警告理由として取得する場合、リスク値算出処理において算出されたリスク値候補rのうち、上位数件のリスク値候補rを取得する。
 リスク表示部204は、ステップS505の強調表示に付加する警告理由を表示するためのメッセージ情報を生成する(ステップS507)。その後、リスク表示部204は、ステップS508に進む。
 リスク表示部204は、全てのエントリROWに対して処理が終了したか否かを判定する(ステップS508)。
 ステップS508の判定結果が「NO」、すなわち、全てのエントリROWに対して処理が終了していないと判定された場合、リスク表示部204は、ステップS503に戻り、同様の処理(S503~S507)を実行する。
 ステップS508の判定結果が「YES」、すなわち、全てのROWに対して処理が終了したと判定された場合、リスク表示部204は、表示情報、強調表示情報及びメッセージ情報を含めたリスク表示情報を生成して、生成されたリスク表示情報を管理端末1に送信して、処理を終了する(ステップS509)。
 図13は、本発明の第1の実施形態における管理端末1に表示されるリスク表示情報の一例を示す説明図である。
 管理端末1は、受信したリスク表示情報に基づいて、図13に示す様な表示画面400をディスプレイに表示する。
 表示画面400には、シート形式の構成情報シート301が表示されている。
 構成情報シート301の設定項目のうち、リスク値が所定の閾値より大きい部分、すなわち、誤り箇所は強調表示402-1、402-2で表示される。ここで、リスク値R1に基づいて強調表示される部分が、レビュー範囲となる。
 図13に示す例では、誤り箇所に該当する設定項目の外枠が太線を用いて描画されている。さらに、強調表示402-1、402-2には警告理由を現す警告メッセージ401-1、401-2が合わせて描画されている。
 強調表示402-1には、設定属性が「メモリ」、設定値が「8GB」である設定項目が警告されている。当該強調表示402-1に対する警告メッセージ401-1には、設定属性が「ゲストOS」、設定値が「32bitOS」である組み合わせの割当実績が無いことを示している。これは、一般的に、32bitOSが利用できるメモリ上限は4GBであり、8GBのメモリが割り当てられている部分は、設定項目に誤りがある可能性が高いためである。
 また、警告メッセージ401-1、401-2には、それぞれ、警告メッセージ401-1、401-2に対応する警告内容を指摘する場合に操作する操作ボタン403-1、403-2と、警告メッセージ401-1、401-2に対応する警告内容を指摘しない場合に操作する操作ボタン404-1、404-2とを含む。
 図14A及び図14Bは、本発明の第1の実施形態における割当実績集計部205が割当実績テーブルT400を生成するために実行する処理を説明するフローチャートである。
 割当実績集計部205は、過去に入力された構成情報から、実際に割り当てられた設定値の件数を集計する。なお、以降で説明する処理では、割当実績集計部205が、2つの設定項目の組み合わせに対する割当履歴の件数をカウントする場合に、カウントの重複が発生しないように制御する。
 割当実績集計部205は、変更後の構成情報が入力された場合、又は、周期的に処理を実行する。なお、処理の実行周期は予め設定されていてもよいし、自動的に設定されてもよい。
 割当実績集計部205は、まず、割当実績テーブルT400のエントリをリセットする(ステップS901)。
 次に、割当実績集計部205は、構成情報テーブルT100から、管理対象システム10の過去の構成情報(H(1),…,H(n))を取得する(ステップS902)。
 割当実績集計部205は、取得された構成情報の中から処理対象となる構成情報H(i)を選択し、当該構成情報H(i)に対するループ処理(ステップS903からステップS916)を実行する(ステップS903)。ここで、iは、1からmまでの整数を表す。
 割当実績集計部205は、選択された構成情報H(i)の所定の階層Lより下位の階層の部分木(ST1,…,STm)を全て抽出する(ステップS903)。ここで、LはステップS802と同一の値である。
 割当実績集計部205は、抽出された部分木の中から処理対象とする部分木STjを選択し、当該部分木STjに対するループ処理(ステップS905からステップS915)を実行する(ステップS905)。ここで、jは、1からmまでの整数を表す。
 割当実績集計部205は、選択された部分木STjに含まれる設定項目、すなわち、ノード(C1,…,Ck)を全て抽出する(ステップS906)。
 割当実績集計部205は、抽出されたノードの中から処理対象となるノードCxを選択し、当該ノードCxに対するループ処理(ステップS907からステップS914)を実行する(ステップS907)。ここで、xは1からkまでの整数を表す。
 まず、割当実績集計部205は、ノードCxのみの割当履歴の件数をカウントする。
 割当実績集計部205は、ノードCxが変更箇所であるか否かを判定する(ステップS908)。
 具体的には、割当実績集計部205は、ノードCxに対応するエントリの変更フラグ(T108)が「1」であるか否かを判定する。ノードCxに対応するエントリの変更フラグ(T108)が「1」である場合には、ノードCxは、変更箇所であると判定される。
 ステップS908の判定結果が「YES」、すなわち、ノードCxが変更箇所であると判定された場合、割当実績集計部205は、割当実績テーブルT400の対応するエントリの件数(T405)の値を「1」加算する(ステップS909)。その後、割当実績集計部205は、ステップS910に進む。
 具体的には、割当実績集計部205は、割当実績テーブルT400を参照して、ノードCxのノード名CPx及び設定値CVxを検索キーとして対応するエントリを検索し、当該エントリの件数(T405)のカウント値を「1」加算する。
 なお、前述の検索処理の結果、一致するエントリがない場合には、割当実績集計部205は、割当実績テーブルT400に新たなエントリを追加して、設定項目種別A(T401)にノード名CPxを格納し、設定値A(T403)に設定値CVxを格納し、さらに、件数(T405)には初期値として「1」を格納する。ここで、設定項目種別B(T402)及び設定値B(T404)には、ワイルドカードが格納される。
 次に、割当実績集計部205は、ノードCxと、同一の部分木STjに含まれるノードCyとの組み合わせに対する割当実績の件数をカウントする。
 まず、割当実績集計部205は、ノードCxと同一の部分木STjに含まれ、ノードCxとは異なるノードCyを選択し、当該ノードCyに対するループ処理(ステップS910~ステップS913)を実行する(ステップS910)。
 割当実績集計部205は、ノードCx又はノードCyの少なくともいずれかが変更箇所であるか否かを判定する(ステップS911)。具体的には、ノードCxに対応するエントリの変更フラグ(T108)、又は、ノードCxに対応するエントリの変更フラグ(T108)の少なくともいずれかが「1」であるか否かが判定される。
 ステップS911の判定結果が「YES」、すなわち、ノードCx又はノードCyの少なくともいずれかが変更箇所であると判定された場合、割当実績集計部205は、割当実績テーブルT400の対応するエントリの件数(T405)の値を「1」加算する(ステップS912)。
 具体的には、割当実績集計部205は、割当実績テーブルT400を参照して、ノードCxのノード名CPx及び設定値CVx、並びに、ノードCyのノード名CPy及び設定値CVyを検索キーとして対応するエントリを検索し、当該エントリの件数(T405)のカウント値を「1」加算する。
 なお、前述の検索処理の結果、対応するエントリがない場合には、割当実績集計部205は、割当実績テーブルT400に新たなエントリを追加する。この場合、割当実績集計部205は、ノード名CPx及びノード名CPyからIDを削除することによって設定属性パスを抽出して、設定項目種別A(T401)及び設定項目種別B(T402)のそれぞれに抽出された設定属性パスを格納する。また、割当実績集計部205は、設定値A(T403)に設定値CVxを格納し、設定値B(T404)に設定値CVyを格納し、さらに、件数(T405)には初期値として「1」を格納する。
 以上の処理によって、図7に示すような割当実績テーブルT400が生成される。
 図15は、本発明の第1の実施形態における割当傾向分析部206が割当傾向分析テーブルT420を生成するために実行する処理を説明するフローチャートである。
 ここでは、割当傾向分析部206は、割当実績テーブルT400に基づいて、割当実績の傾向を分析する。
 まず、割当傾向分析部206は、割当傾向分析テーブルT420をリセットする(ステップS1001)。
 次に、割当傾向分析部206は、割当実績テーブルT400に含まれる設定項目の組み合わせを全て取得する(ステップS1002)。以降では、設定項目の組み合わせをKiを用いて記載する。ここでは、設定項目の組み合わせ(K1,…,Kn)が取得されたものとする。ここでは、設定項目種別A(T401)と設定項目種別(T402)の組み合わせに着目した設定項目の組み合わせKiが取得される。
 割当傾向分析部206は、取得された設定項目の組み合わせの中から処理対象とする設定国木の組み合わせKiを選択し、当該設定項目の組み合わせKiに対するループ処理(ステップS1003からステップS1011)を実行する(ステップS1003)。ここで、iは、1からnまでの整数を表す。
 割当傾向分析部206は、選択された設定項目の組み合わせKiに一致する件数の総数を表す変数Nを初期化する(ステップS1004)。具体的には、変数Nに初期値として「0」が設定される。
 割当傾向分析部206は、割当実績テーブルT400を参照し、選択された設定項目の組み合わせKiに一致するエントリを全て取得する(ステップS1005)。例えば、図7に示す例では、組み合わせKiにおける設定属性パスAが「…/メモリ」、設定属性パスBが「…/ゲストOS」の場合、5つのエントリが取得される。
 以降、取得したエントリをエントリROWjと記載する。ここでは、(ROW1,…,ROWm)が取得されたものとする。
 割当傾向分析部206は、取得したエントリの中から処理対象となるエントリROWjを選択し、当該エントリROWjに対するループ処理(ステップS1006~ステップS1008)を実行する(ステップS1006)。
 割当傾向分析部206は、選択されたエントリROWjの件数(T405)を取得し、変数Nに取得された件数(T405)を加算する(ステップS1007)。当該処理によって、取得されたエントリROWjの全ての件数(T405)の合計値が算出される。
 割当傾向分析部206は、変数Nに基づいて設定値の分布Dを算出する(ステップS1009)。分布の算出方法としては、例えば、下式(4)を用いる方法が考えられる。
D=m/N…(4)
 ここで、取得したエントリROWの総数mを利用しているのは設定値条件の異なる1つの設定値バリエーションを表しているためである。
 式(4)によれば、設定項目における設定値のバリエーション数が多いほど分布Dの値は「1」に近い値となり、バリエーション数が少ないほど分布Dの値は「0」に近い値となる。したがって、変更される設定値が過去の割当実績における設定値と一致した方がよいか否かを推定することができる。
 割当傾向分析部206は、割当傾向分析テーブルT420に組み合わせKiに対するエントリを追加する(ステップS1010)。
 具体的には、割当傾向分析部206は、割当傾向分析テーブルT420にエントリを生成し、設定項目の組み合わせKiの1つ目の設定属性パスを設定項目種別A(T421)に格納し、組み合わせKiの2つ目の設定属性パスを設定項目種別B(T422)に格納し、エントリROWjの総数をバリエーション数(T423)に格納し、変数Nの値を実績総数(T424)に格納し、さらに、分布Dの値を分布(T425)に格納する。
 以上の処理によって、図8に示すような割当傾向分析テーブルT420が生成される。
 ここで、割当実績テーブルT400及び割当傾向分析テーブルT420の生成処理は、リスク値R1の算出処理とは独立した処理である。リスク値R1の算出処理の実行前に予め図14A、図14B及び図15に示す処理を実行することによって、リスク値R1の算出処理を高速化できるためである。
 ただし、割当実績テーブルT400及び割当傾向分析テーブルT420の生成処理は、リスク値算出部201がリスク値R1を算出する前であれば任意のタイミングで実行されてもよい。例えば、ステップS100とステップS200との間で前述した生成処理が実行されてもよい。これによって、処理の流れを単純化することができる。
 さらに、本実施形態では、各テーブルを生成する場合に、最初にテーブルをリセットしている。しかし、テーブルをリセットせずに、構成情報が変更されるたびに、変更後の構成情報に対する割当実績を集計し、変更前の構成情報との差分をテーブルに格納する方法を用いてもよい。これによって、テーブルの生成処理にかかる時間を短縮できる。
 また、テーブルの生成処理では、すべての構成情報テーブルT100に含まれる過去の構成情報をすべて用いてテーブルを生成しているが、一部の構成情報だけを用いてテーブルが生成されてもよい。例えば、一定期間内に含まれる構成情報の実績及び設定値の傾向の分析処理の対象としてもよい。これは、テーブル生成の処理時間を短縮できる。また、管理対象システム10の設定傾向が途中で変わり、古い構成情報の履歴が有効でない場合には、当該期間の構成情報を除くことによって分析精度を向上できる。
 本実施形態では、設定値の割当実績の集計処理及び分析処理に、管理対象システム10の過去の構成情報を利用している。しかし、本発明はこれに限定されず、管理対象システム10と類似の他のシステムの構成情報を利用してもよい。
 他のシステムの構成情報を利用することによって、計算機システムにおける構成情報の変更回数が少ない場合又は全く変更されていない場合であっても、設定情報におけるリスク値をも算出できる。さらに1つの管理対象システム10を複数のシステムとしてみなして、利用してもよい。例えば、管理対象システム10が複数の仮想ネットワークで分割されている場合には、仮想ネットワーク毎に1つの管理対象システム10としてみなしてリスク値R1を算出してもよい。
 本実施形態では、構成情報シートから変更後の構成情報を取得しているが、それ以外の方法を用いてもよい。例えば、管理対象システム10の各装置上でエージェントプログラムを動作させ、当該エージェントプログラムによって抽出された各装置の構成情報を構成情報入力部200が収集する方法が考えられる。
 また、本実施形態では、リスク判定サーバ2が、リスク表示情報を生成していたが、表示情報、強調表示情報及びメッセージ情報を生成する度に、リスク判定サーバ2に備えられたディスプレイに表示してもよい。
 第1の実施形態によれば、構成情報に含まれる設定項目に対するリスク値を算出することができる。さらに、リスク値に基づいて生成されたリスク表示情報に基づいて、レビューが必要な設定項目を特定できる。これによって、ノウハウ及び人手の作業に頼ることなくレビュー範囲を特定できる。さらに、レビュー範囲を絞って表示することによって、レビューの作業時間を短縮できる。
 また、本発明では、構成情報を比較してリスク値R1を算出するため、個々の設定項目に対して手動で計算ルールを定義しなくてもよい。そのため、システム管理者が計算ルールを作成する必要がなくなり、また、管理に費やす工数を低減させることができる。
 <第2の実施形態>
 次に、第2の実施形態について説明する。第2の実施形態では、レビューにおける操作履歴を考慮して部分木ごとのリスク値が算出される。
 第2の実施形態では、3つのリスク値が算出される。以降では、最初に算出されるリスク値をリスク値R1、2番目に算出されるリスク値をリスク値R2、さらに、3番目に算出されるリスク値をリスク値R3と記載する。
 リスク値R1は、リスク判定ルールに基づいて算出されるリスク値であり、第1の実施形態におけるリスク値R1と同一のものである。リスク値R2は、リスク値R1を部分木ごとに統合したリスク値である。リスク値R3は、リスク値R2に対し、過去のレビューにおける操作履歴を考慮して算出されるリスク値である。
 以降では、第1の実施形態との差異を中心に説明する。また、以降では、第1の実施形態と共通する部分については、同一の符号を用いるものとする。
 第2の実施形態における計算機システムの構成は第1の実施形態と同一であるため説明を省略する。
 図16は、本発明の第2の実施形態におけるリスク判定サーバ2のハードウェア構成及びソフトウェア構造を説明するブロック図である。
 リスク判定サーバ2のハードウェア構成は、第1の実施形態と同一である。第2の実施形態のリスク判定サーバ2は、ソフトウェア構成が異なる。具体的には、メモリ20には、新たに、レビュー情報集計部207、レビュー傾向分析部208、レビュー情報テーブルT200及びレビュー傾向分析テーブルT500が格納される。
 レビュー情報集計部207は、レビューにおける操作履歴に関する情報を収集し、レビュー情報テーブルT200に格納する。例えば、レビュー情報集計部207は、リスク表示部204によって生成されたリスク表示情報、及び管理端末1に表示された表示画面400に対する操作に関する情報を収集する。
 レビュー傾向分析部208は、レビュー情報テーブルT200に基づいてレビューの傾向を分析し、分析結果をレビュー傾向分析テーブルT500に格納する。
 レビュー情報テーブルT200は、変更後の構成情報に対するレビューにおける履歴情報を格納する。レビュー傾向分析テーブルT500は、過去のレビューの傾向の分析結果を格納する。なお、レビューでは、リスク判定サーバ2からの出力(リスク表示情報)に基づいた操作が実行される。
 また、第2の実施形態では、リスク値テーブルT300も第1の実施形態とは異なる。他の構成は第1の実施形態と同一であるため説明を省略する。
 ここで、表示画面400を用いたレビュー操作について説明する。
 図17は、本発明の第2の実施形態における管理端末1に表示されたリスク表示情報の一例を示す説明図である。
 ここでは、表示画面400を用いた操作について説明する。
 システム管理者は、表示画面400を閲覧して、変更後の構成情報における誤り箇所を指摘する。
 表示画面400には変更後の構成情報シート301が表示され、また、構成情報シート301の誤り箇所には、強調表示402及び警告メッセージ401が表示される。
 システム管理者が、警告メッセージ401の操作ボタン403-1を操作すると、さらに、図17に示すようなダイアログ405-1が表示される。当該ダイアログ405-1は、警告メッセージ401-1に対応する警告内容を指摘する場合に、必要となる情報を登録するためのインタフェースである。
 ここで、レビュー時に、警告メッセージ401に対応する警告内容を指摘する場合と、指摘しない場合とに分けてレビューにおける操作の流れを説明する。
 まず、警告内容を指摘する場合、システム管理者は、警告メッセージ401-1内の操作ボタン403-1を操作する。これによって、ダイアログ405-1が表示される。システム管理者は、ダイアログ405-1内に示された指摘パス及び指摘理由等の情報を指定し、「OK」ボタンを操作する。
 一方、警告内容を指摘しない場合、システム管理者は、警告メッセージ401-1内の操作ボタン404-1を操作する。
 レビュー情報集計部207は、前述した表示画面400に対する操作の情報を取得して、レビュー情報テーブルT200に蓄積する。
 図18は、本発明の第2の実施形態におけるレビュー情報テーブルT200の一例を示す説明図である。
 レビュー情報テーブルT200は、システムID(T201)、リビジョン(T202)、変更リビジョン(T203)、ノード名(T204)、警告フラグ(T205)、指摘フラグ(T206)、及び理由(T207)を含む。
 システムID(T201)は、管理対象システム10を一意に識別するための識別子を格納する。
 リビジョン(T202)及び変更リビジョン(T203)は、それぞれ、レビュー対象となった構成情報の変更回数を格納する。リビジョン(T202)は、構成情報が変更される前の変更回数を格納する。変更リビジョン(T203)は、構成情報が変更された後の変更回数を格納する。
 ノード名(T204)は、警告メッセージ401が表示された設定項目、又はシステム管理者から指摘を受けた設定項目を一意に識別するためのID付きの設定属性パスを格納する。
 警告フラグ(T205)は、リスク判定サーバ2によって警告された設定項目であるか否かを示す情報を格納する。具体的には、設定項目に対する警告メッセージ401が表示されている場合には「あり」が格納され、設定項目に対する警告メッセージ401が表示されていない場合には「なし」が格納される。
 指摘フラグ(T206)は、システム管理者によって指摘された設定項目であるか否かを示す情報を格納する。具体的には、設定項目に対する指摘があった場合には「あり」が格納され、設定項目に対する指摘がなかった場合には「なし」が格納される。
 理由(T207)は、ノード名(T204)に対応する設定項目が警告又は指摘された理由を格納する。例えば、割当実績に基づいて算出されたリスク値R1によって誤り箇所であると警告された場合、「割当実績」が格納される。
 図19は、本発明の第2の実施形態におけるレビュー傾向分析テーブルT500の一例を示す説明図である。
 レビュー傾向分析テーブルT500は、部分木ごとに、過去のレビューにおける警告の件数及び指摘件数、並びに、レビューにおける注目度合い等を分析した結果を格納する。具体的には、レビュー傾向分析テーブルT500は、設定属性パス(T501)、理由(T502)、警告件数(T503)、指摘件数(T504)、及びフォーカスF(T505)を含む。
 設定属性パス(T501)は、警告又は指摘された設定項目の設定属性パスを格納する。
 理由(T502)は、設定属性パスに対応する設定項目に対する警告理由又は指摘理由を格納する。例えば、リスク値R1によって誤り箇所であると警告された場合、理由(T502)には「割当実績」が格納される。
 警告件数(T503)は、過去のレビューにおいて、リスク判定サーバ2によって設定属性パス(T501)に対応する設定項目が警告された件数を格納する。
 指摘件数(T504)は、過去のレビューにおいて、システム管理者によって設定属性パス(T501)に対応する設定項目が指摘された件数を格納する。
 フォーカス(T505)は、過去のレビューにおいて、警告に対する指摘操作の頻度を示す値を格納する。すなわち、フォーカス(T505)は、注目度合いを示す指標となる。フォーカスは、「0」以上の値をとり、指摘操作の頻度が高いほど大きな値となる。ここでは、指摘操作が平均的な頻度である場合、フォーカスは「1」に近い値となるものとする。以下ではフォーカスの値を変数Fを用いて表す。なお、フォーカスは警告件数(T503)及び指摘件数(T504)に基づいて算出される。
 また、レビュー情報テーブルT200とレビュー傾向分析テーブルT500とを一つのテーブルにまとめてもよい。
 図20は、本発明の第2の実施形態におけるリスク値テーブルT300の一例を示す説明図である。
 第2の実施形態におけるリスク値テーブルT300は、新たに、リスク値R2(T303)及びリスク値R3(T304)を含む。
 リスク値R2(T303)は、リスク値R2の値を格納する。リスク値R3(T304)は、リスク値R3の値を格納する。
 葉ノード以外のノードは設定値を含まないため、葉ノード以外のエントリのリスク値R1(T302)には、「null」が格納される。しかし、リスク値R2は枝ノードのリスク値を表すため、葉ノード以外のエントリにおけるリスク値R2(T303)には必ず数値が格納される。
 図21は、本発明の第2の実施形態におけるリスク判定サーバ2によって実行される処理の概要を説明するフローチャートである。
 第2の実施形態では、リスク判定サーバ2が、リスク値R1を算出した後、当該リスク値R1に基づいてリスク値R2を算出し、さらに、リスク値R2に基づいてリスク値R3を算出する。
 まず、リスク判定サーバ2は、変更された構成情報シートに基づいて、構成情報テーブルT100を更新する(ステップS100)。なお、ステップS100の処理は、第1の実施形態と同一の処理である。
 リスク判定サーバ2は、変更後の構成情報に含まれる設定項目に対するリスク値R1を算出して、リスク値テーブルT300を更新する(ステップS200)。なお、ステップS200の処理は、第1の実施形態と同一の処理である。
 次に、リスク判定サーバ2は、部分木毎のリスク値R1を統合することによってリスク値R2を算出して、リスク値テーブルT300を更新する(ステップS300)。
 具体的には、リスク値算出部201が、リスク値テーブルT300に格納されるリスク値R1に基づいてリスク値R2を算出する。リスク値R2の算出方法は、図22を用いて後述する。
 さらに、リスク判定サーバ2は、リスク値R2とレビュー傾向分析テーブルT500とに基づいてリスク値R3を算出して、リスク値テーブルT300を更新する(ステップS400)。
 具体的には、リスク値算出部201が、リスク値テーブルT300に格納されたリスク値R2と、レビュー傾向分析テーブルT500のフォーカス(T505)とに基づいてリスク値R3を算出する。リスク値R3の算出方法は、図23を用いて後述する。
 最後に、リスク判定サーバ2は、算出されたリスク値R3に基づいて、変更後の構成情報における誤り箇所を表示するためのリスク表示情報を生成して、生成されたリスク表示情報を管理端末1に送信し、処理を終了する(ステップS500)。
 具体的には、リスク表示部204が、変更後の構成情報と、算出されたリスク値R3とに基づいて、変更後の構成情報における誤り箇所を特定し、当該誤り箇所に対する警告表示等を表示するためのリスク表示情報を生成する。なお、リスク表示情報の生成処理は、リスク値R1の代わりにリスク値R3を用いる点が異なるが他の処理は同一であるため説明を省略する。
 図22は、本発明の第2の実施形態におけるリスク値算出部201が実行するリスク値R2の算出処理を説明するフローチャートである。
 リスク値算出部201は、リスク値R2を算出する場合に、関数func()を呼び出す。ここで、関数func()は、1つのノードを入力としてリスク値R2を算出する関数である。リスク値算出部201は、関数func()を再帰的に呼び出すことによって、所定の部分木のリスク値R2を算出する。以下、ノードを表す変数をNODと記載する。
 リスク値算出部201は、まず、リスク値テーブルT300からエントリを取得する(ステップS301)。読み出されたエントリは、一つのノードに対応する。以下ではエントリをノード(NOD)と記載する。
 なお、リスク値算出部201は、葉ノードに対応するエントリから順に読み出すものとする。
 リスク値算出部201は、取得されたノード(NOD)が葉ノードであるか否かを判定する(ステップS302)。具体的には、リスク値算出部201が、構成情報テーブルT100を参照し、取得されたノード(NOD)のノード名(T301)と一致するエントリが存在するか否かを判定する。構成情報テーブルT100に取得されたノード(NOD)と一致するエントリがある場合、当該ノード(NOD)が葉ノードであると判定される。
 ステップS301の判定結果が「YES」、すなわち、取得されたノード(NOD)が葉ノードであると判定された場合、リスク値算出部201は、葉ノード(NOD)のリスク値R2を算出して、ステップS307に進む(ステップS306)。
 ここでは、葉ノードのリスク値R2は、当該葉ノードのリスク値R1と同一のものとする。
 ステップS301の判定結果が「NO」、すなわち、取得されたノード(NOD)が葉ノードではないと判定された場合、リスク値算出部201は、取得されたノード(NOD)を起点とした一つ下位の階層に存在するノードを全て抽出する(ステップS303)。以降では、取得されたノード(NOD)を起点とした一つ下位の階層に存在するノードを子ノードと記載する。
 具体的には、リスク値算出部201は、リスク値テーブルT300から、取得されたノード(NOD)の子ノード(CHILD1,…,CHILDm)となるエントリを全て抽出する。
 例えば、ノード(NOD)のノード名(T301)が「…/VM[1]」である場合、「…/VM基本情報[1]」、及び「…/ディスク情報[1]」の2つの子ノードが抽出される。
 次に、リスク値算出部201は、関数func()に抽出された子ノード(CHILD1,…,CHILDm)をそれぞれに入力して子ノードのリスク値R2を算出する(ステップS304)。これによって、各子ノードのリスク値R2(func(CHILD1)),…,func(CHILDm))が算出される。
 例えば、ノード(NOD)のノード名(T301)が「…/VM基本情報[1]」である場合、子ノードは全て葉ノードとなるため、葉ノードのリスク値R2がそれぞれ算出されることとなる。
 リスク値算出部201は、ステップS303における算出結果に基づいて、ノード(NOD)のリスク値R2を算出する(ステップS305)。例えば、下式(5)を用いてノード(NOD)のリスク値R2を算出する方法が考えられる。
R2=ノード(NOD)のリスク値R1+子ノードのリスク値R2の平均値…(5)
 なお、本実施形態では、ノード(NOD)のリスク値R1が「null」である場合、リスク値R1は「0」として扱うものとする。
 次に、リスク値算出部201は、算出されたノード(NOD)のリスク値R2を、リスク値テーブルT300の対応するエントリのリスク値R2(T303)に格納する(ステップS307)。
 リスク値算出部201は、関数func()の戻り値として、算出されたリスク値R2を返し、処理を終了する(ステップS308)。以下、根ノードまで、戻り値に基づいて再帰的な算出処理が実行される。
 ここで、具体例を用いてリスク値R2の算出処理を説明する。ここでは、図19に示すノード名(T301)が「/物理マシン[1]/VM[2]/VM基本情報[1]」であるノードのリスク値R2を算出する場合について説明する。
 ステップS302では、当該ノードは葉ノードでないため、ステップS303に進む。
 ステップS303では、当該ノードの子ノードとして、4つの葉ノード「…/VM名[1]」、「…/ゲストOS[1]」、「…/CPU数[1]」、及び「…/メモリ[1]」が抽出される。
 ステップS304では、4つの葉ノードのリスク値R2が算出される。本実施形態では、葉ノードのリスク値R2はリスク値R1と同一であるため、それぞれ、「0.0」、「0.67」、「0.0」、「0.67」と算出される。
 ステップS305では、式(5)を用いてノードのリスク値R2が算出される。ここで、「/物理マシン[1]/VM[2]/VM基本情報[1]」のリスク値R1は「<null>」であるため、ノードのリスク値R1は「0.0」である。したがって、ノードのリスク値R2は、下式(6)に示すように算出される。
R2=0.0+(0.0+0.67+0.0+0.67)/4=0.33…(6)
 次にリスク値R3の算出方法について説明する。
 図23は、本発明の第2の実施形態におけるリスク値算出部201が実行するリスク値R3の算出処理を説明するフローチャートである。
 リスク値算出部201は、リスク値R2の算出結果が格納されたリスク値テーブルT300及びレビュー傾向分析テーブルT500に基づいてリスク値R3を算出する。
 リスク値算出部201は、まず、リスク値テーブルT300からすべてのエントリを取得する(ステップS401)。
 次に、リスク値算出部201は、取得されたエントリから、処理対象となるエントリを1つ選択する(ステップS402)。
 リスク値算出部201は、レビュー傾向分析テーブルT500から、選択されたエントリのノード名(T301)を検索キーとして対応するエントリを検索し、検索されたエントリのフォーカス(T505)を取得する(ステップS403)。
 さらに、リスク値算出部201は、選択されたエントリのリスク値R2(T303)、及び取得されたフォーカス(T505)に基づいてリスク値R3を算出する(ステップS404)。ここでは、下式(7)を用いてリスク値R3を算出する。
R3=R2×F…(7)
 もし、ステップS403において、対応するフォーカス(T505)が取得できなかった場合、リスク値算出部201は、フォーカスFを「1」としてリスク値R3を算出する。
 リスク値R3計算部203は、リスク値テーブルT300を更新する(ステップS405)。具体的には、リスク値テーブルT300の対応するエントリのリスク値(T304)に、算出されたリスク値R3が格納される。
 リスク値算出部201は、取得された全てのエントリについて処理が終了したか否かを判定する(ステップS406)。
 ステップS406の判定結果が「NO」、すなわち、取得された全てのエントリについて処理が完了していないと判定された場合、リスク値算出部201は、ステップS402に戻り、同様の処理(ステップS402~ステップS406)を実行する。
 ステップS406の判定結果が「YES」、すなわち、取得された全てのエントリについて処理が完了したと判定された場合、リスク値算出部201は、処理を終了する。
 ここで、具体例を用いてリスク値R3の算出処理を説明する。ここでは、ステップS402において、図19に示すノード名(T301)が「/物理マシン[1]/VM[2]/VM基本情報[1]」選択された場合を例に説明する。
 ステップS403では、対応するエントリとして「/物理マシン/VM/VM基本情報」が検索され、当該エントリのフォーカス(T505)「1.5」が取得される。
 ステップS404において、ノード名に対応するエントリのリスク値R2は「0.33」であるため、当該エントリのリスク値R3は下式(8)に示すように算出される。
R3=0.33×1.5=0.50…(8)
 図24は、本発明の第2の実施形態におけるレビュー情報集計部207が実行する処理を説明するフローチャートである。
 レビュー情報集計部207は、まず、レビュー傾向分析テーブルT500をリセットする(ステップS601)。
 次に、レビュー情報集計部207は、レビュー情報テーブルT200に含まれる理由(T207)を全て抽出する(ステップS602)。図19に示す例では、「割当実績」と「設定クローン」との2つが理由として抽出される。
 レビュー情報集計部207は、抽出された理由の中から、処理対象とする理由Oを選択する(ステップS603)。
 レビュー情報集計部207は、レビュー情報テーブルT200を参照して、選択された理由Oと一致するエントリを全て取得する(ステップS604)。具体的には、理由(T207)が選択された理由Oと一致するエントリが取得される。
 レビュー情報集計部207は、ステップS604において取得された全てのエントリのノード名(T204)に基づいて設定項目種別を抽出する(ステップS605)。具体的には、ID付き設定属性パスからIDを除くことによって、設定項目種別(設定属性パス)が抽出される。これは、同種の設定項目毎に、レビューにおける操作履歴を集計するための処理である。
 レビュー情報集計部207は、ステップS605において抽出された設定項目種別の中から、処理対象とする設定項目種別(CP)を選択する(ステップS606)。
 レビュー情報集計部207は、設定項目種別(CP)に含まれるノードに対応するエントリを全て取得する(ステップS607)。
 レビュー情報集計部207は、ステップS606において取得されたエントリからレビューにおける操作履歴の情報を取得する。
 まず、レビュー情報集計部207は、ステップS606において取得されたエントリのうち、警告フラグ(T205)が「あり」であるエントリ数であるカウント値(WC)を取得する(ステップS608)。
 次に、レビュー情報集計部207は、ステップS606において取得されたエントリのうち、指摘フラグ(T206)が「あり」であるエントリ数であるカウント値(IC)を取得する(ステップS609)。
 レビュー情報集計部207は、レビュー傾向分析テーブルT500を更新する(ステップS610)。具体的には、以下のような処理が実行される。
 レビュー情報集計部207は、レビュー傾向分析テーブルT500に、ステップS606において選択された設定項目種別(CP)のエントリを生成する。
 レビュー情報集計部207は、生成されたエントリの設定項目種別(T501)に抽出された設定項目種別(CP)を格納し、理由(T502)に理由Oを格納する。また、レビュー情報集計部207は、警告件数(T503)にカウント値(WC)を格納し、指摘件数(T504)にカウント値(IC)を格納する。
 レビュー情報集計部207は、ステップS605において抽出された全ての設定項目種別について処理が終了したか否かを判定する(ステップS611)。
 ステップS611の判定結果が「NO」、すなわち、抽出された全ての設定項目種別について処理が終了していないと判定された場合、レビュー情報集計部207は、ステップS605に戻り、同様の処理(ステップS605~ステップS611)を実行する。
 ステップS611の判定結果が「YES」、すなわち、抽出された全ての設定項目種別について処理が終了したと判定された場合、レビュー情報集計部207は、全ての理由について処理が終了したか否かを判定する(ステップS612)。
 ステップS612の判定結果が「NO」、すなわち、全ての理由について処理が終了していないと判定された場合、レビュー情報集計部207は、ステップS603に戻り、同様の処理(ステップS603~ステップS612)を実行する。
 ステップS612の判定結果が「YES」、すなわち、全ての理由について処理が終了したと判定された場合、レビュー情報集計部207は、処理を終了する。
 図25は、本発明の第2の実施形態におけるレビュー傾向分析部208が実行する処理を説明するフローチャートである。
 ここでは、レビューの傾向を表す値として、警告件数と、指摘件数との比を用いる。また、過去の全ての構成情報に対するレビュー傾向の平均値を処理の基準値として用いるものとする。
 本実施形態では、各設定項目種別のフォーカスFとして、設定項目種別に対するレビュー傾向を示す値をレビュー傾向の平均値で除算することによって算出する。
 レビュー傾向分析部208は、過去の全ての構成情報に対応するレビュー傾向の平均値である値BTを算出する(ステップS702~ステップS706)。その後、レビュー傾向分析部208は、一つの設定項目に対するレビュー傾向を表す値Tを算出する(ステップS706~ステップS708)。その後、レビュー傾向分析部208は、値BTと値Tとを用いてフォーカスFを算出する。
 レビュー傾向分析部208は、まず、レビュー傾向分析テーブルT500に含まれる理由(T502)を全て抽出する(ステップS701)。
 レビュー傾向分析部208は、抽出された理由の中から処理対象とする理由Oを選択する(ステップS702)。
 レビュー傾向分析部208は、レビュー傾向分析テーブルT500から、選択された理由Oと一致するエントリを全て取得する(ステップS703)。ここで、レビュー傾向分析部208は、S703で取得したすべての行の「警告件数」及び「指摘件数」を求める。
 まず、レビュー傾向分析部208は、取得されたエントリの警告件数(T503)の合計値と、指摘件数(T504)の合計値とを算出する(ステップS704)。このとき、レビュー傾向分析部208は、警告件数(T503)の合計値を変数WC1に格納し、指摘件数(T504)の合計値を変数IC1に格納する。
 レビュー傾向分析部208は、変数WC1及び変数IC1を用いて、レビュー傾向を表す平均値を算出し、変数BTに格納する(ステップS705)。具体的には、下式(9)を用いて平均値(BT)が算出される。
BT=IC1/WC1…(9)
 本実施形態では、平均値(BT)が基準値として用いられる。
 レビュー傾向分析部208は、ステップS703において取得されたエントリの中から、処理対象とするエントリを1つ選択する(ステップS706)。
 次に、レビュー傾向分析部208は、取得されたエントリの警告件数(T503)及び指摘件数(T504)を取得する(ステップS707)。このとき、レビュー傾向分析部208は、取得された警告件数(T503)の値を変数WC2に格納し、取得された指摘件数(T504)の値を変数IC2に格納する。
 レビュー傾向分析部208は、変数WC2及び変数IC2を用いて、選択されたエントリに対応する設定項目に対するレビュー傾向を表す値を算出し、変数Tに格納する(ステップS708)。
 レビュー傾向分析部208は、変数BT及び変数Tを用いてフォーカスFを算出する(ステップS709)。フォーカスFの算出方法としては、例えば、下式(10)を用いる方法が考えられる。
F=T/BT…(10)
 警告件数に対する指摘件数が多いほど、フォーカスFは大きな値となる。
 レビュー傾向分析部208は、算出されたフォーカスFをステップS706において選択されたエントリのフォーカス(T505)に格納することによって、レビュー傾向分析テーブルT500を更新する(ステップS710)。
 レビュー傾向分析部208は、ステップS703において取得された全てのエントリについて処理が終了したか否かを判定する(ステップS711)。
 ステップS711の判定結果が「NO」、すなわち、取得された全てのエントリについて処理が終了していないと判定された場合、レビュー傾向分析部208は、ステップS706に戻り、同様の処理(ステップS706~ステップS711)を実行する。
 ステップS711の判定結果が「YES」、すなわち、取得された全てのエントリについて処理が終了したと判定された場合、レビュー傾向分析部208は、全ての理由について処理が終了したか否かを判定する(ステップS712)。
 ステップS712の判定結果が「NO」、すなわち、全ての理由について処理が終了していないと判定された場合、レビュー傾向分析部208は、ステップS702に戻り、同様の処理(ステップS702~ステップS712)を実行する。
 ステップS712の判定結果が「YES」、すなわち、全ての理由について処理が終了したと判定された場合、レビュー傾向分析部208は、処理を終了する。
 なお、設定項目に対するレビュー履歴がない場合には、当該設定項目のフォーカスFは基準値となる「1」として扱われる。
 ここで、具体例を用いてフォーカスFの算出処理を説明する。ここでは、図19に示すレビュー傾向分析テーブルT500の警告件数(T503)及び指摘件数(T504)を用いて、設定項目種別「/物理マシン/VM/VM基本情報」のフォーカスを算出する場合について説明する。また、警告件数の合計値(WC1)を60件、指摘件数の合計値(IC1)を30件とする。
 ステップS705では、平均値BTは、下式(11)に示すように算出される。
BT=30/60=0.5…(11)
 ステップS707では、設定項目種別「/物理マシン/VM/VM基本情報」の警告件数(WC2)として「4」、指摘件数(IC2)として「3」がそれぞれ取得される。
 ステップS708では、値Tは下式(12)に示すように算出される。
T=3/4=0.75…(12)
 ステップS709では、項目種別「/物理マシン/VM/VM基本情報」のフォーカスFは下式(13)に示すように算出される。
F=0.75/0.5=1.5…(13)
 したがって、項目種別「/物理マシン/VM/VM基本情報」は、フォーカスFの基準値「1」に比べて大きな値であるため、レビューにおける注目度合いが高い箇所であると考えられる。
 なお、第2の実施形態におけるリスク表示情報の生成処理は、第1の実施形態と同一であるため説明を省略する。ただし、第2の実施形態では、ステップS504の処理において、リスク値R1の代わりにリスク値R3を用いる点が異なる。
 また、第2の実施形態では、リスク値R2に基づいて誤り箇所を特定してもよい。この場合、リスク値R3は算出されず、ステップS504の処理において、リスク値R2が閾値Tより大きいか否かが判定される。
 第2の実施形態によれば、構成情報における中間階層のリスク値を考慮したリスク値R2を算出することによって、レビュー箇所を部分木ごと、すなわち、上位階層の設定項目を特定できる。さらに、レビューにおける操作履歴を考慮したリスク値R3を算出することによって、レビュー範囲を特定するための精度を向上させることができる。
 <第3の実施形態>
 第3の実施形態では、リスク値R1を求める判定ルールが異なる。
 システム管理者は、構成情報シートの作成時に、設定値が類似する他の設定項目をコピーアンドペーストすることによって、作業手順を短縮することがある。システム管理者は、コピーアンドペースト後、さらに、変更が必要な項目を修正する。
 しかし、前述の修正手順が行われなかった場合、当該設定値が誤りとなる可能性がある。
 そこで、第3の実施形態では、リスク値判定ルールとして、前述したようなコピーアンドペーストに起因する誤りが疑われる箇所に対して警告する。以降では、コピーアンドペーストに起因する誤りが疑われる箇所を設定クローンと記載する。
 第3の実施形態では、設定値が完全に一致又は一部が一致する部分木を設定クローンとして判定する例を示す。
 第3の実施形態の計算機システムの構成は第1の実施形態と同一であるため説明を省略する。
 図26は、本発明の第3の実施形態におけるリスク判定サーバ2のハードウェア構成及びソフトウェア構成を説明するブロック図である。
 リスク判定サーバ2のハードウェア構成は、第1の実施形態と同一である。第2の実施形態のリスク判定サーバ2は、ソフトウェア構成が異なる。
 具体的には、割当実績集計部205及び割当傾向分析部206の代わりに、設定クローン実績集計部209及び設定クローン傾向分析部210がメモリ20に格納される。さらに、割当実績テーブルT400及び割当傾向分析テーブルT420の代わりに、設定クローン実績テーブルT440及び設定クローン傾向分析テーブルT450がメモリ20に格納される。
 他の構成は、第1の実施構成と同一であるため説明は省略する。
 図27は、本発明の第3の実施形態におけるリスク値R1の算出処理を説明するフローチャートである。
 設定クローンの判定ルールに基づいたリスク値R1の算出方法について説明する。本判定は1つの構成情報に含まれる部分木同士を比較することを特徴とする。
 設定クローン実績集計部209は、取得された構成情報の中に含まれる設定クローンの件数を設定項目ごとに集計して、設定クローン実績テーブルT440に格納する(ステップS1101)。
 次に、設定クローン傾向分析部210は、設定クローン実績テーブルT440に基づいて、設定クローン傾向分析テーブルT450を更新する(ステップS1102)。具体的には、設定クローン傾向分析部210は、設定クローン実績テーブルT440を参照し、設定項目ごとの設定クローンの件数に基づいて設定クローンの発生傾向を分析し、分析結果を設定クローン傾向分析テーブルT450に格納する。
 設定クローン傾向分析部210は、変更後の構成情報の中に含まれる設定クローンの件数をノードごとに集計する(ステップS1103)。
 リスク値算出部201は、集計結果と設定クローン傾向分析テーブルT450から取得した設定クローンの発生傾向とに基づいて、ノードごとのリスク値R1を算出し、算出されたリスク値R1をリスク値テーブルT300に格納する(ステップS1104)。
 ここで、設定クローンが存在するか否かの判定方法としては、木構造に含まれる設定値の一致判定及び類似度判定などの方法を用いることが考えられる。
 第3の実施形態では構成情報内に含まれる2つの部分木の設定値が全て一致する場合に、設定クローンが存在すると判定する。ここで、リスク値R1の算出方法を、図4を用いて説明する。
 設定クローン実績集計部209は、ノード101を頂点とした部分木に含まれる設定値と、ノード119を頂点とした部分木に含まれる設定値とを比較する。
 このとき、ノード101を頂点とする部分木に含まれるVM名は「VM1」であり、ノード119を頂点とする部分木に含まれるVM名は「VM3」であり、設定値が一致しない。したがって、設定クローンは存在しないと判定される。
 一方ノード107を頂点とする部分木とノード119を頂点とする部分木とを比較すると、ディスク名が「Disk1」及びファイル名が「File1」と完全に一致する。そのため、ディスク情報同士は設定クローンであると判定される。
 このようにディスク情報が完全一致する場合、一方VMが、他方のVMに割り当てられている記憶領域にデータを上書きしてしまう可能性がある。そのため、誤り箇所である可能性が高い。
 この場合には、ノード「/物理マシン[1]/VM[1]/ディスク情報[1]」とノード「/物理マシン[1]/VM[1]/ディスク情報[3]」に設定クローンがあるものとして、前述したステップS1101~ステップS1104の処理が実行される。
 なお、第3の実施形態におけるリスク表示情報の生成処理は、第1の実施形態と同一であるため説明を省略する。
 以上の説明では、単純なリスク計算式を用いたが、金融などの他分野で利用される高度な計算モデルを利用してもよい。例えば、ロジスティック関数などを用いてもよい。このような高度な計算モデルを用いることによって、リスク分析精度が向上することができる。
 以上、本発明を添付の図面を参照して詳細に説明したが、本発明はこのような具体的構成に限定されるものではなく、添付した請求の範囲の趣旨内における様々な変更及び同等の構成を含むものである。

Claims (15)

  1.  リスク判定サーバが管理する計算機システムを構築するための構成情報における誤り箇所を特定するためのリスク判定方法であって、
     前記リスク判定サーバは、プロセッサと、前記プロセッサに接続されるメモリと、前記プロセッサに接続され、前記計算システムと接続するためのネットワークインタフェースとを有し、
     前記計算機システムは、1以上の計算機と、1以上のネットワーク装置と、1以上のストレージシステムとを含み、
     前記構成情報は、階層構造によって構成された複数種類の設定項目を含み、
     前記方法は、
     前記リスク判定サーバが、新たな前記構成情報の入力を受け付ける第1のステップと、
     前記リスク判定サーバが、前記新たに入力された構成情報に含まれる前記設定項目毎に、当該設定項目の誤りを示すリスク値を算出する第2のステップと、
     前記算出されたリスク値に基づいて、前記新たに入力された構成情報における誤り箇所である前記設定項目を特定する第3のステップと、
     前記特定された設定項目に関する情報を表示するためのリスク表示情報を生成する第4のステップと、
     を含むことを特徴とするリスク判定方法。
  2.  請求項1に記載のリスク判定方法であって、
     前記リスク判定サーバは、判定処理の履歴を格納する履歴情報を保持し、
     前記履歴情報は、前記設定項目に対する前記リスク値を算出するための評価パラメータを格納し、
     前記第2のステップは、
     前記新たに入力された構成情報に含まれる前記設定項目の中から処理対象とする前記設定項目を選択する第5のステップと、
     前記選択された設定項目と、前記履歴情報に格納される前記設定項目とを比較する第6のステップと、
     前記履歴情報から、前記選択された設定項目に対応する前記評価パラメータを取得する第7のステップと、
     前記比較の結果及び前記取得された評価パラメータに基づいて、前記選択された設定項目に対するリスク値を算出する第8のステップと、
    を含み、
     前記第3のステップは、
     前記算出されたリスク値が、所定の閾値より大きいか否かを判定する第9のステップと、
     前記算出されたリスク値が、前記所定の閾値より大きいと判定された場合には、前記選択された設定項目を誤り箇所として特定する第10のステップと、
     を含むことを特徴とするリスク判定方法。
  3.  請求項2に記載のリスク判定方法であって、
     前記履歴情報は、過去に入力された前記構成情報を格納する割当履歴情報と、前記設定項目の属性を示す第1の評価パラメータとを含み、
     前記第5のステップでは、前記新たに入力された構成情報に含まれ、最下位の階層の前記設定項目を第1の設定項目として選択し、
     前記第6のステップでは、前記第1の設定項目と、前記履歴情報に格納される前記設定項目とを比較し、
     前記第7のステップでは、前記履歴情報から、前記第1の設定項目に対応する前記第1の評価パラメータを取得し、
     前記第8のステップでは、前記比較の結果及び前記取得された第1の評価パラメータに基づいて、前記第1の設定項目における第1のリスク値を算出し、
     前記第9のステップでは、前記算出された第1のリスク値が、前記所定の閾値より大きいか否かを判定することを特徴とするリスク判定方法。
  4.  請求項3に記載のリスク判定方法であって、
     前記第2のステップは、さらに、
     前記新たに入力された構成情報に含まれる前記設定項目の中から処理対象とする第2の設定項目を選択するステップと、
     前記選択された第2の設定項目が、前記第1の設定項目と一致するか否かを判定するステップと、
     前記選択された第2の設定項目が前記第1の設定項目と一致しないと判定された場合、前記第2の設定項目に含まれる前記第1の設定項目を特定するステップと、
     前記特定された第1の設定項目に対応する前記第1のリスク値に基づいて、前記第2の設定項目に対する第2のリスク値を算出するステップと、
     前記選択された第2の設定項目が前記第1の設定項目と一致すると判定された場合、前記第1の設定項目に対する前記第1のリスク値を前記第2のリスク値として算出するステップと、
     を含み、
     前記第9のステップでは、前記算出された第2のリスク値が、前記所定の閾値より大きいか否かを判定することを特徴とするリスク判定方法。
  5.  請求項4に記載のリスク判定方法であって、
     前記履歴情報は、過去に生成された前記リスク表示情報、前記誤り箇所に対する操作情報を格納する操作履歴情報、及び、前記誤り箇所に対する操作頻度を示す第2のパラメータとを含み、
     前記第2のステップは、さらに、
     前記履歴情報を参照して、前記第2の設定項目に対応するリスク表示情報を特定して、前記特定されたリスク表示情報と対応づけられる前記第2のパラメータを取得するステップと、
     前記第2のリスク値と、前記第2のパラメータとに基づいて、前記第2の設定項目に対する第3のリスク値を算出するステップと、
     を含み、
     前記第9のステップでは、前記算出された第3のリスク値が、前記所定の閾値より大きいか否かを判定することを特徴とするリスク判定方法。
  6.  請求項5に記載のリスク判定方法であって、
     前記方法は、さらに、
     前記割当履歴情報に含まれる設定項目毎の第1の履歴件数を算出するステップと、
     前記算出された第1の履歴件数に基づいて前記第1のパラメータを算出して、前記履歴情報に格納するステップと、
     前記操作履歴情報に含まれる前記リスク表示情報毎の第2の履歴件数と、前記操作情報毎の第3の履歴件数とを算出するステップと、
     前記第2の履歴件数及び前記第3の履歴件数に基づいて前記第2のパラメータを算出して、前記履歴情報に格納するステップと、
     を含むことを特徴とするリスク判定方法。
  7.  請求項2に記載のリスク判定方法であって、
     前記第6のステップでは、前記選択された第1の設定項目と、前記履歴情報に格納される前記設定項目とを比較する場合に、前記第1の設定項目と同一種類かつ同一内容の前記設定項目が存在するか否かを判定することを特徴とするリスク判定方法。
  8.  請求項2に記載のリスク判定方法であって、
     前記第10のステップは、
     前記誤り箇所として特定された設定項目を強調表示するための第1の表示情報を生成するステップと、
     誤り箇所として特定された理由を取得して、取得された前記理由を表示するための第2の表示情報を生成するステップと、
     前記第1の表示情報と前記第2の表示情報とに基づいて、前記リスク表示情報を生成するステップと、を含むことを特徴とするリスク判定方法。
  9.  請求項1に記載のリスク判定方法であって、
     前記履歴情報は、2以上の前記設定項目の組み合わせに対する前記判定処理の履歴を含み、
     前記第2のステップでは、2つ以上の前記設定項目の組み合わせに対する前記リスク値を算出することを特徴とするリスク判定方法。
  10.  計算機システムを構築するための構成情報における誤り箇所を特定するリスク判定サーバであって、
     前記リスク判定サーバは、プロセッサと、前記プロセッサに接続されるメモリと、前記プロセッサに接続され、前記計算システムと接続するためのネットワークインタフェースとを備え、
     前記計算機システムは、1以上の計算機と、1以上のネットワーク装置と、1以上のストレージシステムとを含み、
     前記構成情報は、階層構造によって構成された複数種類の設定項目を含み、
     前記リスク判定サーバは、
     新たな前記構成情報の入力を受け付ける入力部と、
     前記新たに入力された構成情報に含まれる前記設定項目毎に、当該設定項目の誤りを示すリスク値を算出するリスク値算出部と、
     前記算出されたリスク値に基づいて、前記新たに入力された構成情報における誤り箇所である前記設定項目を特定し、前記特定された設定項目に関する情報を表示するためのリスク表示情報を生成するリスク表示情報生成部と、を備えることを特徴とするリスク判定サーバ。
  11.  請求項10に記載のリスク判定サーバであって、
     リスク判定サーバは、過去に入力された前記構成情報の履歴、及び、前記設定項目の属性を示す第1の評価パラメータを含む割当履歴情報を格納し、
     前記リスク値算出部は、
     前記新たに入力された構成情報に含まれ、最下位の階層の前記設定項目を第1の設定項目として選択し、
     前記第1の設定項目と、前記割当履歴情報に格納される前記設定項目とを比較し、
     前記割当履歴情報から、前記第1の設定項目に対応する前記第1の評価パラメータを取得し、
     前記比較の結果及び前記取得された第1の評価パラメータに基づいて、前記第1の設定項目における第1のリスク値を算出し、
     前記リスク表示情報生成部は、前記算出された第1のリスク値が、前記所定の閾値より大きいか否かを判定することによって、誤り箇所である前記設定項目を特定することを特徴とするリスク判定サーバ。
  12.  請求項11に記載のリスク判定サーバであって、
     前記リスク判定サーバは、過去に生成された前記リスク表示情報、前記誤り箇所に対する操作情報、及び、前記誤り箇所に対する操作頻度を示す第2のパラメータを含む操作履歴情報を格納し、
     前記リスク値算出部は、さらに、
     前記新たに入力された構成情報に含まれる前記設定項目の中から処理対象とする第2の設定項目を選択し、
     前記選択された第2の設定項目が、前記第1の設定項目と一致するか否かを判定し、
     前記選択された第2の設定項目が前記第1の設定項目と一致しないと判定された場合、前記第2の設定項目に含まれる前記第1の設定項目を特定し、
     前記特定された第1の設定項目に対応する前記第1のリスク値に基づいて、前記第2の設定項目に対する第2のリスク値を算出し、
     前記操作履歴情報を参照して、前記第2の設定項目に対応する前記リスク表示情報を特定して、前記特定されたリスク表示情報と対応づけられる前記第2のパラメータを取得し、
     前記第2のリスク値と、前記第2のパラメータとに基づいて、前記第2の設定項目に対する第3のリスク値を算出し、
     前記リスク表示情報生成部は、前記算出された第3のリスク値が、前記所定の閾値より大きいか否かを判定することによって、誤り箇所である前記設定項目を特定することを特徴とするリスク判定サーバ。
  13.  請求項12に記載のリスク判定サーバであって、
     前記リスク判定サーバは、さらに、前記割当履歴情報及び前記操作履歴情報を生成する分析部を備え、
     前記分析部は、
     前記割当履歴情報に含まれる設定項目毎の第1の履歴件数を算出し、
     前記算出された設定項目毎の履歴件数に基づいて前記第1のパラメータを算出し、
     前記操作履歴情報に含まれる前記リスク表示情報毎の第2の履歴件数と、前記誤り箇所に対する操作情報毎の第3の履歴件数とを算出し、
     前記第2の履歴件数と前記第3の履歴件数とに基づいて前記第2のパラメータを算出することを特徴とするリスク判定サーバ。
  14.  請求項11に記載のリスク判定サーバであって、
     前記リスク値算出部は、前記選択された第1の設定項目と、前記割当履歴情報に格納される前記設定項目とを比較する場合に、前記第1の設定項目と同一種類かつ同一内容の前記設定項目が存在するか否かを判定することを特徴とするリスク判定サーバ。
  15.  請求項11に記載のリスク判定サーバであって、
     前記リスク表示情報生成部は、
     前記誤り箇所として特定された設定項目を強調表示するための第1の表示情報を生成し、
     誤り箇所として特定された理由を取得して、取得された前記理由を表示するための第2の表示情報を生成し、
     前記第1の表示情報と前記第2の表示情報とに基づいて、前記リスク表示情報を生成することを特徴とするリスク判定サーバ。
PCT/JP2011/071334 2011-09-20 2011-09-20 リスク判定方法及びリスク判定サーバ WO2013042182A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2011/071334 WO2013042182A1 (ja) 2011-09-20 2011-09-20 リスク判定方法及びリスク判定サーバ
JP2013534472A JP5681804B2 (ja) 2011-09-20 2011-09-20 リスク判定方法及びリスク判定サーバ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/071334 WO2013042182A1 (ja) 2011-09-20 2011-09-20 リスク判定方法及びリスク判定サーバ

Publications (1)

Publication Number Publication Date
WO2013042182A1 true WO2013042182A1 (ja) 2013-03-28

Family

ID=47913997

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/071334 WO2013042182A1 (ja) 2011-09-20 2011-09-20 リスク判定方法及びリスク判定サーバ

Country Status (2)

Country Link
JP (1) JP5681804B2 (ja)
WO (1) WO2013042182A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2512482A (en) * 2013-03-28 2014-10-01 Fujitsu Ltd Verification program, verification method, and verification device
JP2015099500A (ja) * 2013-11-19 2015-05-28 富士通株式会社 記憶部更新装置、プログラム、及び方法
JP2015200980A (ja) * 2014-04-04 2015-11-12 富士通株式会社 検証支援プログラム、検証支援方法および検証支援装置
CN109684052A (zh) * 2018-12-26 2019-04-26 华为技术有限公司 事务分析方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001056889A (ja) * 1999-08-19 2001-02-27 Konica Corp 機器の警告情報制御方法及び当該機能を有する機器
JP2005251191A (ja) * 2004-02-19 2005-09-15 Microsoft Corp 他のコンピュータシステムのコンフィギュレーションに基づいてコンピュータシステムのミスコンフィギュレーションをトラブルシューティングする方法およびシステム
JP2007202079A (ja) * 2006-01-30 2007-08-09 Nec Corp セキュリティポリシー不整合解消支援システム、方法およびプログラム
WO2009144822A1 (ja) * 2008-05-30 2009-12-03 富士通株式会社 装置構成情報管理プログラム、装置構成情報管理装置及び装置構成情報管理方法
JP2010256978A (ja) * 2009-04-21 2010-11-11 Nec Corp コンフィグレーションデータ検証装置、検証方法及びプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001056889A (ja) * 1999-08-19 2001-02-27 Konica Corp 機器の警告情報制御方法及び当該機能を有する機器
JP2005251191A (ja) * 2004-02-19 2005-09-15 Microsoft Corp 他のコンピュータシステムのコンフィギュレーションに基づいてコンピュータシステムのミスコンフィギュレーションをトラブルシューティングする方法およびシステム
JP2007202079A (ja) * 2006-01-30 2007-08-09 Nec Corp セキュリティポリシー不整合解消支援システム、方法およびプログラム
WO2009144822A1 (ja) * 2008-05-30 2009-12-03 富士通株式会社 装置構成情報管理プログラム、装置構成情報管理装置及び装置構成情報管理方法
JP2010256978A (ja) * 2009-04-21 2010-11-11 Nec Corp コンフィグレーションデータ検証装置、検証方法及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HAJIME MORI: "The Method of Supporting System Configuration Management for Using the Dependency of a Server", TRANSACTIONS OF INFORMATION PROCESSING SOCIETY OF JAPAN, vol. 46, no. 4, 15 April 2005 (2005-04-15), pages 940 - 948 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2512482A (en) * 2013-03-28 2014-10-01 Fujitsu Ltd Verification program, verification method, and verification device
US9237071B2 (en) 2013-03-28 2016-01-12 Fujitsu Limited Computer-readable recording medium, verification method, and verification device
JP2015099500A (ja) * 2013-11-19 2015-05-28 富士通株式会社 記憶部更新装置、プログラム、及び方法
JP2015200980A (ja) * 2014-04-04 2015-11-12 富士通株式会社 検証支援プログラム、検証支援方法および検証支援装置
CN109684052A (zh) * 2018-12-26 2019-04-26 华为技术有限公司 事务分析方法、装置、设备及存储介质
CN109684052B (zh) * 2018-12-26 2021-04-09 华为技术有限公司 事务分析方法、装置、设备及存储介质

Also Published As

Publication number Publication date
JP5681804B2 (ja) 2015-03-11
JPWO2013042182A1 (ja) 2015-03-26

Similar Documents

Publication Publication Date Title
JP6916403B2 (ja) データへの論理的妥当性検査規則の指定および適用
US20200336387A1 (en) Topological map presentation system, topological map presentation method, and computer readable recording medium
CN107430515B (zh) 开发环境中的可定制类型的可视化框架
US9405532B1 (en) Integrated cloud platform translation system
US7886028B2 (en) Method and system for system migration
US11025498B2 (en) Device model to thing model mapping
US10606572B2 (en) Apparatus and method for assisting preparation of flow using visual programming tool
US10013238B2 (en) Predicting elements for workflow development
JP7502283B2 (ja) 人工知能/機械学習を用いたicsフローのオートコンプリートのためのシステムおよび方法
JP5681804B2 (ja) リスク判定方法及びリスク判定サーバ
JP6094593B2 (ja) 情報システム構築装置、情報システム構築方法および情報システム構築プログラム
JP5656946B2 (ja) データ分析装置及びプログラム
JP7077191B2 (ja) ビジュアルプログラミングツールを用いてフローを作成することを支援する装置および方法
US9116934B2 (en) Holistic database record repair
JP2016192034A (ja) 統計モデル作成装置、統計モデル作成方法及び統計モデル作成プログラム
WO2018179065A1 (ja) データ分析装置およびデータ分析方法
JP4798395B2 (ja) リソース自動構築システム及び自動構築方法並びにそのための管理用端末
KR20140041603A (ko) 미리 구축된 컨트롤을 사용하는 로직 생성 기법
JP2019101829A (ja) ソフトウェア部品管理システム、計算機および方法
JP2016143363A (ja) リポジトリ管理システム及び管理方法
CN104424525A (zh) 辅助确定项目范围的方法和装置
JP6641456B2 (ja) 計算機システム及びデータの分類方法
CN109871318B (zh) 一种基于软件运行网络的关键类识别方法
JP7494090B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP5704932B2 (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: 11872701

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013534472

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11872701

Country of ref document: EP

Kind code of ref document: A1