WO2012004891A1 - コンピュータの監視プログラム,監視方法及び監視装置 - Google Patents

コンピュータの監視プログラム,監視方法及び監視装置 Download PDF

Info

Publication number
WO2012004891A1
WO2012004891A1 PCT/JP2010/061707 JP2010061707W WO2012004891A1 WO 2012004891 A1 WO2012004891 A1 WO 2012004891A1 JP 2010061707 W JP2010061707 W JP 2010061707W WO 2012004891 A1 WO2012004891 A1 WO 2012004891A1
Authority
WO
WIPO (PCT)
Prior art keywords
monitoring
computer
computers
group
path
Prior art date
Application number
PCT/JP2010/061707
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 EP10854445.3A priority Critical patent/EP2592561A4/en
Priority to JP2012523487A priority patent/JP5475130B2/ja
Priority to PCT/JP2010/061707 priority patent/WO2012004891A1/ja
Publication of WO2012004891A1 publication Critical patent/WO2012004891A1/ja
Priority to US13/730,290 priority patent/US9444698B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3048Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the topology of the computing system or computing system component explicitly influences the monitoring activity, e.g. serial, hierarchical systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/065Generation of reports related to network devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • G06F11/3093Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management

Definitions

  • the present invention relates to a technique for monitoring a plurality of computers.
  • each computer In a data center that provides services by a plurality of computers, for example, in order to ensure service quality, the operating state of each computer is constantly monitored. For this reason, a technique has been proposed in which each computer sequentially monitors the operating state of other computers in accordance with a monitoring path in which the computers are connected in a ring shape.
  • an object of the present invention is to provide a monitoring technique for efficiently monitoring a plurality of computers in view of the problems of the conventionally proposed technique.
  • the monitoring computer has, for each group of a plurality of computers, a storage that stores a monitoring path in which a monitoring source computer as a monitoring start point and at least one computer as a monitoring destination and a monitoring source are associated with each other.
  • the monitoring computer receives an instruction including group specific information, the monitoring computer refers to the storage monitoring path and distributes the monitoring path related to the group to each computer belonging to the group specified by the specific information. .
  • the monitoring computer requests the computer that is the starting point of monitoring on the monitoring path to monitor other computers along the monitoring path.
  • FIG. 11 is a functional block diagram illustrating an example of various functions of a computer. It is a flowchart which shows an example of a new introduction process. It is a flowchart which shows an example of a monitoring path
  • FIG. 1 shows an example of an information system in the present embodiment.
  • a monitoring computer 100 that monitors the operating state of a computer is connected to a plurality of monitoring target computers (hereinafter referred to as “computers”) 300 via a network 200 such as the Internet.
  • Each computer 300 may be connected to the network 200 via a router and a switch, for example.
  • the monitoring computer 100 has a storage 110 for storing a monitoring path table 110A, a monitoring item table 110B, a program table 110C, a monitoring target table 110D, and a monitoring result table 110E, as shown in FIGS.
  • a storage 110 for example, an external storage device such as HD (Hard Disk) or SSD (Solid State Drive) may be used (the same applies hereinafter).
  • HD Hard Disk
  • SSD Solid State Drive
  • the monitoring path table 110A indicates the relationship (monitoring path) of which computers should be monitored sequentially starting from a certain computer for each group.
  • the groups may be set as appropriate by an administrator who manages the information system, for example, and set so that a plurality of computers belong to each group.
  • the monitoring path table 110A stores the ID of the computer 10 as the monitoring source computer that becomes the monitoring start point for the group 1 (ID # 1), and the computer 10
  • ID # 1 the monitoring source computer that becomes the monitoring start point for the group 1
  • the ID of the computer 11 is stored as a monitoring target to be monitored
  • the ID of the computer 12 is stored as a monitoring target to be monitored by the computer 11.
  • the computer ID is stored so as to follow the monitoring path in order from the left, but other storage methods may be used as long as the monitoring side and the monitored side are associated with each other.
  • the monitoring item table 110B defines, for each computer, items (monitoring items) for which the operating state of various resources for the computer, such as CPU (Central Processing Unit) temperature and HD temperature, should be monitored. .
  • items such as CPU (Central Processing Unit) temperature and HD temperature
  • the monitoring item table 110B includes a record in which a computer ID and information indicating the contents of the monitoring item are associated with each other.
  • the contents of the monitoring item may refer to another table (for example, FIG. 5), and in this case, the monitoring item table 110B may store the IDs of one or more monitoring items.
  • the monitoring item table 110B shown in FIG. 4 it is defined that items 1 and 2 should be monitored for the computer 10, and items 1, 2 and 3 should be monitored for the computer 11.
  • the program table 110C is an example in which the monitoring contents are indicated by the program name as an example of the table indicating the contents of the monitoring items. By executing the corresponding program, the operating states of various resources to be monitored can be identified and monitored.
  • the program table 110 ⁇ / b> C includes a record in which a monitoring item ID for specifying a monitoring item and a program name for monitoring an item specified by the monitoring item ID are associated with each other.
  • an absolute path indicating the location of the program may be attached to the program name.
  • the program that monitors item 1 is “c: ⁇ prg ⁇ programA.exe”
  • the program that monitors item 2 is “c: ⁇ prg ⁇ programB.exe”. Is defined. Note that the program may be stored in the storage 110 in FIG.
  • the monitoring target table 110D is a table that defines a plurality of computers 300 to be monitored, including computers 300 that cannot be actually monitored, such as during failure or maintenance, for each group. As illustrated in FIG. 6, the monitoring target table 110 ⁇ / b> D includes a record in which a group ID for specifying a group and a monitoring target ID for specifying the computer 300 are associated with each other. In the monitoring target table 110D shown in FIG. 6, it is defined that the computer 10, the computer 11, and the computer 12 of the group 1 and the computer 20, the computer 21, and the computer 22 of the group 2 are the monitoring targets.
  • the monitoring result table 110E is a table in which monitoring results for each item are stored. As shown in FIG. 7, the monitoring result table 110E includes a record in which a computer ID, at least one monitoring item ID for the computer, and a monitoring result are associated with each other. In this example, the operating state (OK or NG) of each monitoring item, which is the result of monitoring the operating state for each monitoring item, is stored in the table. Note that the monitoring result table 110E shown in FIG. 7 shows the monitoring result of the group 1, the operating state regarding the monitoring item 1 and the monitoring item 2 of the computer 10, and the monitoring item 1, the monitoring item 2 and the monitoring of the computer 11 The operating state relating to item 3 is stored. Of course, similarly for other groups, the monitoring results are stored in the corresponding tables.
  • the monitoring path table 110A, the monitoring item table 110B, the program table 110C, and the monitoring target table 110D are appropriately set by using, for example, an information system administrator using a tool.
  • the monitoring route table 110A and the monitoring target table 110D may be automatically set by processing to be described later.
  • the monitoring computer 100 executes the monitoring program, so that the new introduction unit 120, the monitoring path setting unit 130, the preparation request transmission unit 140, the monitoring data distribution unit 150, the monitoring request transmission unit 160, and the status Functions corresponding to each of the updating unit 170 are realized.
  • the monitoring program is, for example, a computer program readable recording medium such as a CD-ROM (Compact Disk Read Only Memory), a DVD-ROM (Digital Versatile Disk Read Only Memory), and the like using a known means such as HD and SSD. Installed on an external storage device.
  • a computer program readable recording medium such as a CD-ROM (Compact Disk Read Only Memory), a DVD-ROM (Digital Versatile Disk Read Only Memory), and the like using a known means such as HD and SSD.
  • the new introduction unit 120 additionally registers the computer 300 to be monitored in the monitoring target table 110D of the storage 110 when there is an installation instruction with the group ID and monitoring target ID of the computer 300 to be newly installed.
  • the monitoring path setting unit 130 refers to the monitoring target table 110 ⁇ / b> D of the storage 110 when a setting instruction with a group ID for setting a monitoring path is received, and is identified by the group ID based on the load of the computer 300. Automatically set and register the monitoring route of the group to be set.
  • the preparation request transmission unit 140 transmits a preparation request to all the computers 300 belonging to the group specified by the group ID, when there is a start instruction with a group ID for starting monitoring of the computer 300.
  • the monitoring data distribution unit 150 is triggered by the response to the preparation request from the computer 300, and monitoring data (for monitoring the operating state of various resources for all the computers 300 belonging to the group to be monitored) ( Monitoring route information, monitoring item information, and program) are read from the storage data of the storage 110 and transmitted (distributed).
  • the monitoring request transmission unit 160 transmits a monitoring request to the computer 300 that is the starting point of monitoring, when notified from the monitoring data distribution unit 150.
  • the state update unit 170 monitors the storage 110 when the monitoring result arrives from the computer 300 set to report the monitoring result (for example, the computer set at the end of the monitoring path in the group).
  • the result table 110E is updated.
  • the monitoring computer 100 includes a communication interface unit 180 such as a NIC (Network Interface Card).
  • the preparation request transmission unit 140, the monitoring data distribution unit 150, and the monitoring request transmission unit 160 are connected to the network 200 via the communication interface unit 180, respectively.
  • the computer 300 includes a storage 310 for storing monitoring path information, monitoring item information, and a program, as shown in FIG.
  • the monitoring path information and the monitoring item information are information indicating the monitoring path of the group to which the computer 300 belongs and the monitoring items of the other computers 300 that the computer 300 monitors.
  • the computer 300 includes a response unit 320, a monitoring data storage unit 330, and a monitoring execution unit 340.
  • the response unit 320, the monitoring data storage unit 330, and the monitoring execution unit 340 are implemented by, for example, incorporating an agent in the computer 300 in advance when the information system administrator or the like newly introduces the computer 300.
  • the response unit 320, the monitoring data storage unit 330, and the monitoring execution unit 340 are realized by a program distributed to each computer 300 before the preparation request transmission unit 140 of the monitoring computer 100 transmits the preparation request. Also good.
  • the response unit 320 In response to the arrival of the preparation request from the monitoring computer 100, the response unit 320 returns a response indicating that preparation for monitoring has been completed to the monitoring computer 100.
  • the monitoring data storage unit 330 stores monitoring path information, monitoring item information, and programs, which are monitoring data, in the storage 310 in response to the arrival of monitoring data in response to a response being returned to the monitoring computer 100.
  • the monitoring execution unit 340 executes monitoring of another computer 300 in accordance with the monitoring path information when the monitoring request arrives.
  • FIG. 9 shows an example of a new introduction process executed by the new introduction unit 120 of the monitoring computer 100 when there is an introduction instruction with a group ID and a monitoring target ID.
  • step 1 abbreviated as “S1” in the figure. The same applies hereinafter
  • the new introduction unit 120 refers to the monitoring target table 110D of the storage 110 and adds the monitoring target ID to the end of the record specified by the group ID. sign up.
  • the monitoring target table 110D of the storage 110 is sequentially updated in accordance with an introduction instruction from an information system administrator or the like. For this reason, referring to the monitoring target table 110D, it is possible to grasp the computers 300 to be monitored and the computers 300 belonging to each group.
  • FIG. 10 shows an example of a monitoring path setting process executed by the monitoring path setting unit 130 of the monitoring computer 100 when a setting instruction with a group ID is given. Note that the setting instruction is accompanied by information specifying the computer 300 to be excluded from the monitoring target such as failure or maintenance.
  • the monitoring path setting unit 130 refers to the monitoring target table 110 ⁇ / b> D of the storage 110 and excludes the computer 300 to be excluded from the monitoring target from the set of computers 300 registered in the record specified by the group ID. .
  • the monitoring path setting unit 130 may generate a set of computers 300 registered in the record specified by the group ID when the computer 300 to be excluded from the monitoring target is not designated.
  • the monitoring path setting unit 130 extracts a computer 300 in a high load state in which the load exceeds the first threshold from the set of computers 300 registered in the record specified by the group ID.
  • the load of the computer 300 may be obtained, for example, by distributing an agent for measuring the load to the computer 300 in advance and using a function provided by the agent (the same applies hereinafter).
  • step 13 the monitoring path setting unit 130 determines whether there is a computer 300 in a high load state. If the monitoring path setting unit 130 determines that there is a computer 300 with a high load state, the monitoring path setting unit 130 proceeds to step 14 (Yes), whereas if it determines that there is no computer 300 with a high load state, the process proceeds to step 16. (No).
  • step 14 the monitoring path setting unit 130 extracts a computer 300 in a low load state in which the load is lower than the second threshold value from the set of computers 300.
  • the second threshold value may be smaller than the first threshold value in order to identify the computer 300 in the low load state.
  • the monitoring path setting unit 130 sets the monitoring path so that the computers 300 in the high load state are equally monitored by the computers 300 in the low load state. That is, since the computer 300 in a high load state has little room for monitoring other computers 300, the occurrence of a bottleneck due to a lack of processing capability is avoided by preventing the computer 300 in a high load state from performing a monitoring process. To do.
  • the monitoring route setting unit 130 sets a monitoring route in which the computers 300 included in the set are arranged according to a predetermined rule.
  • a predetermined rule for example, a rule of sequentially arranging the computers 300 so that the IP (Internet Protocol) address or the monitoring target ID is in ascending order or descending order can be applied.
  • the monitoring path setting unit 130 stores the monitoring path set in step 15 or 16 in the monitoring path table 110 ⁇ / b> A of the storage 110.
  • a monitoring path in consideration of the load is automatically set for the computer 300 registered in the monitoring target table 110D of the storage 110 in accordance with a setting instruction from an information system administrator or the like.
  • the At this time if there is a computer 300 in a high load state in which the load exceeds the first threshold value, the computer 300 in the low load state in which the load is less than the second threshold value equally monitors the computers 300 in the high load state. A monitoring route is set. For this reason, the computer 300 in a high load state does not monitor other computers 300, and the occurrence of a bottleneck due to insufficient processing capability can be avoided.
  • a monitoring route in which the computers 300 are arranged according to a predetermined rule is automatically set, so that it is possible to reduce labor required for setting a monitoring route by an administrator or the like.
  • the monitoring path can be set by excluding the computer 300 that is out of order or under maintenance from the computers 300 registered in the monitoring target table 110D, the monitoring path including the computer 300 that cannot actually be monitored is set. There is nothing to do.
  • FIG. 11 shows an example of a preparation request transmission process executed by the preparation request transmission unit 140 of the monitoring computer 100 when a start instruction with a group ID is given.
  • the preparation request transmission unit 140 refers to the monitoring path table 110A of the storage 110 and transmits a preparation request to each computer 300 registered in the record specified by the group ID.
  • step 22 the preparation request transmission unit 140 notifies the monitoring data distribution unit 150 that distribution of monitoring data should be started.
  • the notification to the monitoring data distribution unit 150 includes a group ID for specifying a group to be monitored.
  • FIG. 12 shows an example of the monitoring data distribution process executed by the monitoring data distribution unit 150 of the monitoring computer 100 when triggered by the notification from the preparation request transmission unit 140.
  • step 31 the monitoring data distribution unit 150 determines whether or not there is a response from the monitoring target computer 300. If the monitoring data distribution unit 150 determines that there is a response, the monitoring data distribution unit 150 proceeds with the process to step 32 (Yes), while if it determines that there is no response, the monitoring data distribution unit 150 repeats this processing (No). In step 32, the monitoring data distribution unit 150 distributes the monitoring data to the computer 300 that has responded. That is, the monitoring data distribution unit 150 refers to the monitoring path table 110A of the storage 110, and generates monitoring path information in which data related to the monitoring path is extracted from the record specified by the group ID.
  • the monitoring data distribution unit 150 refers to the monitoring item table 110B of the storage 110, and generates monitoring item information obtained by extracting the record specified by the monitoring target ID registered in the monitoring path information. Furthermore, the monitoring data distribution unit 150 refers to the program table 110C of the storage 110, and acquires the program name specified by the monitoring item ID registered in the monitoring item information. Then, the monitoring data distribution unit 150 transmits the program specified by the monitoring path information, the monitoring item information, and the program name to the computer 300 that has responded.
  • step 33 the monitoring data distribution unit 150 refers to the monitoring path information and determines whether or not the monitoring data has been transmitted to all the computers 300 specified by the monitoring target ID. If the monitoring data distribution unit 150 determines that the monitoring data has been transmitted to all the computers 300, the process proceeds to step 34 (Yes), while it is determined that the monitoring data has not been transmitted to all the computers 300. If so, the process returns to step 31 (No).
  • step 34 the monitoring data distribution unit 150 notifies the monitoring request transmission unit 160 that the monitoring request should be transmitted.
  • the notification to the monitoring request transmission unit 160 includes a group ID for specifying a group to be monitored.
  • FIG. 13 illustrates an example of a monitoring request transmission process executed by the monitoring request transmission unit 160 of the monitoring computer 100 when a notification is received from the monitoring data distribution unit 150.
  • the monitoring request transmission unit 160 refers to the monitoring path table 110A of the storage 110 and identifies the computer 300 (for example, the computer 10 in the case of group 1) that is the starting point of monitoring.
  • the monitoring request transmission unit 160 transmits a monitoring request to the computer 300 that is the starting point of monitoring.
  • FIG. 14 shows an example of the state update process executed by the state update unit 170 of the monitoring computer 100 when the monitoring result arrives from the computer 300 that is the distribution destination of the monitoring data.
  • the monitoring result includes a group ID, a monitoring target ID, a monitoring item ID, and an operating state.
  • the state update unit 170 updates the operating state of the monitoring result table 110E of the storage 110 based on the monitoring result. That is, the state update unit 170 overwrites the operation state included in the monitoring result for the operation state specified by the group ID, the monitoring target ID, and the monitoring item ID included in the monitoring result.
  • the monitoring result table 110E since the monitoring result table 110E is sequentially updated based on the monitoring result from the computer 300, the monitoring result table 110E represents the latest state. Therefore, by referring to the monitoring result table 110E, it is possible to easily grasp the operating state of the computers 300 belonging to a certain group.
  • the monitoring computer 100 may incorporate a function for confirming the operating state of the computer 300 with reference to the monitoring result table 110E of the storage 110.
  • FIG. 15 shows an example of response processing executed by the response unit 320 of the computer 300 when the preparation request arrives from the monitoring computer 100.
  • the response unit 320 returns a response to the monitoring data distribution unit 150 of the monitoring computer 100.
  • the computer 300 to be monitored returns a response to the preparation request from the monitoring computer 100, thereby completing the preparation for receiving the monitoring route information, the monitoring item information, and the program as monitoring data. Can be notified.
  • FIG. 16 shows an example of the monitoring data storage process executed by the monitoring data storage unit 330 of the computer 300 when the monitoring data arrives from the monitoring computer 100.
  • the monitoring data storage unit 330 stores monitoring data, that is, monitoring path information, monitoring item information, and a program in the storage 310. According to such monitoring data saving processing, the computer 300 to be monitored can automatically save monitoring data for monitoring other computers 300 in the storage 310.
  • FIG. 17 illustrates an example of a monitoring execution process executed by the monitoring execution unit 340 of the computer 300 when a monitoring request is received.
  • the monitoring execution unit 340 refers to the monitoring item information in the storage 310 and starts a program for monitoring the other computer 300. Note that the activated program continues to monitor other computers 300 until an explicit end instruction is given.
  • the monitoring execution unit 340 refers to the monitoring path information of the storage 310 and determines whether or not it is a notification source that is obligated to notify the monitoring computer 100 of the monitoring result, that is, registered at the end of the monitoring path. It is determined whether the computer 300 is present. If the monitoring execution unit 340 determines that it is the notification source of the monitoring result, the process proceeds to step 83 (Yes), whereas if it is determined that it is not the notification source of the monitoring result, the process proceeds to step 85 (No). ).
  • the monitoring execution unit 340 obtains the monitoring result of the program and notifies the monitoring computer 100 of the monitoring result.
  • the notification of the monitoring result includes a monitoring result obtained by monitoring each computer 300 along the monitoring path.
  • the monitoring execution unit 340 in order to repeat monitoring of the computer 300 in accordance with the monitoring path information, refers to the monitoring path information of the storage 310 and transmits a monitoring request to the computer 300 that is the starting point of monitoring.
  • the monitoring execution unit 340 obtains the monitoring result of the program and refers to the monitoring path information of the storage 310, and sends the monitoring result and the monitoring request to the next registered computer 300, that is, the monitoring destination computer 300. Send.
  • the computer 300 to be monitored starts the program when a monitoring request arrives, and executes monitoring of other computers 300 in accordance with the monitoring path information. If the computer 300 has an obligation to notify the monitoring result, the computer 300 notifies the monitoring computer 100 of the monitoring result of the group and transmits a monitoring request to the computer 300 that is the starting point of the monitoring. On the other hand, if the computer 300 is not obligated to notify the monitoring result, the computer 300 transmits the monitoring result and the monitoring request to the monitoring target computer 300.
  • the computers 300 constituting the group cooperate to monitor the other computers 300 in order according to the monitoring path information, and the computer 300 set to report the monitoring result is the monitoring computer. 100 is notified of the monitoring result. Therefore, the monitoring computer 100 only receives the monitoring result from the computer 300 after distributing the monitoring data to each computer 300 to be monitored and transmitting a monitoring request to the computer 300 that is the starting point of monitoring. Therefore, even if the number of computers 300 to be monitored increases, the load on the monitoring computer 100 does not increase so much, and a plurality of computers 300 can be efficiently monitored. In order to monitor the computer 300 that is the starting point of monitoring, a monitoring path may be set so that another computer 300 monitors this.
  • Example 1 In the first embodiment, as shown in FIG. 18, in the group A, the computer a monitors the computer b and the computer b notifies the monitoring result, while in the group B, the computer c monitors the computer d and the computer d Notifies the monitoring result.
  • a monitoring path table 110A as shown in FIG. 19 is stored in the storage 110 of the monitoring computer 100.
  • the storage 110 of the monitoring computer 100 stores a monitoring item table 110B as shown in FIG. 20 and a program table 110C as shown in FIG.
  • the monitoring item table 110B shown in FIG. 20 since there are no computers that monitor the computers a and c, for example, NULL indicating that there are no monitoring items is set in the monitoring item IDs of the computers a and c.
  • monitoring computer 100 When monitoring data is distributed from the monitoring computer 100 to each of the computers a to d, and when a monitoring request is transmitted from the monitoring computer 100 to the computers a and d that are the starting points of monitoring, monitoring of the computers b and d starts. Is done. Thereafter, upon receiving the monitoring results from the computers b and d, the monitoring computer 100 updates the operating state of the monitoring result table 110E of the storage 110 as shown in FIG. Note that the number of computers constituting each group is not limited to two, and may be three or more.
  • Example 2 In the second embodiment, as shown in FIG. 23, in the group A, after the computer a monitors the computer b and the computer b notifies the monitoring result, the computer b monitors the computer a, and the computer a displays the monitoring result. Notice. That is, the situation in which a specific computer belonging to the group is not monitored is avoided by the two computers a and b monitoring each other.
  • the monitoring path table 110A as shown in FIG. 24 and the monitoring item table 110B as shown in FIG. 25 are stored in the storage 110 of the monitoring computer 100, respectively.
  • the program table 110C is the same as that in the first embodiment.
  • the monitoring computer 100 updates the operating state of the monitoring result table 110E of the storage 110 as shown in FIG.
  • the number of computers constituting the group is not limited to two, and may be three or more.
  • Example 3 In the third embodiment, as shown in FIG. 27, among the plurality of computers a to d included in the group A, the computers a to c alternately monitor the computer d, and the computers a to c alternately notify the monitoring result. To do. As a reason why such monitoring is necessary, for example, it is assumed that the computer d provides an important service and the system down is not allowed.
  • the storage 110 of the monitoring computer 100 stores a monitoring path table 110A as shown in FIG. 28 and a monitoring item table 110B as shown in FIG.
  • the monitoring item table 110B since there are no computers that monitor the computers a to c, for example, NULL indicating that there is no monitoring item is set in the monitoring items of the computers a to c.
  • the program table 110C is the same as that in the first embodiment.
  • monitoring data is distributed from the monitoring computer 100 to each of the computers a to d, and when a monitoring request is transmitted from the monitoring computer 100 to the computer a that is the starting point of monitoring, monitoring of the computer d by the computer a is started.
  • a monitoring request is transmitted from the computer a to the computer b, and monitoring of the computer d by the computer b is started.
  • the computers a to c monitor the computer d in order and notify the monitoring result.
  • the monitoring computer 100 receives the monitoring results from the computers ac, the monitoring computer 100 updates the operating state of the monitoring result table 110E of the storage 110 as shown in FIG. Note that the number of computers constituting the group is not limited to four, but may be three or more.

