This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2008-271576, filed on Oct. 22, 2008, the entire contents of which are incorporated herein by reference.
This technique relates to a technique that enables to switch a virtual system between an operational system and a test system in one physical server pool including plural physical servers.
In an environment in which plural virtual machines are deployed on physical servers and a virtualized system is constructed by causing such plural virtual machines to cooperate each other through a network, it is desired that a test for the virtualized system (hereinafter, also called “virtual system”) is effectively and efficiently carried out. At present, the development and test of such a virtual system are carried out by physically preparing an environment for the development and test. Typically, the scale of the environment for the development and test is smaller than an actually operational environment in which the virtual system will be actually operated, and the environment for the development and test is separated from the actually operational environment.
The physical separation between the actually operational environment and the environment for the development and test allows to exclude the danger of harmfully influencing the actually operational system by the system in the development and test (e.g. the trouble of the system in the development and test causes the stop or mis-operation of the actually operational system). However, there is a case where the actually operational environment is different from the environment for the development and test. For instance, the hardwares of the physical servers may be different, the software versions of the Operating Systems (OS) or libraries may be different. Therefore, a lot of problems occur such as troubles, which were not observed in the environment for the development and test, are discovered after the operation of the system in the actually operational environment started, and troubles occur due to the setting mistakes when porting the virtual system from the environment for the development and test to the actually operational environment.
Incidentally, various conventional arts exist for the virtual system. However, no technique pays attention to the aforementioned problem.
Recently, non-stop of the business service becomes a very important system requirement. Namely, necessity and importance increase in which the test after the configuration change (e.g. change of the number of virtual machines that cooperate each other, and application of the security patch) of the system is conducted without stopping the business service being actually operated, and the system after the configuration change is promptly made to be actually operated. However, at present, such a requirement is not satisfied.
Namely, there is no technique to easily convert the virtual system from the test system to the operational system in one physical server pool including plural physical servers.
This virtual system control method includes: receiving a deployment request for requesting to deploy a test system of a specific virtual system in a physical server pool in which operational and test virtual systems can be deployed; activating a virtual machine necessary for the operational system of the specific virtual system in the physical server pool by using first server configuration data in configuration information for the operational system of the specific virtual system and a first virtual machine image for the operational system of the specific virtual system; activating a virtual machine to be added to the operational system of the specific virtual system in the physical server pool by using second server configuration data in configuration change information representing configuration information concerning difference between the operational system and the test system of the specific virtual system and a second virtual machine image for the virtual machine relating to the difference; and carrying out a setting of a network connecting the activated virtual machines according to network configuration data generated by merging first network setting information between the virtual machines in the configuration information for the operational system of the specific virtual system and second network setting information that represents difference on the network between the operational system and the test system of the specific virtual system, and is included in the configuration change information.
The object and advantages of the embodiment will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the embodiment, as claimed.
In this embodiment of this technique, as depicted in
Furthermore, in this embodiment of this technique, not only the operational system and the test system of the virtual system simply exist together, but also the configuration of the test system is contrived as depicted in
At this time, although two virtual machines for the DB server, which are included in the operational system, are activated, they are not used for the test and two virtual machines for the test DB are used on behalf of those. Thus, the virtual machines for the test system are activated additionally to the virtual machines of the operational system. However, the network configuration of the test system, which is represented by arrows, is different from that of the operational system, and the network configuration for the test is adopted.
Thus, by making the virtual machine configuration of the test system in a form that the additional virtual machines are added to the virtual machine configuration of the operational system, the problem does not easily occur when converting the virtual system from the test system to the operational system. Namely, the operational system is not defined separately from the test system, but the test system is defined only by the difference with the operational system. Therefore, when defining and constructing the test system, the virtual machine configuration of the operational system has already been confirmed. Therefore, when the test for the test system is conducted and there is no problem, it is possible to deploy and operate the operational system soon. In addition, because the system conversion in the same physical server pool is carried out, any problem due to the difference of the configuration in the physical server included in the physical server pool does not occur. Namely, the switching from the test system to the operational system can be carried out smoothly.
Based on the aforementioned outline of this embodiment,
The I/F 31 outputs data received from the service operation manager terminal 1 to the system manager 32, and outputs data received from the system manager 32 to the service operation manager terminal 1. The system manager 32 carries out data registration and data deletion to the system logical configuration storage 34, the VM image repository 35, the system logical configuration change storage 36, the test driver VM image repository 39 and the test item storage 40 according to the instructions from the service operation manager terminal 1. In addition, the system manager 32 manages data registered in the aforementioned data storage units by using the system management table 33. Furthermore, the system manager 32 cooperates with the logical system deployment unit 37.
The logical system deployment unit 37 manages the system deployment state table 38, and deploys a logical system 51 on the physical machines secured in the physical server pool 5 by using data stored in the system logical configuration storage 34, the VM image repository 35, the system logical configuration change storage 36 and the test driver VM image repository 39, and also carries out a processing to dismantle the virtual machine and the like. The logical system deployment unit 37 cooperates with the physical resource manager 42 and the automatic test execution unit 41.
The physical resource manager 42 carries out a processing to secure or release the physical servers on the physical server pool 5 according to instructions from the logical system deployment unit 37. Incidentally, the processing content of the physical resource manager 42 is the same as the conventional arts.
Furthermore, the automatic execution unit 41 executes the tests for the test items registered in the test item storage 40 against the logical system 51 according to instructions from the logical system deployment unit 37, and outputs test results to the logical system deployment unit 37. Incidentally, the processing content of the automatic test execution unit 41 is the same as the conventional arts.
An example of data stored in the system management table 33 is depicted in
An example of data stored in the system logical configuration storage 34 is depicted in
In addition, a schematic diagram of data stored in the VM image repository 35 is depicted in
In addition, an example of data stored in the system deployment state table 38 managed by the logical system deployment unit 37 is depicted in
Next, an example of data stored in the system logical configuration change storage 36 is depicted in
In addition, data stored in the test driver VM image repository 39 is schematically depicted in
Furthermore, data as depicted in
Next, a processing content of the system depicted in
The logical system deployment unit 37 receives the deployment instruction of the virtual system X, which includes the configuration information, from the system manager 32, identifies the logical configuration definition file in the system logical configuration storage 34 according to the received configuration information, and requests the physical resource manager 42 to allocate the physical servers necessary for the operational system according to the virtual machine description section in the logical configuration definition file (step S5). Because the logical configuration definition file in
The physical resource manager 42 receives the request to allocate the physical servers from the logical system deployment unit 37, and carries out the allocation of the physical servers in the physical server pool 5 according to the request (step S7). Because this processing is the same as the conventional arts, no further explanation is made. Incidentally, when the necessary physical servers can be secured, the physical resource manager 42 notifies the logical system deployment unit 37 of information concerning which physical server was secured. The logical system deployment unit 37 registers the names of the secured physical servers into the pertinent record of the system deployment state table 38.
When the necessary physical servers could not be secured (step S9: No route), the processing shifts to a processing of
When the necessary physical servers could not be secured, the physical resource manager 42 notifies the system manager 32 of an error or abnormal end through the logical system deployment unit 37 (
On the other hand, when the necessary physical servers could be secured, the logical system deployment unit 37 extracts the pertinent VM image files from the VM image repository 35 according to the file names of the VM image files, which are included in the received configuration information, and deploys and activates the virtual machines by loading the VM images onto the allocated physical servers (step S17). Thus, when the operational system is deployed, the activation of the necessary virtual machines is completed. On the other hand, in a case of the deployment of the test system, the activation of a portion of the virtual machines is completed.
Then, when the operational system is deployed (step S19: Yes route), the logical system deployment unit 37 extracts the network setting information (here, the network setting description section itself) from the logical configuration definition file identified by the received configuration information (step S31). After that, the processing shifts to a processing of
On the other hand, when the test system is deployed (step S19: No route), the logical system deployment unit 37 identifies the pertinent logical configuration change definition file in the system logical configuration change storage 36 according to the received configuration information, and requests the physical resource manager 42 to allocate the physical servers, which are additionally necessary for the test system and are defined in the virtual machine description section of the logical configuration change definition file (step S21). In the example of
When the physical resource manager 42 receives an additional allocation request of the physical servers from the logical system deployment unit 37, the physical resource manager 42 carries out the allocation of the physical servers in the physical server pool 5 according to the request (step S23). This processing is the same as the processing in the conventional arts. Therefore, the further explanation is omitted. Incidentally, when the necessary physical servers could be secured, the physical resource manager 42 notifies the logical system deployment unit 37 of information as to which of the physical servers could be secured. The logical system deployment unit 37 registers the names of the secured physical servers into the pertinent record of the system deployment state table 38.
Here, when the necessary physical servers could not be secured (step S25: No route), the test system cannot be constructed. Therefore, the processing shifts to the processing of
Thus, when the test system is deployed, after the virtual machines of the operational system are deployed and activated, the virtual machines additionally necessary for the test system are deployed and activated. Therefore, at the stage when the test system can be deployed, the operational system has already been deployed. Therefore, when there is no problem in the test system, it is possible to convert the virtual system into the operational system soon.
Furthermore, the logical system deployment unit 37 merges the network setting description section of the logical configuration definition file and the network setting description section of the logical configuration change definition file, which are identified from the received configuration information to generate the network setting information for the test system, and stores the generated network setting information into a storage device such as a main memory (step S29). In the example of
Thus, because there is a case where the test system cannot be constructed only by simply adding the links to the operational system as for the network configuration, the aforementioned merge processing is carried out in order to resolve such difference. However, when the network setting description section of the logical configuration file and the network setting description section of the logical configuration change definition file are not conformably defined each other, the appropriate test system cannot be constructed. Namely, when there is an unappropriate portion in the network setting description section of the logical configuration file or the network setting description section of the logical configuration change definition file, the test for the test system cannot be conducted. Therefore, when the test for the test system can be successfully conducted, the possibility that the operational system successfully works becomes much higher.
Shifting to the explanation of the processing in
Then, the logical system deployment unit 37 notifies the system manager 32 of the deployment completion and the instance name of the virtual system X (step S35). The system manager 32 receives the notification of the deployment completion and instance name of the virtual system X from the logical system deployment unit 37, and transfers the notification to the service operation manager terminal 1 through the I/F 31 (step S37). The service operation manager terminal 1 receives the notification of the deployment completion and the instance name of the virtual system X from the virtual system deployment and test control apparatus 3, and displays the notification on a display device (step S39). Thus, the service operation manager can grasp that the preparation has been completed.
Here, in a case of the deployment completion of the operational system (step S41: Yes route), the processing shifts to a processing of
In the deployment completion of the test system, the processing shifts to the processing of
The system manager 32 of the virtual system deployment and test control apparatus 3 receives the test start command including the instance name of the virtual system X through the I/F 31, identifies the file name of the test item file for the virtual system X from the system management table 33, and outputs to the logical system deployment unit 37, a test start instruction for the designated instance of the virtual system X, which includes the file name of the test item file (step S45).
The logical system deployment unit 37 receives the test start instruction including the file name of the test item file and the instance name of the virtual system X, and outputs to the automatic test execution unit 41, a test start instruction for the designated instance of the virtual system X, which includes the file name of the test item file (step S47). The automatic execution unit 41 receives the test start instruction including the file name of the test item file and the instance name of the virtual system X, receives the test item file of the designated file name from the test item storage 40, carries out the test according to the test item file, and stores the test result into the storage device such as the main memory (step S49). The performance itself of the test according to the test item file is the same as the conventional arts. Therefore, the further explanation is omitted. Incidentally, in the system deployment state table 38, the state in the pertinent record is changed to “in test”.
Then, the automatic test execution unit 41 outputs to the logical system deployment unit 37, a test completion notification including the test result, when all of the test items have been processed (step S51). The processing shifts to a processing of
The logical system deployment unit 37 receives the test completion notification including the test result from the automatic test execution unit 41, and transfers the notification to the system manager 32 (step S53). The system manager 32 receives the test completion notification including the test result from the logical system deployment unit 37, and transmits the test completion notification including the test result through the I/F 31 to the service operation manager terminal 1 (step S55). The service operation manager terminal 1 receives the test completion notification including the test result from the virtual system deployment and test control apparatus 3, and displays the notification on the display device (step S57). Thus, the service operation manager can judges the test result and carries out the countermeasure. The processing shifts to a processing of
Next, a processing in a case where the operational system has been deployed will be explained by using
The logical system deployment unit 37 receives the operation start instruction including the instance name of the virtual system X, starts the operation of the designated instance of the virtual system X, and outputs an operation start notification including the instance name of the virtual system X (step S63). Incidentally, the processing itself for starting the operation of the virtual system is the same as the conventional arts. Therefore, no further explanation is carried out. For example, the activation of processes (e.g. httpd, ftpd or the like), which receive a processing request from the outside network, is carried out. In addition, in the system deployment state table 38, the state in the pertinent record is changed to “in service”.
The system manager 32 receives the operational start notification including the instance name of the virtual system X from the logical system deployment unit 37, and transmits the operation start notification including the instance name of the virtual system X to the service operation manager terminal 1 (step S65). The service operation manager terminal 1 receives the operation start notification including the instance name of the virtual system X from the virtual system deployment and test control apparatus 3, and displays the notification on the display device (step S67). Thus, the service operation manager can grasp that the operation of the virtual system X begins without any incident. The processing shifts to a processing of
For example, after the test, or when the operation is stopped due to the maintenance or the like, the processing of
The system manager 32 receives the dismantlement command including the instance name of the virtual system X from the service operation manager terminal 1, and outputs the dismantlement instruction including the instance name of the virtual system X to the logical system deployment unit 37 (step S71). The logical system deployment unit 37 receives the dismantlement instruction including the instance name of the virtual system X from the system manager 32, stops all of the virtual machines for the designated instance, identifies the physical servers for the designated instance of the virtual system X in the system deployment state table 38, and notifies the physical resource manager 42 of the return of the pertinent physical servers (step S73). The processing to stop the virtual machines is the same as the conventional arts. Therefore, any further explanation is not explained. Incidentally, here, in the system deployment state table 38, the state in the pertinent record is changed to “during dismantling”.
The physical resource manager 42 receives a return notification of the physical servers from the logical system deployment unit 37, releases the allocation of the physical servers, registers the released physical servers as free physical servers, to the physical server pool 5, and notifies the logical system deployment unit 37 of the dismantlement completion (step S75). The processing shifts to a processing of
The logical system deployment unit 37 receives the notification of the dismantlement completion from the physical resource manager 42, and transfers the notification of the dismantlement completion to the system manager 32 (step S77). Here, the logical system deployment unit 37 deletes the pertinent record in the system deployment state table 38. The system manager receives the notification of the dismantlement completion from the logical system deployment unit 37, and transmits the notification of the dismantlement completion to the service operation manager terminal 1 through the I/F 31 (step S79). The service operation manager terminal 1 receives the notification of the dismantlement completion from the virtual system deployment and test control apparatus 3, and displays the notification onto the display device (step S81). By doing so, the service operation manager can grasp the dismantlement completion.
As described above, by implementing this embodiment, the conversion from the test system to the operational system can be carried out smoothly. In addition, because the test system is constructed so as to resolve the difference with the operational system, it is possible to convert the virtual system to the operational system without any special setting if there is no problem in the test of the test system. Therefore, the setting mistake and the mis-operation of the service operation manager do not occur so many times. In addition, because the physical server pool is shared, the possibility that the trouble due to the fine difference between versions of the software in the physical servers can be avoided is high.
Although the embodiment of this technique was explained, this technique is not limited to this embodiment. For example, the data management method in the virtual system deployment and test control apparatus 3 is not limited to the method depicted in
In addition, as long as the processing results of the processing flows are not changed, the order of the steps may be changed or the steps may be executed in parallel.
In addition, the physical server in the physical server pool, the service operation manager terminal 1 and the virtual system deployment and test control apparatus 3 are computer devices as shown in
This embodiment can be outlined as follows:
According to a first aspect of this embodiment, a virtual system control method includes: receiving a deployment request for requesting to deploy a test system of a specific virtual system in a physical server pool in which operational and test virtual systems can be deployed; activating a virtual machine necessary for the operational system of the specific virtual system in the physical server pool by using first server configuration data in configuration information for the operational system of the specific virtual system and a first virtual machine image for the operational system of the specific virtual system; activating a virtual machine to be added to the operational system of the specific virtual system in the physical server pool by using second server configuration data in configuration change information representing the configuration information concerning difference between the operational system and the test system of the specific virtual system and a second virtual machine image for the virtual machine relating to the difference; and setting a network connecting the activated virtual machines according to network configuration data generated by merging first network setting information between the virtual machines in the configuration information for the operational system of the specific virtual system and second network setting information that represents difference on the network between the operational system and the test system of the specific virtual system and is included in the configuration change information.
By defining the test system as the difference with the operational system after defining the operational system, it is possible to easily and promptly carry out conversion to the operational system when the test for the test system has been successfully completed.
In addition, the first aspect of this embodiment may further include: receiving a second deployment request for requesting to deploy the operational system of a second virtual system in the physical server pool; activating a second virtual machine necessary for the operational system of the second virtual system in the physical server pool, by using third server configuration data in second configuration information for the operational system of the second virtual system and a third virtual machine image for the operational system of the second virtual machine; and carrying out a setting of a network of the activated second virtual machine according to third network setting information in the second configuration information. Thus, when it is possible to deploy the test system, it is possible to easily carry out the deployment of the operational system of the virtual system.
Incidentally, the activating the virtual machine necessary for the operational system may include: identifying configuration information for the operational system of the specific virtual machine relating to the deployment request; securing first physical machines that can be deployed in the physical server pool according to the first server configuration data included in the identified configuration information; and identifying the first virtual machine images for the operational system of the specific virtual system, and activating the virtual machines on the secured first physical servers by using the identified first virtual machine images.
Furthermore, the activating the virtual machine to be added may include: identifying the configuration change definition information for the specific virtual system; securing second physical servers that can be deployed in the physical server pool according to the second server configuration data included in the configuration change definition information for the specific virtual system; and identifying the second virtual machine images for the virtual machines relating to the difference, and activating the virtual machines on the secured second physical servers by using the identified second virtual machine images.
In addition, the identifying the configuration information may include: identifying an identifier of the configuration information for the operational system of the specific virtual system relating to the deployment request from a first management table storing identifiers of the configuration information for the operational system of the virtual system and identifiers of the virtual machine images; and reading out the configuration information corresponding to the identified identifier of the configuration information from a configuration information storage device storing the configuration information for the operational system of the virtual system.
Furthermore, the activating the virtual machines on the secured first physical servers may include: identifying an identifier of the first virtual machine image for the operational system of the specific virtual system relating to the deployment request from the first management table; and reading out the first virtual machine image corresponding to the identified identifier of the virtual machine image from a first virtual machine image storage device storing the first virtual machine images for the operational system of the virtual system in association with the identifiers of the first virtual machine images.
Furthermore, the identifying the configuration change information for the specific virtual system may include: identifying an identifier of the configuration change information for the specific virtual system relating to the deployment request from a second management table storing identifiers of the configuration change information of the specific system and identifiers of the virtual machine images for the virtual machines relating to the difference between the operational system and the test system; and reading out the configuration change definition information corresponding to the identified identifier of the configuration change definition information from a configuration change information storage device storing the configuration change definition information of the virtual systems in association with the identifiers of the configuration change definition.
In addition, the identifying the second virtual machine images may include: identifying an identifier of the second virtual machine image for the specific virtual system relating to the deployment request from the second management server; and reading out the second virtual machine image corresponding to the identified identifier of the virtual machine image from a second virtual machine image storage device storing the second virtual machine images for the virtual machine relating to the difference between the operational system and the test system of the virtual system in association with the identifiers of the second virtual machine images.
Furthermore, the carrying out the setting of the network connecting the activated virtual machines may include: deleting, from the first network setting information included in the configuration information, items to be deleted among items in the network setting information included in the configuration change information, and adding to the first network setting information included in the configuration information, items to be added among items in the network configuration information included in the configuration change information. Thus, it becomes possible to carry out the network setting enabling the appropriate test.
According to a second aspect of this embodiment, a virtual system control apparatus includes a configuration information storage device that stores configuration information for operational systems of virtual systems; a first virtual machine image storage device that stores first virtual machine images for the operational systems of the virtual systems; a configuration change information storage device that stores configuration change information that represents configuration information concerning difference between the operational system and a test system of the virtual system; a second virtual machine image storage device that stores second virtual machine images for the virtual machine relating to the difference; and a controller. Thus, by adopting data configuration of the operational system and data configuration of the test system, it becomes possible to easily and smoothly switch the virtual system between the operational system and the test system.
Incidentally, in response to a deployment request of the test system of the specific virtual system, the aforementioned controller activates the virtual machines necessary for the operational system of the specific virtual system in the physical server pool in which the operational system and the test system of the virtual system can be deployed, by using first server configuration data in the configuration information for the operational system of the specific virtual system, which is identified from the configuration information storage device, and a virtual machine image for the operational system of the specific virtual machine, which is identified from the first virtual machine image storage device. In addition, the controller activates a virtual machine to be added to the operational system of the specific virtual system in the physical server pool, by using second server configuration data in the configuration change information for the specific virtual system, which is identified from the configuration change information storage device, and the second virtual machine image for the specific virtual system, which is identified from the second virtual machine image storage device. Then, the controller carries out a setting of the network connecting the activated virtual machines according to network configuration data generated by merging first network setting information between the virtual machines and second network setting information that represents difference on the network between the operational system and the test system of the specific virtual system and is included in the configuration change information. Incidentally, it is possible to create a program causing a computer to execute the aforementioned processing, and such a program is stored in a computer readable storage medium or storage device such as a flexible disk, CD-ROM, DVD-ROM, magneto-optic disk, a semiconductor memory, and hard disk. In addition, the intermediate processing result is temporarily stored in a storage device such as a main memory or the like.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiments of the present inventions have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2008-271576 | Oct 2008 | JP | national |