Application execution mode change server, application execution mode change support system, and application execution mode change method
The application execution mode change server and support system address the challenge of maintaining SLA compliance and cost efficiency in data centers by optimizing component placement and migration plans based on comprehensive data analysis.
Patent Information
- Application Number
- JP2024109734
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-08
- Publication Date
- 2026-01-21
AI Technical Summary
Existing technologies fail to smoothly respond to various situations that arise during application migration in data centers powered by renewable energy, potentially violating SLA requirements and incurring resource wastage or excessive costs.
An application execution mode change server and support system that acquires and analyzes information about components, device configurations, and network connectivity to create optimal component placement modes and change plans, ensuring stable application execution while meeting SLA constraints.
Enables smooth adaptation to varying conditions in data centers, maintaining usability and cost efficiency by strategically migrating application components, thus avoiding SLA violations and resource mismanagement.
Smart Images

Figure 2026009687000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an application execution mode change server, an application execution mode change support system, and an application execution mode change method. [Background technology]
[0002] Conventionally, services that execute specific applications using data centers (hereinafter referred to as "DCs") based on a Service Level Agreement (SLA) have been known. In recent years, DCs have also come to be powered by renewable energy, along with the trend toward decarbonization of DCs.
[0003] However, if the power supply to a DC becomes insufficient due to the power supply situation from renewable energy sources, the application execution location must be changed (migrated) to another DC. In this case, to provide stable services to application users while realizing a green DC, it is important to maintain usability in the other DC (hereinafter referred to as the "destination DC") by satisfying the requirements specified in the SLA (hereinafter referred to as the "SLA requirements"). In addition, in this case, there is a possibility that application migration may fail due to resource shortages or waste may occur due to excessive resource acquisition, so cost containment must also be considered. Therefore, when changing (migrating) the application execution location, careful consideration must be given to whether the destination DC can stably satisfy constraints, such as cost and SLA requirements, set in advance by the user. In other words, the selection of the destination DC for an application requires careful consideration based on the application's resource requirements.
[0004] Therefore, various methods for selecting a migration destination for an application have been proposed (see, for example, Patent Document 1). In the technology disclosed in Patent Document 1, workloads (hereinafter referred to as "WLs") are first classified and grouped based on resource requirement attributes such as CPU demand and memory size of the WLs, and a representative example is selected from each group. Then, migration of the representative example to a candidate destination is simulated to obtain a score, and an appropriate migration destination for the representative example is determined based on the score of the simulation. [Prior art documents] [Non-patent literature]
[0005] [Patent Document 1] U.S. Patent Application Publication No. 2021 / 0400110 Summary of the Invention [Problem to be solved by the invention]
[0006] However, for example, in the technology disclosed in Patent Document 1, there are factors that may affect the SLA, which cannot be determined by simulation, depending on the application configuration and the environment of the DC used. In this case, there is a possibility that the SLA requirement will be violated in the DC to which the application is migrated. Therefore, there has been a demand for a technology to select a destination DC for an application that can smoothly respond to various situations that arise, while stably satisfying constraints such as SLA requirements in the destination DC and maintaining usability, i.e., a technology to change the execution mode of an application.
[0007] The present invention has been made to solve the above problems, and the object of the present invention is to provide a technology that can smoothly respond to various situations that arise when changing the execution mode of an application while maintaining usability at the destination DC. [Means for solving the problem]
[0008] In order to solve the above problems, the application execution mode change server of the present invention includes a storage unit and a processing unit. The storage unit stores first information regarding components constituting an application executable on each of a plurality of external devices and second information regarding the configuration of each of the plurality of external devices. The storage unit also stores third information regarding the configuration of a communication network available between the plurality of external devices and fourth information regarding constraints preset by a user when executing the application. When a situation arises where it is necessary to change the execution mode of a predetermined application, the processing unit creates one or more component placement modes for the plurality of external devices based on the information stored in the storage unit, in which at least one component constituting the predetermined application is migrated to another external device included in the plurality of external devices so that the predetermined application becomes executable. The processing unit is also capable of creating a change plan for the execution mode of the predetermined application, including information about the component placement mode, for each of the created component placement modes.
[0009] To solve the above problem, the present invention provides an application execution mode change support system that includes an information acquisition server and an application execution mode change server. The information acquisition server is capable of acquiring first information about components constituting an application executable on each of a plurality of external devices and second information about the configuration of each of the plurality of external devices. The information acquisition server is also capable of acquiring third information about the configuration of a communication network available between the plurality of external devices and fourth information about constraints preset by a user when executing the application. When a situation arises in which it is necessary to change the execution mode of a predetermined application, the application execution mode change server acquires the first information, second information, third information, and fourth information from the information acquisition server, and, based on the acquired information, creates one or more component placement modes for the plurality of external devices, in which at least one component constituting the predetermined application is migrated to another external device included in the plurality of external devices, thereby making the predetermined application executable. The application execution mode change server is also capable of creating a change plan for the execution mode of the predetermined application, including information about the component placement mode, for each of the created component placement modes.
[0010] Furthermore, to solve the above-mentioned problems, the present invention provides an application execution mode change method executed by an application execution mode change server including a processing unit that creates a change plan for the execution mode of a predetermined application when a situation arises in which a change in the execution mode of a predetermined application is necessary. The application execution mode change method of the present invention includes the processing unit acquiring first information on components constituting an application executable on each of a plurality of external devices, second information on the configuration of each of the plurality of external devices, third information on the configuration of a communication network available between the plurality of external devices, and fourth information on constraints preset by a user when executing the application. The application execution mode change method of the present invention also includes the processing unit creating, based on the acquired first, second, third, and fourth information, one or more component placement patterns for the plurality of external devices, in which at least one component constituting the predetermined application is migrated to another external device included in the plurality of external devices to enable execution of the predetermined application. The application execution mode change method of the present invention also includes the processing unit creating, for each of the created component placement patterns, a change plan for the execution mode of the predetermined application, including information on the component placement pattern. [Effects of the Invention]
[0011] According to the present invention having the above configuration, it is possible to provide a technology for changing the execution mode of an application that can smoothly respond to various situations that arise while maintaining usability in the destination DC. [Brief explanation of the drawings]
[0012] [Figure 1] 1 is a configuration diagram of an application execution system including an application execution mode selection server and an application execution DC selection support system according to one embodiment of the present invention. [Figure 2]1 is a configuration diagram of a DC management server included in an application execution DC selection support system according to an embodiment of the present invention. [Figure 3] 1 is a configuration diagram of an SLA management server included in an application execution DC selection support system according to an embodiment of the present invention. [Figure 4] 1 is a configuration diagram of an application execution mode selection server included in an application execution DC selection support system according to one embodiment of the present invention. [Figure 5] 10 is a diagram showing an example of the configuration of a network information table stored in a local disk of an application execution mode selection server according to an embodiment of the present invention. FIG. [Figure 6] 10 is a diagram showing an example of the configuration of a DC resource information table stored in a local disk of an application execution mode selection server according to one embodiment of the present invention. FIG. [Figure 7] 10 is a diagram showing an example of the configuration of an application configuration information table stored in a local disk of an application execution mode selection server according to an embodiment of the present invention. FIG. [Figure 8] 1 is a diagram illustrating an example of the configuration of an application to be controlled by an application execution mode selection server according to an embodiment of the present invention. FIG. [Figure 9] FIG. 10 is a diagram showing an example of the configuration of a layout variation table stored on a local disk of an application execution mode selection server according to an embodiment of the present invention. [Figure 10] FIG. 10 is a diagram illustrating an example of a configuration of a proposed change in the execution mode of an application that can be selected by an application execution mode selection server according to an embodiment of the present invention. [Figure 11] FIG. 10 is a diagram illustrating an example of a configuration of a proposed change in the execution mode of an application that can be selected by an application execution mode selection server according to an embodiment of the present invention. [Figure 12] 10 is a diagram showing an example of the configuration of a risk score calculation rule table stored in a local disk of an application execution mode selection server according to one embodiment of the present invention. FIG. [Figure 13]10 is a diagram showing an example of the configuration of an application execution mode change proposal table stored in a local disk of an application execution mode selection server according to an embodiment of the present invention. FIG. [Figure 14] 10 is a diagram showing an example of operation when changing the execution mode of an application in an application execution mode selection server and an application execution DC selection support system according to one embodiment of the present invention. FIG. [Figure 15] 10 is a diagram showing an example of operation when changing the execution mode of an application in an application execution mode selection server and an application execution DC selection support system according to one embodiment of the present invention. FIG. [Figure 16] 10 is a flowchart showing the procedure for creating and selecting a modification plan for an application execution mode, which is performed by an application execution mode selection server according to one embodiment of the present invention. [Figure 17] 10 is a flowchart showing the procedure of a setting process for a component to be migrated to another DC, which is performed in an application execution mode selection server according to one embodiment of the present invention. [Figure 18] 10 is a flowchart illustrating a procedure for creating a proposed change to an application execution mode, which is performed by an application execution mode selection server according to an embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION
[0013] An application execution mode change server, an application execution mode change support system, and an application execution mode change method according to an embodiment of the present invention will be specifically described below with reference to the drawings.
[0014] [Application execution system configuration] FIG. 1 is a configuration diagram of an application execution system 100 including an application execution DC selection support system 3 (application execution mode change support system) according to one embodiment of the present invention.
[0015] 1, the application execution system 100 includes a first DC (data center) 1, a second DC 2, an application execution DC selection support system 3, a power adjustment server 4, and a DC user terminal 5. These components constituting the application execution system 100 are connected to each other via a communication network 6 so as to be able to communicate with each other.
[0016] The first DC1 (external device) is a DC that can execute a predetermined application while satisfying SLA requirements (constraints). As shown in Fig. 1, the first DC1 includes a physical server 10, which includes, as resources, a first application execution server 11, a storage device 12, and a network device 13. Although not shown, within the physical server 10, the first application execution server 11 is electrically connected to each of the storage device 12 and the network device 13.
[0017] The first application execution server 11 is composed of, for example, a central processing unit (CPU), a microprocessor, or other arithmetic processing device, and executes applications. The storage device 12 is composed of, for example, storage devices such as memory, HDD (Hard Disk Drive), and SSD (Solid State Drive). The memory includes ROM (Read Only Memory) and RAM (Random Access Memory). The storage device 12 stores various information such as programs and data required for the execution and management of applications by the first application execution server 11. The network device 13 is composed of a communication device, and performs data communication with the outside.
[0018] In this embodiment, the first DC 1 operates only as a resource-dedicated physical server. Also, in this embodiment, the first DC 1 can communicate with the outside world via both a public network and a dedicated network such as a VPN (Virtual Private Network).
[0019] The second DC2 (external device) is a DC that can execute predetermined applications while satisfying SLA requirements, similar to the first DC1. The second DC2 includes a physical server 20, and although detailed illustration is omitted, the physical server 20 is provided with a second application execution server 21, storage devices, and a network. Although not shown in the figure, the second application execution server 21 is electrically connected to each of the storage devices and network devices within the physical server 20. The second application execution server 21, storage devices, and network devices of the second DC2 have the same configurations as the first application execution server 11, storage devices 12, and network devices 13 of the first DC1, respectively.
[0020] In this embodiment, the second DC2 operates not only as a dedicated physical server but also as a shared virtual server. Also, in this embodiment, the second DC2 can communicate with the outside world via both a public network and a dedicated network such as a VPN.
[0021] 1, for the sake of simplicity, the application execution system 100 includes two DCs, but the present invention is not limited to this, and three or more DCs may be included in the application execution system 100. The type of each DC (resource-dedicated type, resource-sharing type, etc.) can also be changed as appropriate depending on the application to be controlled.
[0022] When a command that may involve a change in the execution mode of a specific application is input to a DC where execution of the specific application is set, the application execution DC selection support system 3 executes a process for creating and selecting a change plan for the execution mode of the specific application. The configuration and operation of the application execution DC selection support system 3 will be described in detail later with reference to the drawings.
[0023] Examples of commands that may involve a change in the execution mode of an application include a power adjustment command such as a power reduction request command described later, and an application control change command from the DC user 5a described later. Furthermore, the "execution mode of an application" here refers not only to the arrangement mode in the DC of each component that constitutes the application when the application is executed (hereinafter referred to as "component arrangement variations"), but also includes, for example, the cost level when the application is executed and the mode of use of the power source.
[0024] The power adjustment server 4 outputs a change command (power adjustment command) for the amount of power demand input from the power supplier 4a or the like to a DC management server 31 (described later) in the application execution DC selection support system 3. At this time, when there is a power shortage, the power adjustment server 4 outputs a power reduction request command as the power adjustment command to the DC management server 31 (described later), and when there is a power surplus, outputs a power increase request command as the power adjustment command to the DC management server 31 (described later).
[0025] The DC user terminal 5 transmits (outputs) various information regarding the application input by the DC user 5a (for example, an application control change command, etc.) to a DC management server 31 (described later) in the application execution DC selection support system 3. The DC user terminal 5 also presents to the DC user 5a one or more change proposals for the application execution mode transmitted (input) from an application execution mode selection server 33 (described later) in the application execution DC selection support system 3. Furthermore, the DC user terminal 5 acquires the selection (determination) result of the DC user 5a regarding the one or more presented change proposals, and outputs a control command corresponding to the selection result to the DC to be controlled.
[0026] 1, for the sake of simplification, one DC user terminal 5 (DC user 5a) is shown included in the application execution system 100. However, in reality, within the application execution system 100, multiple DC user terminals are connected via the communication network 6 to DCs capable of executing corresponding applications, and to the application execution DC selection support system 3.
[0027] [Configuration of application execution DC selection support system] 1, the application execution DC selection support system 3 includes a DC central management server unit 30 (information acquisition server) and an application execution mode selection server 33 (application execution mode change server). The DC central management server unit 30 also includes a DC management server 31 and an SLA management server 32.
[0028] In the application execution DC selection support system 3, the application execution mode selection server 33 is electrically connected to each of the DC management server 31 and the SLA management server 32. The DC management server 31, the SLA management server 32, and the application execution mode selection server 33 are each connected to a communication network 6. In addition, the DC management server 31 is directly connected to the power adjustment server 4.
[0029] (DC management server) The DC management server 31 acquires hardware information of all DCs connected via the communication network 6, and information (resource occupation rate) on the resource occupation status (usage status) by applications and / or WLs in all DCs.
[0030] Fig. 2 is a hardware configuration diagram of the DC management server 31. As shown in Fig. 2, the DC management server 31 includes a processor 40, an I / O (Input / Output) device 41, a memory 42, a local disk 43, and a bus line 46 connecting these components together.
[0031] The processor 40 is configured with an arithmetic processing device such as a CPU, a GPU (Graphics Processing Unit), etc. The processor 40 also reads out program code of software for realizing various processing functions of the DC management server 31 into a RAM (not shown) in the memory 42 and executes the program code.
[0032] The I / O device 41 is composed of an input / output device that exchanges data (information) with the outside. The I / O device 41 of the DC management server 31 includes not only an input / output function unit for data input / output between the application execution mode selection server 33, the SLA management server 32, and the power adjustment server 4, but also a communication function unit for data communication with the outside via the communication network 6.
[0033] The memory 42 is called a main storage device and is configured to include a ROM and a RAM (not shown).
[0034] The local disk 43 is configured with a storage device such as an HDD, an SSD, etc. The local disk 43 stores (memorizes) program code of software for realizing various processing functions provided in the DC management server 31. For example, as shown in FIG. 2, the local disk 43 of the DC management server 31 stores a DC facility management program 44 and a resource monitoring program 45.
[0035] In this embodiment, when the processor 40 executes the DC equipment management program 44, hardware information of all DCs connected to the DC management server 31 is acquired.
[0036] The hardware information of each DC acquired by the DC management server 31 includes, for example, information on the allocation of resources within each DC, DC type information (resource-dedicated type and / or resource-shared type), and the utilization rate of renewable energy power sources (hereinafter referred to as the "renewable energy utilization rate"). The hardware information of each DC acquired by the DC management server 31 also includes, for example, information on the type of network available to each DC (dedicated network and / or public network), information on communication delay times in the network, and the like. Furthermore, the hardware information of each DC acquired by the DC management server 31 also includes, for example, information on the cost of using the DC, the cost of using the network, and DC maintenance time.
[0037] Furthermore, when the resource monitoring program 45 is executed by the processor 40, the resource occupancy rates of applications and / or WLs in all DCs are acquired in real time. That is, the resource occupancy status by applications and / or WLs in each DC connected to the DC management server 31 is managed (monitored) in real time by the DC management server 31.
[0038] (SLA management server) The SLA management server 32 acquires information on the configuration of applications executed in each DC connected via the communication network 6 and information on SLA requirements.
[0039] Fig. 3 is a hardware configuration diagram of the SLA management server 32. As shown in Fig. 3, the SLA management server 32 includes a processor 50, an I / O device 51, a memory 52, a local disk 53, and a bus line 55 connecting these components together.
[0040] The processor 50 is configured with an arithmetic processing device such as a CPU, a GPU, etc. The processor 50 also reads out program code of software for realizing various processing functions provided in the SLA management server 32 into a RAM (not shown) in the memory 52 and executes the program code.
[0041] The I / O device 51 is composed of an input / output device that exchanges data (information) with the outside. The I / O device 51 of the SLA management server 32 includes not only an input / output function unit for data between the application execution mode selection server 33 and the DC management server 31, but also a communication function unit for data communication with the outside via the communication network 6. The memory 52 is composed of a ROM and a RAM (not shown).
[0042] The local disk 53 is configured with a storage device such as an HDD, SSD, etc. The local disk 53 stores (memorizes) software program codes and the like for realizing various processing functions provided in the SLA management server 32. For example, the local disk 53 of the SLA management server 32 stores an SLA requirement acquisition program 54, as shown in FIG.
[0043] In this embodiment, when the processor 50 executes the SLA request acquisition program 54, information about the configuration of the applications executed in each DC connected to the SLA management server 32 is acquired. Note that in this embodiment, the information about the application configuration includes, for example, information about the configuration of the components that make up the application, the connection topology between the components, restrictions on the application, restrictions on the application execution environment, etc. Furthermore, when the processor 40 executes the SLA request acquisition program 54, information about the SLA requests of the applications executed in each DC connected to the SLA management server 32 is also acquired in a lump.
[0044] (Application execution mode selection server) The application execution mode selection server 33 creates an appropriate change plan (hereinafter referred to as an "application execution mode change plan") when a command that may involve a change in the execution mode of an application is input to the application execution DC selection support system 3. Specifically, when the command is input, the application execution mode selection server 33 acquires various information managed by the DC management server 31 and the SLA management server 32, and creates one or more appropriate application execution mode change plans based on the various information.
[0045] When changing the execution mode of an application, for example, in the technology disclosed in Patent Document 1, all components constituting the application are migrated to the destination DC. However, even if the resource requirements of the application are met in the destination DC, the same control method is not necessarily applicable. Furthermore, by targeting only some components with high resource requirements among the components constituting the application as migration targets, it may be possible to reduce costs while satisfying the constraints set by the DC user 5a. Therefore, the application execution mode selection server 33 of this embodiment creates not only an application execution mode change plan for migrating all components, but also an application execution mode change plan for migrating some components.
[0046] The application execution mode selection server 33 selects the highest (best) application execution mode change plan for each requirement (hereinafter referred to as "selection requirement") that can be a selection guideline for the application execution mode change plan for the DC user 5a from among the one or more application execution mode change plans that have been created. Note that in this embodiment, as will be described later, the assumed values of the risk score, cost, and renewable energy utilization rate in the application execution mode change plan (see FIG. 13 described later) are used as the selection requirements.
[0047] Furthermore, the application execution mode selection server 33 transmits (outputs) the highest-ranking application execution mode change plan for each selected selection requirement to the DC user terminal 5 via the communication network 6. At this time, the application execution mode change plan may be displayed on a display unit (not shown) of the DC user terminal 5, or may be printed and output on a medium such as paper. In this way, the selected application execution mode change plan can be presented to the DC user 5a.
[0048] Fig. 4 is a hardware configuration diagram of the application execution mode selection server 33. As shown in Fig. 4, the application execution mode selection server 33 includes a processor 60 (arithmetic processing unit), an I / O device 61, a memory 62, a local disk 63 (storage unit), and a bus line 69 connecting these components together.
[0049] The processor 60 is configured with an arithmetic processing device such as a CPU, a GPU, etc. The processor 60 also reads out program code of software for realizing various processing functions of the application execution mode selection server 33 into a RAM (not shown) in the memory 62 and executes the program code.
[0050] The I / O device 61 is configured as an input / output device that exchanges data (information) with the outside. The I / O device 61 of the application execution mode selection server 33 includes not only an input / output function unit for data input / output between the DC management server 31 and the SLA management server 32, but also a communication function unit for data communication with the outside via the communication network 6. The memory 62 is configured to include a ROM and a RAM (not shown).
[0051] The local disk 63 is configured with a storage device such as an HDD, SSD, etc. The local disk 63 stores (memorizes) program code and various information of software for realizing various processing functions of the application execution mode selection server 33. For example, as shown in Fig. 4, the local disk 63 of the application execution mode selection server 33 stores an application execution mode selection program 64, a migration target component setting program 65, and an application execution mode change plan creation program 66.
[0052] In this embodiment, when the processor 60 executes the application execution mode selection program 64, the application execution mode selection server 33 performs a process of creating and selecting an application execution mode change plan (see FIG. 16 described later). Furthermore, when the processor 60 executes the migration target component setting program 65, a process of setting a combination of some or all of the components of an application to be migrated to another DC, i.e., a process of setting the range of components to be migrated to another DC (hereinafter referred to as "migration target components") (see FIG. 17 described later). Furthermore, when the processor 60 executes the application execution mode change plan creation program 66, a process of creating an application execution mode change plan table (see FIG. 13 described later) (see FIG. 18 described later) is performed. As will be described later with reference to the flowcharts of FIGS. 16 to 18, the process of the migration target component setting program 65 and the process of the application execution mode change plan creation program 66 are called and executed during the process of the application execution mode selection program 64.
[0053] Furthermore, the local disk 63 of the application execution mode selection server 33 stores, for example, an input information group 67 used when executing an application execution mode selection program 64, a migration target component setting program 65, and an application execution mode change plan creation program 66. Specifically, as shown in Fig. 4, the input information group 67 includes a network information table 110 (third information), a DC resource information table 120 (second information), DC related information 130 (second information), an application configuration information table 140 (first information), and SLA request information 150 (fourth information).
[0054] The information included in the input information group 67 is created and set by the application execution mode selection server 33 based on various information managed by the DC management server 31 and the SLA management server 32. Specifically, the network information table 110 and the DC resource information table 120 are created based on hardware information of all DCs managed by the DC management server 31. The DC-related information 130 is set with information managed by the DC management server 31, such as the resource occupancy rate of all DCs, the cost of using a DC included in the hardware information of each DC, the cost of using the network, and information on DC maintenance time. The application configuration information table 140 is created based on configuration information of applications to be controlled managed by the SLA management server 32. Furthermore, information on the SLA requests of applications to be controlled managed by the SLA management server 32 is set in the SLA request information 150. The configuration of each information table included in the input information group 67 will be described later with reference to the drawings.
[0055] Furthermore, the local disk 63 of the application execution mode selection server 33 stores a created information group 68 created by executing, for example, an application execution mode selection program 64 and an application execution mode modification plan creating program 66. Specifically, as shown in FIG. 4, a layout variation table 210, a risk score calculation rule table 220 (evaluation rules), and an application execution mode modification plan table 230 are included in the created information group 68. The layout variation table 210 and the risk score calculation rule table 220 are created by executing the application execution mode selection program 64. Furthermore, the application execution mode modification plan table 230 is created by executing the application execution mode modification plan creating program 66. The configuration of each information table included in the created information group 68 will be described later with reference to the drawings.
[0056] [Configuration of various information tables stored in the application execution mode selection server] Next, examples of the configuration of various information tables stored on the local disk 63 of the application execution mode selection server 33 will be described with reference to the drawings.
[0057] (Network Information Table) Fig. 5 is a diagram showing an example of the configuration of a network information table 110 stored on the local disk 63 of the application execution mode selection server 33. In the network information table 110, as shown in Fig. 5, for each information management ID 111, a DC type 112, an attribute 113 (type) of a network usable by the DC, and a cost 114 when using the network are specified as a set of data.
[0058] The DC type 112 specifies type information for a single DC (such as "first DC" or "second DC" in the figure). The DC type 112 also specifies information about the DC to be used when executing an application across multiple DCs ("between first DC and second DC" in the figure). The network attribute 113 specifies information indicating a dedicated network (VPN) or a public network. The cost 114 specifies the cost per hour for one network usage period (one instance).
[0059] In the network information table 110 shown in FIG. 5 , for example, for a management ID “1,” a DC type “first DC,” an attribute “dedicated network (VPN),” and a cost “800 yen / h / instance” are defined as a set of data. For example, for a management ID “2,” a DC type “first DC,” an attribute “public network,” and a cost “200 yen / h / instance” are defined as a set of data. For example, for a management ID “3,” a DC type “second DC,” an attribute “dedicated network (VPN),” and a cost “1000 yen / h / instance” are defined as a set of data. For example, for a management ID “4,” a DC type “second DC,” an attribute “public network,” and a cost “200 yen / h / instance” are defined as a set of data. For example, for a management ID “5,” a DC type “between first DC and second DC,” an attribute “dedicated network (VPN),” and a cost “2000 yen / h / instance” are defined as a set of data. Also, for example, for the management ID "6", the DC type "between first DC and second DC", the attribute "public network", and the cost "400 yen / h / instance" are defined as a set of data.
[0060] The application execution mode selection server 33 can extract (identify) items (risk items described below) that may be factors that cause SLA violations in the network environment by referring to the information specified in the network information table 110 shown in Fig. 5. Furthermore, the application execution mode selection server 33 can grasp information regarding restrictions such as costs when using the network by referring to the information specified in the network information table 110 shown in Fig. 5. Furthermore, the application execution mode selection server 33 can also calculate the costs when using the network when an application is executed across multiple DCs by referring to the information specified in the network information table 110 shown in Fig. 5.
[0061] (DC resource information table) Fig. 6 is a diagram showing an example of the configuration of a DC resource information table 120 stored on the local disk 63 of the application execution mode selection server 33. In the DC resource information table 120, as shown in Fig. 6, for each information management ID 121, a server usage mode 122, a resource type 123, a DC attribute 124, a renewable energy utilization rate 125, and a DC usage cost 126 are specified as a set of data.
[0062] The server usage mode 122 specifies information on the DC type and server type (physical server or virtual server) to be used. The resource type 123 specifies information indicating an application execution server, storage device, or network device. The DC attribute 124 specifies information indicating a resource dedicated type or resource shared type as type information on the DC usage mode. The renewable energy utilization rate 125 specifies the utilization rate (expressed as a %) of renewable energy power sources in the DC. Furthermore, the cost 126 specifies the cost per hour for one usage period (one instance) of the DC.
[0063] 6, for example, for management ID "1," the following data sets are defined: server usage type "first DC physical server," resource type "application execution server," attribute "resource dedicated," renewable energy utilization rate "20%," and cost "500 yen / h / instance." For example, for management ID "2," the following data sets are defined: server usage type "first DC physical server," resource type "storage device," attribute "resource dedicated," renewable energy utilization rate "20%," and cost "500 yen / h / instance." For example, for management ID "3," the following data sets are defined: server usage type "first DC physical server," resource type "network device," attribute "resource dedicated," renewable energy utilization rate "20%," and cost "200 yen / h / instance." For example, for management ID "4," the following set of data is specified: server usage type "second DC physical server," resource type "application execution server," attribute "resource dedicated type," renewable energy utilization rate "60%," and cost "1,000 yen / h / instance." Also, for management ID "5," the following set of data is specified: server usage type "second DC virtual server," resource type "application execution server," attribute "resource shared type," renewable energy utilization rate "60%," and cost "500 yen / h / instance."
[0064] The application execution mode selection server 33 can extract (identify) items (risk items described later) that may be factors that cause SLA requirement violations in a resource-sharing DC by referring to the information specified in the DC resource information table 120 shown in Fig. 6. Furthermore, the application execution mode selection server 33 can grasp information related to restrictions such as resource contents and costs of each DC by referring to the information specified in the DC resource information table 120 shown in Fig. 6.
[0065] (Application configuration information table) Fig. 7 is a diagram showing an example of the configuration of application configuration information table 140 stored on local disk 63 of application execution mode selection server 33. In application configuration information table 140, as shown in Fig. 7, for each management ID 141 assigned to an application to be controlled by application execution system 100, application name 142, component configuration 143, inter-component connection relationships 144, application (single application) restrictions 145, and application execution environment (between the application and the execution environment) restrictions 146 are specified as a set of data.
[0066] Here, the component configuration of an application with the name "Web-A" defined in the application configuration information table 140 shown in Fig. 7 is shown in Fig. 8. Although not shown and described, the component configuration of the application with the name "ML-A" defined in the application configuration information table 140 shown in Fig. 7 is similar to that of the application 80 with the name "Web-A". However, the component configuration of an application is not limited to the example shown in Fig. 8, and may vary as appropriate depending on the content of the application.
[0067] As shown in FIG. 8, the component configuration of the application 80 named "Web-A" is composed of three components called "FE (front end)," "BE (back end)," and "DB (database)." Furthermore, in the application 80 named "Web-A," the FE81 is connected to the BE82, and the BE82 is connected to the DB83. Note that the FE81 performs, for example, processing of a user interface function that displays the contents of the application to the DC user 5a and enables the DC user 5a to input operations such as requests to the application. The BE82 performs, for example, processing to obtain input information of the DC user 5a from the FE81 and processing to execute the application on the server. Furthermore, the DB83 stores, for example, data used by the application 80 and data created by the application 80.
[0068] Therefore, "FE, BE, DB" is defined in the component configuration 143 of the name "Web-A" defined in the application configuration information table 140 shown in Fig. 7. Also, "FE-BE (FE81 connected to BE82), BE-FE (BE82 connected to DB83)" is defined in the connection relationship 144 between the components of the name "Web-A".
[0069] The application limit 145 specifies the upper limit of the cost per month when using the application. Also, the application execution environment limit 146 specifies, for example, the power source type and network restrictions to be used in the DC where the application is executed.
[0070] In the application configuration information table 140 shown in FIG. 7, for example, for the application management ID "1," the name "Web-A," the component configuration "FE, BE, DB," the inter-component connection configuration "FE-BE, BE-DB," the application limit "100,000 yen / month" (k yen = 1,000 yen), and the application execution environment limit "renewable energy use (desired)" are specified as a set of data. Also, for example, for the application management ID "2," the name "ML-A," the component configuration "FE, BE, DB," the inter-component connection configuration "FE-BE, BE-DB," the application limit "200,000 yen / month" (k yen = 1,000 yen), and the application execution environment limit "dedicated network use only (required)" are specified as a set of data. Note that the application execution environment limits "renewable energy use (desired)" and "dedicated network use only (required)" shown in FIG. 7 are merely examples, and the content and number of limits specified in the application execution environment limit 146 can be changed arbitrarily, for example, according to the wishes of the DC user 5a.
[0071] (Layout variation table) 9 is a diagram showing an example of the configuration of the layout variation table 210 stored in the local disk 63 of the application execution mode selection server 33. The layout variation table 210 is created by executing the application execution mode selection program 64 (see FIG. 16 described later).
[0072] 9, in the placement variation table 210, for each management ID 211 of the placement variation of the components that make up the application, a name 212 and a component placement variation 213 are defined as a set of data. Note that the component placement variation 213 defines information on the DC and server type that executes (places) each component that makes up the application. Furthermore, when an application is executed across multiple DCs, the component placement variation 213 also defines information on the network type used between the DCs.
[0073] 9, for example, for the management ID "1" of the application deployment variation, the name "Web-A" and the component deployment variation "FE, DB → first DC physical server, BE → second DC physical server, VPN connection" are specified as a set of data. Note that the component deployment variation "FE, DB → first DC physical server, BE → second DC physical server, VPN connection" means that the FE and DB of the application "Web-A" are executed on the physical server 10 of the first DC1, the BE is executed on the physical server 20 of the second DC2, and the first DC1 and the second DC2 are connected by a VPN (dedicated network).
[0074] 10 illustrates the configuration of a component placement variation "FE, DB → first DC physical server, BE → second DC physical server, VPN connection" for an application placement variation with management ID "1." In the component placement variation with management ID "1," as shown in FIG. 10, FE81 and DB83 of application "Web-A" are placed on physical server 10 of first DC1, and BE82 is placed on physical server 20 of second DC2, with VPN85 (dedicated network) connecting between FE81 and BE82 and between BE82 and DB83. In the component placement variation with management ID "1," application "Web-A" is executed across first DC1 and second DC2.
[0075] The component placement variation of application "Web-A" shown in FIG. 10 is an example of an application execution mode change plan that may be selected when, for example, application "Web-A" is being executed only on physical server 10 of first DC1 and a command (such as a power adjustment command or an application control change command) that may involve a change in the execution mode of the application is input. This placement variation in the change plan is appropriate when high-spec resource requests are made to BE82 of application "Web-A," and it is possible to reduce costs while satisfying the application's SLA requirements. Furthermore, this placement variation in the change plan uses a dedicated network, which also ensures security.
[0076] 9, for example, for the application placement variation management ID "2," the name "Web-A" and the component placement variation "FE, BE, DB → second DC first virtual server" are specified as a set of data. Note that the component placement variation "FE, BE, DB → second DC first virtual server" means that the FE, BE, and DB of the application "Web-A" are executed on the first virtual server of the second DC2. In this case, because the application is not executed across multiple DCs, the component placement variation 213 does not specify information about the network used between DCs.
[0077] FIG. 11 illustrates the configuration of the component placement variation "FE, BE, DB → second DC first virtual server" with the management ID "2" of the application placement variation. In the component placement variation with management ID "2," as shown in FIG. 11, all components (FE81, BE82, and DB83) of the application "Web-A" are placed on the first virtual server 20a of the second DC2. In the component placement variation with management ID "2," the application "Web-A" is executed only on the second DC2. Note that another application used by another DC user is executed on the second virtual server 20b of the second DC2. In other words, in the component placement variation with management ID "2" shown in FIG. 11, resources are shared with other DC users in the second DC2.
[0078] 11 is also an example of an application execution mode change plan that can be selected when, for example, a command that may involve a change in the execution mode of the application "Web-A" is input while the application "Web-A" is being executed only on the physical server 10 of the first DC1. This change plan arrangement variation does not use a network, making it possible to reduce costs.
[0079] (Risk score calculation rule table) 12 is a diagram showing an example of the configuration of the risk score calculation rule table 220 stored in the local disk 63 of the application execution mode selection server 33. The risk score calculation rule table 220 is a list of risk score calculation rules, and is created by executing the application execution mode selection program 64 (see FIG. 16 described later).
[0080] 12, in the risk score calculation rule table 220, a risk item 222, a risk occurrence location 223, a judgment target 224, a judgment content 225, and a risk score calculation rule 226 are specified as a set of data for each management ID 221 of the risk score calculation rule. In the risk score calculation rule table 220, the contents of each piece of information specified for each management ID 221 of the risk score calculation rule are as follows:
[0081] (1) Risk items The risk items 222 specify information about items that may affect SLA requirements, i.e., items that may be factors that cause violations of SLA requirements, in the configuration of the DCs and the network configuration between DCs included in the application execution system 100 (see FIG. 1). For example, items related to the network environment, the resource sharing status of DCs, and the reliability of DCs are specified as risk items.
[0082] Specifically, in the risk score calculation rule table 220 shown in Fig. 12, the risk items "VPN use" and "network exclusivity" are risk items related to the network environment. Note that the "network" in "network exclusivity" here refers to a public network. Also, the risk item "resource actual availability" is a risk item related to the resource sharing status of the DC, and the risk item "DC reliability / availability" is a risk item related to the reliability of the DC.
[0083] These risk items are extracted by the application execution mode selection server 33 by referring to the network information table 110 (see Figure 5), DC resource information table 120 (see Figure 6), and DC related information 130 stored on the local disk 63.
[0084] For example, by referring to the network information table 110 (see FIG. 5), it can be seen that a dedicated network (VPN) is available in the DCs to be controlled (first DC1 and second DC2). Therefore, from this, the application execution mode selection server 33 can extract "VPN use" as a risk item. Also, by referring to the network information table 110 (see FIG. 5), it can be seen that a public network is available in the DCs to be controlled (first DC1 and second DC2). Therefore, from this, the application execution mode selection server 33 can extract "network exclusivity" as a risk item.
[0085] Furthermore, for example, referring to the DC resource information table 120 (see FIG. 6), the DCs to be controlled (first DC1 and second DC2) include a resource-sharing DC (second DC2). Therefore, the application execution mode selection server 33 can extract "actual resource availability" as a risk item. Furthermore, for example, the DC-related information 130 includes information on DC maintenance time. Therefore, the application execution mode selection server 33 can extract "DC reliability / availability" as a risk item. Note that the longer the maintenance time, the lower the likelihood of DC reliability, and so the DC maintenance time can be used as a parameter for determining DC reliability / availability.
[0086] (2) Location of risk occurrence The risk occurrence location 223 specifies information about a location where a phenomenon that may cause an SLA violation may occur.
[0087] For example, for risk items related to the network environment, such as the risk items "VPN use" and "network exclusivity," "between components" is specified as the risk occurrence location 223. On the other hand, for risk items related to DC, such as the risk items "resource actual availability" and "DC reliability / availability," "DC" is specified as the risk occurrence location 223.
[0088] (3) Subject of evaluation The judgment target 224 specifies information related to the equipment and judgment parameters corresponding to the risk item.
[0089] For example, for the risk item "VPN usage," "dedicated network" is defined as the judgment target 224, and for the risk item "network exclusivity," "public network" is defined as the judgment target 224. Also, for example, for the risk item "resource actual availability," "resource sharing server" is defined as the judgment target 224, and for the risk item "DC reliability / availability," "DC maintenance time" is defined as the judgment target 224.
[0090] (4) Judgment details The judgment content 225 specifies information about the evaluation content for each risk item (SLA requirement violation).
[0091] For example, for the risk item "VPN use," "length of delay time when VPN is used" is specified as the judgment content 225. This means that for the risk item "VPN use," the length of communication delay time that occurs when VPN is used is evaluated. For example, for the risk item "resource actual availability," "size of resource occupancy rate" is specified as the judgment content 225. This means that for the risk item "resource actual availability," the size of resource occupancy rate of other applications and / or WLs in the resource-sharing DC is evaluated.
[0092] For example, for the risk item "network exclusivity," "length of delay time when using a public network" is specified as judgment content 225. This means that for the risk item "network exclusivity," the length of communication delay time that occurs when using a public network is evaluated. Also, for example, for the risk item "DC reliability / availability," "length of DC maintenance time" is specified as judgment content 225. This means that for the risk item "DC reliability / availability," the length of DC maintenance time is evaluated.
[0093] (5) Calculation rules The calculation rules 226 prescribe information about a method for calculating a risk score corresponding to the judgment content 225 of each risk item. The "risk score" here refers to the risk assessment value of the SLA requirement violation for each risk item, and is expressed as a percentage. The higher the risk score, the higher the possibility that the SLA requirement violation will occur for the corresponding risk item.
[0094] For example, for the risk item "VPN use," "average VPN delay time / SLA required delay time" is specified as the calculation rule 226. The average VPN delay time is the average delay time of communication when using a VPN over a predetermined period in the past, and is included in the DC related information 130 stored on the local disk 63 of the application execution mode selection server 33. The SLA required delay time is a constraint value of the network communication delay time specified in the SLA request, and is included in the SLA request information 150 stored on the local disk 63 of the application execution mode selection server 33.
[0095] For example, for the risk item "actual resource availability," "resource occupancy rate of other applications / WL" is specified as the calculation rule 226. The resource occupancy rate of other applications / WL is the resource occupancy rate of other applications and / or WLs used in a resource-sharing DC that is a candidate migration destination for some or all of the components that make up the application. Information on this resource occupancy rate is included in the DC-related information 130 stored on the local disk 63 of the application execution mode selection server 33.
[0096] For example, for the risk item "network exclusivity," "average delay time within seven days of using the public network ÷ SLA required delay time" is specified as the calculation rule 226. The average delay time within seven days of using the public network is the average delay time of communications when using the public network over the past seven days, and is included in the DC related information 130 stored on the local disk 63 of the application execution mode selection server 33.
[0097] Furthermore, for example, for the risk item "DC reliability / availability," the calculation rule 226 is defined as "maintenance time within 15 days ÷ service contract period." The maintenance time within 15 days is the cumulative work time of DC maintenance performed in the past 15 days, and is included in the DC related information 130 stored in the local disk 63 of the application execution mode selection server 33. The service contract period is the contract period of the application defined in the SLA request, and is included in the SLA request information 150 stored in the local disk 63 of the application execution mode selection server 33.
[0098] (Application execution mode change proposal table) 13 is a diagram showing an example of the configuration of the application execution mode change plan table 230 stored on the local disk 63 of the application execution mode selection server 33. The application execution mode change plan table 230 is a list of application execution mode change plans, and is created by executing the application execution mode change plan creation program 66 (see FIG. 18 described later).
[0099] 13, in the application execution mode change plan table 230, for each management ID 231 of the application execution mode change plan, a name 232, a component placement variation 233, an expected risk score 234, an expected cost 235, and an expected renewable energy utilization rate 236 are specified as a set of data. That is, the application execution mode change plan includes not only the component placement variation 233 but also information on the expected risk score 234, the expected cost 235, and the expected renewable energy utilization rate 236 (information on the selection requirements).
[0100] 9. The name 232 and component layout variation 233 of the application execution mode modification plan table 230 shown in FIG. 13 define the same information as the name 212 and component layout variation 213 of the layout variation table 210 shown in FIG.
[0101] The assumed risk score 234 specifies the total value of the risk scores of the risk items assumed when the application is executed with the corresponding component placement variation 233 .
[0102] For example, in placement variation 233 of a component with management ID "1," an application is executed across two DCs using a VPN, and each component is executed on a resource-dedicated physical server. Therefore, in this application execution mode, the expected risk score 234 is specified as the sum of the risk score calculated using the calculation rule for the risk item "VPN use" specified in the risk score calculation rule table 220 shown in Fig. 12, the risk score calculated using the calculation rule for the risk item "DC reliability / availability," and so on.
[0103] Also, for example, in placement variation 233 of a component with management ID "2," the application is executed using only the first virtual server 20a of the resource-sharing second DC 2. Therefore, in this execution mode of the application, the total value of the risk score calculated using the calculation rule for the risk item "actual resource availability rate" specified in the risk score calculation rule table 220 shown in Fig. 12, the risk score calculated using the calculation rule for the risk item "DC reliability / availability," and the like is specified as the expected risk score 234.
[0104] The estimated cost 235 specifies the cost expected when an application is executed with the corresponding component placement variation 233. The estimated cost 235 is calculated based on the cost 114 when using a dedicated network (VPN) or a public network specified in the network information table 110 (see FIG. 5) and the cost 126 when using each DC specified in the DC resource information table 120 (see FIG. 6). The estimated cost 235 also specifies the estimated cost per month.
[0105] Furthermore, the assumed renewable energy utilization rate 236 (utilization status of renewable energy power sources) specifies the renewable energy utilization rate that is expected when an application is executed in the placement variation 233 of the corresponding component. The assumed renewable energy utilization rate 236 is calculated based on the renewable energy utilization rate 125 when each DC is used, which is specified in the DC resource information table 120 (see FIG. 6). Note that, for a placement variation 233 in which an application is executed across multiple DCs, the average value of the renewable energy utilization rates 125 of each DC is specified as the assumed renewable energy utilization rate 236. However, the present invention is not limited to this, and for a placement variation 233 in which an application is executed across multiple DCs, the renewable energy utilization rate 125 of one DC selected from the multiple DCs may be specified as the assumed renewable energy utilization rate 236.
[0106] 13, for example, for the management ID "1" of the application execution mode change proposal, the following set of data is specified: name "Web-A," component placement variation "FE, DB → first DC physical server, BE → second DC physical server, VPN connection," expected risk score "50%," expected cost "65,000 yen / month" (k yen = 1,000 yen), and expected renewable energy utilization rate "40%." Also, for example, for the management ID "2" of the application execution mode change proposal, the following set of data is specified: name "Web-A," component placement variation "FE, BE, DB → second DC first virtual server," expected risk score "80%," expected cost "80,000 yen / month" (k yen = 1,000 yen), and expected renewable energy utilization rate "60%."
[0107] 13 has been described as an example in which the expected risk score 234, the expected cost 235, and the expected renewable energy utilization rate 236 are specified as selection requirements for the application execution mode change proposal. However, the present invention is not limited to this. For example, in the application execution mode change proposal table 230, one or two of the expected risk score 234, the expected cost 235, and the expected renewable energy utilization rate 236 may be specified as selection requirements for the application execution mode change proposal. Furthermore, for example, in the application execution mode change proposal table 230, selection requirements other than the expected risk score 234, the expected cost 235, and the expected renewable energy utilization rate 236 may be specified. In this case, any selection requirement that can serve as a selection guideline for the application execution mode change proposal for the DC user 5a can be specified.
[0108] 13, an example has been described in which the total value of the risk scores of the risk items assumed for each component placement variation 233 (assumed risk score 234) is specified, but the present invention is not limited to this. For example, in the application execution mode change proposal table 230, a risk score for each risk item may be specified instead of the assumed risk score 234.
[0109] [Example of application execution system operation] Next, various operational examples of the application execution system 100 (application execution DC selection support system 3) when the execution mode of an application is changed will be described with reference to the drawings.
[0110] (Example 1) In Operation Example 1, an example of the operation of the application execution system 100 when the power adjustment server 4 detects a shortage of power supplied from a renewable energy power source to the first DC 1 will be described. Figure 14 is a diagram showing the operation flow of each component of the application execution system 100 (application execution DC selection support system 3) in Operation Example 1. Note that the direction of the dashed arrow in Figure 14 indicates the direction of time passage.
[0111] First, as shown in FIG. 14, when the power adjustment server 4 detects a shortage of power supplied from a renewable energy power source to the first DC1 (A1 in the figure), the power adjustment server 4 (electric power provider 4a) outputs a power reduction request command (power adjustment command) to the DC management server 31 that manages the first DC1 (A2 in the figure). Note that a shortage of power supplied to the first DC1 is detected not only when the output of the renewable energy power source decreases, but also when the allocation of power supplied to the first DC1 decreases due to a change in power consumption in a predetermined area including the first DC1. Furthermore, the power reduction request command output to the DC management server 31 includes, for example, not only information indicating a power reduction request, but also various other information such as the area where a shortage of renewable energy is detected and information for identifying the DC that is the target of the power reduction request (e.g., the name of the DC, etc.).
[0112] Next, the DC management server 31 to which the power reduction request command has been input acquires hardware information of all DCs connected via the communication network 6 and the resource occupancy rates of applications and / or WLs in all DCs as DC information (second information, third information) (A3 in the figure). As a result, the DC management server 31 acquires various information such as hardware information (including network information) and resource occupancy rates of the first DC 1 that is the target of power reduction and other DCs that are candidate destinations for component migration. Then, the DC management server 31 outputs the acquired DC information to the application execution mode selection server 33 (A4 in the figure).
[0113] Next, the application execution mode selection server 33 to which the DC information has been input outputs a request command for information on applications executed in the first DC1 that are the target of power reduction (applications that are the target of control change) to the SLA management server 32 (A5 in the figure). Next, the SLA management server 32 to which the application information request command has been input acquires information on the component configuration (first information) of each application executed in the first DC1 and the SLA request (for example, network delay time, etc.: fourth information) set in advance by the DC user 5a (A6 in the figure). Then, the SLA management server 32 outputs the acquired information on the component configuration and SLA request of the application to the application execution mode selection server 33 (A7 in the figure).
[0114] Next, the application execution mode selection server 33 creates and selects an application execution mode change plan using the acquired DC information, application component configuration information, and SLA request information (A8 in the figure). The application execution mode selection server 33 executes the application execution mode selection program 64 (see FIG. 4) to perform the process of creating and selecting an application execution mode change plan at A8 in the figure. The specific processing content of the application execution mode change plan creation and selection process will be described in detail later with reference to the flowchart shown in FIG. 16.
[0115] Then, the application execution mode selection server 33 transmits (outputs) the application execution mode change plan selected for each selection requirement to the DC user terminal 5 via the communication network 6 (A9 in the drawing).
[0116] Next, the DC user terminal 5 that has received the application execution mode change proposals for each selection requirement (one or more application execution mode change proposals) presents these application execution mode change proposals to the DC user 5a. Then, the DC user 5a selects a predetermined application execution mode change proposal from the presented application execution mode change proposals for each selection requirement (A10 in the figure).
[0117] Then, the DC user terminal 5 transmits a control command to the migration source DC of the migration target component and the application execution server of the migration destination DC to migrate the migration target component (part or all of the application) in the selected application execution mode change plan to the migration destination DC. For example, if an application execution mode change plan (see FIG. 10 or FIG. 11) with a specified management ID of "1" or "2" is selected in the application execution mode change plan table 230 shown in FIG. 13, the migration source DC of the migration target component is the first DC1 and the migration destination DC is the second DC2. Therefore, in this case, as shown in FIG. 14, the DC user terminal 5 transmits a control command to migrate the migration target component to the first application execution server 11 of the first DC1 and the second application execution server 21 of the second DC2, respectively (A11a and A11b in the figure).
[0118] When the power adjustment server 4 detects a shortage of power supplied from the renewable energy power source to the first DC 1, an appropriate application execution mode change plan is generated and selected as described above.
[0119] (Example 2) In operation example 2, an operation example of the application execution system 100 will be described when a DC user 5a using the first DC 1 makes a request to use, for example, a cheaper DC to the application execution system 100. Note that the application control change request made by the DC user 5a is not limited to a request to use a cheaper DC, but may also be another request (for example, a request to change the cost upper limit of an application).
[0120] 15 is a diagram showing the operational flow of each component of the application execution system 100 (application-execution DC selection support system 3) in operation example 2. Note that the direction of the dashed arrow in FIG. 15 indicates the direction of time passage.
[0121] First, as shown in FIG. 15, information regarding a request to use a cheaper DC (application control change request) is input to the DC user terminal 5 by an input operation by the DC user 5a on the DC user terminal 5 (A21 in the figure). As a result, the information in the application execution environment restriction 146 specified in the application configuration information table 140 shown in FIG. 7 is changed so as to reflect the request to use a cheaper DC. Specifically, new information on the change request is added to or overwritten and updated in the application execution environment restriction 146. Note that if the application control change request from the DC user 5a is, for example, a request to change the upper cost limit of an application, the information in the application configuration information table 140 shown in FIG. 7 for the application restriction 145 is changed so as to reflect the change request.
[0122] Next, the DC user terminal 5 transmits an application control change command corresponding to the request to use the cheaper DC to the first application execution server 11 of the first DC 1 where the application is executed, via the communication network 6 (A22 in the figure). Note that the application control change command includes restriction information of the application newly updated by the DC user 5a.
[0123] Next, the first application execution server 11 that receives the application control change command does not directly execute the control change in accordance with the application control change command, but instead transfers the application control change command to the DC management server 31 via the communication network 6 (A23 in the figure).
[0124] After the DC management server 31 receives the application control change command, the series of operations performed by each component of the application execution system 100, i.e., the operations A24 to A32b in FIG. 15, are performed similarly to the operations A3 to A11b in FIG. 14 described above in Operation Example 1. Therefore, detailed description of the operations A24 to A32b in FIG. 15 will be omitted here. However, in Operation Example 2, the application execution environment restriction information included in the application configuration information acquired by the SLA management server 32 in operation A27 in FIG. 15 reflects the application control change command. Also in Operation Example 2, the application execution mode change plan creation and selection process in A29 in FIG. 15 is performed by the application execution mode selection server 33 executing the application execution mode selection program 64 (see FIG. 4). Specific processing content of the application execution mode change plan creation and selection process will be described in detail below with reference to the flowchart shown in FIG. 16.
[0125] When an application control change command is input from the DC user 5a via the DC user terminal 5, an appropriate application execution mode change plan is generated and selected as described above.
[0126] [Process flow for creating and selecting application execution mode change proposals] Next, a specific processing flow of the application execution mode change plan creation and selection process (application execution mode change method) executed by the application execution mode selection server 33 will be described with reference to the drawings.
[0127] (Creating and selecting application execution mode change proposals) Fig. 16 is a flowchart showing the procedure of the process of creating and selecting an application execution mode change plan executed by the processor 60 of the application execution mode selection server 33. The process of creating and selecting an application execution mode change plan shown in Fig. 16 is performed by the CPU constituting the processor 60 executing the application execution mode selection program 64 (see Fig. 4).
[0128] 14 and 15, the process of creating and selecting an application execution mode change plan shown in Fig. 16 is started when a command (such as a power adjustment command or an application control change command) that may involve a change in the execution mode of an application is input to the application execution DC selection support system 3. At this time, it is assumed that the type of command (power adjustment command or application control change command) input to the application execution DC selection support system 3 is known by the application execution mode selection server 33.
[0129] First, the processor 60 acquires various input information required for creating and selecting an application execution mode change plan (S1).
[0130] In the processing of S1, the processor 60 acquires hardware information of all DCs connected via the communication network 6 and the resource occupancy rates of applications and / or WLs in all DCs as DC information from the DC management server 31. Furthermore, in the processing of S1, the processor 60 acquires, from the SLA management server 32, configuration information of each application executed in a specified DC that is the control change target, and information on the SLA request (for example, network delay time, etc.) that the DC user 5a has set in advance.
[0131] Furthermore, in the processing of S1, the processor 60 creates a network information table 110 (see FIG. 5), a DC resource information table 120 (see FIG. 6), and an application configuration information table 140 (see FIG. 7) based on the various types of information acquired, and stores these in the local disk 63. In the processing of S1, the processor 60 stores, among the various types of information acquired about the DC, other various types of information about the DC that are not specified in these information tables as DC related information 130 in the local disk 63. Furthermore, in the processing of S1, the processor 60 stores the acquired information about the SLA request in the local disk 63 as SLA request information 150.
[0132] Next, the processor 60 selects an application whose execution mode is to be changed from among one or more applications executed in the specified DC that is the control change target (S2). Note that if the command input to the application-execution DC selection support system 3 is, for example, a power adjustment command such as a power reduction request command, all applications executed in the specified DC will be subject to a change in execution mode. On the other hand, if the command input to the application-execution DC selection support system 3 is, for example, an application control change command from the DC user 5a, the application specified in the application control change command will be subject to a change in execution mode.
[0133] Next, the processor 60 sets components (migration target components) to be migrated to another DC from among one or more components constituting the application selected in S2 (S3). In this process, the processor 60 sets a combination (part or all) of migration target components to another DC within the application whose execution mode is to be changed. Details of the migration target component setting process will be described later with reference to FIG. 17.
[0134] Next, the processor 60 selects DCs that are candidates for the migration destination of the component (hereinafter referred to as "candidate migration destination DCs") (S4). In this process, the processor 60 refers to the DC resource information table 120 (see FIG. 6), DC related information 130 (including the resource occupancy rates of applications and / or WLs in other DCs), and SLA requirement information 150 stored on the local disk 63, and selects candidate migration destination DCs that satisfy the resource requirements of the application.
[0135] Next, the processor 60 creates arrangement variations of the components that make up the application (S5).
[0136] In the process of S5, the processor 60 creates component placement variations when each combination of migration target components in other DCs set in the process of S3 is migrated to each migration destination candidate DC selected in the process of S4. At this time, information on the type of server (physical server or virtual server) used in each migration destination candidate DC is added to the information on the component placement variation. Furthermore, in a placement variation in which an application is executed across multiple DCs, information on the type of network (public network or private network (VPN)) used between the DCs is also added to the information on the component placement variation. That is, in the process of S5, the processor 60 creates a placement variation table 210 shown in FIG. 9. Furthermore, in the process of S5, the processor 60 stores the created placement variation table 210 in the local disk 63.
[0137] Next, the processor 60 creates a risk score calculation rule (S6).
[0138] In the processing of S6, the processor 60 references the network information table 110, the DC resource information table 120, the DC related information 130, the application configuration information table 140, and the SLA request information 150 stored in the local disk 63 to extract (identify) risk items in the application execution system 100 (see FIG. 1) to be controlled. Then, in the processing of S6, the processor 60 creates a risk score calculation rule table 220 (see FIG. 12) that defines rules for calculating the risk score of each risk item. Also, in the processing of S6, the processor 60 stores the created risk score calculation rule table 220 in the local disk 63.
[0139] Next, the processor 60 creates a proposal for changing the application execution mode (S7).
[0140] In the processing of S7, the processor 60 calculates, for each placement variation of the components constituting the application created in the processing of S5, the assumed values of various selection requirements that can serve as selection guidelines for the DC user 5a for the application execution mode change proposal. Specifically, the processor 60 calculates, for each placement variation of the components, an assumed risk score, an assumed cost, and an assumed renewable energy utilization rate as assumed values of the selection requirements. Then, the processor 60 creates an application execution mode change proposal table 230 (see FIG. 13 ) that associates the calculated assumed values of the various selection requirements with information on the placement variation of the components. Note that details of the application execution mode change proposal creation processing will be described later with reference to FIG. 18 , which will be described later. Also, in the processing of S7, the processor 60 stores the created application execution mode change proposal table 230 in the local disk 63.
[0141] Next, the processor 60 refers to the application execution mode change plan table 230 (see FIG. 13 ) created in the process of S7 and ranks the application execution mode change plans for each selection requirement (S8). In this process, the processor 60 ranks (sorts) the application execution mode change plans (placement variations) for each selection requirement (estimated risk score 234, estimated cost 235, estimated renewable energy utilization rate 236) defined in the application execution mode change plan table 230 in descending or descending order of the estimated value of the selection requirement, and selects the highest-ranked application execution mode change plan. Note that if the selection requirement is the estimated risk score 234 or the estimated cost 235, the application execution mode change plan with the lowest estimated value will be the highest-ranked application execution mode change plan. On the other hand, if the selection requirement is the estimated renewable energy utilization rate 236, the application execution mode change plan with the highest estimated value will be the highest-ranked application execution mode change plan.
[0142] Next, the processor 60 transmits information on the highest-ranking application execution mode change plan for each selection requirement selected in the processing of S8 (component placement variations, expected risk score, expected cost, expected renewable energy utilization rate) to the DC user terminal 5 (S9). Through this processing, information on the highest-ranking application execution mode change plan for each selection requirement is presented to the DC user 5a. After that, when a predetermined application execution mode change plan is selected by the DC user 5a from the presented application execution mode change plans, a migration control command for the migration target component is transmitted from the DC user terminal 5 to the DC related to application migration control.
[0143] Next, the processor 60 determines whether or not all applications to be subject to a change in execution mode have been selected (S10).
[0144] If the processor 60 determines in S10 that all applications whose execution modes are to be changed have not been selected (if the determination in S10 is NO), the processor 60 returns the process to S2, changes the applications whose execution modes are to be changed, and repeats the processes from S2 onwards.On the other hand, if the processor 60 determines in S10 that all applications whose execution modes are to be changed have been selected (if the determination in S10 is YES), the processor 60 ends the process of creating and selecting an application execution mode change plan.
[0145] In the example of the process of creating and selecting an application execution mode change plan shown in Figure 16, an example has been described in which the highest-level application execution mode change plan for each selected requirement is sent to the DC user terminal 5 immediately after being selected (after processing S8), but the present invention is not limited to this.
[0146] For example, after selecting the highest application execution mode change plan for each selection requirement for all applications that are targets for changing the execution mode, the highest application execution mode change plan for each selection requirement for each application may be configured to be transmitted simultaneously to the corresponding DC user terminals 5. In this case, the transmission process of the highest application execution mode change plan for each selection requirement (the process of S9 above) is performed when the result of the determination process of S10 above is a YES determination.
[0147] (Configuration process for migration target components) Next, the migration target component setting process that is called and executed in the process of S3 in the process of creating and selecting an application execution mode change plan (see FIG. 16) will be described with reference to Fig. 17. Fig. 17 is a flowchart showing the steps of the migration target component setting process that is executed by the processor 60 of the application execution mode selection server 33. The migration target component setting process shown in Fig. 17 is performed by the CPU constituting the processor 60 executing the migration target component setting program 65 (see Fig. 4).
[0148] First, the processor 60 acquires the configuration information of the application (S21). In this process, the processor 60 refers to the application configuration information table 140 (see FIG. 7) to acquire the configuration information (component configuration 143 in FIG. 7) of the component of the application that is the control change target selected in the process of S2 in FIG. 16.
[0149] Next, the processor 60 decomposes the application into component units (c1 to cn) (S22). For example, if the selected application is application 80 named "Web-A" shown in Fig. 8, this process decomposes application 80 into three components: FE 81, BE 82, and DB 83.
[0150] Next, the processor 60 sets "1" (initial value) to the number of components k, which is a variable control parameter for the setting process of the migration target components (S23). The number of components k is a parameter that indicates the number of migration target components, i.e., the migration control range of components within an application. For example, if the selected application is application 80 named "Web-A" shown in FIG. 8, application 80 is made up of three components (FE81, BE82, and DB83), and therefore the variable range of the number of components k is "1" to "3."
[0151] Next, the processor 60 sets and saves a combination of components corresponding to the currently set number of components k (S24). In this process, if the total number of components in the application is "n", n C k The number of component combinations calculated by (combination formula) is set. In this process, the set component combinations are stored in RAM (not shown) in the memory 62.
[0152] For example, if the selected application is application 80 with the name "Web-A" shown in Fig. 8 and the number of components k is "1", three combinations of components (3C1) are set: "FE", "BE", and "DB". For example, if the selected application is application 80 with the name "Web-A" shown in Fig. 8 and the number of components k is "2", three combinations of components (3C2) are set: "FE, BE", "FE, DB", and "BE, DB". Furthermore, if the selected application is application 80 with the name "Web-A" shown in Fig. 8 and the number of components k is "3", one combination of components (3C3) is set: "FE, BE, DB".
[0153] Next, the processor 60 determines whether the currently set number of components k is the total number of components n of the application (S25).
[0154] If the processor 60 determines in S25 that the number of components k is not the total number of components n of the application (if the determination in S25 is NO), the processor 60 adds "1" to the number of components k to update the number of components k (S26). Thereafter, the processor 60 returns the process to the process of S24, and repeats the processes from S24 onwards using the updated number of components k.
[0155] On the other hand, if the processor 60 determines in S25 that the number of components k is equal to the total number of components n of the application (if S25 is judged as YES), the processor 60 terminates the process of setting the components to be migrated and returns the process to S4 in the process of creating and selecting an application execution mode change plan (see Figure 16).
[0156] (Application execution mode change proposal creation process) Next, with reference to Fig. 18, the application execution mode change plan creation process that is called and executed in the process of S7 in the application execution mode change plan creation / selection process (see Fig. 16) will be described. Fig. 18 is a flowchart showing the steps of the application execution mode change plan creation process executed by the processor 60 of the application execution mode selection server 33. The application execution mode change plan creation process shown in Fig. 18 is performed by the CPU constituting the processor 60 executing the application execution mode change plan creation program 66 (see Fig. 4).
[0157] First, the processor 60 selects a predetermined layout variation from the layout variations 213 of various components defined in the layout variation table (see FIG. 9) (S31). In this process, the predetermined layout variation is selected from the layout variations 213 of various components defined in the layout variation table (see FIG. 9) that are associated with the application to be changed and selected in the process of S2 in FIG. 16. For example, if the application being selected is the "Web-A" application defined in FIG. 9, the predetermined layout variation is selected from the layout variations 213 of components defined by management IDs "1", "2", etc.
[0158] Next, processor 60 refers to risk score calculation rule table 220 (see FIG. 12) and calculates the risk score of each risk item corresponding to a predetermined arrangement variation (S32). For example, if the selected application is the "Web-A" application with the specified name in FIG. 9 and the selected predetermined arrangement variation is "FE, DB → first DC physical server, BE → second DC physical server, VPN connection" with management ID "1", the risk score of the risk item "VPN use", the risk score of the risk item "DC reliability / availability", etc. are calculated in the processing of S32.
[0159] Next, the processor 60 calculates the assumed risk score (S33). In this process, the processor 60 calculates the total value of the risk scores of each risk item calculated in the process of S32, and sets this calculated value as the assumed risk score.
[0160] Next, the processor 60 calculates the estimated cost when the application is executed in a predetermined placement variation (S34). In this process, the processor 60 calculates the estimated cost by referring to the cost 114 when using a specified network in the network information table 110 (see FIG. 5) and the cost 126 when using a specified DC in the DC resource information table (see FIG. 6). For example, if the selected application is the "Web-A" application with the specified name in FIG. 9 and the selected predetermined placement variation is "FE, DB → first DC physical server, BE → second DC physical server, VPN connection" with management ID "1", the processor 60 calculates the estimated cost by referring to the cost 114 specified for management ID "5" in the network information table 110 (see FIG. 5) and the costs 126 specified for management IDs "1", "2", and "4" in the DC resource information table (see FIG. 6).
[0161] Next, the processor 60 determines whether the estimated cost calculated in the processing of S34 satisfies the limit (S35). This determination processing is performed by comparing the estimated cost calculated in the processing of S34 with the upper cost limit value specified in the limit 145 (pre-set by the DC user 5a) of the corresponding application in the application configuration information table 140 (see FIG. 7). If the estimated cost is equal to or less than the upper cost limit value, the determination result of S35 is YES, and if the estimated cost is higher than the upper cost limit value, the determination result of S35 is NO.
[0162] In S35, if the processor 60 determines that the expected cost does not satisfy the constraint (if S35 is determined to be NO), the processor 60 deletes the information of the selected predetermined placement variation (S36). This process makes it possible to automatically eliminate application execution mode change proposals (placement variations) that do not satisfy the cost constraints predetermined by the DC user 5a, that is, that do not conform to the intentions of the DC user 5a. Thereafter, the processor 60 performs the process of S40, which will be described later.
[0163] On the other hand, if the processor 60 determines in S35 that the estimated cost meets the limit (if the determination in S35 is YES), the processor 60 determines whether or not renewable energy power sources can be utilized in a specified placement variation (S37).
[0164] The determination process of S37 is performed with reference to the DC resource information table (see FIG. 6). Specifically, if a numerical value is specified in the renewable energy utilization rate 125 for at least one DC used in a predetermined placement variation in the DC resource information table (see FIG. 6), it is determined that renewable energy power sources can be utilized in the predetermined placement variation (YES determination). On the other hand, if a numerical value is not specified in the renewable energy utilization rate 125 for all DCs used in the predetermined placement variation in the DC resource information table (see FIG. 6), it is determined that renewable energy power sources cannot be utilized in the predetermined placement variation (NO determination).
[0165] In S37, if the processor 60 determines that a renewable energy power source can be utilized in the predetermined placement variation (if S37 is determined as YES), the processor 60 calculates the assumed renewable energy utilization rate when the application is executed in the predetermined placement variation (S38). In this process, the processor 60 refers to the renewable energy utilization rate 125 specified in the DC resource information table (see FIG. 6) and calculates the assumed renewable energy utilization rate in the DC used in the predetermined placement variation.
[0166] On the other hand, in S37, if the processor 60 determines that renewable energy power sources cannot be utilized in the specified placement variation (if S37 is a NO determination), or after processing S38, the processor 60 sets the various expected values calculated in the above processing in the application execution mode change proposal table (see Figure 13) (S39).
[0167] In the first (initial) processing of S39, a new application execution mode change proposal table (see FIG. 13) is created, which associates the selected predetermined placement variation with the various assumed values calculated in the above processing. On the other hand, in the second and subsequent processing of S39, data associating the selected predetermined placement variation with the various assumed values calculated in the above processing is added to the application execution mode change proposal table, and the application execution mode change proposal table is updated.
[0168] Furthermore, when the process of S39 is performed when the determination in S37 is YES, the processor 60 sets the estimated risk score, estimated cost, and estimated renewable energy in the application execution mode change plan table in association with information on a predetermined placement variation of the selected component (the management ID 231 and the name 232). On the other hand, when the process of S39 is performed when the determination in S37 is NO, the processor 60 sets the estimated risk score and estimated cost in association with a predetermined placement variation of the selected component in the application execution mode change plan table. In this case, the column for estimated renewable energy utilization rate 236 in the application execution mode change plan table (see FIG. 13) is left blank (no numerical value is specified).
[0169] After the process of S39 or S36, the processor 60 determines whether or not all of the arrangement variations have been selected (S40).
[0170] In S40, if processor 60 determines that not all of the arrangement variations have been selected (if S40 returns a NO determination), processor 60 returns the process to S31 and repeats the processes from S31 onwards.
[0171] On the other hand, if the processor 60 determines in S40 that all placement variations have been selected (if the judgment in S40 is YES), the processor 60 terminates the process of creating the application execution mode change proposal and returns the process to the process of S8 in the process of creating and selecting the application execution mode change proposal (see Figure 16).
[0172] In the example of the process for creating an application execution mode change plan shown in FIG. 18, an example has been described in which information about placement variations whose expected costs do not satisfy the limit (below the upper cost limit) is deleted (see the processes of S35 and S36 above), but the present invention is not limited to this. For example, in the process for creating an application execution mode change plan, a configuration may be added in which placement variations whose expected risk scores exceed a predetermined threshold are deleted. Furthermore, in the process for creating an application execution mode change plan, a configuration in which placement variations whose expected risk scores exceed a predetermined threshold are deleted may be adopted instead of a configuration in which placement variations whose expected costs do not satisfy the limit are deleted.
[0173] For example, in the process of creating a proposal for changing an application execution mode shown in Fig. 18, if a configuration is added to delete a placement variation whose expected risk score exceeds a predetermined threshold, after the process of S33, a comparison process is performed between the calculated expected risk score and the predetermined threshold. If the result of the comparison and determination is that the expected risk score exceeds the predetermined threshold, the process of S36 (deletion process of placement variation) is performed, and if the expected risk score does not exceed the predetermined threshold, the process of S34 (calculation process of the expected cost) is performed.
[0174] In this configuration, it is not necessary to create and save application execution mode change plans that are highly likely to cause SLA violations, thereby reducing the processing load. Also, in this configuration, application execution mode change plans that are highly likely to cause SLA violations can be automatically eliminated without relying on the judgment of DC user 5a.
[0175] [Various effects] As described above, in the application execution mode selection server 33 of this embodiment, when a situation arises in which it is necessary to change the execution mode of an application consisting of one or more components, an application execution mode change plan is generated taking into consideration constraints such as SLA requirements, for example. At this time, the application execution mode change plan is generated taking into consideration not only the placement variations that occur when all components are migrated (placed) to a DC where the application can be executed, but also the placement variations that occur when some components are migrated to another DC. Therefore, in this embodiment, when selecting a destination DC for an application, usability at the destination DC is maintained, and it is possible to smoothly respond to various situations that arise.
[0176] In this embodiment, the application execution mode selection server 33 extracts (identifies) various risk items that could lead to SLA violations depending on the configuration of the DC to be processed and the configuration of the network used during the creation of an application execution mode change plan. Then, for each component placement variation, the server evaluates each risk item, and includes the evaluation result information in the application execution mode change plan. Furthermore, in this embodiment, the server evaluates the cost for each component placement variation, and includes the evaluation result information in the application execution mode change plan. This allows the DC user 5a to be presented with an application execution mode change plan that includes not only component placement variations but also the evaluation results of risk items and costs. Therefore, this embodiment allows the DC user 5a to select an application execution mode change plan that can best accommodate constraints, such as costs and SLA requirements, that are determined in advance by the DC user 5a for application execution. Furthermore, this embodiment allows the DC user 5a to reliably avoid application execution mode change plans (component placement variations) that could result in SLA violations.
[0177] In the application execution mode selection server 33 of this embodiment, at the stage of creating an application execution mode change proposal, various risk items that may lead to SLA violations are extracted (identified) according to the configuration of the DC to be processed and the configuration of the network to be used, and evaluation rules (rules for calculating risk scores) for each risk item are created. Therefore, in this embodiment, it is possible to extract and evaluate risk items that are suitable for the configuration of the DC to be processed and the configuration of the network to be used.
[0178] In the application execution mode selection server 33 of this embodiment, at the stage of creating an application execution mode change plan, the expected renewable energy utilization rate is also evaluated for each component placement variation, and the evaluation results are also included in the application execution mode change plan and presented to the DC user 5a. Therefore, in this embodiment, it is possible to create and select an application execution mode change plan that is in line with the trend of decarbonization of DCs.
[0179] Furthermore, the application execution mode selection server 33 of this embodiment presents to the DC user 5a the highest-ranking application execution mode change proposal selected for each selection requirement that can serve as a selection guideline for the application execution mode change proposal for the DC user 5a. Therefore, in this embodiment, it is possible to widen the options available to the DC user 5a for application execution mode change proposals, and to select an application execution mode change proposal that is in line with the intentions of the DC user 5a.
[0180] [Various variations] The above describes an application execution mode selection server 33 (application execution mode change server) according to one embodiment of the present invention, an application execution DC selection support system 3 (application execution mode change support system) including the same, and a method for creating and selecting an application execution mode change plan (application execution mode change method), but the present invention is not limited to the above embodiment. The configuration of the present invention can take on various other modified configurations as long as they do not deviate from the gist of the present invention as set forth in the claims.
[0181] In the above embodiment, an example was described in which the application execution mode selection server 33 creates a risk score calculation rule table 220 (see Figure 12) by referring to the input information group 67 during the process of creating and selecting application execution mode change proposals (see Figure 16), but the present invention is not limited to this.
[0182] For example, a risk score calculation rule table may be prepared in advance that defines risk score calculation rules for all risk items that could lead to SLA violations in all possible application execution system configurations, regardless of the configuration of the application execution system 100 that is the target of processing. In this case, of the various risk items defined in the risk score calculation rule table, only the (necessary) risk items that correspond to the placement variations of the components being selected in the process of creating and selecting application execution mode change plans are evaluated (risk scores are calculated).
[0183] With this configuration, it is not necessary to create a risk score calculation rule table (the process of S6 in FIG. 16) each time the process of creating and selecting an application execution mode modification plan is executed. Therefore, in this case, the processing load of the process of creating and selecting an application execution mode modification plan is reduced, and the process of creating and selecting an application execution mode modification plan becomes simpler.
[0184] In the above embodiment, an example has been described in which the highest-ranking application execution mode change plan selected for each selection requirement (estimated risk score, estimated cost, and estimated renewable energy utilization rate) is sent to the DC user terminal 5 (DC user 5a), but the present invention is not limited to this.
[0185] For example, a configuration may be adopted in which the top several highly rated application execution mode change proposals for each selection requirement are transmitted to the DC user terminal 5 (DC user 5a).
[0186] Furthermore, for example, a configuration may be adopted in which only the highest or top few application execution mode change proposals of the selection requirements corresponding to the restrictions set by the DC user 5a are transmitted to the DC user terminal 5 (DC user 5a). For example, as in the application configuration information table 140 shown in FIG. 7, when "Renewable energy utilization (desired)" is specified in the restriction 146 of the application execution environment, only the highest or top few application execution mode change proposals in the assumed renewable energy utilization rate 236 in the application execution mode change proposal table 230 (see FIG. 13) may be transmitted to the DC user terminal 5 (DC user 5a). With such a configuration, it is possible to present to the DC user 5a an application execution mode change proposal that better reflects the intentions of the DC user 5a.
[0187] In the above embodiment, an example was described in which the DC management server 31 and the SLA management server 32 are provided separately in the application execution DC selection support system 3, but the present invention is not limited to this, and for example, both may be configured as a single server.
[0188] In the above embodiment, an example of creating an application execution mode change plan (see FIG. 10) having component placement variations across two DCs has been described, but the present invention is not limited to this. The method of creating an application execution mode change plan in the above embodiment can also create an application execution mode change plan having component placement variations across three or more DCs, depending on, for example, the component configuration of the application and the contents of the SLA requirements.
[0189] In the above embodiment, an example of a configuration has been described in which all processing steps are executed on software in the process of creating and selecting an application execution mode modification plan by the application execution mode selection server 33 (see FIGS. 16 to 18), but the present invention is not limited to this. Some or all of the processing steps included in the process of creating and selecting an application execution mode modification plan may be configured to be executed on hardware.
[0190] Furthermore, the above-described embodiments provide detailed and specific descriptions of the device configuration to facilitate understanding of the present invention, and are not necessarily limited to devices that include all of the described components. The position, size, shape, and range of each component shown in the drawings may not represent the actual position, size, shape, and range in order to facilitate understanding of the invention. Therefore, the present invention is not necessarily limited to the position, size, shape, and range disclosed in the drawings. Furthermore, some of the configurations of the above-described embodiments may be added, deleted, or replaced with other configurations. Furthermore, the illustrated control lines and information lines are those considered necessary for explanation, and do not necessarily represent all control lines and information lines in the actual product. In reality, it can be assumed that almost all components are interconnected. [Explanation of symbols]
[0191] 1...first DC, 2...second DC, 3...application execution DC selection support system, 4...power adjustment server, 5...DC user terminal, 6...communication network, 10, 20...physical server, 20a...first virtual server, 20b...second virtual server, 31...DC management server, 32...SLA management server, 33...application execution mode selection server, 40, 50, 60...processor, 43, 53, 63...local disk, 44...DC equipment management program, 45...resource monitoring program, 54...SLA requirement acquisition program, 64...application execution mode selection program, 65...migration target component setting program, 66...application execution mode change proposal creation program, 100...application execution system, 110...network information table, 120...DC resource information table, 130...DC related information, 140...application configuration information table, 150...SLA requirement information, 210...placement variation table, 220...risk score calculation rule table, 230...application execution mode change proposal table
Claims
1. a storage unit that stores first information on components that constitute an application executable on each of a plurality of external devices, second information on the configuration of each of the plurality of external devices, third information on the configuration of a communication network that can be used between the plurality of external devices, and fourth information on restrictions that are preset by a user when the application is executed; and a processing unit that, when a situation arises in which a change in an execution mode of a predetermined application is required, creates one or more layout modes of the components for the plurality of external devices based on the information stored in the storage unit, so that the predetermined application can be executed by migrating at least one of the components constituting the predetermined application to another external device included in the plurality of external devices, and that is capable of creating, for each of the created layout modes of the components, a change plan for the execution mode of the predetermined application, including information on the layout mode of the components. Application execution mode change server.
2. The processing unit is capable of evaluating risk items that may be factors that cause violations of the constraints for each layout mode of the components of the predetermined application based on the second information, the third information, and the fourth information, and creating a change plan for the execution mode of the predetermined application that further includes evaluation results of the risk items. The application execution mode change server according to claim 1 .
3. The calculation processing unit extracts the expected risk items based on the second information, the third information, and the fourth information, and creates evaluation rules for the risk items. The application execution mode change server according to claim 2 .
4. the second information includes information regarding usage status of applications and / or workloads in each of the plurality of external devices; The risk items include items related to the usage status of other applications and / or workloads in external devices among the plurality of external devices, which are used in the proposed change in the execution mode of the predetermined application. The application execution mode change server according to claim 2 .
5. the third information includes information regarding a communication delay time in the communication network, the risk items include an item related to a communication delay time in the communication network used in the proposed change to the execution mode of the predetermined application; The processing unit evaluates an item related to a communication delay time in the communication network used in a proposed change to an execution mode of the predetermined application that executes the predetermined application across two or more external devices included in the plurality of external devices. The application execution mode change server according to claim 2 .
6. The processing unit deletes information about the layout of the component when the evaluation result of the risk item does not satisfy the restriction set for the risk item. The application execution mode change server according to claim 2 .
7. the second information includes information relating to the cost when each of the plurality of external devices is used; the third information includes information regarding the cost of using the communication network; The processing unit is capable of evaluating an expected cost for each layout mode of the components of the predetermined application based on the second information and the third information, and creating a modification plan for the execution mode of the predetermined application that further includes the cost evaluation result. The application execution mode change server according to claim 1 .
8. The calculation processing unit deletes information about the layout mode of the component whose cost evaluation result does not satisfy a restriction set for the cost. The application execution mode change server according to claim 7.
9. the second information includes information regarding a utilization status of a renewable energy power source in each of the plurality of external devices; The calculation processing unit is capable of evaluating an expected utilization status of the renewable energy power source for each layout mode of the components of the predetermined application based on the second information, and creating a change plan for the execution mode of the predetermined application that further includes an evaluation result of the utilization status of the renewable energy power source. The application execution mode change server according to claim 1 .
10. The processing unit ranks the proposed changes to the execution mode of the predetermined application for each selection requirement that serves as a guideline for a user to select a proposed change to the execution mode of the predetermined application. The application execution mode change server according to claim 1 .
11. The selection requirements include at least one of an evaluation result of risk items that may cause a violation of the constraints in a proposed change to the execution mode of the predetermined application, an evaluation result of expected costs, and an evaluation result of expected utilization status of renewable energy power sources. The application execution mode change server according to claim 10.
12. an information acquisition server capable of acquiring first information on components constituting an application executable on each of a plurality of external devices, second information on the configuration of each of the plurality of external devices, third information on the configuration of a communication network available between the plurality of external devices, and fourth information on restrictions previously set by a user when the application is executed; an application execution mode change server that, when a situation arises in which a change in an execution mode of a predetermined application is necessary, acquires the first information, the second information, the third information, and the fourth information from the information acquisition server, and, based on the acquired information, creates one or more layout modes of the components for the plurality of external devices, which enables the predetermined application to be executed by migrating at least one of the components constituting the predetermined application to another external device included in the plurality of external devices, and is capable of creating, for each of the created layout modes of the components, a change plan for the execution mode of the predetermined application, which includes information on the layout mode of the components. Application execution mode change support system.
13. When a situation arises in which a change in the execution mode of a predetermined application is necessary, an application execution mode change server including an arithmetic processing unit that creates a change proposal for the execution mode of the predetermined application acquires first information on components that constitute an application executable on each of a plurality of external devices, second information on the configuration of each of the plurality of external devices, third information on the configuration of a communication network available between the plurality of external devices, and fourth information on constraints previously set by a user when executing the application; the arithmetic processing unit creates one or more arrangements of the components for the plurality of external devices, based on the acquired first information, the second information, the third information, and the fourth information, which enables the predetermined application to be executed by transferring at least one of the components constituting the predetermined application to another external device included in the plurality of external devices; and generating, by the arithmetic processing unit, a change plan for the execution mode of the predetermined application, the change plan including information on the component placement mode, for each of the created component placement modes. A method for changing an application execution mode.
Citation Information
Patent Citations
Systems and methods for cloud migration readiness
US20210400110A1