SYSTEM MANAGEMENT APPARATUS AND SYSTEM MANAGEMENT METHOD

A system management apparatus for managing a network system, the system management apparatus includes a processor configured to perform specifying of a first communication path including the L3 relay apparatus between a first pair of information processing apparatuses included in the network system and a second communication path not including any L3 relay apparatus between a second pair of information processing apparatuses included in the network system, store management information in the memory, the management information including information of the first communication path and the second communication path in association with information of the first pair of information processing apparatuses and the second pair of information processing apparatuses, and when a failure occurs in the network system, perform a detection of communication between a third pair of information processing apparatuses affected by the failure.

CROSS-REFERENCE TO RELATED APPLICATION

This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2017-105020, filed on May 26, 2017, the entire contents of which are incorporated herein by reference.

FIELD

The embodiments discussed herein are related to a system management technique.

BACKGROUND

A cloud system has a complicated configuration constructed by many servers, switches, and others to realize provision of services to multiple customers. When a failure occurs in such a complicated environment, to support a cloud provider, a cloud management apparatus that manages the cloud system specifies customers affected by the failure based on physical path information and configuration information of a virtual system stored in advance.

Note that there is a technique for associating network identifiers for routing with computer identifiers by: grouping multiple computers to execute a program to be executed in parallel, for each relay apparatus in the bottom layer among relay apparatuses of a hierarchical configuration; sorting the groups thus formed; and allocating the identifiers to the computers in the order of the sorting.

There is also a technique for generating a VLAN setting information table in such a way that redundant paths for paths that connect switches A and B connected to terminals that configure a VLAN are specified based on information on physical connection states of network connection devices and connection states thereof in a spanning tree.

The related arts are disclosed in, for example, Japanese Laid-open Patent Publication Nos. 2012-98881 and 2007-158764.

SUMMARY

According to an aspect of the invention, a system management apparatus for managing a network system, the system management apparatus includes a processor configured to perform specifying of a first communication path including a L3 relay apparatus between a first pair of information processing apparatuses included in the network system and a second communication path not including any L3 relay apparatus between a second pair of information processing apparatuses included in the network system, store management information in the memory, the management information including information of the first communication path and the second communication path in association with information of the first pair of information processing apparatuses and the second pair of information processing apparatuses, and when a failure occurs in the network system, perform a detection of communication between a third pair of information processing apparatuses affected by the failure.

DESCRIPTION OF EMBODIMENTS

When a layer 3 (L3) relay apparatus that treats packets in the layer 3 or higher is present in a cloud system, turning back sometimes occurs in the L3 relay apparatus. In related art, information on a physical path turning back at the L3 relay apparatus is not included in physical path information used in processing of specifying customers affected when a failure occurs. Therefore, the affected customers may not be accurately specified.

System management apparatuses, system management methods, and computer programs according to embodiments are explained in detail below with reference to the drawings. In a first embodiment, an information processing system is explained that reduces an amount of physical path information used for specifying customers affected by a failure to reduce a time taken for the processing of specifying the affected customers. In a second embodiment, an information processing system is explained that specifies a physical path affected by a failure including a physical path turning back in the L3 relay apparatus. Note that the embodiments do not limit the disclosed technique.

First Embodiment

First, an information processing system according to a first embodiment is explained.FIG. 1is a diagram for explaining the information processing system according to the first embodiment. As illustrated inFIG. 1, an information processing system10according to the first embodiment includes a cloud management apparatus1, three servers41, and four switches42. The three servers41are represented by servers #1to #3. The four switches42are represented by switches #1to #4. The switch #4is a standby switch42. The switches #3and #4are in a node redundant relation. The servers41and the switches42are connected by links43. The switches42are connected by links43. InFIG. 1, eight links43are represented by links #1to #8. The links43are represented by solid lines. For example, the server #1and the switch #1are connected by the link #1.

The servers41are information processing apparatuses that perform information processing. The switches42are apparatuses that relay communication among the servers41. Note that, inFIG. 1, the information processing system10includes the three servers41, the four switches42, and the eight links43. However, the information processing system10may include any numbers of the servers41, the switches42, and the links43.

A VM #1operates in the server #1, a VM #2operates in the server #2, and a VM #3operates in the server #3. The VM indicates a virtual machine that operates on the server41. VMs are allocated to tenants that use the information processing system10. Virtual networks are allocated to the tenants that use the information processing system10. InFIG. 1, a virtual local area network (VLAN) #1is allocated to a tenant X. The virtual networks are represented by broken lines. Note that, inFIG. 1, one VM44is allocated to one server41. One virtual network is allocated to one tenant. However, multiple VMs44may be allocated to one server41. Multiple virtual networks may be allocated to one tenant.

The cloud management apparatus1is an apparatus that, when a failure occurs in a network, specifies affected customers by specifying affected inter-VM communication. For example, when a failure occurs in a network infrastructure, a cloud provider7, which operates a cloud system, inquires about an influence range to the cloud management apparatus1. The cloud management apparatus1specifies affected customers by specifying affected inter-VM communication and displays a specified result on a display apparatus used by the cloud provider7. InFIG. 1, when a failure occurs in the link #4, the cloud management apparatus1specifies communication between the VM #1and the VM #2and communication between the VM #2and the VM #3as affected inter-VM communication. The cloud management apparatus1specifies customers affected by the failure based on correspondence information between the VMs44and customers.

The cloud management apparatus1manages, as the same group, the servers41, all edge switches connected to which are the same, and manages communication paths among server groups. The edge switches are the switches42connected to the servers41by one link43. InFIG. 1, all of the switches #1to #4are the edge switches.

The cloud management apparatus1is explained.FIG. 2is a diagram illustrating a functional configuration of the cloud management apparatus1. As illustrated inFIG. 2, the cloud management apparatus1includes a storing unit1athat stores data used for management of server groups, data used for an analysis of the influence of a failure, and the like and a control unit1bthat performs creation control of the data used for the management of the server groups, control of the analysis of the influence of the failure, and the like. The storing unit1astores a redundancy management table11, a connection link management table12, a VM management table13, a server management table15, a server group management table16, and a physical path table18. The control unit1bincludes a server-group creating unit14, a physical-path creating unit17, and a specifying unit19.

In the redundancy management table11, information on redundant configurations of the information processing system10are registered.FIG. 3is a diagram illustrating an example of the redundancy management table11. As illustrated inFIG. 3, in the redundancy management table11, a node name and a state are associated. The node name is an identifier for identifying the switch42. The state indicates a state of use of the switch42. When the state is “active”, the switch42is in use. When the state is “standby”, the switch42is not in use. For example, the switch #1is in use and the switch #4is not in use.

In the connection link management table12, information on the links43connected to the switches42or the servers41is registered.FIG. 4is a diagram illustrating an example of the connection link management table12. As illustrated inFIG. 4, in the connection link management table12, a node name and a connection link are associated. The node name is an identifier for identifying the switch42or an identifier for identifying the server41. The connection link is an identification number for identifying the link43connected to the switch42or the server41. For example, as the links43connected to the switch #1, there are the links #1, #3, and #5. As the link43connected to the server #1, there is the link #1. Note that a link #n is the link43having an identification number n.

In the VM management table13, the VMs44operating in the servers41are registered.FIG. 5is a diagram illustrating an example of the VM management table13. As illustrated inFIG. 5, in the VM management table13, a node name and a VM name are associated. The node name is an identifier for identifying the server41. The VM name is an identifier for identifying the VM44. For example, the VM #1operates in the server #1. The VM #2operates in the server #2.

The server-group creating unit14groups the servers41referring to the connection link management table12and creates the server management table15and the server group management table16. The server-group creating unit14groups the servers41, all edge switches connected to which are the same, in the same group.

In the server management table15, information on a server group is registered for each of the servers. In the server group management table16, information on the edge switch to which the server group is connected is registered.FIG. 6is a diagram illustrating an example of the server management table15.FIG. 7is a diagram illustrating an example of the server group management table16.FIG. 8is a diagram illustrating an example of a target system4aused for creation ofFIGS. 6 and 7.

As illustrated inFIG. 6, in the server management table15, a server name and a server group name are associated. The server name is an identifier for identifying the server41. The server group name is an identifier for identifying a server group. As illustrated inFIG. 7, in the server group management table16, an edge switch name and a server group name are associated. The edge switch name is an identifier for identifying an edge switch. The server group name is an identifier for identifying a server group.

As illustrated inFIG. 8, in the target system4a, the servers #1and #2are connected to the switches #1and #2, which are the edge switches. All the connected edge switches are the same. Therefore, the servers #1and #2are included in a group having an identifier G#1. InFIG. 6, the servers #1and #2are associated with G#1. InFIG. 7, the switches #1and #2are associated with G#1.

As illustrated inFIG. 8, in the target system4a, the server #3is connected to the switches #5and #6, which are the edge switches. There is no other server, all edge switches connected to which are the same. Therefore, the server #3is included in a group having an identifier G#2. InFIG. 6, the server #3is associated with G#2. InFIG. 7, the switches #5and #6are associated with G#2.

The server-group creating unit14performs group allocation under a policy of allocating the servers41, all edge switches connected to which are the same, to the same group. On the other hand, a policy of allocating all the servers41subordinate to a switch to the same group is also conceivable.FIG. 9Ais a diagram illustrating an example 1 of group allocation for allocating all the servers41subordinate to a switch to the same group.FIG. 9Bis a diagram illustrating an example 2 of the group allocation for allocating the servers41, all edge switches connected to which are the same, to the same group.

As illustrated inFIG. 9A, in the example 1 of the group allocation, the servers #1and #2subordinate to the switch #1are allocated to the same group G#1. Subsequently, a group is about to be allocated to the server #1subordinate to the switch #2. However, since the group G#1is already allocated to the server #1, new allocation to the server #1is not performed. Subsequently, the group G#2is allocated to the server #3subordinate to the switch #3. Subsequently, a group is about to be allocated to the server #3subordinate to the switch #4. However, since the group G#2is already allocated to the server #3, new allocation to the server #3is not performed.

When a failure occurs in the link #5, the server #1is not affected because a path passing through the link #6is present in communication with the server #3. However, the server #2is affected because another path is absent in communication with the server #3. That is, in the example 1 of the group allocation, the servers41different in presence or absence of influence are present in the same group G#1.

On the other hand, as illustrated inFIG. 9B, in the example 2 of the group allocation, the server #1is connected to the switches #1and #2, the server #2is connected to the switch #1, and the server #3is connected to the switches #3and #4. That is, all edge switches connected to the servers #1to #3are different. Therefore, different groups G#1to G#3are respectively allocated to the servers #1to #3.

When a failure occurs in the link #5, the server #1is not affected because a path passing through the link #6is present in communication with the server #3. However, the server #2is affected because another path is absent in communication with the server #3. However, since different groups are allocated to the servers #1and #2, the servers41different in the presence or absence of influence is absent in the same group. In this way, by allocating the servers41, all the edge switches connected to which are the same, to the same group, the server-group creating unit14may cause all the servers41in the same group to be affected the same by a failure.

The server-group creating unit14creates a server group by performing the following (1) to (5) on all the edge switches.

(1) Select one edge switch.

(2) Extract the server41adjacent to the edge switch selected in (1) and not allocated with a server group, allocate a server group to the server41, and extract all edge switches to which the extracted server41is connected.

(3) Extract another server41adjacent to the edge switch selected in (1) and not allocated with a server group and extract all edge switches to which the extracted other server41is connected.

(4) Compare the edge switches extracted in (2) and the edge switches extracted in (3) and, when all the edge switches are the same, allocate the server group allocated in (2) to the other server41.

(5) Repeat (3) and (4) until no more server41adjacent to the selected edge switch is left and repeats (1) to (4) until no edge switch is left.

The physical-path creating unit17specifies, referring to the connection link management table12and the server group management table16, a set of the links43connecting two edge switches as a physical path and creates the physical path table18. The physical path and two server groups that perform communication using the physical path are registered in the physical path table18.FIG. 10is a diagram illustrating an example of the physical path table18.FIG. 10is the physical path table18created targeting the target system4aillustrated inFIG. 8.

As illustrated inFIG. 10, in the physical path table18, a path number, a communication path, and a communication group are associated. The path number is an identification number for identifying a physical path. The communication path is a set of identifiers of the links43included in the physical path. The communication group is an identifier of two server groups that communicate using the physical path. For example, the “link #5” and the “link #7” are included in a physical path having a path number “1”. The physical path is used in communication between “G#1” and “G#2”.

The physical-path creating unit17specifies all physical paths by retrieving, for all the edge switches, a path from an edge switch to another edge switch. The physical-path creating unit17extracts server groups subordinate to edge switches at both ends of the physical paths referring to the server group management table16, creates a combination of the server groups, and registers the combination in the physical path table18in association with the physical paths.

The specifying unit19specifies inter-VM communication affected by an occurred failure. The specifying unit19includes an inter-group-communication specifying unit21and an inter-VM-communication specifying unit22.

The inter-group-communication specifying unit21specifies inter-server group communication affected by the occurred failure. That is, the inter-group-communication specifying unit21specifies a physical path affected by the occurred failure referring to the physical path table18and determines whether the specified physical path is active referring to the redundancy management table11and the connection link management table12. When the specified physical path is active, the inter-group-communication specifying unit21specifies, referring to the physical path table18, inter-server group communication corresponding to the physical path and determines whether another physical path is present in the specified inter-server group communication. The inter-group-communication specifying unit21specifies inter-server group communication without another physical path in the specified inter-server group communication as inter-server group communication affected by the occurred failure.

The inter-VM-communication specifying unit22specifies inter-server communication affected by the failure from the inter-server group communication specified by the inter-group-communication specifying unit21and specifies inter-VM communication affected by the failure from the specified inter-server communication. That is, the inter-VM-communication specifying unit22respectively extracts, referring to the server management table15, the servers41in two server groups set as targets of the inter-server group communication specified by the inter-group-communication specifying unit21. The inter-VM-communication specifying unit22creates a combination of the servers41between different server groups and specifies inter-VM communication affected by the occurred failure referring to the VM management table13.

In this way, the specifying unit19specifies affected inter-VM communication considering whether a physical path affected by the occurred failure is active and, when the physical path is active, considering whether redundant paths are present for affected inter-server group communication or inter-server communication.FIG. 11is a diagram illustrating an example of specifying an influence range considering redundant paths. As illustrated inFIG. 11, when a failure occurs in the link #5, a physical path including the link #5is active. Therefore, communication between the server groups G#1and G#3and communication between the server groups G#2and G#3are extracted as affected inter-server group communication.

The communication between the server groups G#1and G#3is not affected by the failure because a standby path passing through the link #6is present. On the other hand, in the communication between the server groups G#2and G#3, communication between the servers #2and #3is affected by the failure because a standby path is absent. The communication between the VMs #2and #3is specified as affected inter-VM communication.

When a failure occurs in a physical path between the server41and an edge switch, the inter-group-communication specifying unit21specifies a physical path passing through an edge switch connected to a failure part referring to the communication link management table12and the physical path table18. The inter-group-communication specifying unit21determines whether the specified physical path is active referring to the redundancy management table11and the connection link management table12. When the specified physical path is active, the inter-group-communication specifying unit21specifies inter-server group communication in which the specified physical path is used. However, the inter-server group communication to be specified is communication including a server group to which the server41connected to the failure part belongs.

The inter-group-communication specifying unit21determines whether another physical path is present in the specified inter-server group communication referring to the physical path table18. The inter-group-communication specifying unit21specifies, as inter-server group communication affected by the occurred failure, inter-server group communication without another physical path in the specified inter-server group communication.

The inter-VM communication specifying unit22respectively extracts, referring to the server management table15, the servers41in two server groups set as targets of the inter-server group communication specified by the inter-group-communication specifying unit21. However, the inter-VM communication specifying unit22extracts only the server41connected to the failure part from the server group to which the server41connected to the failure part belongs. The inter-VM communication specifying unit22creates a combination of the servers41between the server groups and specifies inter-VM communication affected by the occurred failure referring to the VM management table13.

FIG. 12Ais a first diagram illustrating an example of specifying an influence range when a failure occurs in a path between the server41and an edge switch. As illustrated inFIG. 12A, when a failure occurs in the link #1, communication between the server groups G#1and G#2is specified as affected active inter-server group communication. Since another path is absent between the server groups G#1and G#2, the server #1connected to the link #1in which the failure occurs is extracted from the server group G#1. The server #3is extracted from the server group G#2. Inter-VM communication between the VM #1constructed by the server #1and the VM #3constructed by the server #3is specified as inter-VM communication affected by the failure.

When a failure occurs in the path between the server41and the edge switch, the inter-VM-communication specifying unit22extracts, in a server group to which the server41connected to a failure part belongs, a physical path of affected inter-server communication. The inter-VM-communication specifying unit22determines whether the extracted physical path is active referring to the redundancy management table11and the connection link management table12. When the extracted physical path is active, the inter-VM-communication specifying unit22determines whether another path is present referring to the redundancy management table11and the connection link management table12. When another path is absent, the inter-VM-communication specifying unit22extracts the VM44constructed by the server41set as a target of the affected inter-server communication and specifies a combination of VMs on different servers as affected inter-VM communication.

FIG. 12Bis a second diagram illustrating the example of specifying an influence range when a failure occurs in the path between the server41and the edge switch. As illustrated inFIG. 12B, when a failure occurs in the link #1, communication between the servers #1and #2is extracted as affected inter-server communication. Since the communication between the servers #1and #2is active and another path is absent, the VM #1constructed by the server #1and the VM #2constructed by the server #2are extracted. Communication between the VMs #1and #2is specified as affected inter-VM communication.

A flow of processing of creating a server group and creating the physical path table18is explained.FIG. 13is a flowchart illustrating a flow of processing of creating a server group.FIG. 14is a flowchart illustrating a flow of processing of creating the physical path table18. Note that the creation of a server group is performed after construction of an information processing system. The creation of a server group is also performed when a network configuration is changed or when a server configuration is changed.

As illustrated inFIG. 13, the server-group creating unit14determines whether processing of retrieving all the switches42from the connection link management table12is completed (step S1). When the switches42not retrieved are present, the server-group creating unit14retrieves one switch42and determines whether an adjacent node of the retrieved switch42is the server41(step S2). When the adjacent node is not the server41, the server-group creating unit14returns to step S1. When the adjacent node is the server41, the server-group creating unit14extracts the retrieved switch42as an edge switch (step S3) and returns to step S1.

On the other hand, when the processing of retrieving all the switches42is completed, the server-group creating unit14determines whether processing of specifying a server group is completed for all the edge switches (step S4). As a result, when edge switches on which the processing of specifying a server group is not performed are present, the server-group creating unit14selects one edge switch (step S5). The server-group creating unit14determines whether the server group allocation to all servers subordinate to the selected edge switch is completed (step S6).

When the server41on which the server group allocation is not performed is present, the server-group creating unit14extracts the server41to which a server group is not allocated, allocates a new server group to the server41, and registers the new server group in the server management table15(step S7). The server-group creating unit14determines whether the server group allocation to all the servers subordinate to the selected edge switch is completed (step S8).

When the server41on which the server group allocation is not performed is present, the server-group creating unit14extracts the server41to which a server group is not allocated (step S9). The server-group creating unit14determines whether edge switch connection configurations of the extracted server41and the server41to which the server group is allocated in step S7are the same (step S10). As a result, when the edge switch connection configurations are the same, the server-group creating unit14allocates the same server group to the extracted server41and registers the server group in the server management table15(step S11) and returns to step S8. When the edge switch connection configurations are not the same, the server-group creating unit14returns to step S8.

When determining in step S8that the server group allocation to all the servers is completed, the server-group creating unit14registers the selected edge switches and the allocated server groups in the server group management table16(step S12). When determining in step S6that the server group allocation to all the servers is completed, the server-group creating unit14also registers the selected edge switches and the allocated server groups in the server group management tables16(step S12). The server-group creating unit14returns to step S4.

When determining in step S4that the processing of specifying a server group is completed for all the edge switches, the server-group creating unit14ends the processing. The physical-path creating unit17starts the processing of creating the physical path table18.

As illustrated inFIG. 14, the physical-path creating unit17determines whether processing of specifying a physical path is completed for all the edge switches (step S21). As a result, when edge switches on which the processing of specifying a physical path is not performed is present, the physical-path creating unit17selects one edge switch (step S22). The physical-path creating unit17determines whether processing of retrieving all adjacent links is completed for the selected edge switch (step S23). When adjacent links not retrieved are present, the physical-path creating unit17selects one adjacent node (step S24).

The physical-path creating unit17determines whether the selected adjacent node is an edge switch (step S25). When the selected adjacent node is not an edge switch, the physical-path creating unit17determines whether the adjacent node is the server41(step S26). As a result, when the adjacent node is not the server41, the physical-path creating unit17determines whether the processing of retrieving all adjacent links is completed for the adjacent node (step S27). When adjacent links not retrieved are present, the physical-path creating unit17returns to step S24.

On the other hand, when the processing of retrieving all adjacent links is completed for the adjacent node or when the adjacent node is the server41, the physical-path creating unit17returns to step S23. When determining in step S25that the adjacent node is an edge switch, the physical-path creating unit17creates a combination of server groups corresponding to edge switches at both ends of the retrieved physical path and registers the combination in the physical path table18together with the physical path (step S28). The physical-path creating unit17returns to step S23.

When determining in step S23that the processing of retrieving all adjacent links is completed, the physical-path creating unit17returns to step S21. When determining in step S21that the processing of specifying a physical path is completed for all the edge switches, the physical-path creating unit17deletes overlapping paths from the physical path table18(step S29) and ends the processing of creating the physical path table18.

In this way, the server-group creating unit14creates a server group and the physical-path creating unit17creates the physical path table18based on the server group. Consequently, the specifying unit19may specify an influence range of a failure referring to the physical path table18.

A flow of processing of specifying an influence range is explained.FIG. 15Ais a first flowchart illustrating the flow of the processing of specifying an influence range.FIG. 15Bis a second flowchart illustrating the flow of the processing of specifying an influence range. Note that the processing of specifying an influence range is started when the specifying unit19receives a failure occurrence notification.

As illustrated inFIG. 15A, the specifying unit19determines whether a failure part is a connection link of the server41(step S31). When the failure part is not the connection link of the server41, the specifying unit19specifies a physical path on a failure link (step S32). The specifying unit19determines whether confirmation of all physical paths is completed (step S33). When the confirmation of all the physical paths is completed, the specifying unit19ends the processing.

On the other hand, when physical paths not confirmed are present, the specifying unit19determines whether one of the specified physical paths is active (step S34). When the physical path is not active, the specifying unit19returns to step S33. On the other hand, when the physical path is active, the specifying unit19determines whether a standby path is present (step S35). When a standby path is present, the specifying unit19returns to step S33.

On the other hand, when a standby path is absent, the specifying unit19specifies inter-server group communication corresponding to the physical path (step S36) and specifies a combination of the servers41that perform communication based on the specified inter-server group communication (step S37). The specifying unit19specifies the VMs44on the specified servers (step S38) and specifies a combination of the specified VMs44as affected inter-VM communication (step S39). The specifying unit19returns to step S33.

When determining in step S31that the failure part is the connection link of the server41, as illustrated inFIG. 15B, the specifying unit19specifies a physical path on an edge switch to which the link43is connected (step S40). However, the specifying unit19specifies only a physical path including a server group to which the server41connected to the failure link belongs.

The specifying unit19determines whether the confirmation of all the physical paths is completed (step S41). When physical paths not confirmed are present, the specifying unit19determines whether one of the specified physical paths is active (step S42). When the physical path is not active, the specifying unit19returns to step S41. On the other hand, when the physical path is active, the specifying unit19determines whether a standby path is present (step S43). When a standby path is present, the specifying unit19returns to step S41.

On the other hand, when a standby path is absent, the specifying unit19specifies inter-server group communication corresponding to the physical path (step S44) and specifies a combination of the servers41that perform communication based on the specified inter-server group communication (step S45). However, in a server group to which the server41connected to the failure link belongs, the specifying unit19specifies only a combination including the server41connected to the failure link. The specifying unit19specifies the VMs44on the specified servers (step S46) and specifies a combination of the specified VMs44as affected inter-VM communication (step S47).

When determining in step S41that the confirmation of all the physical paths is completed, the specifying unit19specifies a physical path among servers including a connected server, which is connected to the failure link, in the server group to which the connected server belongs (step S48). The specifying unit19determines whether the confirmation of all the physical paths is completed (step S49). When the confirmation of all the physical paths is completed, the specifying unit19ends the processing.

On the other hand, when physical paths not confirmed are present, the specifying unit19determines whether one of the specified physical paths is active (step S50). When the physical path is not active, the specifying unit19returns to step S49. On the other hand, when the physical path is active, the specifying unit19determines whether a standby path is present (step S51). When a standby path is present, the specifying unit19returns to step S49.

On the other hand, when a standby path is absent, the specifying unit19specifies the VMs44on the servers that perform inter-server communication corresponding to the physical path (step S52) and specifies a combination of the specified VMs44as affected inter-VM communication (step S53).

In this way, the specifying unit19specifies affected inter-server group communication, specifies affected inter-server communication based on the specified inter-server group communication, and specifies affected inter-VM communication based on the specified inter-server communication. Therefore, the specifying unit19may reduce a time taken for the processing of specifying affected inter-VM communication.

An example of specifying an influence range is explained with reference toFIGS. 16 to 25.FIG. 16is a diagram illustrating an information processing system10aused for the explanation of the example of specifying an influence range. As illustrated inFIG. 16, the information processing system10aincludes the cloud management apparatus1, the four servers #1to #4, and the four switches #1to #4. The switches #2and #4are standby switches.

The server #1is connected to the switch #1by the link #1. The server #2is connected to the switch #1by the link #2and connected to the switch #2by the link #3. The server #3is connected to the switch #1by the link #4and connected to the switch #2by the link #5. The switches #1and #3are connected by the link #6. The switches #2and #4are connected by the link #7. The server #4is connected to the switch #3by the link #8and connected to the switch #4by a link #9.

FIG. 17is a diagram illustrating the redundancy management table11, the connection link management table12, and the VM management table13corresponding to the information processing system10aillustrated inFIG. 16. As illustrated inFIG. 17, the switches #1and #3are registered in the redundancy management table11as “active”. The switches #2and #4are registered in the redundancy management table11as “standby”.

Connection of the switch #1to the links #1, #2, #4, and #6and connection of the switch #2to the links #3, #5, and #7are registered in the connection link management table12. Connection of the switch #3to the links #6and #8and connection of the switch #4to the links #7and #9are registered in the connection link management table12. Connection of the server #1to the link #1, connection of the server #2to the links #2and #3, connection of the server #3to the links #4and #5, and connection of the server #4to the links #8and #9are registered in the connection link management table12.

Operation of the VM #1on the server #1, operation of the VM #2on the server #2, operation of the VM #3on the server #3, and operation of the VM #4on the server #4are registered in the VM management table13.

First, the physical-path creating unit17creates the server management table15and the server group management table16. That is, the physical-path creating unit17extracts the servers #1, #2, and #3as the servers41subordinate to the switch #1based on the connection link management table12. The physical-path creating unit17allocates the server group #1to the server #1and allocates the server group #2to the servers #2and #3. The physical-path creating unit17registers the allocated server groups subordinate to the switch #1in the server management table15and the server group management table16.

FIG. 18is a diagram illustrating states of the server management table15and the server group management table16at the time when the server groups subordinate to the switch #1are registered. As illustrated inFIG. 18, the servers #1, #2, and #3are registered in the server management table15with the server group G#1associated with the server #1and the server group G#2associated with the servers #2and #3. The switch #1is registered in the server group management table16with the server groups G#1and G#2associated with the switch #1.

The physical-path creating unit17performs the same processing for the switches #2, #3, and #4to allocate the server group G#3to the server #4.FIG. 19is a diagram illustrating states of the server management table15and the server group management table16at the time when server groups subordinate to the switches #2to #4are registered. As illustrated inFIG. 19, the server #4is registered in the server management table15with the server group G#3associated with the server #4. The switches #2, #3, and #4are registered in the server group management table16with the server group G#2associated with the switch #2and the server group G#3associated with the switches #3and #4.

Subsequently, the physical-path creating unit17creates the physical path table18. That is, the physical-path creating unit17extracts the servers #1, #2, and #3and the switch #3as adjacent nodes of the switch #1based on the connection link management table12. Only a physical path from the switch #1to the switch #3is a physical path from an edge switch to an edge switch. Therefore, the physical-path creating unit17registers the link #6from the switch #1to the switch #3in the physical path table18as a communication path of a path #1. The physical-path creating unit17specifies the server groups G#1and G#2as server groups associated with the switch #1and specifies the server group G#3as a server group associated with the switch #3referring to the server group management table16. The physical-path creating unit17registers G#1-G#3and G#2-G#3in the physical path table18as communication groups corresponding to the path #1.

FIG. 20is a diagram illustrating a state of the physical path table18at the time when the path #1is registered. As illustrated inFIG. 20, inter-server group communications “G#1-G#3” and “G#2-G#3” are associated with the physical path “link #6” having a path number “1”.

The physical-path creating unit17performs the same processing for the switches #2, #3, and #4and respectively registers, in the physical path table18, a path #2with the link #7set as a physical path, a path #3with the link #6set as a physical path, and a path #4with the link #7set as a physical path.

FIG. 21is a diagram illustrating a state of the physical path table18at the time when the paths #2to #4are registered. As illustrated inFIG. 21, the inter-server group communication “G#2-G#3” is associated with the physical path “link #7” having a path number “2”. The inter-server group communications “G#1-G#3” and “G#2-G#3” are associated with the physical path “link #6” having a path number “3”. The inter-server group communication “G#2-G#3” is associated with the physical path “link #7” having a path number “4”.

Subsequently, the physical-path creating unit17deletes overlapping physical paths from the physical path table18. InFIG. 21, since communication paths of the paths #1and #3are the same, the path #3is deleted and, since communication paths of the paths #2and #4are the same, the path #4is deleted.FIG. 22is a diagram illustrating a state of the physical path table18at the time when the overlapping paths are deleted. As illustrated inFIG. 22, the paths #3and #4are deleted from the physical path table18illustrated inFIG. 21.

When a failure occurs, the specifying unit19specifies inter-VM communication affected by a failure.FIG. 23is a diagram illustrating a state at the time when a failure occurs between switches. InFIG. 23, a failure occurs in the link #6. As illustrated inFIG. 23, during the failure occurrence, the VM #1is operating on the server #1, the VM #2is operating on the server #2, the VM #3is operating on the server #3, and the VM #4is operating on the server #4.FIG. 23illustrates states of the server management table15, the server group management table16, the redundancy management table11, the VM management table13, and the physical path table18during the failure occurrence.

When a failure occurs in the link #6, the specifying unit19extracts the path #1passing through the link #6referring to the physical path table18. Since the switches #1and #3are active, the specifying unit19determines that the path #1is active referring to the redundancy management table11. The specifying unit19extracts G#1-G#3and G#2-G#3as affected inter-server group communications referring to the physical path table18. The specifying unit19confirms whether a standby path is present or not for the affected inter-server group communications referring to the physical path table18. Then, since the path #2is present in G#2-G#3, the specifying unit19determines that a standby path is present.

For G#1-G#3, the specifying unit19extracts communication between the servers #1-#4as affected inter-server communication referring to the server management table15. The specifying unit19extracts the VMs #1-#4as affected inter-VM communication referring to the VM management table13.

FIG. 24is a diagram illustrating a state at the time when a failure occurs between the server41and the switch42.FIG. 24illustrates occurrence of a failure in the link #2.FIG. 24illustrates states of the server management table15, the server group management table16, the redundancy management table11, the VM management table13, the connection link management table12, and the physical path management table18during the failure occurrence.

The specifying unit19extracts the path #1passing through the switch #1, to which the link #2is connected, as an effected physical path referring to the connection link management table12and the physical path table18. Since the switches #1and #3are active, the specifying unit19determines that the path #1is active referring to the redundancy management table11. The specifying unit19extracts G#2-G#3as affected inter-server group communication referring to the physical path table18. Note that, since the specifying unit19extracts only a path including the server group G#2to which the server #2, to which the link #2is connected, belongs, the specifying unit19does not extract G#1-G#3. For G#2-G#3, the specifying unit19determines that the path #2is present as a standby path referring to the physical path table18. Therefore, for the path #1, the specifying unit19determines that inter-server group communication affected by the failure of the link #2is absent.

The specifying unit19creates a physical path of G#1-G#2between server groups connected to the switch #1referring to the server group management table16. Since the switch #1is active, the specifying unit19determines that G#1-G#2is active referring to the redundancy management table11. Since the switch42connected to the server groups G#1and G#2is absent other than the switch #1, the specifying unit19determines that a standby path is absent in G#1-G#2referring to the server group management table16. For G#1-G#2, the specifying unit19extracts the servers #1-#2as affected inter-server communication referring to the server management table15. Note that, for G#2, since only the server #2connected to the link #2is set as a target, the specifying unit19does not extract the servers #1-#3. The specifying unit19extracts the VMs #1-#2as affected inter-VM communication referring to the VM management table13.

The specifying unit19specifies, referring to the server management table15, the servers #2-#3as inter-server communication in the server group G#2to which the server #2connected to the link #2belongs. Since the switch #1is active, the specifying unit19determines that a physical path of the servers #2-#3is active referring to the redundancy management table11. The specifying unit19determines that a standby path is present in the servers #2-#3referring to the connection link management table12. Therefore, the specifying unit19determines that affected inter-server communication is absent in server groups including the servers41connected to the link43in which the failure occurs.

Effects obtained when the servers41are grouped are explained.FIG. 25is a diagram for explaining the effects obtained when the servers41are grouped.FIG. 25illustrates calculation amounts for creating path tables with and without grouping concerning a configuration in which n servers41are connected with k redundant paths by the switches42in two layers and forty servers41are connected to edge switches.

As illustrated inFIG. 25, when grouping is absent, a combination of servers isnC2=n×(n−1)/2 and the number of redundant paths is k. Therefore, a calculation amount is O(kn2). O(x) indicates order of x, that is, indicates that an approximate value is x. On the other hand, in the case of grouping, the number of edge switches is n/40, a combination of the edge switches isn/40C2=n/40×(n/40−1)/2, and the number of redundant paths is k. Therefore, a calculation amount is O(kn2/1600). That is, the calculation amount is reduced to approximately 1/1600 by the grouping.

As explained above, in the first embodiment, the inter-group-communication specifying unit21specifies inter-server group communication affected by a failure referring to the physical path table18that associates the physical path and the two server groups that performs communication using the physical path. The inter-VM-communication specifying unit22specifies inter-server communication affected by the failure, referring to the server management table15that associates the servers41and the server groups based on the inter-server group communication specified by the inter-group-communication specifying unit21. The inter-VM-communication specifying unit22specifies inter-VM communication affected by the failure referring to the VM management table13. Therefore, the cloud management apparatus1may specify, in a short time, the inter-VM communication affected by the failure and may reduce a time taken for processing of specifying customers affected by the failure.

In the first embodiment, the inter-group-communication specifying unit21confirms whether a standby path is present or not for the specified inter-server group communication referring to the physical path table18. When a standby path is present, the inter-group-communication specifying unit21determines that the inter-server group communication is not affected by the failure. Therefore, the cloud management apparatus1may accurately specify customers affected by the failure.

In the first embodiment, when a failure occurs in the link43between the server41and the edge switch, the inter-VM-communication specifying unit22specifies only inter-server communication including a connected server as inter-server communication affected by the failure. Therefore, the cloud management apparatus1may accurately specify the inter-server communication affected by the failure.

In the first embodiment, when a failure occurs in the link43between the server41and the edge switch, the inter-VM-communication specifying unit22specifies, as inter-server communication affected by the failure, communication performed by the connected server with the other servers41in a server group. Therefore, the cloud management apparatus1may accurately specify the inter-server communication affected by the failure.

In the first embodiment, the server-group creating unit14creates the server group management table16referring to the connection link management table12. The physical-path creating unit17creates the physical path table18referring to the connection link management table12and the server group management table16. Therefore, the cloud management apparatus1may reduce a time taken for the processing of creating the physical path table18.

Note that, in the first embodiment, the cloud management apparatus1is explained. However, an influence range specifying program having the same function may be obtained by realizing, with software, the configuration included in the cloud management apparatus1. Therefore, a computer that executes the influence range specifying program is explained.

FIG. 26is a diagram illustrating a hardware configuration of the computer that executes the influence range specifying program according to the first embodiment. As illustrated inFIG. 26, a computer50includes a main memory51, a central processing unit (CPU)52, a LAN interface53, and a hard disk drive (HDD)54. The computer50includes a super input output (IO)55, a digital visual interface (DVI)56, and an optical disk drive (ODD)57.

The main memory51is a memory that stores a computer program, an execution halfway result of the computer program, and the like. The CPU52is a central processing device that reads out the computer program from the main memory51and executes the computer program. The CPU52includes a chip set including a memory controller.

The LAN interface53is an interface for connecting the computer50to other computers through a LAN. The HDD54is a disk device that stores computer programs and data. The super IO55is an interface for connecting input devices such as a mouse and a keyboard. The DVI56is an interface for connecting a liquid display device. The ODD57is a device that performs reading and writing of a DVD.

The LAN interface53is connected to the CPU52by a PCI express (PCIe). The HDD54and the ODD57are connected to the CPU52by a serial advanced technology attachment (SATA). The super IO55is connected to the CPU52by a low pin count (LPC).

The influence range specifying program executed in the computer50is stored in the DVD, read out from the DVD by the ODD57, and installed in the computer50. Alternatively, the influence range specifying program is stored in a database or the like of another computer system connected via the LAN interface53, read out from the database, and installed in the computer50. The installed data processing program is stored in the HDD54, read out to the main memory51, and executed by the CPU52.

Second Embodiment

Incidentally, in the above explanation in the first embodiment, an L3 relay apparatus that treats packets in the layer 3 or higher is not included in the information processing system. However, the L3 relay apparatus is sometimes included in the information processing system. Communication sometimes turns back at the L3 relay apparatus. Therefore, in the following explanation in a second embodiment, an information processing system includes the L3 relay apparatus.

FIG. 27is a diagram illustrating the information processing system including the L3 relay apparatus and a physical path table. Compared withFIG. 21, an information processing system10billustrated inFIG. 27includes a firewall62instead of the switch #3. The firewall62is an apparatus that hinders an illegal access and the like from an external network. The firewall62treats packets in the layer 3 or higher. Note that, as the L3 relay apparatus, there are a router, a load balancer, and the like besides the apparatus.

Therefore, in the information processing system10b, there is a physical path that reaches the server group G#2from the server group G#1turning back in the firewall62. In the physical path, a packet passes the link #6twice. Therefore, a cloud management apparatus6according to the second embodiment has to create a physical path table including a turning back path.

A cloud system may manage information on an information processing system in a data center but may be unable to manage information on a range exceeding a border edge of the data center. However, in a cloud system that operates in cooperation with an information processing system of a client, when a failure occurs, it is particularly important to specify presence or absence of influence on the information processing system of the client.

Therefore, the cloud management apparatus6collects configuration information of the information processing system of the client outside the data center.FIG. 28Ais a diagram for explaining the collection of the configuration information of the information processing system outside the data center. The cloud management apparatus6may be unable to access configuration information of a client environment outside the data center. Therefore, basically, the cloud management apparatus6collects information according to a manual input.

Alternatively, as illustrated inFIG. 28A, when an agent program is introduced into a server in the client environment to export the configuration information, the cloud management apparatus6may import the configuration information. However, information on affected apparatuses only has to be known during an apparatus failure on the data center side. Therefore, the cloud management apparatus6does not have to collect complete connection information and only has to collect information from which it is seen in which VLANs servers are used.

In the case of a network illustrated inFIG. 28A, assuming that the cloud management apparatus6is connected as illustrated inFIG. 28B, the cloud management apparatus6may obtain desirable information. However, VLANs are not the same in the data center and the client environment. However, if a use of a server on the client environment side is known (if it is known which service of a data center side server is used), the VLANs may be linked. InFIG. 28B, an internet protocol (IP) address of the server in the client environment is “XXX.XXX.XXX.XXX”. The server uses a VLAN identified by “yyy” and “zzz”.

When a border edge on the data center side is represented by B#1and server groups on the client side are represented by C#1, C#2, and C#3, as configuration information, an agent program on the server in the client environment may export a physical path table illustrated inFIG. 29. Alternatively, an administrator of the client environment may manually create the physical path table illustrated inFIG. 29.

The administrator of the client environment passes exported or created data to an administrator of the data center. The administrator of the data center may cause the cloud management apparatus6to import the data.

A functional configuration of the cloud management apparatus6is explained.FIG. 30is a diagram illustrating the functional configuration of the cloud management apparatus6. Note that, for convenience of explanation, functional units that play the same roles as the units illustrated inFIG. 2are denoted by the same reference numerals and signs. Detailed explanation of the functional units is omitted. As illustrated inFIG. 30, compared with the cloud management apparatus1illustrated inFIG. 2, the cloud management apparatus6includes a storing unit6ainstead of the storing unit1aand includes a control unit6binstead of the control unit1b.

Compared with the storing unit1a, the storing unit6aincludes a physical path table68instead of the physical path table18and includes an apparatus management table70anew. Compared with the control unit1b, the control unit6bincludes a physical-path creating unit67instead of the physical-path creating unit17, includes a specifying unit69instead of the specifying unit19, and includes a configuration-information collecting unit72anew. Compared with the specifying unit19, the specifying unit69includes an inter-group-communication specifying unit71instead of the inter-group-communication specifying unit21.

In the physical path table68, when L3 relay apparatuses are not included in a physical path, the physical path and two server groups that perform communication using the physical path are registered. When L3 relay apparatuses are included in the physical path, in the physical path table68, a physical path between one server group and the L3 relay apparatus, a physical path between the other server group and the L3 relay apparatus, and a physical path between the L3 relay apparatuses are registered.

FIG. 31is a diagram illustrating an example of the physical path table68. InFIG. 31, when n is a positive integer, S#n represents the server41, SW#n represents the switch42, link#n represents the link43, G#n represents a server group, and R#n represents a router.

As illustrated inFIG. 31, G#1is connected to SW#1, SW#1is connected to R#1by link#1, R#1is connected to SW#2by link#2, and SW#2is connected to G#2. Therefore, in the physical path table68, as illustrated inFIG. 31, a communication group G#1-R#1with link#1set as a communication path and a communication group G#2-R#1with link#2set as a communication path are registered.

As a path between S#1and S#6across R#1, a path of G#1-R#1-G#2, that is, S#1-SW#1-R#1-SW#2-S#6is calculated using information on the paths #1and #2of the physical path table68. As a path between S#1and S#2not across R#1, a path of G#1-R#1-G#1, that is, S#1-SW#1-R#1-SW#1-S#2is calculated using the information on the path #1twice. Note that the path of S#1-SW#1-S#2is calculated by the processing explained in the first embodiment.

In the apparatus management table70, types and setting information of apparatuses are registered.FIG. 32is a diagram illustrating an example of the apparatus management table70. As illustrated inFIG. 32, in the apparatus management table70, information for associating, for each of the apparatuses, a node name, a type, and setting information is registered. The node name is a name for identifying the apparatus. The type indicates a type of the apparatus. The setting information is information set in the apparatus.

In the type inFIG. 32, “Server” indicates that the type is the server41, “L2-Switch” indicates that the type is the switch42, and “Firewall” indicates that the type is the firewall62. “Server Load Balancer” indicates that the type is a load balancer and “Router” indicates that the type is a router.

The setting information is used when specifying an influence range. For example, in the case of the switch42, information on which VLAN-ID is allocated to which link43is retained as the setting information. In the case of the router, what kinds of a routing table the router has is managed by the setting information. In the case of the firewall62, what kinds of filtering is performed is managed by the setting information. A path in which communication is not originally performed according to these kinds of setting information is not used for specifying the influence range.

It is also possible to more finely specify an influence range on the client side by also defining, concerning configuration information of the client environment, which service in the data center the servers on the client side use and linking the definition with the setting information.

Note that, as a method of creating the apparatus management table70, there is a method of creating the apparatus management table70using a simple network management protocol (SNMP). Apparatuses (in the case of the servers41, OSs) adapted to the SNMP retain, as sysObjectIDs, values of management information bases (MIBs) that may uniquely specify vendors and types. Therefore, the cloud management apparatus6may retain, in advance, a table that associates sysObjectIDs and types and create the apparatus management table70by linking values of the sysObjectIDs collected from the apparatuses and the types.

The configuration-information collecting unit72reads network configuration information from a target system4and reads network configuration information from a client environment5. The configuration-information collecting unit72creates the connection link management table12including network configuration information of the client environment5.

Like the physical-path creating unit17, the physical-path creating unit67specifies, referring to the connection link management table12and the server group management table16, a set of the links43connecting two edge switches as a physical path and creates the physical path table68. However, when L3 relay apparatuses are included between the two edge switches, the physical-path creating unit67creates the physical path table68divided into a path between one edge switch and the L3 relay apparatus, a path between the other edge switch and the L3 relay apparatus, and a path between the L3 relay apparatuses.

When the cloud management apparatus6imports the physical path table illustrated inFIG. 29, the physical-path creating unit67creates the physical path table68including information of the imported physical path table.

The inter-group-communication specifying unit71excludes a physical path found as not being used according to the setting information of the apparatus management table70and specifies inter-server group communication affected by the occurred failure. For example, when a physical path in which the server #1and the server #2communicate across the firewall62is included as a physical path determined as an influence range, the inter-group-communication specifying unit71confirms setting information for the firewall62from the apparatus management table70. When a definition “all packets addressed to the server #2are discarded” is included in the setting information, the physical path is not used. Therefore, the inter-group-communication specifying unit71excludes the physical path from the influence range.

A flow of processing of the cloud management apparatus6is explained with reference toFIGS. 33 to 36.FIG. 33is a flowchart illustrating a flow of processing until creation of the physical path table68. As illustrated inFIG. 33, the cloud management apparatus6reads network configuration information from the target system4(step S61) and reads network configuration information of the client environment5(step S62). The cloud management apparatus6creates the apparatus management table70(step S63).

The cloud management apparatus6creates a server group and creates the server management table15and the server group management table16(step S64). The cloud management apparatus6specifies a physical path referring to the apparatus management table70in addition to the connection link management table12and the server group management table16and creates the physical path table68(step S65).

FIG. 34is a flowchart illustrating a flow of processing of specifying an influence range during failure occurrence. As illustrated inFIG. 34, when a failure occurs, the cloud management apparatus6detects the failure that occurs in the target system4(step S66) and specifies an influence range referring to the physical path table68and the setting information of the apparatus management table70(step S67).

FIGS. 35A and 35Bare flowcharts illustrating a flow of processing of creating the physical path table68. As illustrated inFIG. 35A, the physical-path creating unit67determines whether processing of specifying a physical path is completed for all the edge switches (step S71). As a result, when an edge switch on which the processing of specifying a physical path is not performed is present, the physical-path creating unit67selects one edge switch (step S72). The physical-path creating unit67determines whether processing of retrieving all adjacent links is completed for the selected edge switch (step S73). When adjacent links not retrieved are present, the physical-path creating unit67selects one adjacent node (step S74).

The physical-path creating unit67determines whether the selected adjacent node is an edge switch (step S75). When the selected adjacent node is not an edge switch, the physical-path creating unit67determines whether the adjacent node is an L3 relay apparatus (step S76). When the adjacent node is not an L3 relay apparatus, the physical-path creating unit67determines whether the adjacent node is the server41(step S77). As a result, when the adjacent node is not the server41, the physical-path creating unit67determines whether the processing of retrieving all adjacent links is completed for the adjacent node (step S78). When adjacent links not retrieved are present, the physical-path creating unit67returns to step S74.

On the other hand, when the processing of retrieving all adjacent links is completed for the adjacent node or when the adjacent node is the server41, the physical-path creating unit67returns to step S73. When determining in step S76that the adjacent node is an L3 relay apparatus, the physical-path creating unit67creates a combination of a server group corresponding to the edge switch and the L3 relay apparatus and registers the combination in the physical path table68together with the physical path (step S80). The physical-path creating unit67returns to step S73.

When determining in step S75that the adjacent node is an edge switch, the physical-path creating unit67creates a combination of server groups corresponding to edge switches at both ends of the retrieved physical path and registers the combination in the physical path table68together with the physical path (step S79). The physical-path creating unit67returns to step S73.

When determining in step S73that the processing of retrieving all adjacent links is completed, the physical-path creating unit67returns to step S71. When determining in step S71that the processing of specifying a physical path is completed for all the edge switches, the physical-path creating unit67deletes overlapping paths from the physical path table68(step S81).

As illustrated inFIG. 35B, the physical-path creating unit67determines whether the processing of specifying a physical path is completed for all the L3 relay apparatuses (step S82). As a result, when L3 relay apparatuses on which the processing of specifying a physical path is not performed are present, the physical-path creating unit67selects one L3 relay apparatus (step S83). The physical-path creating unit67determines whether the processing of retrieving all adjacent links is completed for the selected L3 relay apparatus (step S84). When adjacent links not retrieved are present, the physical-path creating unit67selects one adjacent node (step S85).

The physical-path creating unit67determines whether the selected adjacent node is an edge switch (step S86). When the selected adjacent node is not an edge switch, the physical-path creating unit67determines whether the adjacent node is an L3 relay apparatus (step S87). When the adjacent node is not an L3 relay apparatus, the physical-path creating unit67determines whether the adjacent node is the server41(step S88). As a result, when the adjacent node is not the server41, the physical-path creating unit67determines whether the processing of retrieving all adjacent links is completed for the adjacent node (step S89). When adjacent links not retrieved are present, the physical-path creating unit67returns to step S85.

On the other hand, when the processing of retrieving all adjacent links is completed for the adjacent node or when the adjacent node is the server41, the physical-path creating unit67returns to step S84. When determining in step S87that the adjacent node is an L3 relay apparatus, the physical-path creating unit67creates a combination of relay apparatuses at both ends and registers the combination in the physical path table68together with the physical path (step S91). The physical-path creating unit67returns to step S84.

When determining in step S86that the adjacent node is an edge switch, the physical-path creating unit67creates a combination of a server group corresponding to the edge switch and the relay apparatus and registers the combination in the physical path table68together with the physical path (step S90). The physical-path creating unit67returns to step S84.

When determining in step S84that the processing of retrieving all adjacent links is completed, the physical-path creating unit67returns to step S82. When determining in step S82that the processing of specifying a physical path is completed for all the L3 relay apparatuses, the physical-path creating unit67deletes overlapping paths from the physical path table68(step S92) and ends the processing of creating the physical path table68.

FIG. 36is a third flowchart illustrating the flow of the processing of specifying an influence range. As illustrated inFIG. 36, the specifying unit69determines whether a failure part is a connection link of the server41(step S101). When the failure part is not the connection link of the server41, the specifying unit69specifies a physical path on a failure link (step S102). The specifying unit69determines whether confirmation of all the physical paths is completed (step S103). When the confirmation of all the physical paths is completed, the specifying unit69ends the processing.

On the other hand, when physical paths not confirmed are present, the specifying unit69determines whether one of the specified physical paths is active (step S104). When the physical path is not active, the specifying unit69returns to step S103. On the other hand, when the physical path is active, the specifying unit69determines whether a standby path is present (step S105). When a standby path is present, the specifying unit69returns to step S103.

On the other hand, when a standby path is absent, the specifying unit69determines whether one end or both ends of the physical path are L3 relay apparatuses (step S106). When the one end or both the ends are L3 relay apparatuses, the specifying unit69creates, for the physical path, the one end or both the ends of which are the L3 relay apparatuses, a physical path between server groups crossing across the L3 relay apparatuses or turning back at the L3 relay apparatuses (step S107). However, the specifying unit69excludes the physical path found as not being used according to the setting information of the management table70.

The specifying unit69specifies inter-server group communication corresponding to the physical path (step S108) and determines, based on the specified inter-server group communication, a combination of the servers41that perform communication (step S109). The specifying unit69specifies the VMs44on the specified servers (step S110) and specifies a combination of the specified VMs44as affected inter-VM communication (step S111). The specifying unit69returns to step S103.

When determining in step S101that the failure part is a connection link of the server41, the specifying unit69shifts to step S40inFIG. 15B. Like the specifying unit19, the specifying unit69performs the processing in steps S40to S53.

In this way, the physical-path creating unit67creates, referring to the apparatus management table70, the physical path table68including a communication group, one end or both ends of which are L3 relay apparatuses. In the physical path table68, when one end or both ends of a communication group corresponding to the physical path including the link43in which a failure occurs are L3 relay apparatuses, the specifying unit69specifies inter-server group communication turning back at the L3 relay apparatuses or crossing across the L3 relay apparatuses. Therefore, the cloud management apparatus6may accurately specify an influence range when a failure occurs in the information processing system10bincluding the L3 relay apparatuses.

The cloud management apparatus6may specify presence or absence of influence on the client environment5during failure occurrence by reading network information of the client environment5and creating the physical path table68. The cloud management apparatus6may specify an influence range excluding a physical path not in use by specifying an influence range referring to the setting information of the apparatus management table70.

An example of specifying an influence range is explained with reference toFIGS. 37 and 38.FIG. 37is a diagram illustrating the configuration of a target system4b, an influence range of which is specified. InFIG. 37, when n is a positive integer, G#n represents a server group, S#n represents the switch42, L#n represents the link43, and R#n represents a router.

FIG. 38is a diagram illustrating the physical path table68created for the target system4billustrated inFIG. 37. For example, “G#11-R#10” with L#11and L#10set as physical paths is registered in a path #1. “G#12-R#10” with L#12and L#10set as physical paths is registered in a path #6. “G#13-R#10” with L#13and L#10set as physical paths is registered in a path #10. “G#15-R#10” with L#15and L#10set as physical paths is registered in a path #15. “R#10-R#100” with L#110set as a physical path is registered in a path #16.

When a failure is detected in L#10inFIG. 37, the specifying unit69specifies, as affected physical paths, the paths #1, #6, #10, #13, and #15including L#10. For the physical paths, since one ends or both ends are L3 relay apparatuses, the specifying unit69specifies, using the physical path table68ofFIG. 38, all inter-server group communications crossing across the L3 relay apparatuses or turning back at the L3 relay apparatuses.

G#11-R#100(the paths #1and #16) is specified as a communication group crossing across R#10. Since R#100is an L3 relay apparatus, G#11-R#20is specified using a path #17, which is a physical path including R#100and excluding the path #16. Since R#20is an L3 relay apparatus, paths #18, #23, #27, #30, and #32are specified as physical paths including R#20and excluding the path #17.

G#11-G#21(the paths #1, #16, #17, and #18) is specified using the path #18. G#11-G#22(the paths #1, #16, #17, and #23) is specified using the path #23. G#11-G#23(the paths #1, #16, #17, and t #27) is specified using the path #27. G#11-G#24(the paths #1, #16, #17, and #30) is specified using the path #30. G#11-G#25(the paths #1, #16, #17, and #32) is specified using the path #32.

The specifying unit69removes overlaps from the specified inter-server group communications and specifies inter-server group communications illustrated inFIG. 39as inter-server group communications affected by a failure.

Note that the specifying unit69confirms the setting information of the apparatus management table70at timing when inter-server group communication turning back at an L3 relay apparatus or inter-server group communication crossing across the L3 relay apparatus is specified. When communication is not performed, the specifying unit69excludes the inter-server group communication.

For example, at timing when inter-server group communication G#11-G#12of the path #1is specified, the specifying unit69understands that the inter-server group communication passes through R#10, S#10, S#11, and S#12. Therefore, the specifying unit69checks setting information of R#10, S#10, S#11, and S#12from the apparatus management table70.

Specifically, the specifying unit69analyzes setting information of ports of the apparatuses and routing information of R#10. When determining that G#11and G#12belong to the same network (on the same VLAN) and do not perform communication through R#10, the specifying unit69excludes G#11-G#12from an influence range. Conversely, when determining that G#11and G#12belong to different networks (on different VLANs) and communication is turned back at R#10, the specifying unit69does not exclude G#11-G#12.

As explained above, in the second embodiment, when L3 relay apparatuses is included in the target system4, the physical-path creating unit67creates the physical path table68including a communication group, one end or both ends of which are the L3 relay apparatuses. The inter-group-communication specifying unit71specifies, for a physical path in which one end or both ends of a communication group including the link43in which a failure occurs are L3 relay apparatuses, inter-server group communications crossing across the L3 relay apparatuses or turning back at the L3 relay apparatuses. Therefore, when a failure occurs in the target system4including the L3 relay apparatuses, the cloud management apparatus6may accurately specify customers affected by the failure.

In the second embodiment, the configuration-information collecting unit72collects network configuration information of the client environment5. The physical-path creating unit67creates the physical path table68including the client environment5. The inter-group-communication specifying unit71specifies, using the physical path table68, inter-server group communication affected by a failure including the client environment5. Therefore, when a failure occurs, the cloud management apparatus6may specify presence or absence of influence on the client environment5.

In the second embodiment, when specifying inter-server group communication affected by a failure, the inter-group-communication specifying unit71excludes, using the setting information of the apparatus management table70, inter-server group communication in which communication is not performed. Therefore, the cloud management apparatus6may accurately specify customers affected by the failure.

Note that, in the above explanation in the second embodiment, server groups are created and inter-server group communication affected by a failure are specified. However, the present disclosure is not limited to this and may be applied when inter-server communication affected by the failure is specified. For example, the inter-server group communication may be changed to the inter-server communication by providing a server group for each server. Alternatively, the inter-server communication may be specified without performing the creation of a server group by the server-group creating unit14.