Abstract

 監視コンピュータは、複数のコンピュータからなるグループごとに、監視の起点となる監視元のコンピュータと、監視先かつ監視元となる少なくとも1台のコンピュータを関連付けた監視経路を格納したストレージを有する。そして、監視コンピュータは、グループの特定情報を含んだ指示があったときに、ストレージの監視経路を参照し、特定情報により特定されるグループに属する各コンピュータに対して、グループに関する監視経路を配布する。また、監視コンピュータは、監視経路において監視の起点となる監視元のコンピュータに対して、監視経路に則って他のコンピュータの監視を行うことを依頼する。

Description

コンピュータの監視プログラム,監視方法及び監視装置
 本発明は、複数のコンピュータを監視する技術に関する。
 複数のコンピュータによりサービスを提供するデータセンタなどでは、例えば、サービスの品質を確保するため、各コンピュータの作動状態を常時監視する。このため、各コンピュータをリング状に接続した監視経路に従って、各コンピュータが他のコンピュータの作動状態を順繰りに監視する技術が提案されている。
特開2002-312199号公報
 しかしながら、従来技術においては、監視対象となるコンピュータの台数が増えると、リング状の監視経路を一巡するのにある程度の時間を要するようになり、各コンピュータの監視時間間隔が長くなってしまう。そして、コンピュータの監視時間間隔が長くなることで、あるコンピュータに発生した故障が迅速に検知されず、例えば、データセンタで提供されるサービスの品質が低下してしまうおそれがあった。
 そこで、1つの側面では、本発明は、従来提案技術の問題点に鑑み、複数のコンピュータを効率よく監視する監視技術を提供することを目的とする。
 監視コンピュータは、複数のコンピュータからなるグループごとに、監視の起点となる監視元のコンピュータと、監視先かつ監視元となる少なくとも1台のコンピュータと、を関連付けた監視経路を格納したストレージを有する。そして、監視コンピュータは、グループの特定情報を含んだ指示があったときに、ストレージの監視経路を参照し、特定情報により特定されるグループに属する各コンピュータに対して、グループに関する監視経路を配布する。また、監視コンピュータは、監視経路において監視の起点となるコンピュータに対して、監視経路に則って他のコンピュータの監視を行うことを依頼する。
 複数のコンピュータを効率よく監視することができる。
実施形態における情報システムの一例を示す構成図である。 監視コンピュータの各種機能の一例を説明する機能ブロック図である。 監視経路テーブルの一例を説明するデータ構造図である。 監視項目テーブルの一例を説明するデータ構造図である。 プログラムテーブルの一例を説明するデータ構造図である。 監視対象テーブルの一例を説明するデータ構造図である。 監視結果テーブルの一例を説明するデータ構造図である。 コンピュータの各種機能の一例を説明する機能ブロック図である。 新規導入処理の一例を示すフローチャートである。 監視経路設定処理の一例を示すフローチャートである。 準備依頼送信処理の一例を示すフローチャートである。 監視データ配布処理の一例を示すフローチャートである。 監視依頼送信処理の一例を示すフローチャートである。 状態更新処理の一例を示すフローチャートである。 応答処理の一例を示すフローチャートである。 監視データ保存処理の一例を示すフローチャートである。 監視実行処理の一例を示すフローチャートである。 コンピュータ監視形態の第1実施例の説明図である。 第1実施例における監視経路テーブルの説明図である。 第1実施例における監視項目テーブルの説明図である。 第1実施例におけるプログラムテーブルの説明図である。 第1実施例における監視結果テーブルの説明図である。 コンピュータ監視形態の第2実施例の説明図である。 第2実施例における監視経路テーブルの説明図である。 第2実施例における監視項目テーブルの説明図である。 第2実施例における監視結果テーブルの説明図である。 コンピュータ監視形態の第3実施例の説明図である。 第3実施例における監視経路テーブルの説明図である。 第3実施例における監視項目テーブルの説明図である。 第3実施例における監視結果テーブルの説明図である。
 以下、添付された図面を参照し、本発明を実施するための実施形態について詳細に説明する。
 図1は、本実施形態における情報システムの一例を示す。
 コンピュータの作動状態を監視する監視コンピュータ100は、インターネットなどのネットワーク200を介して、複数の監視対象コンピュータ(以下「コンピュータ」という)300に接続される。各コンピュータ300は、例えば、ルータ及びスイッチを介してネットワーク200に接続されていてもよい。
 監視コンピュータ100は、図2~図7に示すように、監視経路テーブル110A,監視項目テーブル110B,プログラムテーブル110C,監視対象テーブル110D及び監視結果テーブル110Eを格納するためのストレージ110を有する。ここで、ストレージ110としては、例えば、HD(Hard Disk),SSD(Solid State Drive)などの外部記憶装置を利用してもよい(以下同様)。
 監視経路テーブル110Aは、グループごとに、あるコンピュータを起点として、順次どのコンピュータを監視すべきかの関係(監視経路)を示している。なお、グループは、例えば、情報システムを管理する管理者により適宜設定してもよく、例えば、各グループに複数のコンピュータが属するように設定する。
 例えば、監視経路テーブル110Aは、図3に示すように、グループ1(ID#1)について、監視の起点となる監視元コンピュータとしてコンピュータ10のIDを格納し、その右隣に、コンピュータ10が監視すべき監視対象としてコンピュータ11のIDを格納し、更に、コンピュータ11が監視すべき監視対象としてコンピュータ12のIDを格納している。なお、左から順に監視経路をたどるように、コンピュータのIDを格納しているが、監視する側と監視される側が関連付いていれば他の格納方法でもよい。
 他の、クループ2,3等についても、同様に、監視経路を示す情報がテーブルに格納されている。
 監視項目テーブル110Bは、コンピュータごとに、例えば、CPU(Central Processing Unit)の温度,HDの温度など、その、コンピュータについて各種リソースの作動状態を監視すべき項目(監視項目)を定義したテーブルである。
 なお、監視項目テーブル110Bは、図4に示すように、コンピュータのIDと、監視項目の内容を示す情報と、を関連付けたレコードを含む。監視項目の内容は、別のテーブル(例えば、図5)を参照するようにしてもよく、その場合は、監視項目テーブル110Bは、1または複数の監視項目のIDを格納してもよい。なお、図4に示す監視項目テーブル110Bでは、コンピュータ10については、項目1及び項目2、並びに、コンピュータ11については、項目1,項目2及び項目3を監視すべきことが定義されている。
 プログラムテーブル110Cは、監視項目の内容を示すテーブルの一例として、プログラム名により監視内容を示すようにした例である。対応するプログラムを実行することにより、監視すべき各種リソースの作動状態が特定され、その監視を行うことができる。例えば、プログラムテーブル110Cは、図5に示すように、監視項目を特定するための監視項目IDと、監視項目IDにより特定される項目を監視するためのプログラム名と、を関連付けたレコードを含む。ここで、プログラム名には、プログラムの所在を示す絶対パスが付されてもよい。なお、図5に示すプログラムテーブル110Cでは、項目1を監視するプログラムは“c:\prg\programA.exe”、項目2を監視するプログラムは“c:\prg\programB.exe”であることが定義されている。なお、当該プログラムは図2のストレージ110に格納しておけばよい。
 監視対象テーブル110Dは、各グループごとに、故障中やメンテナンス中など、実際に監視できないコンピュータ300を含んだ、監視対象となる複数のコンピュータ300を定義したテーブルである。監視対象テーブル110Dは、図6に示すように、グループを特定するためのグループIDと、コンピュータ300を特定するための監視対象IDと、を関連付けたレコードを含む。なお、図6に示す監視対象テーブル110Dでは、グループ1のコンピュータ10,コンピュータ11及びコンピュータ12、並びに、グループ2のコンピュータ20,コンピュータ21及びコンピュータ22が監視対象であることが定義されている。
 監視結果テーブル110Eは、各項目についての監視結果が格納されるテーブルである。監視結果テーブル110Eは、図7に示すように、コンピュータのIDと、当該コンピュータについて少なくとも1つの監視項目IDと、監視結果と、を関連付けたレコードを含む。この例では、各監視項目についての作動状態を監視した結果である各監視項目の作動状態(OK又はNG)がテーブルに格納される。なお、図7に示す監視結果テーブル110Eでは、グループ1の監視結果を示しており、コンピュータ10の監視項目1及び監視項目2に関する作動状態、並びに、コンピュータ11の監視項目1,監視項目2及び監視項目3に関する作動状態が夫々格納されている。もちろん、他のグループについても同様に、監視結果が対応するテーブルに格納される。
 ここで、監視経路テーブル110A,監視項目テーブル110B,プログラムテーブル110C及び監視対象テーブル110Dは、例えば、情報システムの管理者などがツールを使用して適宜設定する。なお、監視経路テーブル110A及び監視対象テーブル110Dは、後述する処理により自動的に設定されるようにしてもよい。
 監視コンピュータ100は、監視プログラムを実行することで、図2に示すように、新規導入部120,監視経路設定部130,準備依頼送信部140,監視データ配布部150,監視依頼送信部160及び状態更新部170のそれぞれに対応する機能が実現される。監視プログラムは、例えば、CD-ROM(Compact Disk Read Only Memory),DVD-ROM(Digital Versatile Disk Read Only Memory)などのコンピュータ読取可能な記録媒体から、公知の手段を用いて、HD,SSDなどの外部記憶装置にインストールされる。
 新規導入部120は、新たに導入するコンピュータ300のグループID及び監視対象IDを伴った導入指示があったことを契機として、ストレージ110の監視対象テーブル110Dに監視対象となるコンピュータ300を追加登録する。監視経路設定部130は、監視経路を設定するグループIDを伴った設定指示があったことを契機として、ストレージ110の監視対象テーブル110Dを参照し、コンピュータ300の負荷に基づいて、グループIDにより特定されるグループの監視経路を自動的に設定及び登録する。準備依頼送信部140は、コンピュータ300の監視を開始するグループIDを伴った開始指示があったことを契機として、グループIDにより特定されるグループに属する全てのコンピュータ300に準備依頼を送信する。監視データ配布部150は、コンピュータ300から準備依頼の応答があったことを契機として、監視対象であるグループに属する全てのコンピュータ300に対して、各種リソースの作動状態を監視するための監視データ(監視経路情報,監視項目情報及びプログラム)を、ストレージ110の記憶データから読み出して送信(配布)する。監視依頼送信部160は、監視データ配布部150から通知があったことを契機として、監視の起点となるコンピュータ300に監視依頼を送信する。状態更新部170は、監視結果の報告を行うように設定されたコンピュータ300(例えば、グループ内で監視経路の最後に設定されたコンピュータ)から監視結果が到着したことを契機として、ストレージ110の監視結果テーブル110Eを更新する。
 さらに、監視コンピュータ100は、例えば、NIC(Network Interface Card)などの通信インタフェース部180を有する。そして、準備依頼送信部140,監視データ配布部150及び監視依頼送信部160は、夫々、通信インタフェース部180を介してネットワーク200に接続する。
 一方、コンピュータ300は、図8に示すように、監視経路情報,監視項目情報及びプログラムを格納するためのストレージ310を有する。ここで、監視経路情報及び監視項目情報は、コンピュータ300が属するグループの監視経路、及び、コンピュータ300が監視する他のコンピュータ300の監視項目を示す情報である。また、コンピュータ300は、図8に示すように、応答部320,監視データ保存部330及び監視実行部340を夫々実装する。応答部320,監視データ保存部330及び監視実行部340は、情報システムの管理者などがコンピュータ300を新たに導入するとき、例えば、コンピュータ300にエージェントを予め組み込むことで実装される。
 なお、応答部320,監視データ保存部330及び監視実行部340は、監視コンピュータ100の準備依頼送信部140が準備依頼を送信する前に、各コンピュータ300に配布したプログラムにより実現されるようにしてもよい。
 応答部320は、監視コンピュータ100から準備依頼が到着したことを契機として、監視の準備ができた旨を示す応答を監視コンピュータ100に返送する。監視データ保存部330は、監視コンピュータ100に応答を返信したことに伴って監視データが到着したことを契機として、監視データである監視経路情報,監視項目情報及びプログラムをストレージ310に保存する。監視実行部340は、監視依頼が到着したことを契機として、監視経路情報に則って他のコンピュータ300の監視を実行する。
 次に、監視コンピュータ100及びコンピュータ300の各部が実行する処理について説明する。
 図9は、グループID及び監視対象IDを伴った導入指示があったことを契機として、監視コンピュータ100の新規導入部120が実行する新規導入処理の一例を示す。
 ステップ1(図では「S1」と略記する。以下同様。)では、新規導入部120が、ストレージ110の監視対象テーブル110Dを参照し、グループIDにより特定されるレコードの最後に監視対象IDを追加登録する。
 かかる新規導入処理によれば、情報システムの管理者などの導入指示に応じて、ストレージ110の監視対象テーブル110Dが順次更新される。このため、監視対象テーブル110Dを参照すれば、監視すべきコンピュータ300、及び、各グループに属するコンピュータ300を把握することができる。
 図10は、グループIDを伴った設定指示があったことを契機として、監視コンピュータ100の監視経路設定部130が実行する監視経路設定処理の一例を示す。なお、設定指示には、故障中又はメンテナンス中など、監視対象から除外するコンピュータ300を指定した情報が付随する。
 ステップ11では、監視経路設定部130が、ストレージ110の監視対象テーブル110Dを参照し、グループIDにより特定されるレコードに登録されているコンピュータ300の集合から、監視対象から除外するコンピュータ300を除外する。なお、監視経路設定部130は、監視対象から除外するコンピュータ300が指定されていないときには、グループIDにより特定されるレコードに登録されているコンピュータ300の集合を生成すればよい。なお、故障中やメンテナンス中などのコンピュータ300を監視対象から除外する場合には、除外する対象のコンピュータのIDを除外リストとしてストレージ110に格納し、適宜更新することが望ましい。
 ステップ12では、監視経路設定部130が、グループIDにより特定されるレコードに登録されているコンピュータ300の集合から、負荷が第1の閾値を超える高負荷状態にあるコンピュータ300を抽出する。ここで、コンピュータ300の負荷は、例えば、負荷を測定するエージェントを事前にコンピュータ300に配布し、エージェントが提供する機能により求めるようにすればよい(以下同様)。
 ステップ13では、監視経路設定部130が、高負荷状態のコンピュータ300があるか否かを判定する。そして、監視経路設定部130は、高負荷状態のコンピュータ300があると判定すれば処理をステップ14へと進める一方(Yes)、高負荷状態のコンピュータ300がないと判定すれば処理をステップ16へと進める(No)。
 ステップ14では、監視経路設定部130が、コンピュータ300の集合から、負荷が第2の閾値を下回る低負荷状態にあるコンピュータ300を抽出する。ここで、第2の閾値は、低負荷状態にあるコンピュータ300を特定するため、第1の閾値よりも小さな値でもよい。
 ステップ15では、監視経路設定部130が、高負荷状態にあるコンピュータ300を低負荷状態にあるコンピュータ300が均等に監視するように、監視経路を設定する。即ち、高負荷状態にあるコンピュータ300は、他のコンピュータ300を監視する余裕が少ないので、高負荷状態にあるコンピュータ300に監視処理を行わせないことで、処理能力不足によるボトルネックの発生を回避する。
 ステップ16では、監視経路設定部130が、集合に含まれるコンピュータ300を、所定規則に則って並べた監視経路を設定する。ここで、所定規則としては、例えば、IP(Internet Protocol)アドレス又は監視対象IDが昇順又は降順となるように、コンピュータ300を順次並べる規則が適用できる。
 ステップ17では、監視経路設定部130が、ステップ15又はステップ16で設定した監視経路を、ストレージ110の監視経路テーブル110Aに格納する。
 かかる監視経路設定処理によれば、情報システムの管理者などの設定指示に応じて、ストレージ110の監視対象テーブル110Dに登録されているコンピュータ300について、負荷を考慮した監視経路が自動的に設定される。このとき、負荷が第1の閾値を超える高負荷状態のコンピュータ300があれば、負荷が第2の閾値を下回る低負荷状態のコンピュータ300が高負荷状態のコンピュータ300を均等に監視するように、監視経路が設定される。このため、高負荷状態のコンピュータ300が他のコンピュータ300を監視することがなく、処理能力不足によるボトルネックの発生を回避することができる。一方、高負荷状態のコンピュータ300がなければ、所定規則に則ってコンピュータ300を並べた監視経路が自動的に設定されるので、管理者などによる監視経路の設定に要する労力を低減することができる。また、監視対象テーブル110Dに登録されているコンピュータ300から、故障中やメンテナンス中などのコンピュータ300を除外して監視経路を設定できることから、実際に監視ができないコンピュータ300を含んだ監視経路が設定されることがない。
 図11は、グループIDを伴った開始指示があったことを契機として、監視コンピュータ100の準備依頼送信部140が実行する準備依頼送信処理の一例を示す。
 ステップ21では、準備依頼送信部140が、ストレージ110の監視経路テーブル110Aを参照し、グループIDにより特定されるレコードに登録されている各コンピュータ300に準備依頼を送信する。
 ステップ22では、準備依頼送信部140が、監視データ配布部150に監視データの配布を開始すべき旨を通知する。なお、監視データ配布部150への通知には、監視対象となるグループを特定するためのグループIDが含まれる。
 図12は、準備依頼送信部140から通知があったことを契機として、監視コンピュータ100の監視データ配布部150が実行する監視データ配布処理の一例を示す。
 ステップ31では、監視データ配布部150が、監視対象であるコンピュータ300から応答があったか否かを判定する。そして、監視データ配布部150は、応答があったと判定すれば処理をステップ32へと進める一方(Yes)、応答がないと判定すれば本処理を繰り返す(No)。
 ステップ32では、監視データ配布部150が、応答があったコンピュータ300に監視データを配布する。即ち、監視データ配布部150は、ストレージ110の監視経路テーブル110Aを参照し、グループIDにより特定されるレコードから監視経路に関するデータを抽出した監視経路情報を生成する。また、監視データ配布部150は、ストレージ110の監視項目テーブル110Bを参照し、監視経路情報に登録されている監視対象IDにより特定されるレコードを抽出した監視項目情報を生成する。さらに、監視データ配布部150は、ストレージ110のプログラムテーブル110Cを参照し、監視項目情報に登録されている監視項目IDにより特定されるプログラム名を取得する。そして、監視データ配布部150は、応答があったコンピュータ300に対して、監視経路情報、監視項目情報、及び、プログラム名により特定されるプログラムを送信する。
 ステップ33では、監視データ配布部150が、監視経路情報を参照し、監視対象IDにより特定される全てのコンピュータ300に監視データを送信したか否かを判定する。そして、監視データ配布部150は、全てのコンピュータ300に監視データを送信したと判定すれば処理をステップ34へと進める一方(Yes)、全てのコンピュータ300に監視データを送信していないと判定すれば処理をステップ31へと戻す(No)。
 ステップ34では、監視データ配布部150が、監視依頼送信部160に監視依頼を送信すべき旨を通知する。なお、監視依頼送信部160への通知には、監視対象となるグループを特定するためのグループIDが含まれる。
 図13は、監視データ配布部150から通知があったことを契機として、監視コンピュータ100の監視依頼送信部160が実行する監視依頼送信処理の一例を示す。
 ステップ41では、監視依頼送信部160が、ストレージ110の監視経路テーブル110Aを参照し、監視の起点となるコンピュータ300(例えばグループ1であれば、コンピュータ10)を特定する。
 ステップ42では、監視依頼送信部160が、監視の起点となるコンピュータ300に監視依頼を送信する。
 かかる準備依頼送信処理,監視データ配布処理及び監視依頼送信処理によれば、監視対象となるグループに属する全てのコンピュータ300に対して、他のコンピュータ300を監視するための監視経路情報,監視項目情報及びプログラムが配布される。そして、監視経路情報,監視項目情報及びプログラムが配布された後、監視対象となるグループにおいて監視の起点となるコンピュータ300に対して、他のコンピュータ300の監視を開始すべきことを通知する監視依頼が送信される。このため、監視経路,監視項目及びプログラムの少なくとも1つが変更されたときには、情報システムの管理者などの開始指示に応じて、監視対象となるコンピュータ300に最新の監視経路情報,監視項目情報及びプログラムが提供されることとなる。従って、監視データの管理が容易になり、管理者などの労力を低減することができる。
 図14は、監視データの配布先であるコンピュータ300から監視結果が到着したことを契機として、監視コンピュータ100の状態更新部170が実行する状態更新処理の一例を示す。なお、監視結果には、グループID,監視対象ID,監視項目ID及び作動状態が含まれている。
 ステップ51では、状態更新部170が、監視結果に基づいて、ストレージ110の監視結果テーブル110Eの作動状態を更新する。即ち、状態更新部170は、監視結果に含まれるグループID,監視対象ID及び監視項目IDにより特定される作動状態について、監視結果に含まれる作動状態を上書きする。
 かかる状態更新処理によれば、コンピュータ300からの監視結果に基づいて監視結果テーブル110Eが順次更新されるため、監視結果テーブル110Eは最新の状態を表すこととなる。このため、監視結果テーブル110Eを参照すれば、あるグループに属するコンピュータ300の作動状態を容易に把握することができる。なお、監視コンピュータ100には、ストレージ110の監視結果テーブル110Eを参照し、コンピュータ300の作動状態を確認するための機能を組み込んでもよい。
 図15は、監視コンピュータ100から準備依頼が到着したことを契機として、コンピュータ300の応答部320が実行する応答処理の一例を示す。
 ステップ61では、応答部320が、監視コンピュータ100の監視データ配布部150に応答を返送する。
 かかる応答処理によれば、監視対象となるコンピュータ300は、監視コンピュータ100からの準備依頼に対して応答を返送することで、監視データとしての監視経路情報,監視項目情報及びプログラムを受け入れる準備が完了したことを通知できる。
 図16は、監視コンピュータ100から監視データが到着したことを契機として、コンピュータ300の監視データ保存部330が実行する監視データ保存処理の一例を示す。
 ステップ71では、監視データ保存部330が、監視データ、即ち、監視経路情報,監視項目情報及びプログラムをストレージ310に保存する。
 かかる監視データ保存処理によれば、監視対象となるコンピュータ300は、他のコンピュータ300を監視するための監視データをストレージ310に自動的に保存することができる。
 図17は、監視依頼があったことを契機として、コンピュータ300の監視実行部340が実行する監視実行処理の一例を示す。
 ステップ81では、監視実行部340が、ストレージ310の監視項目情報を参照し、他のコンピュータ300を監視するためのプログラムを起動する。なお、起動したプログラムは、明示の終了指示があるまで、他のコンピュータ300を監視し続ける。
 ステップ82では、監視実行部340が、ストレージ310の監視経路情報を参照し、監視コンピュータ100に監視結果を通知する義務を負う通知元であるか否か、即ち、監視経路の最後に登録されているコンピュータ300であるか否かを判定する。そして、監視実行部340は、監視結果の通知元であると判定すれば処理をステップ83へと進める一方(Yes)、監視結果の通知元でないと判定すれば処理をステップ85へと進める(No)。
 ステップ83では、監視実行部340が、プログラムの監視結果を得て、監視コンピュータ100に監視結果を通知する。ここで、監視結果の通知には、監視経路に沿って各コンピュータ300を監視した監視結果が含まれる。
 ステップ84では、監視経路情報に則ってコンピュータ300の監視を繰り返すために、監視実行部340が、ストレージ310の監視経路情報を参照し、監視の起点となるコンピュータ300に監視依頼を送信する。
 ステップ85では、監視実行部340が、プログラムの監視結果を得ると共に、ストレージ310の監視経路情報を参照し、次に登録されているコンピュータ300、即ち、監視先のコンピュータ300に監視結果及び監視依頼を送信する。
 かかる監視実行処理によれば、監視対象となるコンピュータ300は、監視依頼が到着するとプログラムを起動し、監視経路情報に則って他のコンピュータ300の監視を実行する。そして、コンピュータ300は、監視結果を通知する義務を負っていれば、監視コンピュータ100にグループの監視結果を通知すると共に、監視の起点となるコンピュータ300に監視依頼を送信する。一方、コンピュータ300は、監視結果を通知する義務を負っていなければ、監視先のコンピュータ300に監視結果及び監視依頼を送信する。
 このため、グループを構成する各コンピュータ300は協働して、監視経路情報に則って順繰りに他のコンピュータ300を監視しつつ、監視結果の報告を行うように設定されたコンピュータ300が、監視コンピュータ100に監視結果を通知する。従って、監視コンピュータ100は、監視対象となる各コンピュータ300に監視データを配布し、監視の起点となるコンピュータ300に監視依頼を送信した後は、コンピュータ300からの監視結果を受け取るだけとなる。よって、監視対象であるコンピュータ300の台数が多くなっても、監視コンピュータ100の負荷がさほど増加せず、複数のコンピュータ300を効率よく監視することができる。なお、監視の起点となるコンピュータ300を監視するためには、これを他のコンピュータ300が監視するように監視経路を設定すればよい。
 ここで、本実施形態の理解を容易ならしめることを目的として、具体的な事例を想定した実施例について説明する。
 [実施例1]
 実施例1では、図18に示すように、グループAにおいて、コンピュータaがコンピュータbを監視し、コンピュータbが監視結果を通知する一方、グループBにおいて、コンピュータcがコンピュータdを監視し、コンピュータdが監視結果を通知する。
 この場合、監視コンピュータ100のストレージ110には、図19に示すような監視経路テーブル110Aが格納される。監視経路テーブル110Aでは、監視コンピュータ100に監視結果を通知するコンピュータ300を特定可能とするために、例えば、監視対象IDの末尾に接尾辞「N」を付すこととする(以下同様)。また、監視コンピュータ100のストレージ110には、図20に示すような監視項目テーブル110B、及び、図21に示すようなプログラムテーブル110Cが夫々格納される。図20に示す監視項目テーブル110Bでは、コンピュータa及びcを監視するコンピュータが存在しないので、コンピュータa及びcの監視項目IDには、例えば、監視項目がないことを示すNULLなどが設定される。
 そして、監視コンピュータ100から各コンピュータa~dに監視データが配布されると共に、監視コンピュータ100から監視の起点となるコンピュータa及びdに監視依頼が送信されると、コンピュータb及びdの監視が開始される。その後、監視コンピュータ100は、コンピュータb及びdから監視結果を受け取ると、図22に示すように、ストレージ110の監視結果テーブル110Eの作動状態を更新する。なお、各グループを構成するコンピュータは、2台に限らず、3台以上であってもよい。
 [実施例2]
 実施例2では、図23に示すように、グループAにおいて、コンピュータaがコンピュータbを監視し、コンピュータbが監視結果を通知した後、コンピュータbがコンピュータaを監視し、コンピュータaが監視結果を通知する。即ち、2台のコンピュータa及びbが相互に相手を監視し合うことで、グループに属する特定のコンピュータが監視されないという事態を回避する。
 この場合、監視コンピュータ100のストレージ110には、図24に示すような監視経路テーブル110A、及び、図25に示すような監視項目テーブル110Bが夫々格納される。なお、プログラムテーブル110Cは、実施例1と同一である。
 そして、監視コンピュータ100から各コンピュータa及びbに監視データが配布されると共に、監視コンピュータ100から監視の起点となるコンピュータaに監視依頼が送信されると、コンピュータa及びbの相互監視が開始される。即ち、コンピュータaがコンピュータbを監視し、コンピュータbが監視結果を通知した後、コンピュータbがコンピュータaを監視し、コンピュータaが監視結果を通知する。その後、監視コンピュータ100は、コンピュータa又はbから監視結果を受け取ると、図26に示すように、ストレージ110の監視結果テーブル110Eの作動状態を更新する。なお、グループを構成するコンピュータは、2台に限らず、3台以上であってもよい。
 [実施例3]
 実施例3では、図27に示すように、グループAに含まれる複数のコンピュータa~dのうち、コンピュータa~cがコンピュータdを交互に監視し、コンピュータa~cが監視結果を交互に通知する。このような監視が必要な理由として、例えば、コンピュータdが重要なサービスを提供しており、システムダウンなどが許されない場合が想定される。
 この場合、監視コンピュータ100のストレージ110には、図28に示すような監視経路テーブル110A、及び、図29に示すような監視項目テーブル110Bが夫々格納される。ここで、監視項目テーブル110Bでは、コンピュータa~cを監視するコンピュータが存在しないので、コンピュータa~cの監視項目には、例えば、監視項目がないことを示すNULLなどが設定される。なお、プログラムテーブル110Cは、実施例1と同一である。
 そして、監視コンピュータ100から各コンピュータa~dに監視データが配布されると共に、監視コンピュータ100から監視の起点となるコンピュータaに監視依頼が送信されると、コンピュータaによるコンピュータdの監視が開始される。次に、コンピュータaからコンピュータbに監視依頼が送信され、コンピュータbによるコンピュータdの監視が開始される。このように、コンピュータa~cが順番にコンピュータdを監視して監視結果を通知する。一方、監視コンピュータ100は、コンピュータa~cから監視結果を受け取ると、図30に示すように、ストレージ110の監視結果テーブル110Eの作動状態を更新する。なお、グループを構成するコンピュータは、4台に限らず、3台以上であればよい。
 従って、[実施例1]~[実施例3]のように、監視経路テーブル110A,監視項目テーブル110B及びプログラムテーブル110Cを適宜変更することで、グループにおけるコンピュータの監視形態を定義することができる。なお、コンピュータの監視形態は、前述した[実施例1]~[実施例3]に限らない。
  100  監視コンピュータ
  110  ストレージ
  110A 監視経路テーブル
  110B 監視項目テーブル
  110C プログラムテーブル
  130  監視経路設定部
  150  監視データ配布部
  160  監視依頼送信部
  300  コンピュータ

Claims (10)

  1.  複数のコンピュータからなるグループごとに、一のコンピュータが他のコンピュータを順繰りに監視するように、監視の起点となる監視元のコンピュータと、監視先かつ監視元となる少なくとも1台のコンピュータと、を関連付けた監視経路を格納したストレージを有する監視コンピュータに、
     グループの特定情報を含んだ指示があったときに、前記ストレージの監視経路を参照し、前記特定情報により特定されるグループに属する各コンピュータに対して、該グループに関する監視経路を配布するステップと、
     前記監視経路において監視の起点となる監視元のコンピュータに対して、前記監視経路に則って他のコンピュータの監視を行うことを依頼するステップと、
     を実現させるためのコンピュータの監視プログラム。
  2.  前記グループは、少なくとも3台のコンピュータからなり、
     前記監視経路には、一のコンピュータを除く他のコンピュータが順番に、前記一のコンピュータを監視して前記監視コンピュータに監視結果を通知するように、前記起点となる監視元のコンピュータ及び監視先かつ監視元となるコンピュータが設定されていることを特徴とする請求項1記載のコンピュータの監視プログラム。
  3.  前記グループは、少なくとも2台のコンピュータからなり、
     前記監視経路には、一のコンピュータが他のコンピュータを連鎖的に監視し、最後に監視されるコンピュータが前記監視コンピュータに監視結果を通知するように、前記起点となる監視元のコンピュータ及び監視先かつ監視元となるコンピュータが設定されていることを特徴とする請求項1記載のコンピュータの監視プログラム。
  4.  前記グループは、少なくとも2台のコンピュータからなり、
     前記監視経路には、一のコンピュータが他のコンピュータを連鎖的に監視し、最後に監視される他のコンピュータが前記監視コンピュータに監視結果を通知した後、前記他のコンピュータが一のコンピュータを連鎖的に監視し、最後に監視される一のコンピュータが前記監視コンピュータに監視結果を通知するように、前記起点となる監視元のコンピュータ及び監視先かつ監視元となるコンピュータが設定されていることを特徴とする請求項1記載のコンピュータの監視プログラム。
  5.  前記監視経路を配布するステップは、前記監視経路に加えて、前記コンピュータを監視するためのプログラムを併せて配布することを特徴とする請求項1記載のコンピュータの監視プログラム。
  6.  前記ストレージは、監視対象であるコンピュータの監視項目を更に格納し、
     前記監視経路を配布するステップは、前記ストレージの監視項目を参照し、監視対象であるコンピュータの監視項目に適合したプログラムを配布することを特徴とする請求項5記載のコンピュータの監視プログラム。
  7.  前記監視コンピュータに、
     前記監視経路を設定するグループの特定情報を含んだ指示があったときに、前記ストレージの監視経路を参照し、前記特定情報により特定されるグループに属するコンピュータから、負荷が第1の閾値を超える高負荷状態のコンピュータを抽出するステップと、
     前記高負荷状態のコンピュータが抽出できたとき、前記グループに属するコンピュータから、負荷が第2の閾値を下回る低負荷状態のコンピュータを抽出し、前記低負荷状態のコンピュータが前記高負荷状態のコンピュータを均等に監視するように監視経路を設定する一方、前記高負荷状態のコンピュータが抽出できなかったとき、前記グループに属するコンピュータを所定規則に則って並べた監視経路を設定するステップと、
     を更に実現させることを特徴とする請求項1記載のコンピュータの監視プログラム。
  8.  前記監視コンピュータに、前記特定情報により特定されるグループに属するコンピュータから、指定されたコンピュータを除外するステップを更に実現させることを特徴とする請求項7記載のコンピュータの監視プログラム。
  9.  複数のコンピュータからなるグループごとに、一のコンピュータが他のコンピュータを順繰りに監視するように、監視の起点となる監視元のコンピュータと、監視先かつ監視元となる少なくとも1台のコンピュータと、を関連付けた監視経路を格納したストレージを有する監視コンピュータが、
     グループの特定情報を含んだ指示があったときに、前記ストレージの監視経路を参照し、前記特定情報により特定されるグループに属する各コンピュータに対して、該グループに関する監視経路を配布するステップと、
     前記監視経路において監視の起点となる監視元のコンピュータに対して、前記監視経路に則って他のコンピュータの監視を行うことを依頼するステップと、
     を実行することを特徴とするコンピュータの監視方法。
  10.  複数のコンピュータからなるグループごとに、一のコンピュータが他のコンピュータを順繰りに監視するように、監視の起点となる監視元のコンピュータと、監視先かつ監視元となる少なくとも1台のコンピュータと、を関連付けた監視経路を格納したストレージと、
     グループの特定情報を含んだ指示があったときに、前記ストレージの監視経路を参照し、前記特定情報により特定されるグループに属する各コンピュータに対して、該グループに関する監視経路を配布する監視データ配布部と、
     前記監視経路において監視の起点となる監視元のコンピュータに対して、前記監視経路に則って他のコンピュータの監視依頼を送信する監視依頼送信部と、
     を有することを特徴とするコンピュータの監視装置。
PCT/JP2010/061707 2010-07-09 2010-07-09 コンピュータの監視プログラム,監視方法及び監視装置 WO2012004891A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP10854445.3A EP2592561A4 (en) 2010-07-09 2010-07-09 Monitoring program, monitoring method and monitoring device of computer
JP2012523487A JP5475130B2 (ja) 2010-07-09 2010-07-09 監視プログラム、監視システム及び監視方法
PCT/JP2010/061707 WO2012004891A1 (ja) 2010-07-09 2010-07-09 コンピュータの監視プログラム,監視方法及び監視装置
US13/730,290 US9444698B2 (en) 2010-07-09 2012-12-28 Computer-readable recording medium storing process for monitoring computer, its method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/061707 WO2012004891A1 (ja) 2010-07-09 2010-07-09 コンピュータの監視プログラム,監視方法及び監視装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/730,290 Continuation US9444698B2 (en) 2010-07-09 2012-12-28 Computer-readable recording medium storing process for monitoring computer, its method and apparatus

Publications (1)

Publication Number Publication Date
WO2012004891A1 true WO2012004891A1 (ja) 2012-01-12

Family

ID=45440890

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/061707 WO2012004891A1 (ja) 2010-07-09 2010-07-09 コンピュータの監視プログラム,監視方法及び監視装置

Country Status (4)

Country Link
US (1) US9444698B2 (ja)
EP (1) EP2592561A4 (ja)
JP (1) JP5475130B2 (ja)
WO (1) WO2012004891A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015114991A (ja) * 2013-12-13 2015-06-22 富士通株式会社 データ処理装置、データ処理装置監視方法およびデータ処理システム
JP2016038705A (ja) * 2014-08-07 2016-03-22 富士通株式会社 システム及び異常検知方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6201678B2 (ja) * 2013-11-21 2017-09-27 富士通株式会社 ネットワーク管理システムにおけるネットワークエレメント、ネットワーク管理システム、及び、ネットワークの管理方法
CN114189815B (zh) 2016-01-18 2024-02-09 三星电子株式会社 移动通信系统中终端通信的方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002312199A (ja) 2001-04-13 2002-10-25 Mitsubishi Electric Corp 異常検知電子機器及び異常検知方法及び異常検知電子機器システム及び異常検知プログラム及び異常検知プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2004220562A (ja) * 2002-12-27 2004-08-05 Seiko Epson Corp デバイス監視システム、監視プログラム及び監視方法並びにデバイス
JP2006154991A (ja) * 2004-11-26 2006-06-15 Fujitsu Ltd 情報処理システム、情報処理システムの制御方法、監視装置、監視プログラム、保守管理プログラム
JP2009217307A (ja) * 2008-03-07 2009-09-24 Fujitsu Telecom Networks Ltd 監視制御システム及び監視制御方法
JP2010092395A (ja) * 2008-10-10 2010-04-22 Nec Corp サーバ管理システム,サーバ管理方法及びサーバ管理用プログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07262042A (ja) * 1994-03-17 1995-10-13 Fujitsu Ltd プロセッサ障害検出方法
JPH08223161A (ja) * 1995-02-10 1996-08-30 Toshiba Corp システム間監視ネットワークの形成方法及びシステム間監視装置
JPH1074159A (ja) * 1996-08-30 1998-03-17 Hitachi Ltd 計算機システムの制御方法
JP2000148539A (ja) * 1998-11-04 2000-05-30 Ntt Data Corp 障害検知方法、コンピュータシステム及び構成装置、記録媒体
US6484022B1 (en) * 1999-09-07 2002-11-19 Ericsson Inc. Wireless communications device having externally controlled transmission of identity
GB2362230A (en) * 2000-05-09 2001-11-14 Marconi Comm Ltd Delegated fault detection in a network by mutual node status checking
US6859830B1 (en) * 2000-06-23 2005-02-22 Microsoft Corporation Method and system for detecting a dead server
US20020129355A1 (en) * 2001-03-01 2002-09-12 Mike Velten Method and system for monitoring an apparatus for a computer
JP2003030161A (ja) * 2001-07-11 2003-01-31 Hitachi Ltd 移動エージェント障害監視方法
US8386609B2 (en) * 2007-11-09 2013-02-26 International Business Machines Corporation Reconnection to and migration of electronic collaboration sessions
US8667034B1 (en) * 2008-02-20 2014-03-04 Emc Corporation System and method for preserving symbolic links by a storage virtualization system
JP5091833B2 (ja) * 2008-10-28 2012-12-05 株式会社日立製作所 監視対象装置管理システム、管理サーバおよび監視対象装置管理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002312199A (ja) 2001-04-13 2002-10-25 Mitsubishi Electric Corp 異常検知電子機器及び異常検知方法及び異常検知電子機器システム及び異常検知プログラム及び異常検知プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2004220562A (ja) * 2002-12-27 2004-08-05 Seiko Epson Corp デバイス監視システム、監視プログラム及び監視方法並びにデバイス
JP2006154991A (ja) * 2004-11-26 2006-06-15 Fujitsu Ltd 情報処理システム、情報処理システムの制御方法、監視装置、監視プログラム、保守管理プログラム
JP2009217307A (ja) * 2008-03-07 2009-09-24 Fujitsu Telecom Networks Ltd 監視制御システム及び監視制御方法
JP2010092395A (ja) * 2008-10-10 2010-04-22 Nec Corp サーバ管理システム,サーバ管理方法及びサーバ管理用プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2592561A4

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015114991A (ja) * 2013-12-13 2015-06-22 富士通株式会社 データ処理装置、データ処理装置監視方法およびデータ処理システム
JP2016038705A (ja) * 2014-08-07 2016-03-22 富士通株式会社 システム及び異常検知方法

Also Published As

Publication number Publication date
US9444698B2 (en) 2016-09-13
JP5475130B2 (ja) 2014-04-16
US20130117447A1 (en) 2013-05-09
JPWO2012004891A1 (ja) 2013-09-02
EP2592561A4 (en) 2017-12-20
EP2592561A1 (en) 2013-05-15

Similar Documents

Publication Publication Date Title
JP5625998B2 (ja) 情報処理システム
JP2012080216A (ja) 検疫装置、検疫システム、検疫方法、及びプログラム
JP2008519477A (ja) サーバ間の直接通信を用いることによってノード構成におけるサーバ・イベントを監視するための方法及びシステム
JP6095140B2 (ja) 遠隔監視システム、遠隔監視方法、及びプログラム
JP2006277696A (ja) ジョブ実行監視システム、ジョブ制御装置、ジョブ実行方法及びジョブ制御プログラム
WO2012004891A1 (ja) コンピュータの監視プログラム,監視方法及び監視装置
WO2015038604A1 (en) Apparatus and method for monitoring network performance
JP5268589B2 (ja) 情報処理装置及び情報処理装置の運用方法
CN103944784B (zh) 一种面向大规模云数据中心的服务器协同监控方法
JP2010092395A (ja) サーバ管理システム,サーバ管理方法及びサーバ管理用プログラム
JP6483592B2 (ja) コントローラおよび制御システム
JP5839664B2 (ja) ソフトウェア配布サーバ、ソフトウェア配布方法、ソフトウェア配布プログラム、および記録媒体
JP2013134658A (ja) コンピュータネットワークシステム、構成管理方法、構成管理プログラム、記録媒体
JP2010244469A (ja) 分散処理システム及び分散処理方法
JP2015114991A (ja) データ処理装置、データ処理装置監視方法およびデータ処理システム
JP2008077293A (ja) ネットワーク監視装置
JP6111209B2 (ja) 仮想マシン管理システム、仮想マシン管理方法、環境管理サーバ及びプログラム
JP4909830B2 (ja) サーバアプリケーション監視システム及び監視方法
JP6318910B2 (ja) 管理装置,情報処理システム,プログラム
JP5727404B2 (ja) 死活監視サーバ、死活監視プログラム及び死活監視方法
WO2009107198A1 (ja) 伝送装置、導通性確認方法および導通性確認プログラム
JP2014026353A (ja) サーバ管理システム、負荷分散装置及びサーバ管理方法
WO2022254714A1 (ja) 通信装置、通信方法およびプログラム
JP2013211702A (ja) 通信装置及びフィルタリング方法
JP5353014B2 (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: 10854445

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2012523487

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2010854445

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE