WO2014118897A1 - 情報処理装置、情報処理方法、及び情報処理プログラム - Google Patents
情報処理装置、情報処理方法、及び情報処理プログラム Download PDFInfo
- Publication number
- WO2014118897A1 WO2014118897A1 PCT/JP2013/051919 JP2013051919W WO2014118897A1 WO 2014118897 A1 WO2014118897 A1 WO 2014118897A1 JP 2013051919 W JP2013051919 W JP 2013051919W WO 2014118897 A1 WO2014118897 A1 WO 2014118897A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- server
- information
- environment
- pseudo
- target server
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/28—Error detection; Error correction; Monitoring by checking the correct order of processing
Definitions
- the disclosed technology relates to an information processing apparatus, an information processing method, and an information processing program.
- a reproduction test that reproduces the event may be performed to identify the cause of the event that occurred.
- an apparatus that executes a reproduction test it is conceivable to prepare a separate computer having a hardware environment equivalent to a computer in which an event such as abnormal termination has occurred.
- the investigation material includes an OS (Operating System) in the operating environment of the computer in which the event has occurred, various software, and trace data at the time of the event occurrence.
- OS Operating System
- a failure reproduction system that reproduces a failure of an application program (hereinafter referred to as a server application) running on a server device is known.
- a snapshot of the server device and packet communication information of the client device are acquired.
- the snapshot of the server device is information at a specific point in the server device that processes packet data transmitted from the client device. If the snapshot of the server device is used, for example, by using a virtual server, a hardware environment equivalent to the computer in which the event has occurred can be reproduced on the server device at a specific point in time.
- the packet communication information of the client device is packet data transmitted from the client device via the network.
- a server device at a specific time is reproduced using a snapshot of the server device. Then, the failure can be reproduced by causing the server device at a specific point in time to be processed sequentially with respect to the packet data transmitted from the client device up to the point when the failure occurs in the server device.
- a software verification system that performs pre-verification of software operation by programmed computer processing is known.
- resource usage information such as CPU usage rate and memory usage during operation of the computer to be reproduced is acquired, and the software verification system is controlled so that the resource usage matches.
- a dummy program is executed to increase the CPU usage rate to the value of resource usage information acquired, and then the verification target software is executed to verify the verification target software.
- the hardware environment and software settings of the computer to be reproduced can be reproduced by a virtual server device.
- the reproduction test in the failure reproduction system is a failure caused by communication based on packet data, it is difficult to reproduce an event caused by a hardware configuration such as a device unique to the computer.
- a hardware configuration such as a device unique to the computer.
- the failure reproduction system for example, there are cases where it is difficult to reproduce events that depend on OS startup processing, events that depend on timing during operation of the computer, and events that are caused by delay due to a load or the like.
- the resource usage information such as CPU usage rate or memory usage is changed in the verification environment using the resource usage information.
- the software verification system in order to reproduce the same load as the computer to be reproduced, it is required to prepare the same hardware environment such as a CPU and a memory. Even if the same hardware environment is prepared, an event associated with a delay due to a load or the like does not always occur due to a difference in operating environment. That is, in the software verification system, there are cases where it is difficult to reproduce events that depend on the OS startup process, events that depend on timing during operation of the computer, and events that are caused by delay due to a load or the like.
- the goal is to improve the reproducibility of events that occur on a computer.
- the disclosed technology reproduces the construction and operation of the pseudo environment based on the information of the server to be reproduced. That is, the configuration information indicating the configuration of the reproduction target server and the operation information related to the execution of the series of processes including the order of the series of processes executed on the reproduction target server and the processing time of the series of processes are used.
- the construction unit creates pseudo environment information indicating the environment of the reproduction target server based on the configuration information indicating the configuration of the reproduction target server and the operation information.
- the construction unit constructs a pseudo environment of the reproduction target server by storing the created pseudo environment information in the storage device.
- the reproduction unit based on the pseudo environment information indicating the environment of the server to be reproduced as a pseudo environment, the sequence of the processes to be executed depending on the configuration of the server to be reproduced, and each Determine the execution time of the process.
- the reproduction unit reproduces the operation of the reproduction target server by executing a series of processes according to the determined sequence of the processes and the execution timing of each process.
- the reproducibility of events can be improved.
- FIG. 1 shows a configuration of an information processing system 10 according to the present embodiment.
- the information processing system 10 includes an event reproduction test system 12, a pseudo environment unit 22 such as an HDD (hard disk drive), and a management unit 38.
- the information processing system 10 is preliminarily surveyed on a computer that reproduces an event (hereinafter referred to as a reproduction target server Sv), and survey material 11 indicating information on the survey result is input.
- the investigation material 11 includes configuration information indicating the configuration of the reproduction target server Sv, a sequence of processes executed on the reproduction target server Sv, a processing time of each process, and a processing time including a series of processing times. Contains operational information related to execution.
- the survey material 11 includes various information used when reproducing an event occurring in the reproduction target server Sv.
- the configuration information there is configuration data as information indicating files and directories related to the OS in the reproduction target server Sv that reproduces an event.
- configuration information there is file directory data as information indicating a file and a directory that are stored when the reproduction target server Sv is simulated.
- operation information there is CLI response result data as information indicating a response result of an instruction or information output request to the reproduction target server Sv when the reproduction target server Sv is simulated.
- trace data as an example of operation information.
- the trace data includes, for example, information indicating an operation log of the reproduction target server Sv indicating the status of accessing the driver, and includes detailed recording of time and processing by software.
- the trace data includes a command executed on the reproduction target server Sv, a response time, and a response time, and load information such as a CPU usage rate and a memory usage amount on the reproduction target server Sv.
- the information processing system 10 based on the investigation material 11 acquired from the environment in the reproduction target server Sv in which the event has occurred, a pseudo environment for reproducing the event in the reproduction target server Sv is constructed, and the reproduction target The event occurrence reproduction process in the server Sv is performed.
- the event reproduction test system 12 included in the information processing system 10 includes a pseudo environment construction unit 14, a control unit 24, and an event reproduction unit 26.
- the pseudo environment construction unit 14 includes an information analysis unit 16, a related software installation unit 18, and a data development unit 20.
- the event reproduction unit 26 includes a startup event reproduction unit 28 that reproduces a startup event in the reproduction target server Sv, and an operation event reproduction unit 34 that reproduces an operation event in the reproduction target server Sv.
- the startup event reproduction unit 28 includes an OS simulated startup processing unit 30 and a software startup processing unit 32.
- the operating event reproduction unit 34 includes a CLI response unit 36.
- the CLI response unit 36 is a processing unit that artificially executes a response process to a CLI (command line interface) command to the reproduction target server Sv.
- the pseudo-environment construction unit 14 analyzes the investigation material 11 by the information analysis unit 16, and installs the server management software and related software operating on the reproduction target server Sv by the installation unit 18 based on the analysis result.
- the server management software may be installed in the information processing system 10 by the pseudo environment construction unit, or may be installed in advance.
- FIG. 1 shows an example including a management unit 38 in which server management software 57 (see FIG. 2) is installed in advance.
- the pseudo environment construction unit 14 uses the data development unit 20 to develop the data used to reproduce the event of the reproduction target server Sv in a specific area of the pseudo environment unit 22 such as an HDD, and simulate the reproduction target server Sv. Build an environment.
- the control unit 24 sets the startup event reproduction unit 28 and the operation event reproduction unit 34 based on the operation information included in the investigation material 11 acquired from the investigation material 11. Control.
- the event of the reproduction target server Sv is reproduced by the control of the event reproduction unit 26 of the control unit 24.
- the control unit 24 faithfully reproduces the timing of processing executed in the event reproduction unit 26, the order of activation, and the processing delay based on operation information and the like, thereby the timing of processing, the order of activation, And reproduce events that depend on processing delays.
- the startup event reproduction unit 28 included in the event reproduction unit 26 executes a process for reproducing an event that occurs depending on the OS activation process and timing.
- the OS startup pseudo process is executed in the OS pseudo startup processing unit 30 included in the startup event reproduction unit 28.
- the control unit 24 obtains the activation time until the activation of the server management software 57 included in the management unit 38, and when the activation time has elapsed, the management unit 38 activates the server management software 57 in the debug mode (described later).
- the server management software 57 obtains information from the pseudo-environment unit 22 in which the OS startup pseudo-process is executed, thereby reproducing the startup environment.
- the operation event reproduction unit 34 included in the event reproduction unit 26 executes a process of reproducing an event during operation when the reproduction target server Sv is normally operated.
- the server management software 57 instructs the execution of the CLI command in the reproduction target server Sv. Therefore, in order to reproduce the event at the time of operation in the reproduction target server Sv, the operation event reproducing unit 34 receives the CLI command execution command from the server management software 57 of the management unit 38 and stores it in the pseudo environment unit 22. Information indicating the CLI response result is obtained.
- the control unit 24 obtains the delay time of the command response to the CLI command execution instruction, and uses the server management software of the management unit 38 to display information indicating the CLI response result obtained from the pseudo environment unit 22 when the obtained delay time has elapsed. Control is made to return the result to 57 as an execution result.
- FIG. 2 shows an example in which the information processing system 10 is realized by a computer.
- An information processing system 10 illustrated in FIG. 1 is realized by a computer 40.
- the computer 40 includes a CPU 42, a memory 44, and a nonvolatile storage unit 54.
- the CPU 42, the memory 44, and the storage unit 54 are connected to each other via a bus 53.
- the storage unit 54 can be realized by an HDD or a flash memory.
- the computer 40 includes a communication control unit 52 for connecting to a network, and the communication control unit 52 is connected to a bus 53.
- the computer 40 includes a display device 46 as an example of an output device, and an input device 48 as an example of an input device such as a keyboard and a mouse.
- the display device 46 and the input device 48 are connected to the bus 53.
- the computer 40 is provided with a device (R / W device) 50 to which a recording medium 49 such as an optical disk is mounted and for reading and writing with respect to the mounted recording medium 49.
- the R / W device 50 is connected to the bus 53.
- the display device 46, the input device 48, and the R / W device 50 may be omitted, or may be connected to the bus 53 as necessary.
- the storage unit 54 stores an OS 55.
- the computer 40 operates as a server.
- a system file and a device file for causing the computer 40 to function as a server are stored in a designated area designated by the OS 55.
- FIG. 2 shows a self-environment area 56 as an example of the designated area. Note that predetermined main functions that cause the computer 40 to function as a server are well-known techniques, and thus detailed description thereof is omitted.
- server management software 57 In the storage unit 54, server management software 57, related software 58, and components 60 are stored.
- the server management software 57 is software for managing the operation of the server.
- the CPU 42 executes the server management software 57, the computer 40 operates as the management unit 38 shown in FIG.
- the related software 58 is software that is operated in the reproduction target server Sv used when reproducing the event. In addition, what is necessary is just to prepare beforehand and operate
- the component 60 includes a plurality of components as software divided into parts in order to realize various functions for reproducing an event.
- the component 60 includes a control component 62, a pseudo environment construction component 64, and an event reproduction component 66.
- the event reproduction component 66 includes a startup event reproduction component 68 and an operation time event reproduction component 70.
- the component 60 corresponds to the main function of the event reproduction test system 12, and has a function of constructing a pseudo environment, a function of reproducing an event that occurs when the OS is started, and a function of reproducing an event that occurs during operation. .
- the component 60 is read from the storage unit 54 by the CPU 42, expanded in the memory 44, and executed. That is, when the information processing system 10 is realized by the computer 40 and the CPU 42 executes the component 60, the computer 40 operates as the event reproduction test system 12 illustrated in FIG.
- the pseudo environment construction component 64 is read from the storage unit 54 by the CPU 42, expanded in the memory 44, and executed. That is, when the information processing system 10 is realized by the computer 40 and the CPU 42 executes the pseudo environment construction component 64, the computer 40 operates as the pseudo environment construction unit 14 illustrated in FIG.
- the pseudo environment construction component 64 includes processes that operate as the information analysis unit 16, the installation unit 18, and the data development unit 20 illustrated in FIG. 1, and operates as the pseudo environment construction unit 14 by executing each process. Although details will be described later, the pseudo environment construction component 64 analyzes the investigation material 11 and develops the analysis result data, thereby constructing the pseudo environment of the reproduction target server Sv in the information processing system 10.
- the event reproduction component 66 executes a process for reproducing an event that has occurred in the reproduction target server Sv.
- the event reproduction component 66 is read from the storage unit 54 by the CPU 42, expanded in the memory 44, and executed. That is, when the information processing system 10 is realized by the computer 40 and the CPU 42 executes the event reproduction component 66, the computer 40 operates as the event reproduction unit 26 illustrated in FIG.
- the startup event reproduction component 68 includes processes that operate as the OS simulated startup processing unit 30 and the software startup processing unit 32 shown in FIG. 1, and the startup event reproduction unit shown in FIG. It operates as 28.
- the startup event reproduction component 68 executes a process for reproducing an event that occurs when the OS is started. Although details will be described later, the startup event reproduction component 68 executes a pseudo startup process of the OS and startup of the server management software 57.
- the operational event reproduction component 70 included in the event reproduction component 66 includes a process that operates as the CLI response unit 36 illustrated in FIG. 1, and operates as the operational event reproduction unit 34 illustrated in FIG. 1 by executing the process. To do. As will be described in detail later, the operation event reproduction component 70 executes processing for event reproduction that occurs during operation.
- the control component 62 is read from the storage unit 54 by the CPU 42, developed in the memory 44, and executed. That is, when the information processing system 10 is realized by the computer 40 and the CPU 42 executes the control component 62, the computer 40 operates as the control unit 24 illustrated in FIG. Although details will be described later, the control component 62 controls the activation sequence and timing of the software executed in the activation event reproduction component 68. Further, the control component 62 controls a response delay due to the CLI response in order to reproduce the transportation time of the reproduction target server Sv.
- the storage unit 54 is provided with a pseudo environment area 72 for storing information related to the environment of the reproduction target server Sv that reproduces the event.
- the pseudo environment area 72 includes a storage area 73 for storing configuration data, a storage area 74 for storing file directory data, a storage area 75 for storing CLI response result data, and a trace data.
- a storage area 76 is included.
- the configuration data stored in the storage area 73 is information indicating each of files and directories related to the OS in the reproduction target server Sv that reproduces the event.
- the file directory data stored in the storage area 74 is information indicating each of files and directories stored when the server to be reproduced Sv is simulated.
- the CLI response result data stored in the storage area 75 is information indicating a response result of a command or information output request to the reproduction target server Sv when the reproduction target server Sv is simulated.
- the trace data stored in the storage area 76 is, for example, information indicating an operation log of the reproduction target server Sv indicating a status of accessing the driver. That is, the trace data includes time and detailed recording of processing by software.
- the trace data includes a command executed on the reproduction target server Sv, a response time, and a response time, and load information such as a CPU usage rate and a memory usage amount on the reproduction target server Sv.
- the management unit 38 manages the information processing system 10 using configuration information and operation information. Specifically, using information indicating each of files and directories related to the OS, information indicating each of the command, response time and response time, and information indicating a response result of a command to the OS or an information output request.
- the information processing system 10 is managed by the management unit 38.
- the management unit 38 contributes to the management of the reproduction target server Sv constructed in a pseudo manner in addition to the management of the information processing system 10.
- the server management software 57 operated as the management unit 38 includes main processing function software 57M that is operated by the management unit 38 as the main processing unit 38M.
- the server management software 57 includes debug function software 57D that is operated by the management unit 38 as the debug unit 38D.
- the main processing function software 57M is main software for managing the operation of the server.
- the debug function software 57D is software including a function for switching the server management software 57 between the operation management of the own server and the operation management of the reproduction target server Sv by the pseudo environment. For example, when the debug function is off, the server management software 57 uses the information stored in the own environment unit 23 (that is, the own environment area 56 by the OS 55) to manage the operation of the own server.
- the server management software 57 uses the information stored in the pseudo-environment unit 22 (that is, the pseudo-environment area 72) to manage the operation of the reproduction target server Sv in the pseudo environment. The event in the reproduction target server Sv due to the environment is reproduced.
- the management unit 38 also contributes to the process of reproducing the event in the reproduction target server Sv. That is, it is possible to grasp that the event has been reproduced by analyzing the trace data output by the server management software 57. For example, the trace data included in the investigation material 11 and the trace data obtained by the management unit 38 operating by executing the server management software 57 are compared, and it can be determined that the event has been reproduced when the same result can be obtained.
- the trace data comparison process may be executed after the startup event reproduction process, which will be described in detail later, or after the operation event reproduction process.
- the disclosed technique is not limited to the use of the server management software 57.
- the present invention can be applied to simulation software such as simulation software for tracing the operation of the reproduction target server Sv.
- the event reproduction test system 12 is an example of an information processing apparatus in the disclosed technology.
- the pseudo environment construction unit 14 is an example of a construction unit in the disclosed technology
- the event reproduction unit 26 is an example of a reproduction unit in the disclosed technology.
- the program executed by the computer 40 is an example of an information processing program in the disclosed technology.
- the program executed by the computer 40 is also a program for causing the computer 40 to function as an information processing apparatus according to the disclosed technology.
- a recording medium 49 such as an optical disk in which a program for causing the computer 40 to execute processing is recorded is an example of a recording medium of the disclosed technology.
- FIG. 4 shows an outline of the operation in the event reproduction test system 12 included in the information processing system 10.
- the event reproduction test system 12 executes processing for constructing an environment for reproducing an event that occurs in the reproduction target server Sv and processing for reproducing an event that occurs in the reproduction target server Sv.
- the event reproduction test system 12 analyzes the investigation material 11 acquired from the environment of the reproduction target server Sv in which the event has occurred. Next, the event reproduction test system 12 constructs a reproduction environment, which is a pseudo environment of the reproduction target server Sv, by expanding the data based on the survey material 11 on the pseudo environment unit 22 in the information processing system 10. Next, the event reproduction test system 12 executes activation and control of the server management software 57 included in the management unit 38 in order to reproduce an event occurring in the reproduction target server Sv.
- the server management software 57 reproduces an event that has occurred in the reproduction target server Sv by executing acquisition of information from the reproduction environment constructed in the pseudo environment unit 22. That is, the server management software 57 collects data as maintenance information from the OS. For example, collection of data as maintenance information can be achieved by a process of acquiring (accessing) data stored as a file or a process of executing a command and acquiring data of an execution result.
- FIG. 5 shows a processing flow of the event reproduction test system 12 (FIG. 1) included in the information processing system 10 realized by the computer 40 (FIG. 2).
- the event reproduction test system 12 executes a process for artificially constructing the environment of the reproduction target server Sv in the information processing system 10.
- the pseudo environment construction unit 14 executes a pseudo environment construction process of the reproduction target server Sv in step 100 (see also FIG. 6). That is, when the CPU 42 executes the pseudo environment construction component 64, the computer 40 operates as the pseudo environment construction unit 14 shown in FIG.
- the pseudo-environment construction process installs various software used to perform a test for reproducing an event in the information processing system 10 and develops data by using information included in the investigation material 11 acquired from the reproduction target server Sv as an input. Execute.
- FIG. 6 and FIG. 7 show the relationship among the units included in the pseudo environment construction unit 14.
- the information analysis unit 16 of the pseudo environment construction unit 14 analyzes the investigation material 11 acquired from the reproduction target server Sv and outputs an analysis result 16A.
- the related software installation unit 18 installs the related software in the information processing system 10 operated by the OS 55 based on the analysis result 16A.
- the data development unit 20 stores information (file directory data, CLI response result data, and trace data) related to the environment of the reproduction target server Sv based on the analysis result 16A in the storage areas 74 and 75 of the pseudo environment area 72. , 76 is expanded and stored.
- the information analysis unit 16 included in the pseudo-environment construction unit 14 analyzes the survey material 11 acquired from the environment of the reproduction target server Sv in step 102.
- step 102 data used for constructing a pseudo reproduction environment is extracted based on the result of analyzing the information included in the survey material 11. For example, various information included in the investigation material 11 and used to perform a test for reproducing an event such as OS information of the reproduction target server Sv, installed software, file / directory configuration, and trace data Is extracted.
- the extracted data is selected to be used by the installation unit 18 or the data development unit 20 of the related software, and is shaped into data that can be read by the installation unit 18 or the data development unit 20. And output as an analysis result.
- an example of data used in the related software installation unit 18 is information for specifying the related software.
- the information specifying the related software includes, for example, the version number of the related software, setting, and operation log.
- the related software is installed in the reproduction target server Sv, and software that operates in cooperation with the server management software 57 is a preferred example.
- Specific examples of related software include cluster linkage software, maintenance information collection software, disk control software, and the like.
- Examples of data used by the data development unit 20 include information indicating the system configuration of the reproduction target server Sv, information indicating the configuration of files and directories related to the device, information indicating the CLI response result, and trace data. There is information to show.
- the related software installation unit 18 installs the related software in the information processing system 10 operated by the OS 55. That is, the related software installation unit 18 installs and sets software used in the reproduction environment of the reproduction target server Sv extracted as the analysis result of the information analysis unit 16.
- the server management software 57 is known to operate in cooperation with related software. When a failure occurs in the server management software 57 at a location linked with the related software, the reproduction of the event on the reproduction target server Sv may depend on the version number or setting of the related software. Therefore, the related software installation unit 18 installs the related software having the same version number and setting as the related software installed in the reproduction target server Sv extracted from the information included in the investigation material 11 in the information processing system 10. .
- the information used for the reproduction environment construction of the reproduction target server Sv extracted as the analysis result of the information analysis unit 16 and the information used when executing the reproduction test are stored in the pseudo environment unit 22. expand.
- information used for the reproduction environment construction there is information (file directory data) indicating the structure of files and directories related to the system and the device.
- the server management software 57 acquires information such as hardware information from the system file and device file used by the OS.
- CPU information and disk device information are known as examples of information used by the server management software 57.
- the CPU information there is information indicating contents described in a specific file (for example, “cpuinfo”) under a specific file (for example, “/ proc / cpuinfo file”), that is, a specific directory (for example, “proc”).
- the disk device information there is information indicating contents described in a specified file (for example, “sdx”) under a specified file (/ dev / sdx file), that is, a specified directory (for example, “dev”).
- the configuration and contents of the file directory of the reproduction target server Sv should be the same as when the event occurred in the reproduction target server Sv. Is preferred.
- the configuration of files and directories based on information such as CPU information and disk device information is generally determined by the hardware environment. Therefore, if the hardware environment is different, it is difficult to make the information such as the CPU information and the disk device information the same information. If information such as CPU information and disk device information is forcibly set to information different from the hardware configuration of the hardware, the information processing system 10 may not operate normally, making it difficult to perform a reproduction test. There is a case.
- the data development unit 20 uses the pseudo environment unit 22 of the information processing system 10 (computer 40) to obtain information indicating the configuration of the files and directories obtained from the investigation material 11 acquired from the reproduction target server Sv of the environment in which the event has occurred. Expand to. That is, the system file of the information processing system 10 (computer 40) operated by the OS 55 is not replaced with the information based on the investigation material 11 acquired from the reproduction target server Sv, but is expanded in a separate area.
- the OS and the like of the information processing system 10 are not affected by the event reproduction test system 12, and refer to files and directories based on the hardware configuration of the information processing system 10 (computer 40). can do. Further, when the event reproduction test of the reproduction target server Sv is executed, for example, only the server management software 57 can acquire information indicating the configuration of files and directories in the reproduction target server Sv from the simulated environment unit 22.
- an example of information used when executing the reproduction test is CLI response result data and trace data used internally by the server management software 57 during operation.
- CLI response result data information indicating a response result such as a PS command used for monitoring a process state is known.
- trace data information including time information and load information such as a CPU usage rate is known.
- Information used when executing the reproduction test is preferably formatted in a data format that can be used in an event reproduction unit 26 (event reproduction component 66), which will be described later, and developed in the pseudo-environment unit 22.
- the event reproduction test system 12 determines whether or not to reproduce the event at the start in step 108 when the reproduction environment construction process of the reproduction target server Sv in step 100 is completed. In the determination process in step 108, it is determined whether or not the user has operated the input device 48 (FIG. 2) to instruct the selection to reproduce the startup event, or the user operates the input device 48 to determine in advance. This can be determined by determining whether or not a command has been entered.
- step 110 executes a process for reproducing an event at the time of activation in the reproduction target server Sv, and ends this processing routine.
- step 112 executes a process for reproducing an event at the time of operation in the reproduction target server Sv.
- FIG. 8 shows an example of a flow of processing corresponding to the processing of step 110 shown in FIG. 5 and reproducing the event at the time of activation in the reproduction target server Sv.
- information indicating the OS file and directory for reproducing the startup event of the reproduction target server Sv is stored in the storage area 73 as one of the configuration data.
- the information indicating the OS file and directory is information indicating the structure of a file or directory used to indicate the file used in the OS or the location of the file.
- the event reproduction test system 12 activates the control unit 24 in step 120. That is, when the CPU 42 executes the control component 62, the computer 40 starts operating as the control unit 24 shown in FIG.
- step 122 the OS pseudo boot processing unit 30 is started by the control unit 24, and the OS pseudo boot processing is started.
- the process of step 122 is a process included in the startup event reproduction component 68 corresponding to the OS simulated startup processing unit 30. That is, when the CPU 42 executes a process included in the startup event reproduction component 68, the computer 40 starts operating as the OS simulated startup processing unit 30 shown in FIG.
- the execution timing of various processes is adjusted under the control of the control unit 24 in order to simulate the process of starting the OS in the reproduction target server Sv (details will be described later). Further, the control unit 24 adjusts the execution timing of various processes in order to reproduce the operation of various software running on the reproduction target server Sv in a pseudo manner.
- control unit 24 calculates the start time until the start of the management unit 38 based on the trace data stored in the pseudo-environment unit 22, and the start time elapses (Yes is determined in step 126). Until the process waits.
- step 126 the software activation processing unit 32 is activated by the control unit 24 in step 128, and the software activation processing is started. That is, when the CPU 42 executes a process corresponding to the software activation processing unit 32 included in the activation event reproduction component 68, the computer 40 starts operating as the software activation processing unit 32 shown in FIG.
- step 130 the software activation processing unit 32 controls the management unit 38 so that the server management software 57 is activated in the debug mode. That is, the software activation processing unit 32 activates the management unit 38 in the debug mode. Accordingly, the processing of step 128 and step 130 is a process included in the startup event reproduction component 68 corresponding to the software startup processing unit 32.
- the management unit 38 is instructed to acquire information from the pseudo environment unit 22. That is, the server management software 57 executed as the management unit 38 activated in the debug mode under the control of the software activation processing unit 32 acquires various types of information from the pseudo environment unit 22 (see also FIG. 3).
- FIG. 9 shows an example of the correspondence of each part related to the process of reproducing the event at startup.
- FIG. 10 shows an example of the order of processing related to processing for reproducing an event at startup.
- FIG. 11 shows an example of a time-series sequence of each part related to the process of reproducing the event at startup.
- control unit 24 acquires the trace data stored in the storage area 76.
- the trace data acquisition process is shown as a data flow DT01 in FIG.
- the control unit 24 controls the OS pseudo activation processing unit 30 and the software activation processing unit 32 based on the acquired trace data.
- the OS simulated activation processing unit 30 acquires information indicating a directory and a file stored as one of the configuration data from the storage area 73.
- the process of acquiring information indicating directories and files is shown as a data flow DT02 in FIGS.
- the OS pseudo activation processing unit 30 copies the information indicating the acquired directory and file as file directory data to the storage area 74 in the order read when the OS is activated.
- the pseudo boot process SR is executed by starting the process of copying the file directory data to the storage area 74 by the OS pseudo boot processing unit 30 (see FIG. 11).
- the process of copying information indicating directories and files is shown as data flow DT03 in FIGS.
- the control unit 24 uses the response delay information obtained from the time, response time, and load information of the acquired trace data to copy as a process by the OS pseudo activation processing unit 30 included in the startup event reproduction unit 28. Adjust the time and timing (timing adjustment).
- the timing adjustment process is shown as control CT01 in FIGS.
- the management unit 38 in which the server management software 57 is executed is activated in the debug mode by the software activation processing unit 32 of the activation event reproduction unit 28.
- the activation processing in the debug mode for the software activation processing unit 32 is shown as control CT03 in FIGS.
- Software related to the server management software 57 is also activated by the software activation processing unit 32.
- the related software activation process is shown as control CT04 in FIGS.
- the software related to the server management software 57 is shown as a data flow DT05 in FIG.
- the system file or device file is stored under a specified area such as the area “/ proc /” or the area “/ dev /”.
- the system file and the device file are copied not under the specified area but under a specific area that is predetermined as the pseudo environment. That is, the system file and the device file are sequentially copied to an area under “/ tmp /” such as “/ tmp / proc /” or “/ tmp / dev /” in the information processing system 10.
- the server management software 57 operating in the debug mode acquires information from the area of the pseudo environment under “/ tmp /” instead of “/ proc /” or “/ dev /”.
- FIG. 12 shows an example of a flow of a process for reproducing an event during operation in the reproduction target server Sv corresponding to the process of step 114 shown in FIG.
- Information indicating a file and a directory for reproducing an operation event of the reproduction target server Sv is stored in the storage area 74 as file directory data.
- the management unit 38 in which the server management software 57 is executed is operated in the debug mode similarly to the process of reproducing the event at the time of activation. Therefore, in the process of reproducing the event at the time of operation in the reproduction target server Sv, information is acquired from the storage area 74 in which the file directory data in the pseudo environment unit 22 is stored.
- step 140 the control unit 24 is activated.
- the server management software 57 executes a CLI command such as a ps command used for monitoring the process state.
- the reproduction target server Sv returns a response result of the CLI command. Therefore, in the present embodiment, in order to reproduce the event at the time of operation, in the next step 142, the operation time event reproduction unit 34 is started by the control unit 24, and the operation event at the reproduction target server Sv is reproduced. Is started. That is, the operating event reproduction unit 34 receives a command executed by the server management software 57 of the management unit 38.
- the execution timing of various processes is adjusted by the control of the control unit 24 in order to reproduce the event (process) in operation of the reproduction target server Sv in a pseudo manner.
- the CLI response unit 36 of the operational event reproduction unit 34 acquires the CLI response result data stored in the storage unit 75 in the pseudo environment unit 22 in step 144. That is, the CLI response result data to be output as a CLI response in a pseudo manner as an event during operation of the reproduction target server Sv is acquired from the pseudo environment unit 22.
- the delay time of the CLI response is calculated based on the trace data stored in the pseudo-environment unit 22 by the control unit 24, and the delay time elapses (Yes is determined in step 148). Until the process waits. If an affirmative determination is made in step 148, in step 150, the CLI response unit 36 of the operating event reproduction unit 34 outputs the CLI response result data acquired in step 144 to the server management software 57 of the management unit 38.
- the response delay information indicating the delay time of the CLI response can be obtained from the trace data.
- the trace data records various information such as time, information indicating detailed recording of processing by software, and load information such as a CPU usage rate. For example, when all the commands executed in the hardware environment and software environment of the reproduction target server Sv, the response time, and the response time are recorded in the trace data, each command is determined from the recorded time and response time.
- Response delay information can be obtained.
- load information such as CPU usage rate and memory usage in the hardware environment and software environment of the reproduction target server Sv is recorded in the trace data
- the delay time is calculated according to the load information in the reproduction target server Sv.
- Response delay information can be obtained. For example, the relationship between the CPU usage rate, the memory usage amount, and the response time is obtained in advance and stored as data.
- the delay time can be obtained from the response time corresponding to the load information, which is the CPU usage rate included in the accumulated data.
- FIG. 13 shows an example of the correspondence of each part related to the process of reproducing the event during operation.
- FIG. 14 shows an example of a time-series sequence of each part related to a process for reproducing an event during operation.
- control unit 24 acquires the trace data stored in the storage area 76.
- the process of acquiring the trace data is shown as a data flow DT11 in FIG.
- the control unit 24 controls the operating event reproduction unit 34 based on the acquired trace data.
- the management unit 38 When reproducing an operation event in the reproduction target server Sv, the management unit 38 requests a CLI response from the debug unit 38D to the CLI response unit 36 by executing a CLI command such as a ps command. Processing for requesting a CLI response is shown as control CT11 in FIGS.
- the CLI response unit 36 refers to the CLI response result data in the reproduction target server Sv (data flow DT12) and acquires the data (data flow DT13).
- the CLI response unit 36 requests the control unit 24 to execute a CLI response (control CT12).
- the control unit 24 calculates the delay time of the CLI response based on the trace data stored in the pseudo-environment unit 22 (control CT13), and waits for execution instruction processing until the delay time elapses (control CT14). .
- the control unit 24 instructs the CLI response unit 36 to execute processing for outputting CLI response result data (control CT15).
- the CLI response unit 36 outputs the CLI response result data to the server management software 57 of the management unit 38 (data flow DT14).
- a hardware environment and a software environment used when reproducing an event are artificially constructed based on the investigation material 11 including the configuration information and operation information of the reproduction target server Sv.
- the event occurring in the reproduction target server Sv is reproduced. Therefore, it is possible to reproduce an event occurring in the reproduction target server Sv without preparing the same hardware environment and software environment in advance.
- the software execution time and processing order in the reproduction target server Sv are reproduced based on the information included in the investigation material 11, the occurrence occurs depending on the OS startup process or the software execution time. Event can be faithfully reproduced. Further, in the present embodiment, an event accompanying a response delay due to a load or the like in the reproduction target server Sv is reproduced based on the information included in the investigation material 11, so that the event is reproduced in an environment close to the real environment of the reproduction target server Sv. can do.
- a computer is targeted as an example of the information processing system 10
- the present invention is not limited to the type of computer.
- it may be a personal computer or other embedded computer.
- a serial flash memory may be a solid state drive (SSD). It may be.
- the mode in which the program is stored (installed) in advance in the storage unit 54 has been described.
- the present invention is not limited to this.
- the information processing program in the disclosed technology can be provided in a form recorded on a recording medium such as a CD-ROM or a DVD-ROM.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
1つの側面では、コンピュータで発生する事象の再現性を向上させる。 情報処理システム(10)には、構成情報と稼働情報を含む対象サーバ(Sv)の調査資料(11)が入力される。疑似環境構築部(14)は、調査資料(11)に基づき、疑似環境部(22)に対象サーバ(Sv)の疑似環境を構築する。起動時事象再現部(28)は制御部(24)で起動処理の時期や処理順が制御されつつ起動時の事象を再現する。また、運用時事象再現部(34)は運用時に実行される命令等の遅延時間が制御部(24)で制御されつつ運用時の事象を再現する。従って、同一のハードウェア環境やソフトウェア環境を予め用意することなく、事象を再現することができる。
Description
開示の技術は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
コンピュータの稼働時に異常終了等の事象が発生したとき、例えば発生した事象の原因を特定するために、事象を再現する再現試験を実行する場合がある。再現試験を実行する装置の一例として、異常終了等の事象が発生したコンピュータと同等のハードウェア環境を備えた別個のコンピュータを用意することが考えられる。また、別個のコンピュータで再現試験を実行するためには、事象が発生したコンピュータにおいて事象が発生した時の稼働環境を調査して、調査結果を調査資料として取得しておけばよい。調査資料には、事象が発生したコンピュータの稼働環境におけるOS(Operating System)、各種ソフトウェア、及び事象発生時のトレースデータ等が含まれる。次に、取得した調査資料に基づいて、別個のコンピュータに手動でOS、及び各種ソフトウェアをインストールし、ハードウェア環境及び稼働環境の各種設定を施し、事象の再現試験を実行する。
ところが、別個のコンピュータに事象が発生したコンピュータの稼働環境を再現構築しても、別個のコンピュータにおいて事象が再現されるとは限らない。例えば、事象が発生したコンピュータと全く同一のハードウェア環境及び稼働環境を構築することは困難であり、環境の相違により、事象が再現されない場合がある。そこで、別個のコンピュータにおいて事象を再現させるために、ハードウェア環境及び稼働環境の各種設定を変更、すなわち環境条件を変更して、繰り返し再現試験を実行する。従って、異常終了等の事象を再現させることは、膨大な作業量及び作業時間を費やすことになる。
事象の再現試験を実行するシステムの一例として、サーバ装置で稼働するアプリケーションプログラム(以下、サーバアプリケーションという)の障害を再現する障害再現システムが知られている。障害再現システムでは、サーバ装置のスナップショット及びクライアント装置のパケット通信情報を取得する。サーバ装置のスナップショットは、クライアント装置から送信されたパケットデータを処理するサーバ装置における特定時点の情報である。サーバ装置のスナップショットを使用すれば、例えば仮想的なサーバを用いることで、事象が発生したコンピュータと同等のハードウェア環境を特定時点のサーバ装置に再現することができる。クライアント装置のパケット通信情報は、クライアント装置からネットワークを介して送信されたパケットデータである。障害再現システムでは、サーバ装置のスナップショットを使用して特定時点のサーバ装置を再現する。そして、サーバ装置に障害が発生した時点までのクライアント装置から送信されたパケットデータを対象として、順次、再現された特定時点のサーバ装置に処理させることで、障害を再現させることができる。
また、事象の再現試験を実行するシステムの他の一例として、プログラムされたコンピュータ処理によってソフトウェアの動作の事前検証を行うソフトウェア検証システムが知られている。ソフトウェア検証システムでは、再現対象のコンピュータの稼働時におけるCPU使用率及びメモリ使用量等のリソース使用情報を取得し、リソース使用量が一致するようにソフトウェア検証システムを制御する。例えば、ソフトウェア検証システムでは、ダミープログラムを実行させてCPU使用率等を取得したリソース使用情報の値まで上昇させた後、検証対象のソフトウェアを実行して、当該検証対象のソフトウェアを検証する。
しかしながら、事象の再現試験を実行する場合、事象が発生したコンピュータにおけるハードウェア環境及び稼働環境を忠実に再現することが求められる。例えば、再現対象のコンピュータが大規模な構成のシステムである場合、同一のハードウェア環境及び稼働環境を別個に用意することは現実的ではない。また、コンピュータで稼働するOS及び各種ソフトウェアは、ユーザが個別にソフトウェアの更新を実行したりソフトウェアの設定変更等のカスタマイズを実行している可能性があり、忠実に環境を一致させることは困難である。また、OSの起動処理は、OSの種類、バージョン、及びハードウェア環境に依存しているので、OSの起動処理を忠実に再現するためには、膨大な作業を伴う場合がある。また、事象が発生した環境におけるコンピュータに対する負荷は、稼働時の状況により変動するので、事象が発生した環境における負荷等に起因する処理の遅延を再現することが困難な場合がある。従って、再現試験を実行してもコンピュータの稼働時に発生した事象が再現できない場合がある。
一方、障害再現システムでは、仮想的なサーバ装置によって再現対象のコンピュータのハードウェア環境及びソフトウェア設定を再現できる。ところが、障害再現システムにおける再現試験は、パケットデータに基づく通信により発生する障害であるため、コンピュータに固有のデバイス等のハードウェア構成に起因する事象を再現することは困難である。また、障害再現システムでは、例えば、OSの起動処理に依存した事象、コンピュータの稼働中のタイミングに依存した事象、及び負荷等による遅延に伴う事象の再現が困難な場合がある。
また、ソフトウェア検証システムでは、リソース使用情報を用いて、検証する環境においてCPU使用率またはメモリ使用量等のリソースの使用状況を変化させている。ところが、ソフトウェア検証システムにおいて、再現対象のコンピュータと同一の負荷を再現させるためには、CPU及びメモリ等の同一のハードウェア環境を用意することが求められる。例え同一のハードウェア環境を用意した場合であっても、稼働環境が相違することで、負荷等による遅延に伴う事象が発生するとは限らない。つまり、ソフトウェア検証システムでは、OSの起動処理に依存した事象、コンピュータの稼働中のタイミングに依存した事象、及び負荷等による遅延に伴う事象の再現が困難な場合がある。
1つの側面では、コンピュータで発生する事象の再現性を向上させることが目的である。
開示の技術は、再現対象サーバの情報に基づき、疑似環境の構築及び稼働を再現する。すなわち、再現対象サーバの構成を示す構成情報と、再現対象サーバで実行される一連の処理の順序及び一連の処理の処理時間を含む該一連の処理の実行に関係する稼働情報とを用いる。構築部は、再現対象サーバの構成を示す構成情報及び稼働情報に基づいて、再現対象サーバの環境を示す疑似環境情報を作成する。また、構築部は、作成した疑似環境情報を記憶装置に記憶することにより再現対象サーバの疑似環境を構築する。また、再現部は、疑似環境としての再現対象サーバの環境を示す疑似環境情報に基づいて、前記再現対象サーバの構成に依存して前記一連の処理が実行される前記一連の処理の順序及び各処理の実行時期を定める。また再現部は、前記定めた一連の処理の順序及び各処理の実行時期に従って一連の処理を実行することにより、再現対象サーバの稼働を再現する。
1つの実施態様では、事象の再現性を向上させることができる。
以下、図面を参照して開示の技術の実施形態の一例を詳細に説明する。
図1に、本実施形態に係る情報処理システム10の構成を示す。情報処理システム10は、事象再現試験システム12、HDD(ハードディスクドライブ)等の疑似環境部22、及び管理部38を含んでいる。情報処理システム10には、事象を再現するコンピュータ(以下、再現対象サーバSvという。)を予め調査し、該調査結果の情報を示す調査資料11が入力される。調査資料11には、再現対象サーバSvの構成を示す構成情報と、再現対象サーバSvで実行される一連の処理の順序、各処理の処理時間及び一連の処理の処理時間を含む一連の処理の実行に関係する稼働情報が含まれる。
例えば、調査資料11は、再現対象サーバSvにおいて発生する事象を再現する際に使用する各種情報を含んでいる。構成情報の一例として、事象を再現する再現対象サーバSvにおけるOSに関係するファイル及びディレクトリを示す情報としての構成データがある。また、構成情報の他の一例として、模擬的に再現対象サーバSvを稼働させるときに格納されるファイル及びディレクトリを示す情報としてのファイルディレクトリデータがある。また、稼働情報の一例として、模擬的に再現対象サーバSvを稼働させるときに再現対象サーバSvに対する命令または情報出力の要求の応答結果を示す情報としてのCLI応答結果データがある。また、稼働情報の一例としてトレースデータがある。トレースデータは、ドライバへアクセスした状況等を示す再現対象サーバSvの稼働ログを示す情報が一例としてあり、時刻、及びソフトウェアによる処理の詳細な記録が含まれる。また、トレースデータには、再現対象サーバSvで実行されたコマンド、応答の時刻、及び応答時間が含まれると共に、再現対象サーバSvでのCPU使用率及びメモリ使用量等の負荷情報が含まれる。
本実施形態に係る情報処理システム10では、事象が発生した再現対象サーバSvにおける環境より取得した調査資料11を基に、再現対象サーバSvの事象を再現するための疑似環境を構築し、再現対象サーバSvにおける事象発生の再現処理を行う。
情報処理システム10に含まれる事象再現試験システム12は、疑似環境構築部14、制御部24、及び事象再現部26を備えている。疑似環境構築部14は、情報解析部16、関連ソフトウェアのインストール部18、及びデータ展開部20を含んでいる。また、事象再現部26は、再現対象サーバSvにおける起動時の事象を再現する起動時事象再現部28、及び再現対象サーバSvにおける運用時の事象を再現する運用時事象再現部34を含んでいる。起動時事象再現部28は、OS疑似起動処理部30、及びソフトウェア起動処理部32を含んでいる。また、運用時事象再現部34は、CLI応答部36を含んでいる。CLI応答部36は、再現対象サーバSvへのCLI(コマンドラインインタフェース)コマンドに対する応答処理を疑似的に実行する処理部である。
疑似環境構築部14は、情報解析部16により調査資料11を解析し、解析結果に基づいて、インストール部18により再現対象サーバSvで稼働するサーバ管理ソフトウェア及び関連ソフトウェアをインストールする。なお、サーバ管理ソフトウェアは、疑似環境構築部により情報処理システム10にインストールされてもよく、予めインストールしておいてもよい。図1では、サーバ管理ソフトウェア57(図2参照)が予めインストールされた管理部38を含む一例を示している。また、疑似環境構築部14は、データ展開部20によって、再現対象サーバSvの事象を再現するために用いるデータがHDD等の疑似環境部22の特定領域に展開して、再現対象サーバSvの疑似環境を構築する。
制御部24は、再現対象サーバSvの疑似環境が構築された後に、調査資料11から取得した調査資料11に含まれる稼働情報等に基づき、起動時事象再現部28及び運用時事象再現部34を制御する。制御部24の事象再現部26の制御によって、再現対象サーバSvの事象が再現される。例えば、制御部24は、事象再現部26において実行される処理のタイミング、起動の順序、及び処理の遅延を、稼働情報等に基づき、忠実に再現することで、処理のタイミング、起動の順序、及び処理の遅延に依存する事象を再現する。
事象再現部26に含まれる起動時事象再現部28は、OSの起動処理及びタイミングに依存して発生する事象を再現する処理を実行する。例えば、制御部24による制御によって、起動時事象再現部28に含まれるOS疑似起動処理部30においてOS起動疑似処理が実行される。また、制御部24は、管理部38に含まれるサーバ管理ソフトウェア57の起動開始までの起動時間を求め、起動時間を経過すると、管理部38でデバックモード(後述)によりサーバ管理ソフトウェア57を起動させる。管理部38では、サーバ管理ソフトウェア57はOS起動疑似処理が実行されている疑似環境部22から情報を取得することによって起動時の環境が再現される。
また、事象再現部26に含まれる運用時事象再現部34は、再現対象サーバSvが通常稼働するときの運用時における事象を再現する処理を実行する。再現対象サーバSvの稼働時には、再現対象サーバSvにおいてサーバ管理ソフトウェア57が、CLIコマンドの実行を命令する。従って、再現対象サーバSvにおける運用時の事象を再現するために、運用時事象再現部34は、管理部38のサーバ管理ソフトウェア57よりCLIコマンド実行命令を受け取ると、疑似環境部22に格納されているCLI応答結果を示す情報を取得する。制御部24は、CLIコマンド実行命令に対するコマンド応答の遅延時間を求め、求めた遅延時間が経過したときに、疑似環境部22より取得したCLI応答結果を示す情報を、管理部38のサーバ管理ソフトウェア57に実行結果として返すように制御する。
図2に、情報処理システム10を、コンピュータで実現する場合の一例を示す。図1に示す情報処理システム10は、コンピュータ40により実現される。コンピュータ40はCPU42、メモリ44、及び不揮発性の格納部54を備えている。CPU42、メモリ44、及び格納部54はバス53を介して互いに接続されている。格納部54はHDDまたはフラッシュメモリ等によって実現できる。また、コンピュータ40はネットワークに接続するための通信制御部52を備え、通信制御部52はバス53に接続されている。また、コンピュータ40は、出力デバイスの一例としての表示装置46、キーボード及びマウス等の入力デバイスの一例としての入力装置48を備えている。表示装置46、及び入力装置48はバス53に接続されている。また、コンピュータ40は、光ディスク等の記録媒体49が装着され、装着された記録媒体49に対して読み書きするための装置(R/W装置)50を備えている。R/W装置50はバス53に接続されている。なお、表示装置46、入力装置48、及びR/W装置50は、省略してもよく、または必要に応じてバス53に接続するようにしてもよい。
格納部54には、OS55が記憶されている。CPU42がOS55を実行することで、コンピュータ40はサーバとして動作する。なお、コンピュータ40をサーバとして機能させるためのシステムファイル及びデバイスファイルは、OS55により指定された指定領域に格納される。図2には指定領域の一例として、自己環境領域56を示す。なお、コンピュータ40をサーバとして機能させる所定の主要な機能は、周知の技術であるため、詳細な説明を省略する。
また、格納部54には、サーバ管理ソフトウェア57、関連ソフトウェア58、及びコンポーネント60が記憶されている。サーバ管理ソフトウェア57は、サーバの稼働を管理するためのソフトウェアである。CPU42がサーバ管理ソフトウェア57を実行することで、コンピュータ40は、図1に示す管理部38として動作する。
関連ソフトウェア58は、事象を再現するときに使用する再現対象サーバSvにおいて稼働されるソフトウェアである。なお、事象を再現するときに使用する再現対象サーバSvにおいて稼働されるソフトウェアは、例えば、予め準備しておき、関連ソフトウェア58として格納すればよい。また、調査資料11に基づき再現対象サーバSvで稼働されるソフトウェアを特定し、特定したソフトウェアを取得して事象を再現するときに使用する再現対象サーバSvで稼働されるソフトウェアとして関連ソフトウェア58に格納してもよい。
また、コンポーネント60は、事象を再現するための各種の機能を実現するために部品化されたソフトウェアとしてのコンポーネントを複数含んでいる。本実施形態では、コンポーネント60は、制御コンポーネント62、疑似環境構築コンポーネント64、及び事象再現コンポーネント66を含んでいる。事象再現コンポーネント66は、起動時事象再現コンポーネント68及び運用時事象再現コンポーネント70を含んでいる。コンポーネント60は、事象再現試験システム12の主機能に対応すると共に、疑似環境を構築する機能、OS起動時に発生する事象を再現する機能、及び運用時に発生する事象を再現する機能を有している。コンポーネント60は、CPU42によって格納部54から読み出されてメモリ44に展開されて実行される。つまり、情報処理システム10がコンピュータ40で実現され、CPU42がコンポーネント60を実行することで、コンピュータ40は、図1に示す事象再現試験システム12として動作する。
疑似環境構築コンポーネント64は、CPU42によって格納部54から読み出されてメモリ44に展開されて実行される。つまり、情報処理システム10がコンピュータ40で実現され、CPU42が疑似環境構築コンポーネント64を実行することで、コンピュータ40は、図1に示す疑似環境構築部14として動作する。疑似環境構築コンポーネント64は、図1に示す情報解析部16、インストール部18、及びデータ展開部20として動作させる各プロセスを含んでおり、各プロセスの実行により、疑似環境構築部14として動作する。詳細は後述するが、疑似環境構築コンポーネント64は、調査資料11を解析し、解析結果のデータを展開することで、情報処理システム10内に再現対象サーバSvの疑似環境を構築する。
事象再現コンポーネント66は、再現対象サーバSvにおいて発生した事象を再現する処理を実行する。事象再現コンポーネント66は、CPU42によって格納部54から読み出されてメモリ44に展開されて実行される。つまり、情報処理システム10がコンピュータ40で実現され、CPU42が事象再現コンポーネント66を実行することで、コンピュータ40は、図1に示す事象再現部26として動作する。
起動時事象再現コンポーネント68は、図1に示すOS疑似起動処理部30、及びソフトウェア起動処理部32として動作させる各プロセスを含んでおり、各プロセスの実行により、図1に示す起動時事象再現部28として動作する。起動時事象再現コンポーネント68は、OS起動時に発生する事象再現のための処理を実行する。詳細は後述するが、起動時事象再現コンポーネント68は、OSの疑似的な起動処理及びサーバ管理ソフトウェア57の起動を実行する。
事象再現コンポーネント66に含まれる運用時事象再現コンポーネント70は、図1に示すCLI応答部36として動作させるプロセスを含んでおり、該プロセスの実行により、図1に示す運用時事象再現部34として動作する。運用時事象再現コンポーネント70は、詳細は後述するが、運用時に発生する事象再現のための処理を実行する。
制御コンポーネント62は、CPU42によって格納部54から読み出されてメモリ44に展開されて実行される。つまり、情報処理システム10がコンピュータ40で実現され、CPU42が制御コンポーネント62を実行することで、コンピュータ40は、図1に示す制御部24として動作する。詳細は後述するが、制御コンポーネント62は、起動時事象再現コンポーネント68において実行されるソフトウェアの起動順序、及びタイミングを制御する。また、制御コンポーネント62は、再現対象サーバSvの運輸時を再現するために、CLI応答による応答の遅延を制御する。
格納部54には、事象を再現する再現対象サーバSvの環境に関係する情報を格納するための疑似環境領域72が設けられている。疑似環境領域72は、構成データを格納するための格納領域73、ファイルディレクトリデータを格納するための格納領域74、CLI応答結果データを格納するための格納領域75、及びトレースデータを格納するための格納領域76を含んでいる。
格納領域73に格納される構成データは、事象を再現する再現対象サーバSvにおけるOSに関係するファイル及びディレクトリの各々を示す情報である。格納領域74に格納されるファイルディレクトリデータは、模擬的に再現対象サーバSvを稼働させるときに格納されるファイル及びディレクトリの各々を示す情報である。格納領域75に格納されるCLI応答結果データは、模擬的に再現対象サーバSvを稼働させるときに再現対象サーバSvに対する命令または情報出力の要求の応答結果を示す情報である。格納領域76に格納されるトレースデータは、例えば、ドライバへアクセスした状況等を示す再現対象サーバSvの稼働ログを示す情報である。つまり、トレースデータには、時刻、及びソフトウェアによる処理の詳細な記録が含まれる。また、トレースデータには、再現対象サーバSvで実行されたコマンド、応答の時刻、及び応答時間が含まれると共に、再現対象サーバSvでのCPU使用率及びメモリ使用量等の負荷情報が含まれる。
本実施形態では、サーバ管理ソフトウェア57の実行により管理部38が情報処理システム10の稼働を管理する場合の一例を説明する。管理部38(サーバ管理ソフトウェア57)は、構成情報及び稼働情報を使用して情報処理システム10を管理する。具体的には、OSに関係するファイル及びディレクトリの各々を示す情報、コマンド、応答の時刻及び応答時間の各々を示す情報、OSに対する命令または情報出力の要求の応答結果を示す情報を使用して、管理部38により情報処理システム10が管理される。
また、本実施形態では、管理部38は、情報処理システム10の管理に加えて、疑似的に構築される再現対象サーバSvの管理にも寄与する。
図3に示すように、管理部38として動作されるサーバ管理ソフトウェア57は、管理部38でメイン処理部38Mとして動作させるメイン処理機能のソフトウェア57Mを含んでいる。また、サーバ管理ソフトウェア57は、管理部38でデバッグ部38Dとして動作させるデバッグ機能のソフトウェア57Dを含んでいる。メイン処理機能のソフトウェア57Mは、サーバの稼働を管理するための主要なソフトウェアである。一方、デバッグ機能のソフトウェア57Dは、サーバ管理ソフトウェア57を、自己サーバの稼働管理と、疑似環境による再現対象サーバSvの稼働管理とを切り替える機能を含むソフトウェアである。例えば、サーバ管理ソフトウェア57は、デバック機能がオフのとき、自己環境部23(つまりOS55による自己環境領域56)に格納された情報を使用して、自己サーバの稼働を管理する。一方、デバック機能がオンのとき、サーバ管理ソフトウェア57は、疑似環境部22(つまり疑似環境領域72)に格納された情報を使用して、疑似環境による再現対象サーバSvの稼働を管理、すなわち疑似環境による再現対象サーバSvにおける事象を再現する。
管理部38は、再現対象サーバSvにおける事象を再現する処理にも寄与する。すなわち、サーバ管理ソフトウェア57が出力するトレースデータを解析することにより事象が再現したことを掌握できる。例えば、調査資料11に含まれるトレースデータとサーバ管理ソフトウェア57の実行により動作する管理部38で得られるトレースデータを比較し、同一の結果を得ることができるときに事象が再現したと判断できる。トレースデータの比較処理は、詳細を後述する起動時事象再現処理の終了後、または運用時事象再現処理の終了後に実行すればよい。
なお、本実施形態では、サーバ管理ソフトウェア57を使用して再現対象サーバSvで発生した事象を再現する場合の一例を説明する。しかし、開示の技術は、サーバ管理ソフトウェア57の使用に限定されるものではない。例えば、再現対象サーバSvの稼働をトレースするシミュレーションソフトウェア等の模擬ソフトウェアにも適用することができる。
なお、事象再現試験システム12は開示の技術における情報処理装置の一例である。また、疑似環境構築部14は、開示の技術における構築部の一例であり、事象再現部26は開示の技術における再現部の一例である。また、コンピュータ40で実行されるプログラムは、開示の技術における情報処理プログラムの一例である。また、コンピュータ40で実行されるプログラムは、コンピュータ40を開示の技術における情報処理装置として機能させるためのプログラムでもある。また、コンピュータ40に処理を実行させるためのプログラムを記録した光ディスク等の記録媒体49は開示の技術の記録媒体の一例である。
次に本実施形態の作用を説明する。
図4に、情報処理システム10に含まれる事象再現試験システム12における動作の概要を示す。事象再現試験システム12は、再現対象サーバSvで発生する事象を再現する環境を構築する処理、及び再現対象サーバSvで発生する事象を再現する処理を実行する。
図4に、情報処理システム10に含まれる事象再現試験システム12における動作の概要を示す。事象再現試験システム12は、再現対象サーバSvで発生する事象を再現する環境を構築する処理、及び再現対象サーバSvで発生する事象を再現する処理を実行する。
事象再現試験システム12は、事象が発生した再現対象サーバSvの環境より取得した調査資料11を解析する。次に事象再現試験システム12は、調査資料11に基づくデータを情報処理システム10内の疑似環境部22に展開することにより、再現対象サーバSvの疑似的な環境である再現環境を構築する。次に事象再現試験システム12は、再現対象サーバSvで発生する事象を再現するために、管理部38に含まれるサーバ管理ソフトウェア57の起動及び制御を実行する。サーバ管理ソフトウェア57は、疑似環境部22に構築された再現環境より情報の取得を実行することにより、再現対象サーバSvで発生した事象が再現される。つまり、サーバ管理ソフトウェア57はOSから保守情報としてのデータを収集する。例えば、保守情報としてのデータの収集は、ファイルとして格納されたデータを取得(アクセス)する処理、またはコマンドを実行し、実行結果のデータを取得する処理により達成できる。
図5に、コンピュータ40(図2)で実現される情報処理システム10に含まれる事象再現試験システム12(図1)の処理の流れを示す。
事象再現試験システム12は、再現対象サーバSvの環境を情報処理システム10に疑似的に構築する処理を実行する。具体的には疑似環境構築部14は、ステップ100において、再現対象サーバSvの疑似環境構築処理を実行する(図6も参照)。すなわち、CPU42が疑似環境構築コンポーネント64を実行することで、コンピュータ40は、図1に示す疑似環境構築部14として動作する。疑似環境構築処理は、再現対象サーバSvより取得した調査資料11に含まれる情報を入力として、情報処理システム10に事象を再現する試験を実施するために使用する各種ソフトウェアのインストール及びデータの展開を実行する。
図6及び図7に、疑似環境構築部14に含まれる各部の関係を示す。疑似環境構築部14の情報解析部16は、再現対象サーバSvより取得した調査資料11を解析し、解析結果16Aを出力する。関連ソフトウェアのインストール部18は、解析結果16Aに基づいて関連ソフトウェアを、OS55で稼働される情報処理システム10にインストールする。また、データ展開部20は、解析結果16Aに基づいて、再現対象サーバSvの環境に関係する情報(ファイルディレクトリデータ、CLI応答結果データ、及びトレースデータ)を疑似環境領域72の格納領域74、75、76の各々に展開し、格納する。
図5に示すように、具体的には疑似環境構築部14に含まれる情報解析部16が、ステップ102において、再現対象サーバSvの環境より取得した調査資料11を解析する。また、ステップ102では、調査資料11に含まれる情報を解析した結果に基づいて、疑似的に再現環境を構築するために使用するデータを抽出する。例えば、調査資料11に含まれ、かつ、再現対象サーバSvのOS情報、インストールされているソフトウェア、ファイル・ディレクトリの構成、及びトレースデータ等の事象を再現する試験を実施するために使用する各種情報が抽出される。さらに、ステップ102では、抽出したデータを、関連ソフトウェアのインストール部18またはデータ展開部20の何れで使用するデータであるかを選別し、インストール部18またはデータ展開部20で読み込み可能なデータに整形して解析結果として出力する。
調査資料11に含まれる情報のうち、関連ソフトウェアのインストール部18で使用するデータの一例に、関連ソフトウェアを特定する情報がある。関連ソフトウェアを特定する情報は、例えば、関連ソフトウェアの版数、設定、及び動作ログ等がある。なお、関連ソフトウェアは、再現対象サーバSvにインストールされており、サーバ管理ソフトウェア57と連携して動作するソフトウェアが好ましい一例である。関連ソフトウェアの具体例は、クラスタ連携ソフトウェア、保守情報収集ソフトウェア、及びディスク制御ソフトウェアなどが知られている。
また、データ展開部20で使用するデータの一例には、再現対象サーバSvのシステム構成を示す情報、デバイスに関連するファイル及びディレクトリの構成を示す情報、CLI応答結果を示す情報、及びトレースデータを示す情報がある。
次に、関連ソフトウェアのインストール部18は、ステップ104において、関連ソフトウェアを、OS55で稼働される情報処理システム10にインストールする。つまり、関連ソフトウェアのインストール部18では、情報解析部16の解析結果として抽出された再現対象サーバSvの再現環境で使用するソフトウェアのインストール、及び設定を実行する。例えば、サーバ管理ソフトウェア57は、関連ソフトウェアと連携しながら動作することが知られている。関連ソフトウェアと連携する箇所でサーバ管理ソフトウェア57に障害が発生した場合、再現対象サーバSvにおける事象の再現は、関連ソフトウェアの版数または設定に依存することがある。そこで、関連ソフトウェアのインストール部18では、調査資料11に含まれる情報から抽出した再現対象サーバSvにインストールされた関連ソフトウェアの版数、及び設定と同一の関連ソフトウェアを、情報処理システム10にインストールする。
次に、データ展開部20では、情報解析部16の解析結果として抽出された再現対象サーバSvの再現環境構築に使用する情報、及び再現試験を実行するときに使用する情報を疑似環境部22に展開する。再現環境構築に使用する情報の一例として、システム、及びデバイスに関連するファイル、並びにディレクトリの構成を示す情報(ファイルディレクトリデータ)がある。
ところで、サーバ管理ソフトウェア57は、OSが用いるシステムファイル及びデバイスファイルからハードウェア情報等の情報を取得する。サーバ管理ソフトウェア57で使用する情報の一例として、CPU情報及びディスクデバイス情報等が知られている。CPU情報の一例として、特定ファイル(/proc / cpuinfoファイル)、つまり特定ディレクトリ(例えば、「proc」)配下の特定ファイル(例えば、「cpuinfo」)に記述された内容を示す情報がある。また、ディスクデバイス情報の一例として、指定ファイル(/dev/sdxファイル)、つまり指定ディレクトリ(例えば、「dev」)配下の指定ファイル(例えば、「sdx」)に記述された内容を示す情報がある。
従って、再現対象サーバSvの環境を情報処理システム10に再現するためには、再現対象サーバSvのファイルディレクトリの構成、及び内容を再現対象サーバSvにおいて事象が発生したときと同一の内容にすることが好ましい。
ところが、CPU情報及びディスクデバイス情報等の情報によるファイル及びディレクトリの構成は、ハードウェア環境によって定まることが一般的である。従って、ハードウェア環境が相違すると、CPU情報及びディスクデバイス情報等の情報を同一の情報にすることが困難である。なお、CPU情報及びディスクデバイス情報等の情報を強制的に自己のハードウェアの構成と相違する情報に設定した場合、情報処理システム10が正常に稼働しない場合があり、再現試験の実行が困難になる場合がある。
そこで、データ展開部20では、事象が発生した環境の再現対象サーバSvより取得した調査資料11から得られたファイル及びディレクトリの構成を示す情報を情報処理システム10(コンピュータ40)の疑似環境部22に展開する。つまり、OS55で稼働される情報処理システム10(コンピュータ40)のシステムファイルに、再現対象サーバSvより取得した調査資料11による情報を置換するのではなく、別個の領域に展開する。
従って、情報処理システム10(コンピュータ40)のOS等は事象再現試験システム12の影響を受けることなく、情報処理システム10(コンピュータ40)で稼働される自身のハードウェア構成に基づくファイル及びディレクトリを参照することができる。また、再現対象サーバSvの事象再現試験を実行するとき、例えばサーバ管理ソフトウェア57に対してのみ再現対象サーバSvにおけるファイル及びディレクトリの構成を示す情報を、疑似環境部22から取得することができる。
次に、再現試験を実行するときに使用する情報の一例は、サーバ管理ソフトウェア57が動作中に内部で使用するCLI応答結果データ、及びトレースデータ等である。CLI応答結果データの一例として、プロセスの状態を監視するために使用するPSコマンドなどの応答結果を示す情報が知られている。また、トレースデータの一例として、時刻情報及びCPU利用率等の負荷情報を含む情報が知られている。なお、再現試験を実行するときに使用する情報は、後述する事象再現部26(事象再現コンポーネント66)」において使用可能なデータ形式に整形して疑似環境部22に展開することが好ましい。
事象再現試験システム12は、ステップ100の再現対象サーバSvの疑似環境構築処理が終了すると、ステップ108において、起動時の事象を再現するか否かを判断する。ステップ108の判断処理は、ユーザが入力装置48(図2)を操作して起動時の事象を再現する選択を指示したか否かを判別したり、ユーザが入力装置48を操作して予め定めたコマンドを入力したか否かを判別したりすることで判断できる。
事象再現試験システム12は、ステップ108で肯定判断されると、ステップ110へ進み、再現対象サーバSvにおける起動時の事象を再現する処理を実行して本処理ルーチンを終了する。一方、ステップ108で否定判断されると、ステップ112においてサーバ管理ソフトウェア57を起動させ、次のステップ114へ進み、再現対象サーバSvにおける運用時の事象を再現する処理を実行して本処理ルーチンを終了する。
次に、再現対象サーバSvにおける起動時の事象を再現する処理をさらに説明する。図8に、図5に示すステップ110の処理に対応し、かつ、再現対象サーバSvにおける起動時の事象を再現する処理の流れの一例を示す。
なお、再現対象サーバSvの起動時事象を再現するOSのファイル及びディレクトリを示す情報は、格納領域73に構成データの1つとして格納される。OSのファイル及びディレクトリを示す情報は、OSにおいて使用されるファイルを示す情報またはファイルの位置を示すディレクトリ等の構造を示す情報である。
事象再現試験システム12は、ステップ120において、制御部24を起動させる。すなわち、CPU42が制御コンポーネント62を実行することで、コンピュータ40は、図1に示す制御部24として動作を開始する。
次のステップ122では、制御部24によりOS疑似起動処理部30が起動されて、OS疑似起動処理が開始される。ステップ122の処理は、OS疑似起動処理部30に対応する起動時事象再現コンポーネント68に含まれるプロセスである。すなわち、CPU42が起動時事象再現コンポーネント68に含まれるプロセスを実行することで、コンピュータ40は、図1に示すOS疑似起動処理部30として動作を開始する。
なお、OS疑似起動処理では、再現対象サーバSvにおいてOSが起動される処理を疑似的に再現するために、制御部24の制御により各種処理の実行時期が調整される(詳細は後述)。また、制御部24は、再現対象サーバSvにおいて稼働する各種ソフトウェアの稼働を疑似的に再現するために、各種処理の実行時期を調整する。
次のステップ124では、制御部24により疑似環境部22に格納されているトレースデータに基づいて管理部38の起動開始までの起動時間が算出され、起動時間が経過する(ステップ126で肯定判断される)まで処理が待機される。
ステップ126で肯定判断されると、ステップ128において、制御部24によりソフトウェア起動処理部32が起動されて、ソフトウェア起動処理が開始される。すなわち、CPU42が起動時事象再現コンポーネント68に含まれるソフトウェア起動処理部32に対応するプロセスを実行することで、コンピュータ40は、図1に示すソフトウェア起動処理部32として動作を開始する。
また、次のステップ130では、デバッグモードでサーバ管理ソフトウェア57が起動されるように、ソフトウェア起動処理部32により管理部38が制御される。つまり、ソフトウェア起動処理部32は、デバッグモードにて管理部38を起動させる。従って、ステップ128及びステップ130の処理は、ソフトウェア起動処理部32に対応する起動時事象再現コンポーネント68に含まれるプロセスである。
次のステップ132では、管理部38に対して疑似環境部22から情報を取得する指示がなされる。すなわち、ソフトウェア起動処理部32の制御によりデバッグモードで起動された管理部38として実行されるサーバ管理ソフトウェア57は、疑似環境部22から各種情報を取得する(図3も参照)。
次に、起動時の事象を再現する処理について具体的な一例を説明する。図9に、起動時の事象を再現する処理に関係する各部の対応の一例を示す。また、図10に、起動時の事象を再現する処理に関係する処理の順序の一例を示す。また、図11に、起動時の事象を再現する処理に関係する各部の時系列的なシーケンスの一例を示す。
まず、制御部24は、格納領域76に格納されたトレースデータを取得する。トレースデータの取得の処理は、図9に、データの流れDT01として示す。制御部24は、取得したトレースデータに基づいてOS疑似起動処理部30及びソフトウェア起動処理部32を制御する。
すなわち、OS疑似起動処理部30は、格納領域73から、構成データの1つとして格納されるディレクトリ及びファイルを示す情報を取得する。ディレクトリ及びファイルを示す情報の取得の処理は、図9~図11にデータの流れDT02として示す。OS疑似起動処理部30は、取得したディレクトリ及びファイルを示す情報を、OSの起動時に読み込まれる順序で格納領域74にファイルディレクトリデータとして複写する。OS疑似起動処理部30により格納領域74にファイルディレクトリデータを複写する処理が開始されることで、疑似起動処理SRが実行される(図11参照)。
ディレクトリ及びファイルを示す情報を複写する処理は、図9~図11にデータの流れDT03として示す。制御部24は、取得したトレースデータの時刻、応答時間、及び負荷情報から得られた応答遅延の情報を用いて、起動時事象再現部28に含まれるOS疑似起動処理部30による処理としての複写する時間及び時期を調整(タイミング調整)する。タイミング調整の処理は、図9~図11に制御CT01として示す。
また、サーバ管理ソフトウェア57が実行される管理部38は、起動時事象再現部28のソフトウェア起動処理部32によりデバッグモードで起動される。ソフトウェア起動処理部32についてデバッグモードによる起動の処理は、図9~図11に制御CT03として示す。また、サーバ管理ソフトウェア57に関連するソフトウェアもソフトウェア起動処理部32により起動される。関連するソフトウェアの起動の処理は、図9~図11に制御CT04として示す。なお、サーバ管理ソフトウェア57に関連するソフトウェアについては、図9にデータの流れDT05として示す。なお、サーバ管理ソフトウェア57が実行される管理部38がデバッグモードの場合、サーバ管理ソフトウェア57は疑似環境部22から情報を取得する(図9)。
例えば、再現対象サーバSvにおける事象発生環境では、システムファイルまたはデバイスファイルは、領域「 /proc/ 」または領域「/dev/ 」などの規定領域の配下に格納される。本実施形態では、疑似環境構築時に、規定領域ではなく、疑似環境として予め定めた特定領域の配下にシステムファイル及びデバイスファイルが複写される。すなわち、システムファイル及びデバイスファイルは、情報処理システム10内の「/tmp/proc/」または「/tmp/dev/」などの「/tmp/」配下の領域に順次複写される。従って、デバッグモードで動作するサーバ管理ソフトウェア57は、「/proc/」または「/dev/」ではなく、「/tmp/」配下にある疑似環境の領域から情報を取得する。
次に、再現対象サーバSvにおける運用時の事象を再現する処理をさらに説明する。図12に、図5に示すステップ114の処理に対応する、再現対象サーバSvにおける運用時の事象を再現する処理の流れの一例を示す。なお、再現対象サーバSvの運用時事象を再現するファイル及びディレクトリを示す情報は、格納領域74にファイルディレクトリデータとして格納される。また、運用時の事象を再現する処理では、起動時の事象を再現する処理と同様に、サーバ管理ソフトウェア57が実行される管理部38は、デバッグモードで動作される。従って、再現対象サーバSvにおける運用時の事象を再現する処理では、疑似環境部22内のファイルディレクトリデータが格納された格納領域74から情報を取得する。
事象再現試験システム12では、ステップ140において、制御部24が起動される。ところで、再現対象サーバSvが稼働する運用時には、サーバ管理ソフトウェア57は、プロセスの状態を監視するために使用するpsコマンド等のCLIコマンドを実行する。再現対象サーバSvでは、サーバ管理ソフトウェア57によるCLIコマンドの実行を受けて、CLIコマンドの応答結果を返信する。そこで、本実施形態では、運用時の事象を再現するために、次のステップ142では、制御部24により運用時事象再現部34が起動され、再現対象サーバSvにおける運用時の事象を再現する処理が開始される。すなわち、運用時事象再現部34は、管理部38のサーバ管理ソフトウェア57で実行されるコマンドを受信する。運用時事象再現部34における処理では、再現対象サーバSvの運用時の事象(処理)を疑似的に再現するために、制御部24の制御により各種処理の実行時期が調整される。
次に、運用時事象再現部34のCLI応答部36は、ステップ144において、疑似環境部22内の格納部75に格納されているCLI応答結果データを取得する。すなわち、再現対象サーバSvの運用時の事象として疑似的にCLI応答として出力するためのCLI応答結果データを疑似環境部22から取得する。
ところで、CLI応答結果データを疑似的にCLI応答として出力する場合、再現対象サーバSvの稼働状況により応答時間が遅延する。そこで、次のステップ146では、制御部24により疑似環境部22に格納されているトレースデータに基づいてCLI応答の遅延時間が算出され、遅延時間が経過される(ステップ148で肯定判断される)まで処理が待機される。ステップ148で肯定判断されると、ステップ150において、運用時事象再現部34のCLI応答部36は、ステップ144で取得したCLI応答結果データを、管理部38のサーバ管理ソフトウェア57へ出力する。
なお、CLI応答の遅延時間を示す応答遅延情報は、トレースデータから得ることができる。応答遅延情報の一例を説明する。トレースデータには、時刻、ソフトウェアによる処理の詳細な記録を示す情報、及びCPU使用率等の負荷情報等の各種情報が記録される。例えば、トレースデータに、再現対象サーバSvのハードウェア環境及びソフトウェア環境において実行されたコマンド、応答の時刻、及び応答時間がすべて記録されているとき、記録されている時刻及び応答時間からコマンド毎の応答遅延情報を得ることができる。また、トレースデータに再現対象サーバSvのハードウェア環境及びソフトウェア環境におけるCPU使用率及びメモリ使用量等の負荷情報が記録されているとき、再現対象サーバSvでの負荷情報に応じて遅延時間を算出し、応答遅延情報を得ることができる。例えば、予めCPU使用率、メモリ使用量、及び応答時間の関係を求め、データとして蓄積する。遅延時間は、蓄積されたデータに含まれるCPU使用率である負荷情報に対応する応答時間により求めることができる。
次に、運用時の事象を再現する処理について具体的な一例を説明する。図13に、運用時の事象を再現する処理に関係する各部の対応の一例を示す。また、図14に、運用時の事象を再現する処理に関係する各部の時系列的なシーケンスの一例を示す。
まず、制御部24は、格納領域76に格納されたトレースデータを取得する。トレースデータの取得の処理は、図13に、データの流れDT11として示す。制御部24は、取得したトレースデータに基づいて運用時事象再現部34を制御する。
再現対象サーバSvにおける運用時の事象を再現するとき、管理部38はpsコマンドなどのCLIコマンドを実行することにより、デバッグ部38DよりCLI応答部36に対してCLI応答を要求する。CLI応答を要求する処理は、図13及び図14に制御CT11として示す。CLI応答部36は、再現対象サーバSvにおけるCLI応答結果データを参照し(データの流れDT12)、取得する(データの流れDT13)。
次に、CLI応答結果データを疑似的にCLI応答として出力するために、CLI応答部36は制御部24に対してCLI応答の実行指示を要求する(制御CT12)。制御部24は疑似環境部22に格納されているトレースデータに基づいてCLI応答の遅延時間を算出し(制御CT13)、遅延時間が経過されるまで実行指示の命令処理を待機する(制御CT14)。制御部24は、CLI応答の遅延時間を経過すると、CLI応答部36に対してCLI応答結果データを出力する処理の実行を指示する(制御CT15)。CLI応答部36はCLI応答結果データ、管理部38のサーバ管理ソフトウェア57へ出力する(データの流れDT14)。
以上説明したように、本実施形態では、再現対象サーバSvの構成情報と稼働情報を含む調査資料11に基づいて、事象を再現するときに使用するハードウェア環境及びソフトウェア環境を疑似的に構築して、再現対象サーバSvで発生する事象を再現する。従って、同一のハードウェア環境及びソフトウェア環境を予め用意することなく、再現対象サーバSvで発生する事象を再現することができる。
また、本実施形態では、調査資料11に含まれる情報に基づいて、再現対象サーバSvにおけるソフトウェアの実行時期及び処理の順序を再現するので、OSの起動処理またはソフトウェアの実行時期に依存して発生する事象を忠実に再現することができる。また、本実施形態では、調査資料11に含まれる情報に基づいて、再現対象サーバSvにおける負荷等による応答遅延に伴う事象を再現するので、再現対象サーバSvの実環境に近い環境により事象を再現することができる。
なお、本実施形態では、情報処理システム10の一例として、コンピュータを対象とした場合を説明したが、コンピュータの種類に限定されるものではない。例えば、パーソナルコンピュータ、またはその他の組み込み用途のコンピュータでもよい。
また、本実施形態では、記憶媒体の一例としての格納部54として、HDDを適用した場合を説明したが、HDDに限定されるものではなく、ソリッドステートドライブ(SSD)であってもシリアルフラッシュメモリなどであってもよい。
なお、上記では情報処理システム10をコンピュータ40により実現する一例を説明した。しかし、これらの構成に限定されるものではなく、上記説明した要旨を逸脱しない範囲において、各種の改良及び変更を行っても良いのはもちろんである。
また、上記ではプログラムが格納部54に予め記憶(インストール)されている態様を説明したが、これに限定されるものではない。例えば、開示の技術における情報処理プログラムは、CD-ROMまたはDVD-ROM等の記録媒体に記録されている形態で提供することも可能である。
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
Claims (24)
- 再現対象サーバの構成を示す構成情報と、前記再現対象サーバで実行される一連の処理の順序及び処理時間を含む該一連の処理の実行に関係する稼働情報とに基づいて、前記再現対象サーバの環境を示す疑似環境情報を作成し、作成した前記疑似環境情報を記憶装置に記憶することにより前記再現対象サーバの疑似環境を構築する構築部と、
前記疑似環境としての前記再現対象サーバの環境を示す前記疑似環境情報に基づいて、前記再現対象サーバの構成に依存して前記一連の処理が実行される前記一連の処理の順序及び各処理の実行時期を定め、定めた前記一連の処理の順序及び各処理の実行時期に従って前記一連の処理を実行することにより、前記再現対象サーバの稼働を再現する再現部と、
を備えた情報処理装置。 - 前記構築部は、前記疑似環境情報を、自機の環境を示す自機環境情報を格納する領域と相違する領域でかつ疑似環境用として予め定めた前記記憶装置の特定領域に格納する
請求項1に記載の情報処理装置。 - 前記再現部は、前記再現対象サーバの稼働を再現するときに、前記特定領域と相違する領域でかつ前記再現対象サーバの稼働再現用として予め定めた前記記憶装置の指定領域に、前記特定領域から一部の情報を複写する
請求項2に記載の情報処理装置。 - 前記再現部は、前記再現対象サーバの起動処理を前記一連の処理として、前記疑似環境情報に基づく前記一連の処理の順序及び各処理の実行時期に従って前記再現対象サーバの起動処理を実行することにより、前記再現対象サーバの起動時の事象を再現する
請求項1~請求項3の何れか1項に記載の情報処理装置。 - 前記再現部は、前記再現対象サーバの起動処理として、前記再現対象サーバで実行されるオペレーティングシステムの起動処理を実行する
請求項4に記載の情報処理装置。 - 前記再現部は、運用中の前記再現対象サーバに対して実行される少なくとも1つの実行処理に関係する処理を前記一連の処理として、前記疑似環境情報に基づく前記一連の処理の順序及び各処理の実行時期に従って前記運用中における前記一連の処理を実行することにより、前記再現対象サーバの運用時の事象を再現する
請求項1~請求項4の何れか1項に記載の情報処理装置。 - 前記構築部で作成される前記疑似環境情報は、前記再現対象サーバの運用時に前記再現対象サーバの状態を監視する命令に対する応答結果に関する応答結果情報を含み、
前記再現部は、前記疑似環境情報から前記応答結果情報を取得し、かつ前記再現対象サーバの状態を監視する命令に対して、前記疑似環境情報に含まれる前記応答結果情報を使用して前記運用中の前記一連の処理を実行する
請求項6に記載の情報処理装置。 - 前記構築部で作成される前記疑似環境情報に基づいて、前記一連の処理の各処理の実行時期を求めかつ、前記再現部で実行する前記一連の処理の各処理の時期を制御する制御部を含む
請求項1~請求項7の何れか1項に記載の情報処理装置。 - コンピュータによって、
再現対象サーバの構成を示す構成情報と、前記再現対象サーバで実行される一連の処理の順序及び処理時間を含む該一連の処理の実行に関係する稼働情報とに基づいて、前記再現対象サーバの環境を示す疑似環境情報を作成し、作成した前記疑似環境情報を記憶装置に記憶することにより前記再現対象サーバの疑似環境を構築し、
前記疑似環境としての前記再現対象サーバの環境を示す前記疑似環境情報に基づいて、前記再現対象サーバの構成に依存して前記一連の処理が実行される前記一連の処理の順序及び各処理の実行時期を定め、定めた前記一連の処理の順序及び各処理の実行時期に従って前記一連の処理を実行することにより、前記再現対象サーバの稼働を再現する
情報処理方法。 - 前記再現対象サーバの疑似環境を構築するとき、前記疑似環境情報を、自機の環境を示す自機環境情報を格納する領域と相違する領域でかつ疑似環境用として予め定めた前記記憶装置の特定領域に格納する
請求項9に記載の情報処理方法。 - 前記再現対象サーバの稼働を再現するとき、前記特定領域と相違する領域でかつ前記再現対象サーバの稼働再現用として予め定めた前記記憶装置の指定領域に、前記特定領域から一部の情報を複写する
請求項9または請求項10に記載の情報処理方法。 - 前記再現対象サーバの稼働を再現するとき、前記再現対象サーバの起動処理を前記一連の処理として、前記疑似環境情報に基づく前記一連の処理の順序及び各処理の実行時期に従って前記再現対象サーバの起動処理を実行することにより、前記再現対象サーバの起動時の事象を再現する
請求項9~請求項11の何れか1項に記載の情報処理方法。 - 前記再現対象サーバの稼働を再現するとき、前記再現対象サーバの起動処理として、前記再現対象サーバで実行されるオペレーティングシステムの起動処理を実行する
請求項12に記載の情報処理方法。 - 前記再現対象サーバの稼働を再現するとき、運用中の前記再現対象サーバに対して実行される少なくとも1つの実行処理に関係する処理を前記一連の処理として、前記疑似環境情報に基づく前記一連の処理の順序及び各処理の実行時期に従って前記運用中における前記一連の処理を実行することにより、前記再現対象サーバの運用時の事象を再現する
請求項9~請求項12の何れか1項に記載の情報処理方法。 - 前記疑似環境情報は、前記再現対象サーバの運用時に前記再現対象サーバの状態を監視する命令に対する応答結果に関する応答結果情報を含み、
前記再現対象サーバの稼働を再現するとき、前記疑似環境情報から前記応答結果情報を取得し、かつ前記再現対象サーバの状態を監視する命令に対して、前記疑似環境情報に含まれる前記応答結果情報を使用して前記運用中の前記一連の処理を実行する
請求項14に記載の情報処理方法。 - 前記再現対象サーバの稼働を再現するとき、前記疑似環境情報に基づいて、前記一連の処理の各処理の実行時期を求めかつ、前記再現部で実行する前記一連の処理の各処理の時期を制御する
請求項1~請求項7の何れか1項に記載の情報処理方法。 - 再現対象サーバの構成を示す構成情報と、前記再現対象サーバで実行される一連の処理の順序及び処理時間を含む該一連の処理の実行に関係する稼働情報とに基づいて、前記再現対象サーバの環境を示す疑似環境情報を作成し、作成した前記疑似環境情報を記憶装置に記憶することにより前記再現対象サーバの疑似環境を構築し、
前記疑似環境としての前記再現対象サーバの環境を示す前記疑似環境情報に基づいて、前記再現対象サーバの構成に依存して前記一連の処理が実行される前記一連の処理の順序及び各処理の実行時期を定め、定めた前記一連の処理の順序及び各処理の実行時期に従って前記一連の処理を実行することにより、前記再現対象サーバの稼働を再現する
処理をコンピュータに実行させる情報処理プログラム。 - 前記再現対象サーバの疑似環境を構築するとき、前記疑似環境情報を、自機の環境を示す自機環境情報を格納する領域と相違する領域でかつ疑似環境用として予め定めた前記記憶装置の特定領域に格納する
請求項17に記載の情報処理プログラム。 - 前記再現対象サーバの稼働を再現するとき、前記特定領域と相違する領域でかつ前記再現対象サーバの稼働再現用として予め定めた前記記憶装置の指定領域に、前記特定領域から一部の情報を複写する
請求項17または請求項18に記載の情報処理プログラム。 - 前記再現対象サーバの稼働を再現するとき、前記再現対象サーバの起動処理を前記一連の処理として、前記疑似環境情報に基づく前記一連の処理の順序及び各処理の実行時期に従って前記再現対象サーバの起動処理を実行することにより、前記再現対象サーバの起動時の事象を再現する
請求項17~請求項19の何れか1項に記載の情報処理プログラム。 - 前記再現対象サーバの稼働を再現するとき、前記再現対象サーバの起動処理として、前記再現対象サーバで実行されるオペレーティングシステムの起動処理を実行する
請求項20に記載の情報処理プログラム。 - 前記再現対象サーバの稼働を再現するとき、運用中の前記再現対象サーバに対して実行される少なくとも1つの実行処理に関係する処理を前記一連の処理として、前記疑似環境情報に基づく前記一連の処理の順序及び各処理の実行時期に従って前記運用中における前記一連の処理を実行することにより、前記再現対象サーバの運用時の事象を再現する
請求項17~請求項21の何れか1項に記載の情報処理プログラム。 - 前記疑似環境情報は、前記再現対象サーバの運用時に前記再現対象サーバの状態を監視する命令に対する応答結果に関する応答結果情報を含み、
前記再現対象サーバの稼働を再現するとき、前記疑似環境情報から前記応答結果情報を取得し、かつ前記再現対象サーバの状態を監視する命令に対して、前記疑似環境情報に含まれる前記応答結果情報を使用して前記運用中の前記一連の処理を実行する
請求項22に記載の情報処理プログラム。 - 前記再現対象サーバの稼働を再現するとき、前記疑似環境情報に基づいて、前記一連の処理の各処理の実行時期を求めかつ、前記再現部で実行する前記一連の処理の各処理の時期を制御する
請求項17~請求項23の何れか1項に記載の情報処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2013/051919 WO2014118897A1 (ja) | 2013-01-29 | 2013-01-29 | 情報処理装置、情報処理方法、及び情報処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2013/051919 WO2014118897A1 (ja) | 2013-01-29 | 2013-01-29 | 情報処理装置、情報処理方法、及び情報処理プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014118897A1 true WO2014118897A1 (ja) | 2014-08-07 |
Family
ID=51261646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2013/051919 WO2014118897A1 (ja) | 2013-01-29 | 2013-01-29 | 情報処理装置、情報処理方法、及び情報処理プログラム |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2014118897A1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104932971A (zh) * | 2015-07-14 | 2015-09-23 | 上海斐讯数据通信技术有限公司 | 自动化平台针对待测设备的运行日志采集测试方法及*** |
EP3296875A4 (en) * | 2015-05-11 | 2018-04-18 | Mitsubishi Electric Corporation | Simulation reproduction device, simulation reproduction method, and simulation reproduction program |
JP2019032745A (ja) * | 2017-08-09 | 2019-02-28 | 富士通株式会社 | 情報処理装置、情報処理方法及びプログラム |
US10514996B2 (en) | 2016-04-12 | 2019-12-24 | Mitsubishi Electric Corporation | Simulation reproducing apparatus and computer-readable recording medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008176353A (ja) * | 2007-01-16 | 2008-07-31 | Nec Corp | 情報処理装置及びログ取得方法並びにプログラム |
WO2010097953A1 (ja) * | 2009-02-27 | 2010-09-02 | 富士通株式会社 | 情報処理装置における障害再現装置及び障害再現方法並びに障害再現プログラム |
JP2010256997A (ja) * | 2009-04-21 | 2010-11-11 | Fujitsu Ltd | フィールドトラブルのエラー再現システム、エラー再現調査方法およびシナリオ実行プログラム |
WO2012026035A1 (ja) * | 2010-08-27 | 2012-03-01 | 富士通株式会社 | 障害処理方法,障害処理システム,障害処理装置及び障害処理プログラム |
JP2012163997A (ja) * | 2011-02-03 | 2012-08-30 | Nec System Technologies Ltd | 障害解析支援システム、障害解析支援方法、および障害解析支援プログラム |
-
2013
- 2013-01-29 WO PCT/JP2013/051919 patent/WO2014118897A1/ja active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008176353A (ja) * | 2007-01-16 | 2008-07-31 | Nec Corp | 情報処理装置及びログ取得方法並びにプログラム |
WO2010097953A1 (ja) * | 2009-02-27 | 2010-09-02 | 富士通株式会社 | 情報処理装置における障害再現装置及び障害再現方法並びに障害再現プログラム |
JP2010256997A (ja) * | 2009-04-21 | 2010-11-11 | Fujitsu Ltd | フィールドトラブルのエラー再現システム、エラー再現調査方法およびシナリオ実行プログラム |
WO2012026035A1 (ja) * | 2010-08-27 | 2012-03-01 | 富士通株式会社 | 障害処理方法,障害処理システム,障害処理装置及び障害処理プログラム |
JP2012163997A (ja) * | 2011-02-03 | 2012-08-30 | Nec System Technologies Ltd | 障害解析支援システム、障害解析支援方法、および障害解析支援プログラム |
Non-Patent Citations (1)
Title |
---|
KENJI TABATA: "Senpai Kanrisha ga Oshieru System Kanri no Kiso", NIKKEI WINDOWS FOR IT PROFESSIONALS, vol. 77, 1 August 2003 (2003-08-01), pages 114 - 119 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3296875A4 (en) * | 2015-05-11 | 2018-04-18 | Mitsubishi Electric Corporation | Simulation reproduction device, simulation reproduction method, and simulation reproduction program |
US10372576B2 (en) | 2015-05-11 | 2019-08-06 | Mitsubishi Electric Corporation | Simulation reproduction apparatus, simulation reproduction method, and computer readable medium |
CN104932971A (zh) * | 2015-07-14 | 2015-09-23 | 上海斐讯数据通信技术有限公司 | 自动化平台针对待测设备的运行日志采集测试方法及*** |
CN104932971B (zh) * | 2015-07-14 | 2018-03-06 | 上海斐讯数据通信技术有限公司 | 自动化平台针对待测设备的运行日志采集测试方法及*** |
US10514996B2 (en) | 2016-04-12 | 2019-12-24 | Mitsubishi Electric Corporation | Simulation reproducing apparatus and computer-readable recording medium |
JP2019032745A (ja) * | 2017-08-09 | 2019-02-28 | 富士通株式会社 | 情報処理装置、情報処理方法及びプログラム |
US10467079B2 (en) | 2017-08-09 | 2019-11-05 | Fujitsu Limited | Information processing device, information processing method, and non-transitory computer-readable storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10958548B2 (en) | Generating production server load activity for a test server | |
CN107209705A (zh) | 用于计算环境的活动回滚 | |
TW201301137A (zh) | 虛擬機器影像分析 | |
CN102750221B (zh) | 一种针对Linux文件***的性能测试方法 | |
CN103514023A (zh) | 一种虚拟机离线自动软件安装的方法及*** | |
KR101693683B1 (ko) | 가상 데이터베이스 되감기 | |
WO2014118897A1 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
KR101748833B1 (ko) | 소프트웨어 고장의 위치 확정 방법, 장치 및 설비 | |
CN102568522A (zh) | 硬盘性能的测试方法和装置 | |
US20120204182A1 (en) | Program generating apparatus and program generating method | |
CN103279408B (zh) | 独立冗余磁盘阵列raid性能的测试方法 | |
JP5320872B2 (ja) | 画像処理装置、情報処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体 | |
JP5425497B2 (ja) | ソフトウェア検証システムと方法およびプログラム | |
JP4672532B2 (ja) | オペレータ擬似システムおよびオペレータ擬似方法 | |
JP5365242B2 (ja) | 情報処理装置、ソフトウェア動作テストシステム、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体 | |
JP5314959B2 (ja) | 情報処理装置、及びその制御方法、コンピュータプログラム、記憶媒体 | |
EP3182278A1 (en) | System for automatic preparation of integrated development environments | |
JP5396759B2 (ja) | 情報処理装置、画像処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体 | |
JP5522304B2 (ja) | 情報処理装置、ソフトウェア動作テストシステム、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体 | |
JP2009104490A (ja) | プログラムのテスト装置 | |
US7743244B2 (en) | Computer system model generation with tracking of actual computer system configuration | |
JP6383331B2 (ja) | 制御エミュレータ及びi/oエミュレータ | |
JP5693668B2 (ja) | 情報処理装置装置、及びその制御方法、コンピュータプログラム、記憶媒体 | |
JP6648567B2 (ja) | データ更新制御装置、データ更新制御方法、及び、データ更新制御プログラム | |
JP6620653B2 (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: 13873616 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 13873616 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |