WO2004084085A1 - Load distributing system by intersite cooperation - Google Patents

Load distributing system by intersite cooperation Download PDF

Info

Publication number
WO2004084085A1
WO2004084085A1 PCT/JP2003/003273 JP0303273W WO2004084085A1 WO 2004084085 A1 WO2004084085 A1 WO 2004084085A1 JP 0303273 W JP0303273 W JP 0303273W WO 2004084085 A1 WO2004084085 A1 WO 2004084085A1
Authority
WO
WIPO (PCT)
Prior art keywords
server
service
load
spare
servers
Prior art date
Application number
PCT/JP2003/003273
Other languages
French (fr)
Japanese (ja)
Inventor
Tsutomu Kawai
Satoshi Tutiya
Yasuhiro Kokusho
Original Assignee
Fujitsu Limited
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Limited filed Critical Fujitsu Limited
Priority to PCT/JP2003/003273 priority Critical patent/WO2004084085A1/en
Priority to JP2004569568A priority patent/JPWO2004084085A1/en
Publication of WO2004084085A1 publication Critical patent/WO2004084085A1/en
Priority to US11/050,058 priority patent/US20050144280A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers

Definitions

  • the present invention relates to a load distribution system using inter-site cooperation.
  • Figure 1 shows an example of a conventional load distribution system.
  • the client 10 accesses the data center 12 via the network 11 and receives a service.
  • a plurality of servers 14 are connected to the load balancer 13.
  • a single server cannot handle the process, install multiple servers as shown in Fig. 1 and place a load balancer 13 in front of it to distribute the load to multiple servers and improve service quality.
  • additional determination of server 14 and server 14 load balancing In many cases, the work of adding the device 13 and changing the setting is performed manually, and it is necessary to secure a server at all times corresponding to the maximum load, resulting in a large cost.
  • Patent Document 1 defines a method of adding a server and distributing requests from users. However, it is necessary to incorporate a mechanism for server selection on the user side, which is suitable for application to an unspecified number of services. Not. In addition, there is a problem that it is necessary to exchange management information other than the request.
  • Patent Document 2 can be applied only to a case where static information is distributed, and cannot be applied to a case where different information is returned every time in response to a request from a user such as service provision.
  • Patent Document 3 also assumes the case of static information, and does not consider the case where the load on the file server or the like becomes excessive.
  • Patent Document 1
  • Patent Document 2
  • An object of the present invention is to provide a load distribution system capable of distributing a load for providing a service and flexibly responding to a change in a request from a user.
  • the method of the present invention is a method of distributing the load of an apparatus having a plurality of servers for providing a service to a client via a network.
  • an abbreviated setting for a service to be provided to the spare server is set, and the server for providing the service is provided.
  • the control step for sharing the load with the server that normally provides the service is performed. It is characterized by having.
  • a plurality of spare servers are provided in addition to a server for providing a normal service, and when a load on a server for providing a normal service increases, the spare server is provided. Then, install an abridge so that the service can be provided, and share the load of the server for providing the service.
  • devices equipped with spare servers are connected via a network, and control is performed so that spare servers are provided to each other. Even if it does not have enough processing power to support the service, multiple devices can cope with the load via the network and cope with the load, thereby avoiding interruption of service provision due to a large load. In addition, this allows the number of spare servers to be provided for one device to be reduced, eliminating the need for redundant hardware in each device.
  • Figure 1 shows an example of a conventional load distribution system.
  • FIG. 2 is a diagram showing a basic configuration of the embodiment of the present invention.
  • FIG. 3 is a diagram showing a network arrangement configuration in a center in the basic configuration of FIG.
  • FIG. 4 is a diagram showing a first embodiment of the present invention.
  • FIG. 5 is a diagram illustrating the operation of the first exemplary embodiment of the present invention.
  • FIG. 6 is a diagram showing data for calculating the load and capacity of the server.
  • Figure 7 shows data for selecting a server according to the size of the load. is there.
  • FIG. 8 is a diagram showing the relationship between the capacity of the server to be added and the predicted value of the load.
  • FIG. 9 is a diagram showing a configuration in which a spare server is shared by a plurality of services.
  • FIG. 10 is a diagram showing a configuration in a case where a spare server is provided between different centers.
  • FIG. 11 is a diagram illustrating the operation of the embodiment of the present invention.
  • FIG. 12 is a diagram for explaining how to secure a network band when cooperating with another center.
  • FIG. 13 is a diagram illustrating an application example of the embodiment of the present invention in a web server.
  • FIG. 14 is a diagram showing an application example of the embodiment of the present invention in a web service.
  • FIG. 15 is an application example of the embodiment of the present invention in a case where equal centers mutually exchange resources. is there.
  • FIG. 16 is a diagram showing an example in which the embodiment of the present invention is applied to a pre-center having no spare server.
  • FIGS. 17 to 24 are flowcharts illustrating the operation of the embodiment of the present invention when there is no cooperation between databases provided in the center.
  • FIG. 25 to FIG. 30 are flowcharts showing the processing flow of the embodiment of the present invention when the database is linked.
  • FIG. 2 is a diagram showing a basic configuration of the embodiment of the present invention.
  • the client 10 accesses the web server 15-1 via the network 11 via the load distribution device 13_1 of the preceding center 12-1.
  • the client 10 accesses the database server 14-1 or the file server 14-12 to receive the service.
  • the rear-stage server 1 2-2 has almost the same configuration as the front-stage center 12-1, receives a request from the client 10 via the load balancer 13-1, and loads the load balancer 13-2
  • the client 10 is guided to the web server 15-2 while distributing the load with.
  • the client 10 accesses the database server 14-3 or 14_4 via the web server 15-2 to receive the service.
  • the first-stage center 12-1 indicates a center that directly receives a user's request
  • the second-stage center 12-2 indicates a center that processes a user request through the first-stage center 12-1.
  • the assignment of servers between data centers is a many-to-many relationship, such as when a certain data center uses servers from multiple data centers or when a certain data center responds to server requests from multiple data centers simultaneously. is there.
  • Server load status ⁇ Client load status is determined by the system controller 1 6-1,
  • 16-2 performs the tallying / judgment 'application, and sets the results in the servers 141-14-14-14 and the load balancers 13-1 and 13-2. If server resources are insufficient, set servers 17_1 and 17-2 in the spare server as servers with necessary functions, add them to the service, and improve their performance.
  • FIG. 3 is a diagram showing a network arrangement configuration in a center in the basic configuration of FIG.
  • the physical network configuration consists of connecting all the servers directly under a single switch group 20, and having a logically independent network (VLAN0, VLAN11, VLAN12, VLAN21). With such an arrangement, it becomes possible to automate the process of adding servers to the required locations.
  • the server capacity is derived from server specifications such as CPU performance / network configuration, and necessary servers are calculated even in an environment where various types of hardware are mixed. Assign servers appropriately. At the same time, it calculates the traffic to that server and secures or arbitrates the network bandwidth.
  • servers will be added before an overload occurs, and service quality will be guaranteed.
  • FIG. 4 is a diagram showing a first embodiment of the present invention.
  • the system control unit 16 measures the load status of the server, and if it is judged that the current number of servers will cause a problem, a server is added from the spare server 17 and applications, services, Set and introduce data to be used. Then, the settings of the dependent devices and servers are updated and incorporated into the service.
  • FIG. 5 is a diagram illustrating the operation of the first exemplary embodiment of the present invention.
  • FIG. 6 is a diagram showing data for calculating the load and capacity of the server.
  • information is required on how many service capabilities a given server provides.
  • the service capacity per unit changes depending on the combination of servers and devices used, and applications and services. It is practically impossible to use uniform servers when multiple data centers cooperate.Therefore, it is necessary to calculate service capabilities from equipment specifications such as CPU and memory. is there. Therefore, from the performance value in a typical configuration,
  • a method of estimating a performance value in consideration of a difference in CPU capability and the like is used.
  • Figure 7 is a diagram showing data for selecting a server according to the size of the load.
  • the server with the higher recommendation is preferentially selected and used until the required amount is satisfied.
  • FIG. 8 is a diagram showing the relationship between the capacity of the server to be added and the predicted value of the load.
  • FIG. 9 is a diagram showing a configuration in which a spare server is shared by a plurality of services.
  • the service center 1 and service 2 are equipped with the service 1 and the service 2, respectively, and the load balancers 13-1 and 13-2 are provided respectively.
  • Service 1 has a Web server 15-1, a database server 14-1, and a file server 14-2.
  • the service 2 is provided with a server 25.
  • the spare server 17 is provided in common for service 1 and service 2.
  • the system controller 16 checks the load status and installs additional servers from spare server 17 to service 1 or service 2. I do.
  • FIG. 10 is a diagram showing a configuration in a case where a spare server is provided between different centers.
  • the center 12-2 is a post-center and its spare server 17-2 is used via the network.
  • FIG. 11 is a diagram illustrating the operation of the embodiment of the present invention.
  • Some services require servers that cooperate with each other, such as databases, in addition to servers that directly exchange information with users.
  • the performance cannot be improved unless the processing capacity and load status are checked for each function and a server is added to an appropriate function. For this reason, the system controller 16 checks the load for each layer, and when adding or deleting, changes the setting of the linked server to increase or decrease the capacity.
  • FIG. 12 is a diagram for explaining how to secure a network band when cooperating with another center.
  • the load from the user and the status of the server capacity can be monitored, and the necessary and sufficient resources can be allocated from the data center or the linked data center before the load exceeds the server capacity. Therefore, it is possible to guarantee service quality for requests from users. Since the required spare servers can be shared widely over a wide area, the total number of required servers can be reduced as a whole.
  • a service in which servers with multiple functions cooperate Server it is possible to add a server to the function that is the bottleneck, so it is possible to achieve a sufficiently large scale.
  • the entire process can be automated, it can quickly follow changes in the amount requested by the user.
  • FIG. 13 is a diagram illustrating an application example of the embodiment of the present invention in a web server.
  • the same components as those in FIG. 12 are denoted by the same reference numerals, and description thereof will be omitted.
  • FIG. 14 is a diagram showing an application example of the embodiment of the present invention in a web service.
  • the web service is composed of a combination of a web server 15-1, a database server 14-1, and a file server 14_2.
  • the web service is composed of a combination of a web server 15-1, a database server 14-1, and a file server 14_2.
  • the web service is composed of a combination of a web server 15-1, a database server 14-1, and a file server 14_2.
  • the web service is composed of a combination of a web server 15-1, a database server 14-1, and a file server 14_2.
  • the database server 14-1 synchronizes data even during cooperation between the preceding center 12_1 and the following center 12-2. This is realized by creating a V lan across the centers and securing the bandwidth.
  • FIG. 15 shows an application example of the embodiment of the present invention when equal centers mutually exchange resources.
  • the processing capacity of service 1 in center 1 is less than spare server 3 0—1 in center 1.
  • request cooperation from Center 2 and use the servers in Center 2 (shaded area and spare server 30-3).
  • server capacity in the center 2 is also dead (when the capacity including the spare server 30-2 is dead)
  • another center 3 is requested to cooperate, and the server in the center 3 is shaded (shaded). Partial and spare servers 30-3) are used.
  • FIG. 16 is a diagram showing an example in which the embodiment of the present invention is applied to a pre-center having no spare server.
  • the system control unit 16-1 determines that there is not enough server for service provision in the first center 12-1, the second center 12-2 is requested to cooperate, and the second center 12-2 is requested. Use the server in 2.
  • a load balancer and a Web server are provided for service 1 and service 2.
  • the service 1 and service 2 servers provide service 1 and service 2, respectively.
  • the spare server 17 is added as needed for each service.
  • the system control unit 16 _ 2 determines the addition and cooperates with the preceding center 12-1.
  • FIGS. 17 to 24 are flowcharts for explaining the operation of the embodiment of the present invention in the case where the databases provided in the center are not linked.
  • FIG. 17 is a flowchart showing the overall flow of the system control device.
  • load measurement is performed.
  • step S11 it is determined whether the predicted processing capacity exceeds the allocated processing capacity. If the determination in step S11 is YES, in step S12, the processing capacity is added, and the process proceeds to step S15.
  • step S15 the wait is 10 seconds. Force This value should be set by the designer as appropriate.
  • step S13 it is determined whether the current processing capacity is less than half of the allocated processing capacity. If the determination in step S13 is YES, in step S14, the processing capacity is reduced, and the process proceeds to step S15. If the determination in step S13 is NO, the process proceeds to step S15.
  • step S15 the process returns to step S10 again.
  • FIG. 18 is a diagram showing the details of the load measurement in step S10 of FIG.
  • step S20 the average number of processes for 10 seconds is collected from the server in use. This 10 seconds should match the value of step S15 in FIG.
  • step S21 the total average number of processes is calculated and added to the measurement history.
  • step S22 it is determined whether there are four or more measurement histories. If the determination in step S22 is NO, in step S23, the latest history is set as a predicted value 30 seconds later, and the process proceeds to step S25. If the determination in step S22 is YES, in step S24, a predicted value 30 seconds later is calculated from the last four histories by least squares approximation, and the process proceeds to step S25.
  • step S25 a predicted value after 30 seconds is set.
  • step S26 the latest history is set to the current value, and the process returns to the flow in FIG.
  • FIG. 19 is a diagram showing the details of the processing capacity adding process in step S12 of FIG.
  • step S30 the current processing value is subtracted from the predicted value to determine the additional processing capacity.
  • step S31 it is determined whether there is a spare server in the center. If the determination in step S31 is YES, in step S32, an additional server in the center is selected.
  • step S33 it is determined whether or not the additional processing capacity has been satisfied. If the determination in step S33 is N ⁇ , the flow proceeds to step S34, and if the determination is YES, the flow proceeds to step S38. If the determination in step S31 is NO, the process proceeds to step S34. At 34, it is determined whether or not there is a partner center having a preliminary processing capacity. If the determination in step S34 is YES, in step S36, the coordination center allocates processing capacity.
  • step S37 it is determined whether or not the additional processing capacity has been satisfied. If the determination in step S37 is NO, the process proceeds to step S34. If the determination in step S37 is YES, the process proceeds to step S38. If the determination in step S34 is NO, in step S35, the administrator is warned that the additional processing capacity cannot be satisfied, and the process proceeds to step S38. In step S38, a VLAN is set so as to include the selected server. In step S39, an application is set for the selected server, and the process proceeds to step S40.
  • step S40 it is determined whether or not there is cooperation between the centers. If the determination is NO, the process proceeds to step S43. If the determination in step S40 is YES, in step S41, the coordination center load distribution ratio is determined and assigned, and the equipment is set. In step S42, the own center and the coordination center are connected. Set the communication band between them, and proceed to step S43. In step S43, the load distribution ratio of the own center is determined, the allocating device is determined, and the process returns to the flow of FIG.
  • FIG. 20 is a flow showing in detail the process of selecting an additional server in step S32 of FIG.
  • step S50 it is determined whether there is a server for a necessary use. If the determination in step S50 is NO, the process proceeds to step S54. If the determination in step S50 is YES, in step S51, it is determined whether or not there is a server capable of satisfying the additional processing capacity with a single server for the required application. If the determination in step S51 is NO, in step S52, the server with the highest performance for the required application is selected, and the process returns to step S50. Steps If the determination in S51 is YES, the server with the lowest performance is selected from among the servers for the required applications, which can provide the additional processing capacity, and the process proceeds to step S58. .
  • step S54 it is determined whether there is an available server. If the determination in step S54 is NO, the process proceeds to step S58. If the determination in step S54 is YES, in step S55, it is determined whether one server can satisfy the additional processing capacity. If the judgment in step S55 is NO, in step S56, the server with the highest performance is selected, and the process returns to step S54. If the determination in step S55 is YES, in step S57, the server with the lowest performance is selected from the servers that can satisfy the additional processing capacity with one, and the process proceeds to step S58. move on. In step S58, a list of assigned servers is configured, and the process returns to the process in FIG.
  • FIG. 21 is a flowchart showing the flow of the coordination center processing capacity assignment processing in step S36 in FIG.
  • step S60 it is determined whether or not the processing capacity upper limit based on the bandwidth is smaller than the desired allocation value. If the determination in step S60 is NO, the process proceeds to step S62. If the determination in step S60 is YES, in step S61, the upper limit of the quota is set as the upper limit of the bandwidth, and the process proceeds to step S62.
  • step S62 a request is made to the partner center to select a server.
  • step S63 an additional server is selected in the partner center, and in step S64, a list of assigned servers is configured. Then, the processing returns to the processing in FIG.
  • FIG. 22 is a detailed flow of the application setting in step S39 in FIG.
  • step S70 it is determined whether or not there is cooperation between the centers. If the determination in step S70 is NO, the process proceeds to step S74.
  • step S 70 If the determination is YES, in step S71, it is determined whether or not the application live has been transferred. If the determination in step S71 is YES, the process proceeds to step S73. If the determination in step S71 is NO, in step S72, the application archive is transferred to the partner center, and the process proceeds to step S73. In step S73, the application is installed on the additional server, and the process proceeds to step S74. In step S74, the application is installed on the additional server in the own center, and the process returns to the process in FIG.
  • FIG. 23 is a flowchart showing the processing for reducing the processing capacity in step S14 of FIG.
  • step S80 the current measured value is subtracted from the assigned value to determine the reduction processing capacity.
  • step S81 it is determined whether there is a cooperation center. If the determination in step S81 is YES, in step S82, a reduction server is determined in the cooperation center, and in step S83, it is determined whether all servers in the cooperation center have been reduced. If the determination in step S83 is YES, the process returns to step S81. If the determination in step S83 is NO, the process proceeds to step S85. If the determination in step S81 is NO, in step S84, the own server determines the reduction server, and the process proceeds to step S85.
  • step S85 the load distribution ratio of the own center is determined, and the allocation device is set.
  • step S86 the load distribution ratio of the cooperation center is determined, and the assignment device is set.
  • step S87 the process waits for completion of the user request process.
  • step S88 the application is deleted from the reduction server, and in step S89, a VLAN is set so as to include only the remaining servers (coordination network communication path is set).
  • step S90 It is determined whether or not the cooperation is released. If the determination in step S90 is YES, in step S91, the bandwidths of the own center and the cooperation center are released and Return to the processing of step 7. When the determination in step S90 is NO, the process returns to the process in FIG.
  • FIG. 24 is a flowchart showing the selection processing of the reduction server in step S82 or step S84 in FIG.
  • step S100 it is determined whether there is a server available for another use. If the determination in step S100 is NO, the process proceeds to step S103. If the determination in step S100 is YES, in step S101, it is determined whether there is a server whose performance is lower than the remaining reduction capacity. If the determination in step S101 is NO, the process proceeds to step S103. If the determination in step S101 is YES, in step S102, among the servers whose performance is lower than the remaining reduction performance, the server with the highest performance is reduced, and the process proceeds to step S100.
  • step S103 it is determined whether there is a server currently in use. If the determination in step S103 is NO, the process proceeds to step S106. If the determination in step S103 is YES, in step S104, it is determined whether there is a server whose performance is lower than the remaining reduction performance. If the determination in step S104 is NO, the process proceeds to step S106. If the determination in step S104 is YES, in step S105, the server with the highest performance among the servers having lower performance than the remaining reduction performance is reduced, and the process returns to step S103.
  • step S106 a list of the deleted servers is generated, and the process returns to the process in FIG.
  • FIG. 25 to FIG. 30 are flowcharts showing the processing flow of the embodiment of the present invention when there is cooperation of databases.
  • FIG. 25 is a flowchart showing the flow of the overall processing of the own center that performs the cooperation request.
  • step S110 the load of the Web server is measured.
  • step S111 it is determined whether the predicted processing capacity is larger than the allocated processing capacity. If the determination in step S111 is YE S, in step S112, Web processing capacity is added, and the process proceeds to step S115. If the determination in step S111 is NO, in step S113, it is determined whether the current processing capacity is smaller than one half of the allocated processing capacity. If the judgment in step S113 is N ⁇ , the process proceeds to step S115. If the determination in step S113 is YES, in step S114, the capacity of the Web processing is reduced, and the process proceeds to step S115.
  • step S115 the load on the database in the center is measured.
  • step S116 it is determined whether the predicted processing capacity is larger than the allocated processing capacity. If the determination in step S116 is YES, in step S117, the database processing capacity is added, and the flow advances to step S120. If the determination in step S116 is NO, in step S118, it is determined whether the current processing capacity is smaller than one half of the allocated processing capacity. If the determination in step S118 is NO, the process proceeds to step S120. If the determination in step S118 is YES, in step S119, the processing capacity of the database is reduced, and the flow advances to step S120. In step S120, the process waits for 10 seconds. This waiting time should be set as appropriate by the designer. After step S120, again go to step S110
  • Fig. 26 is a flow chart showing the overall processing flow of the partner center.
  • step S130 the database load in the center is measured.
  • step S131 it is determined whether the predicted processing capacity is larger than the allocated processing capacity. If the determination in step S 13 1 is YES, in step S 13 2, the database processing capacity is added, and the flow advances to step S 1 35. If the determination in step S133 is NO, in step S133, it is determined whether the current processing capacity is smaller than one half of the allocated processing capacity. If the determination in step S133 is NO, the process proceeds to step S135. Step S 1 3 3 If the determination is YES, the database processing capacity is reduced in step S134, and the flow advances to step S135. In step S135, the process waits for 10 seconds, and returns to step S130. This 10 seconds should not be limited to this, but should be set appropriately by the designer.
  • Figure 27 is a flowchart showing the detailed processing of web load measurement or database load measurement performed at each center.
  • step S140 the average number of processes for 10 seconds from the server in use is collected. This 10 seconds should be the same value as the waiting time of step S120 of FIG. 25 and step S135 of FIG.
  • step S141 the total average number of processes is calculated and added to the measurement history.
  • step S142 it is determined whether there are four or more measurement histories. If the determination in step S142 is NO, in step S143, the latest history is set as a predicted value 30 seconds later, and the flow advances to step S145. If the determination in step S144 is YES, in step S144, a predicted value 30 seconds later is derived from the latest four histories by least squares approximation, and the process proceeds to step S145. . This derivation method is as described in Fig. 18.
  • step S145 a predicted value after 30 seconds is set.
  • step S146 the latest history is set to the current value, and the process returns to the processing in FIGS.
  • FIG. 28 is a detailed flowchart of the Web processing capability addition process in step S112 of FIG.
  • step S154 when a coordination center is added, the processing from step S154 is performed.
  • step S150 the current assigned value is subtracted from the predicted value to determine an additional processing capacity.
  • step S151 it is determined whether or not there is a spare server in the center. If the determination in step S151 is NO, the process proceeds to step S154. If the judgment in step S15 is YES, step S15 In step 2, an additional server in the center is selected. The details of this processing are as shown in FIG. Then, in step S153, it is determined whether or not the additional processing capacity has been satisfied. If the determination in step S 153 is NO, the process proceeds to step S 154. If the determination in step S155 is YES, the process proceeds to step S158.
  • step S154 it is determined whether or not there is a partner center having a preliminary processing capability. If the determination in step S154 is YES, in step S156, the cooperation center allocates processing capacity. Details of this processing are as shown in FIG. In step S157, it is determined whether or not the additional processing capacity has been satisfied. If the judgment in step S157 is NO, step S
  • step S157 determines whether the additional processing capacity cannot be satisfied. If the determination in step S157 is YES, the process proceeds to step S158. If the determination in step S155 is NO, in step S155, the administrator is warned that the additional processing capacity cannot be satisfied, and the process proceeds to step S158.
  • step S158 the VLAN is set to include the selected server
  • step S159 the application is set to the selected server.
  • the application settings are as shown in Figure 22.
  • step S160 it is determined whether or not there is cooperation between the centers. If the result of determination in step S160 is YES, in step S161, the coordination center load distribution ratio is determined and the equipment is set, and in step S166, the own center and the coordination center are Set the communication band and proceed to step S163.
  • step S166 If the determination in step S166 is NO, the process proceeds directly to step S166. In step S163, the load distribution ratio of the own center is determined, the device is set, and the process returns to the process in FIG.
  • Fig. 29 shows the data of step S117 of Fig. 25 and the data of step S132 of Fig. 26. It is a detailed flow of database processing capacity addition processing.
  • step S170 the current assigned value is subtracted from the predicted value to determine an additional processing capacity.
  • step S171 it is determined whether or not there is a spare server in the center. If the judgment in step S 171 is N ⁇ ⁇ ⁇ ⁇ , in step S 177 the possible web capacity is calculated from the current database, and in step S 178 the insufficient web capacity is added by the cooperation center. I do. The process in step S178 is as shown in FIG. Then, the processing returns to the processing of FIG. 25 or FIG.
  • step S 171 determines whether or not the additional server in the center is selected in step S 172. Then, in a step S173, it is determined whether or not the additional processing capacity is satisfied. If the determination in step S 173 is NO, the process proceeds to step S 177. If the determination in step S 173 is YES, in step S 174, a VLAN is set to include the selected server, and in step S 175, a database is set for the selected server, In 176, the database list of the Web server in the center is updated, and the processing returns to the processing in FIG. 25 or FIG.
  • FIG. 30 is a flowchart showing details of the process of selecting an additional server common to the web server and the database.
  • step S180 it is determined whether there is a required application server. If the determination in step S 180 is YES, in step S 181, it is determined whether or not there is a server capable of satisfying the additional processing capacity by a single server for the required application. If the determination in step S181 is NO, in step S182, a server for the required use and having the highest performance is selected, and the process returns to step S180. If the determination in step S 181 is YES, in step S 183, the server with the lowest performance among the servers that can satisfy the additional processing capacity with one Select and go to step S188.
  • step S184 it is determined whether there is an available server. If the determination in step S184 is YES, in step S185, it is determined whether or not there is a server that can satisfy the additional processing capacity with one unit. If the determination in step S185 is NO, in step S186, the server with the maximum performance that can be used is selected, and the flow advances to step S184. If the determination in step S185 is YES, in step S187, the server with the lowest performance is selected from the servers capable of satisfying the additional processing capacity with one server, and the process proceeds to step S188. Proceed to. If the judgment in step S188 is N ⁇ , the process directly proceeds to step S188.
  • step S188 a list of assigned servers is constructed, and the process returns to FIG. 28 or FIG. 29.
  • the service quality can be achieved by dynamically allocating the server when it becomes necessary without securing and keeping a sufficient spare server for each service and each data center.
  • the service quality can be achieved by dynamically allocating the server when it becomes necessary without securing and keeping a sufficient spare server for each service and each data center.
  • capital investment can be reduced by sharing the spare server, and at the same time, the equipment can be used effectively.

Abstract

A system comprises a front-stage center (12-1) for directly receiving a request from a client (10) through a network (11) and a back-stage center (12-2) for receiving the request from the client (10) through the front-stage center (12-1). The centers have auxiliary servers (17-1, 17-2), respectively. The front-stage center (12-1) provides a service by using a normal server. A system controller (16-1), on detecting that the load on the server increases, provides a server for providing the service the load of which increases from the auxiliary server (17-1) commonly provided for a service 1 and a service 2. If the load cannot be supported even by the provision of the server, the system controller (16-1) issues an instruction to a system controller (16-2) of the back-stage center (12-2) to support the provision of the service. When the back-stage controller (12-2) cannot support the load by using a normal server, it supports the load by using the auxiliary server (17-2).

Description

明細書 サイ ト間連携による負荷分散システム 技術分野  Description Load distribution system by linking sites
本発明は、 サイト間連携による負荷分散システムに関する。 背景技術  The present invention relates to a load distribution system using inter-site cooperation. Background art
インターネットの爆発的な普及によつてサービス提供側で必要となるサーバ、 ネットワーク等のリソースは膨大なものとなってきている。 しかし、 ユーザか らの要求の量は時間や条件によって大きく変動することが分かっており、 集中 時にあわせてリソースを確保しておけば通常時には無駄なリソースの維持が必 要となり、 かといつて集中時には対応できないリソースでは、 サービス品質の 低下を招きユーザに不快感を与えることとなる。 更にユーザ数の増加に伴い必 要なリソースの上限を見積もることは困難になっており、 リソースを必要に応 じて割り当てるシステムが必要となってくる。 同時に過剰なリソースは管理コ ストの増大を招くため、 必要でないリソースを有効に利用するための仕 みも 必要とされている。  Due to the explosive spread of the Internet, resources such as servers and networks required by service providers have become enormous. However, it is known that the amount of requests from users fluctuates greatly depending on time and conditions.If resources are secured at the time of concentration, it is usually necessary to maintain useless resources at normal times. In some cases, resources that cannot be handled can degrade service quality and give users discomfort. Furthermore, as the number of users increases, it becomes difficult to estimate the upper limit of the required resources, and a system that allocates resources as needed becomes necessary. At the same time, excess resources can lead to increased management costs, and there is also a need for more efficient use of unnecessary resources.
図 1は、 従来の負荷分散システムの一例である。  Figure 1 shows an example of a conventional load distribution system.
図 1の構成では、 クライアント 1 0がネットワーク 1 1を介してデータセン タ 1 2にアクセスし、 サービスを受ける。 負荷分散装置 1 3には、 複数のサー バ 1 4が接続されている。  In the configuration of FIG. 1, the client 10 accesses the data center 12 via the network 11 and receives a service. A plurality of servers 14 are connected to the load balancer 13.
1台のサーバでは処理しきれない場合、図 1のようにサーバを複数台設置し、 その前段に負荷分散装置 1 3を配置することで負荷を複数のサーバに分散し、 サービス品質を向上させるが、 サーバ 1 4の追加判定やサーバ 1 4 .負荷分散 装置 13の追加、 設定変更の作業は人手で行われることが多く、 また最大負荷 に合わせたサーバを常時確保する必要があるため大きなコストがかかる。 If a single server cannot handle the process, install multiple servers as shown in Fig. 1 and place a load balancer 13 in front of it to distribute the load to multiple servers and improve service quality. However, additional determination of server 14 and server 14 load balancing In many cases, the work of adding the device 13 and changing the setting is performed manually, and it is necessary to secure a server at all times corresponding to the maximum load, resulting in a large cost.
特許文献 1では、 サーバの追加及びユーザからのリクエストの振り分け方法 を定義しているが、ユーザ側にサーバ選択のための機構を組み込む必要があり、 不特定多数向けのサービスへの適用には適していない。 また、 リクエス ト以外 の管理情報のやりとりが必要になるという問題がある。  Patent Document 1 defines a method of adding a server and distributing requests from users. However, it is necessary to incorporate a mechanism for server selection on the user side, which is suitable for application to an unspecified number of services. Not. In addition, there is a problem that it is necessary to exchange management information other than the request.
また、 特許文献 2の方式は、 静的な情報を配信する場合にしか適用できず、 サービス提供等ユーザからの要求によつて毎回異なる情報を返す場合には適用 できない。  Further, the method of Patent Document 2 can be applied only to a case where static information is distributed, and cannot be applied to a case where different information is returned every time in response to a request from a user such as service provision.
更に、 特許文献 3についても静的情報の場合を想定しており、 ファイルサー バ等への負荷が過剰になつた場合については考慮されていない。  Furthermore, Patent Document 3 also assumes the case of static information, and does not consider the case where the load on the file server or the like becomes excessive.
特許文献 1 Patent Document 1
特開平 9一 106381号公報 JP-A-9-1106381
特許文献 2 Patent Document 2
特開平 9一 1 79820号公報 Japanese Patent Application Laid-Open No. Hei 91-179820
特許文献 3 Patent Document 3
特開 2002— 259354号公報 発明の開示 JP 2002-259354 A DISCLOSURE OF THE INVENTION
本発明の目的は、 サービス提供のための負荷を分散し、 ユーザからの要求の 変化に柔軟に対応できる負荷分散システムを提供することである。  An object of the present invention is to provide a load distribution system capable of distributing a load for providing a service and flexibly responding to a change in a request from a user.
本発明の方法は、 クライアントにネットワーク経由でサービスを提供する複 数のサーバを備えた装置の負荷分散の方法であって、 通常サービスを提供する サーバの負荷を分担するための、 初期状態ではいずれのサービスの設定もされ ていない複数の予備サーバを設けるステップと、 通常サービスを提供するサー バの負荷の増大を見込んで、 該予備サーバに提供すべきサービスのためのアブ リケーシヨンを設定して、 該サービスの提供用サーバとし、 通常サービスを提 供するサーバと負荷を分担させる制御ステップとを備えることを特徴とする。 本発明によれば、 データセンタなどの装置内に、 通常サービスを提供するサ ーパの他に、 予備サーバを複数設け、 通常サービスを提供するサーバの負荷が 大きくなつた場合には、 予備サーバに、 そのサービスを提供可能なようにアブ リケ——ンョンをインストールして、 当該サーバの当該サービスを提供するため の負荷を分担させる。 The method of the present invention is a method of distributing the load of an apparatus having a plurality of servers for providing a service to a client via a network. Providing a plurality of spare servers that are not set up for normal services; In anticipation of an increase in server load, an abbreviated setting for a service to be provided to the spare server is set, and the server for providing the service is provided. The control step for sharing the load with the server that normally provides the service is performed. It is characterized by having. According to the present invention, in a device such as a data center, a plurality of spare servers are provided in addition to a server for providing a normal service, and when a load on a server for providing a normal service increases, the spare server is provided. Then, install an abridge so that the service can be provided, and share the load of the server for providing the service.
また、 別の形態では、 本発明に従って、 予備サーバを備えた装置をネットヮ ークで接続し、 互いに、 予備サーバを提供し合うように制御することにより、 1つのデータセンタでは、 一時的な負荷を支える程の処理能力を得られなくて も、 複数の装置がネットワークを介して協同して負荷に対処することにより、 大きな負荷によってサービス提供の中断を避けることが出来る。 また、 これに より、 1つの装置に備える予備サーバの数を減らすことが出来、 ハードウエア を冗長に、 各装置に持たせる必要が無くなる。 図面の簡単な説明  In another aspect, according to the present invention, devices equipped with spare servers are connected via a network, and control is performed so that spare servers are provided to each other. Even if it does not have enough processing power to support the service, multiple devices can cope with the load via the network and cope with the load, thereby avoiding interruption of service provision due to a large load. In addition, this allows the number of spare servers to be provided for one device to be reduced, eliminating the need for redundant hardware in each device. BRIEF DESCRIPTION OF THE FIGURES
図 1は、 従来の負荷分散システムの一例である。  Figure 1 shows an example of a conventional load distribution system.
図 2は、 本発明の実施形態の基本構成を示す図である。  FIG. 2 is a diagram showing a basic configuration of the embodiment of the present invention.
図 3は、 図 2の基本構成におけるセンタ内のネットワーク配置構成を示す図 である。  FIG. 3 is a diagram showing a network arrangement configuration in a center in the basic configuration of FIG.
図 4は、 本発明の第 1の実施形態を示す図である。  FIG. 4 is a diagram showing a first embodiment of the present invention.
図 5は、 本発明の第 1の実施形態の動作を示す図である。  FIG. 5 is a diagram illustrating the operation of the first exemplary embodiment of the present invention.
図 6は、 サーバの負荷と容量を算出するためのデータを示す図である。 図 7は、 負荷の大きさに応じてサーバの選択をするためのデータを示す図で ある。 FIG. 6 is a diagram showing data for calculating the load and capacity of the server. Figure 7 shows data for selecting a server according to the size of the load. is there.
図 8は、 追加するサーバの能力と負荷の予測値との関係を示した図である。 図 9は、 複数のサービスで予備サーバを共用する構成を示した図である。 図 1 0は、 異なるセンタ間で予備サーバの提供を行う場合の構成を示す図で める。  FIG. 8 is a diagram showing the relationship between the capacity of the server to be added and the predicted value of the load. FIG. 9 is a diagram showing a configuration in which a spare server is shared by a plurality of services. FIG. 10 is a diagram showing a configuration in a case where a spare server is provided between different centers.
図 1 1は、 本発明の実施形態の動作を説明する図である。  FIG. 11 is a diagram illustrating the operation of the embodiment of the present invention.
図 1 2は、 他センタとの連携を図る場合におけるネットワーク帯域の確保に 関する説明をする図である。  FIG. 12 is a diagram for explaining how to secure a network band when cooperating with another center.
図 1 3は、ウェブサーバにおける本発明の実施形態の適用例を示す図である。 図 1 4は、 ウェブサービスにおける本発明の実施形態の適用例を示す図であ 図 1 5は、 対等なセンタ間が相互にリソースを融通し合う場合の本発明の実 施形態の適用例である。  FIG. 13 is a diagram illustrating an application example of the embodiment of the present invention in a web server. FIG. 14 is a diagram showing an application example of the embodiment of the present invention in a web service. FIG. 15 is an application example of the embodiment of the present invention in a case where equal centers mutually exchange resources. is there.
図 1 6は、 予備サーバを持たない前段センタの場合に本発明の実施形態を適 用した例を示す図である。  FIG. 16 is a diagram showing an example in which the embodiment of the present invention is applied to a pre-center having no spare server.
図 1 7〜図 2 4は、 センタに設けられるデータベース間の連携のない場合の 本発明の実施形態の動作を説明するフローチャートである。  FIGS. 17 to 24 are flowcharts illustrating the operation of the embodiment of the present invention when there is no cooperation between databases provided in the center.
図 2 5〜図 3 0は、 データベースの連携がある場合の本発明の実施形態の処 理の流れを示すフローチャートである。 発明を実施するための最良の形態  FIG. 25 to FIG. 30 are flowcharts showing the processing flow of the embodiment of the present invention when the database is linked. BEST MODE FOR CARRYING OUT THE INVENTION
本発明では、 ユーザからの要求量の変化を予測し、 それに合わせてデータセ ンタ内、 もしくは、 連携する別データセンタ内のサーバを動的に追加、 削除す ることでサービス品質を保証し、 同時に余剰サーバを複数のサービスで共用す ることでコス ト削減を目指すものである。 図 2は、 本発明の実施形態の基本構成を示す図である。 In the present invention, service quality is assured by predicting changes in the amount of requests from users, and dynamically adding and deleting servers in the data center or other linked data centers in accordance with the change. The aim is to reduce costs by sharing the surplus server with multiple services. FIG. 2 is a diagram showing a basic configuration of the embodiment of the present invention.
クライアント 10は、 ネットワーク 1 1を介して、 前段センタ 1 2—1の負 荷分散装置 1 3_ 1経由で、 We bサーバ 1 5— 1にアクセスする。 We bサ ーバ 1 5— 1でのデータ処理の結果、 クライアント 10は、 データベースサー パ 14— 1あるいは、 ファイルサーバ 14一 2にアクセスして、 サービスを受 ける。 後段サーバ 1 2— 2は、 前段センタ 1 2— 1とほぼ同様の構成をしてお り、 負荷分散装置 1 3— 1経由でクライアント 10からの要求を受け付け、 負 荷分散装置 1 3-2で負荷分散を行いながら、 We bサーバ 15— 2にクライ アント 10を導く。 そして、 クライアント 1 0は、 We bサーバ 1 5— 2を介 して、 データベースサーバ 14— 3あるいは 14 _ 4にアクセスし、 サービス を受ける。  The client 10 accesses the web server 15-1 via the network 11 via the load distribution device 13_1 of the preceding center 12-1. As a result of the data processing in the web server 15-1, the client 10 accesses the database server 14-1 or the file server 14-12 to receive the service. The rear-stage server 1 2-2 has almost the same configuration as the front-stage center 12-1, receives a request from the client 10 via the load balancer 13-1, and loads the load balancer 13-2 The client 10 is guided to the web server 15-2 while distributing the load with. Then, the client 10 accesses the database server 14-3 or 14_4 via the web server 15-2 to receive the service.
ここで前段センタ 1 2-1とは、ユーザの要求を直接受け取るセンタを指し、 後段センタ 12— 2とは前段センタ 12— 1を通してユーザ要求を処理するセ ンタを示している。データセンタ間でのサーバの割当ては多対多の関係であり、 あるデータセンタが複数のデータセンタのサーバを利用する場合や複数のデー タセンタからのサーバ要求に同時に、 あるデータセンタが応じる場合もある。 サーバの負荷状態ゃクライアントからの負荷状態はシステム制御装置 1 6- 1, Here, the first-stage center 12-1 indicates a center that directly receives a user's request, and the second-stage center 12-2 indicates a center that processes a user request through the first-stage center 12-1. The assignment of servers between data centers is a many-to-many relationship, such as when a certain data center uses servers from multiple data centers or when a certain data center responds to server requests from multiple data centers simultaneously. is there. Server load status ゃ Client load status is determined by the system controller 1 6-1,
16— 2が集計 ·判定 '適用を行い、 結果をサーバ 14一 1〜14一 4や負荷 分散装置 1 3— 1、 1 3— 2に設定する。 サーバリソースが不足した場合には 予備サーバ内のサーバ 1 7_ 1、 1 7— 2を必要な機能のサーバとして設定し た上で、 サービスに追加し、 能力を向上させる。 16-2 performs the tallying / judgment 'application, and sets the results in the servers 141-14-14-14 and the load balancers 13-1 and 13-2. If server resources are insufficient, set servers 17_1 and 17-2 in the spare server as servers with necessary functions, add them to the service, and improve their performance.
図 3は、 図 2の基本構成におけるセンタ内のネットワーク配置構成を示す図 である。  FIG. 3 is a diagram showing a network arrangement configuration in a center in the basic configuration of FIG.
物理的なネットワーク構成は単一のスィッチ群 20の直下に全てのサーバを 接続し、その上に論理的に独立したネットワーク (VLAN0、 VLAN 1 1、 V L AN 1 2、 V L AN 2 1 ) を複数構成する。 このような配置にすることで 必要な位置へのサーバ追加処理を自動化することが可能となる。 The physical network configuration consists of connecting all the servers directly under a single switch group 20, and having a logically independent network (VLAN0, VLAN11, VLAN12, VLAN21). With such an arrangement, it becomes possible to automate the process of adding servers to the required locations.
サーバの追加、 削除を行う場合には、 C P U性能ゃネットワーク構成等のサ ーバ仕様からサーバ能力を導きだし、 様々な種類のハードが混在する環境であ つても必要なサーバの算出を行い、 適切にサーバの割当てを行う。 同時にその サーバに対してかかるトラフィックを計算し、 ネットワーク帯域の確保もしく は調停を行う。  When adding or deleting servers, the server capacity is derived from server specifications such as CPU performance / network configuration, and necessary servers are calculated even in an environment where various types of hardware are mixed. Assign servers appropriately. At the same time, it calculates the traffic to that server and secures or arbitrates the network bandwidth.
また、 負荷計測及び負荷変動予測から将来の負荷を予想することで過剰負荷 となる前にサーバの追加を行い、 サービス品質の保証を実現する。  In addition, by predicting the future load from load measurement and load fluctuation prediction, servers will be added before an overload occurs, and service quality will be guaranteed.
図 4は、 本発明の第 1の実施形態を示す図である。  FIG. 4 is a diagram showing a first embodiment of the present invention.
同図において、 図 2と同様な構成要素には同様の参照符号を付して詳細な説 明を省略する。  In the figure, the same components as those in FIG. 2 are denoted by the same reference numerals, and detailed description is omitted.
ユーザからのリクエストが割当てたサーバの能力を超えた場合、 応答時間の 増大や無応答が発生し、 ユーザに対し不快感を与えることになる。 その状態で 更に負荷が増大した場合には、 サーバ障害が引き起こされる場合もある。 これ を防ぐために、 サーバの負荷状態の計測をシステム制御装置 1 6が行い、 現在 のサーバ数では問題を起こすと判断した場合には、 予備サーバ 1 7からサーバ の追加を行い、 アプリケーションやサービス、 利用するデータ等の設定及び導 入を行う。 そして、 依存関係にある機器及びサーバ等の設定を更新することで サービスに組み込む。  If the user's request exceeds the capacity of the assigned server, the response time will increase or no response will occur, which will make the user uncomfortable. If the load further increases in this state, a server failure may be caused. To prevent this, the system control unit 16 measures the load status of the server, and if it is judged that the current number of servers will cause a problem, a server is added from the spare server 17 and applications, services, Set and introduce data to be used. Then, the settings of the dependent devices and servers are updated and incorporated into the service.
図 5は、 本発明の第 1の実施形態の動作を示す図である。  FIG. 5 is a diagram illustrating the operation of the first exemplary embodiment of the present invention.
同図において、 図 4と同じ構成要素には同じ参照符号を付して説明を省略す る。  In the figure, the same components as those in FIG. 4 are denoted by the same reference numerals, and description thereof will be omitted.
ユーザからのリクエスト量が減少した場合には、 余剰サーバが発生する。 こ の余剰サーバ分については削除したとしてもサービス品質は低下せず、 むしろ 運用コストゃ利用率の向上という面からは予備サーバとして開放し、 他のサー ビスで利用することが望ましい。 このため依存関係にある機器から関係する設 定を削除することでサービスとの連携を解消し、 その後設定の解除等の処理を 行い、 予備サーバ 1 7に戻す。 When the amount of requests from users decreases, surplus servers are generated. Even if this surplus server is deleted, the service quality does not decrease. It is desirable to open it as a spare server and use it for other services from the viewpoint of operating cost / improvement of utilization rate. For this reason, by removing the related settings from the dependent devices, the coordination with the service is canceled, and then the processing such as the release of the settings is performed, and then the spare server 17 is returned.
図 6は、 サーバの負荷と容量を算出するためのデータを示す図である。 サービス能力を必要に応じて追加 ·削除するためには、 あるサーバがどれだ けのサービス能力を提供するかといつた情報が必要となる。 データセンタ等に おいては、 利用するサーバや機器、 そしてアプリケーションやサービスの組み 合わせによって 1ュニットあたりのサービス能力は変化する。 利用するサーバ を均一なものでそろえることは、 複数のデータセンタが連携する場合などにお いては現実的に不可能であり、 そのため C P Uゃメモリ等の機器仕様からサー ビス能力を算出する必要がある。 このため、 典型的な構成における性能値から FIG. 6 is a diagram showing data for calculating the load and capacity of the server. In order to add and remove service capabilities as needed, information is required on how many service capabilities a given server provides. In a data center, etc., the service capacity per unit changes depending on the combination of servers and devices used, and applications and services. It is practically impossible to use uniform servers when multiple data centers cooperate.Therefore, it is necessary to calculate service capabilities from equipment specifications such as CPU and memory. is there. Therefore, from the performance value in a typical configuration,
C P U能力等の違いを考慮して性能値を推定する方法を利用する。 A method of estimating a performance value in consideration of a difference in CPU capability and the like is used.
図 7は、 負荷の大きさに応じてサーバの選択をするためのデータを示す図で あ o。  Figure 7 is a diagram showing data for selecting a server according to the size of the load.
ここでは、 サービス能力だけでなく、 サーバュニットの特性としてどのよう な用途に利用するかが好ましいかという情報を保持する。 上記のように利用で きるサーバごとの性能値は均一でないため、 これらを組み合わせて必要な能力 を提供できる構成を作成する必要がある。 このため図 6で求めた性能値と特性 及び要求される性能値から、 推奨度の高いサーバを優先して要求量を満たすま でサーバを選択し、 利用する。  Here, not only the service capability but also information on what kind of use it is preferable to use as a characteristic of the server unit is retained. As described above, the available performance values for each server are not uniform, so it is necessary to create a configuration that can provide the required capabilities by combining these. For this reason, from the performance values and characteristics obtained in Fig. 6 and the required performance values, the server with the higher recommendation is preferentially selected and used until the required amount is satisfied.
図 8は、 追加するサーバの能力と負荷の予測値との関係を示した図である。 計測されたリクエスト量がサービス能力を超える場合にリソースを追加する だけでは、 急激に負荷が上昇しつつある場合等にサービス品質が保証出来なく なる。 そのため負荷の傾向を把握し、 リクエス ト量の増加が見込まれる場合に は予測されるリクエス ト量に見合ったサービス能力を予め追加しておくことで サービス品質の低下を防ぐ。 予測の仕方としては、 線形外挿などを行うなどが 考えられる。 FIG. 8 is a diagram showing the relationship between the capacity of the server to be added and the predicted value of the load. Simply adding resources when the measured request volume exceeds the service capacity cannot guarantee service quality when the load is rapidly increasing. For this reason, the trend of the load is grasped, and when the request volume is expected to increase, Prevents service quality from deteriorating by adding in advance a service capability that matches the expected request volume. As a method of prediction, linear extrapolation and the like can be considered.
図 9は、 複数のサービスで予備サーバを共用する構成を示した図である。 あるデータセンタ内の複数のサービスの負荷状態を見た場合、 全てのサービ スが同時に高負荷となることは極めて希であり、 サービス毎に予備リソースを 確保したのでは利用されないリソースが常時存在すると考えられる。 予備リソ ースを複数のサービスで共用することで、 全体としてより少ない予備リソース で必要なサービス能力の追加が可能となる。 また、 共用することで維持コスト を分散させることが出来る。 センタ 1 2には、 サービス 1とサービス 2が搭載 されており、 それぞれに負荷分散装置 1 3 - 1 , 1 3 - 2が設けられる。 サー ビス 1には、 W e bサーバ 1 5— 1、 データベースサーバ 1 4— 1、 フアイル サーバ 1 4— 2が設けられる。 サービス 2には、 サーバ 2 5が設けられる。 予 備サーバ 1 7は、 サービス 1とサービス 2に共通に設けられており、 システム 制御装置 1 6が負荷の状況を見て、 予備サーバ 1 7から、 サービス 1あるいは サービス 2に、 追加サーバを導入する。  FIG. 9 is a diagram showing a configuration in which a spare server is shared by a plurality of services. When looking at the load status of multiple services in a data center, it is extremely rare that all services have a high load at the same time.If a spare resource is secured for each service, there will always be unused resources. Conceivable. By sharing spare resources among multiple services, it is possible to add the required service capacity with less spare resources as a whole. Also, the maintenance cost can be dispersed by sharing. The service center 1 and service 2 are equipped with the service 1 and the service 2, respectively, and the load balancers 13-1 and 13-2 are provided respectively. Service 1 has a Web server 15-1, a database server 14-1, and a file server 14-2. The service 2 is provided with a server 25. The spare server 17 is provided in common for service 1 and service 2.The system controller 16 checks the load status and installs additional servers from spare server 17 to service 1 or service 2. I do.
図 1 0は、 異なるセンタ間で予備サーバの提供を行う場合の構成を示す図で ある。  FIG. 10 is a diagram showing a configuration in a case where a spare server is provided between different centers.
同図において、 図 2と同様な構成要素には同じ参照符号を付し、 説明を省略 する。  In the figure, the same components as those in FIG. 2 are denoted by the same reference numerals, and description thereof will be omitted.
データセンタ 1 2— 1の規模によっては、 たとえ予備サーバを異なるサービ ス間で共用したとしても物理的もしくはコスト的に充分な予備サーバ 1 7— 1 を確保できないケースがある。 また十分に確保しておいたつもりであっても突 発的な負荷によってデータセンタ内の予備サーバではまかないきれない場合が 起こり得る。 このような場合に、 ネットワークで接続されている別のデータセ ンタ 1 2— 2を後段センタとし、 その予備サーバ 1 7— 2をネットワーク経由 で利用する。 Depending on the size of the data center 12-1, there may be cases where a sufficient spare server 17-1 cannot be secured physically or cost-effectively even if the spare server is shared between different services. Even if it is intended to be sufficient, a sudden load may not be able to cover the spare server in the data center. In such a case, another data The center 12-2 is a post-center and its spare server 17-2 is used via the network.
図 1 1は、 本発明の実施形態の動作を説明する図である。  FIG. 11 is a diagram illustrating the operation of the embodiment of the present invention.
同図においては、 図 9と同じ構成要素には同じ参照符号を付して、 説明を省 略する。  In the figure, the same components as those in FIG. 9 are denoted by the same reference numerals, and description thereof will be omitted.
サービスによつては直接ユーザと情報を交換するサーバ以外にもデータべ一 ス等連携して動作するサーバが必要なものがある。このようなサービスの場合、 それぞれの機能毎に処理能力や負荷状態の確認を行い適切な機能にサーバを追 加しなければ性能の向上が望めない。 そのためシステム制御装置 1 6は、 各階 層毎に負荷の確認を行い、 追加 ·削除時には連携しているサーバの設定を変更 することで能力の増減を図る。  Some services require servers that cooperate with each other, such as databases, in addition to servers that directly exchange information with users. In the case of such a service, the performance cannot be improved unless the processing capacity and load status are checked for each function and a server is added to an appropriate function. For this reason, the system controller 16 checks the load for each layer, and when adding or deleting, changes the setting of the linked server to increase or decrease the capacity.
図 1 2は、 他センタとの連携を図る場合におけるネットワーク帯域の確保に 関する説明をする図である。  FIG. 12 is a diagram for explaining how to secure a network band when cooperating with another center.
なお、同図において、図 1 0と同じ構成要素には同じ参照符号を付している。 複数のサービスが同時に動作する場合や連携処理が必要な場合には、 サーバ を追加するだけでなく各サービスや機能間のトラフィックを調停しなければ充 分な処理能力が得られない。 それぞれの部分で必要となる帯域を計算し、 それ らの割合を考慮した上でネットワークに対して各帯域の確保を行うことで全体 として充分な性能を出せる様にする。  In the figure, the same components as those in FIG. 10 are denoted by the same reference numerals. When multiple services operate simultaneously or when cooperative processing is required, sufficient processing capacity cannot be obtained unless servers are added and traffic between services and functions is arbitrated. Calculate the required bandwidth in each part, and secure each bandwidth to the network in consideration of the ratio so that sufficient performance can be obtained as a whole.
上記の構成により、 ユーザからの負荷とサーバ能力の状態を監視し、 負荷が サーバ能力を超える前に必要充分なリソースを、 データセンタ内、 もしくは連 携するデータセンタから割り当てることが出来るようになり、 ユーザからのリ クエストに対するサービス品質の保証が可能となる。 同時に必要となる予備サ ーバを広範囲で共用することが可能になるため、 全体として必要なサーバの総 量を減らすことができる。 また、 複数の機能を持つサーバが連携し合うサービ スであっても、 ボトルネックとなっている機能に対してサーバの追加を行うこ とができるため、 充分な大規模化が可能になる。 更に全体の処理を自動化可能 なため、 ユーザからの要求量の変化に素早く追従可能である。 With the above configuration, the load from the user and the status of the server capacity can be monitored, and the necessary and sufficient resources can be allocated from the data center or the linked data center before the load exceeds the server capacity. Therefore, it is possible to guarantee service quality for requests from users. Since the required spare servers can be shared widely over a wide area, the total number of required servers can be reduced as a whole. In addition, a service in which servers with multiple functions cooperate Server, it is possible to add a server to the function that is the bottleneck, so it is possible to achieve a sufficiently large scale. In addition, since the entire process can be automated, it can quickly follow changes in the amount requested by the user.
図 1 3は、ウェブサーバにおける本発明の実施形態の適用例を示す図である。 同図において、 図 1 2と同じ構成要素には同じ参照符号を付して説明を省略 する。  FIG. 13 is a diagram illustrating an application example of the embodiment of the present invention in a web server. In the figure, the same components as those in FIG. 12 are denoted by the same reference numerals, and description thereof will be omitted.
負荷が軽い状態では、 前段センタ 1 2— 1のみで運用される。 負荷が増加し た場合は、 前段センタ 1 2 - 1内の予備サーバ 1 7— 1をウェブサーバ 1 5— 1として追加する。 更に負荷が増大してくると後段センタ 1 2— 2にウェブサ ーバ群 1 5— 2を作成し、後段センタ 1 2 - 2でも負荷を受け持つようにする。 図 1 4は、 ウェブサービスにおける本発明の実施形態の適用例を示す図であ る。  When the load is light, only the front center 12-1 is operated. When the load increases, the spare server 17-1 in the preceding center 12-1 is added as the web server 15-1. When the load further increases, a web server group 15-2 is created in the rear center 12-2 so that the rear center 12-2 can handle the load. FIG. 14 is a diagram showing an application example of the embodiment of the present invention in a web service.
同図において、 図 1 2と同じ構成要素には、 同じ参照符号を付して説明を省 略する。  In the figure, the same components as those in FIG. 12 are denoted by the same reference numerals, and description thereof will be omitted.
この例では、 ウェブサービスがゥヱブサーバ 1 5— 1とデータベースサーバ 1 4 - 1 , フアイルサーバ 1 4 _ 2の組み合わせで構成されている。 負荷が軽 い状態では、 前段センタ 1 2— 1のみで運用される。 負荷の増大に伴い、 ボト ルネックとなつた部分に順次予備サーバ 1 7 - 1の追加を行っていき、 前段セ ンタ 1 2— 1でまかない切れなくなった場合には後段センタ 1 2— 2との連携 を行う。 この例のデータベースサーバ 1 4— 1は、 前段センタ 1 2 _ 1と後段 センタ 1 2— 2の間で連携中もデータの同期を行う。 これはセンタ間をまたぐ V L ANの作成及び帯域確保を行うことで実現する。  In this example, the web service is composed of a combination of a web server 15-1, a database server 14-1, and a file server 14_2. When the load is light, only the front center 12-1 is operated. As the load increases, spare servers 17-1 are sequentially added to the bottleneck, and if the server cannot be cut off by the preceding center 12-1, the spare server 17-1 is connected to the latter. Cooperate. In this example, the database server 14-1 synchronizes data even during cooperation between the preceding center 12_1 and the following center 12-2. This is realized by creating a V lan across the centers and securing the bandwidth.
図 1 5は、 対等なセンタ間が相互にリソースを融通し合う場合の本発明の実 施形態の適用例である。  FIG. 15 shows an application example of the embodiment of the present invention when equal centers mutually exchange resources.
センタ 1内のサービス 1の処理能力がセンタ 1内の予備サーバ 3 0— 1でま かなえなくなった場合、センタ 2に対して連携を依頼しセンタ 2内のサーバ(網 掛け部分及ぴ予備サーバ 3 0— 3 ) を利用する。 更にセンタ 2内のサーバ容量 も枯渴した場合 (予備サーバ 3 0— 2を含めた容量が枯渴した場合) は別のセ ンタ 3に対して連携を依頼しセンタ 3内のサーバ (網掛け部分及び予備サーバ 3 0 - 3 ) を利用する。 The processing capacity of service 1 in center 1 is less than spare server 3 0—1 in center 1. In the event of failure, request cooperation from Center 2 and use the servers in Center 2 (shaded area and spare server 30-3). Further, when the server capacity in the center 2 is also dead (when the capacity including the spare server 30-2 is dead), another center 3 is requested to cooperate, and the server in the center 3 is shaded (shaded). Partial and spare servers 30-3) are used.
図 1 6は、 予備サーバを持たない前段センタの場合に本発明の実施形態を適 用した例を示す図である。  FIG. 16 is a diagram showing an example in which the embodiment of the present invention is applied to a pre-center having no spare server.
前段センタ 1 2—1において、 サービス提供に対してサーバが不足したとシ ステム制御部 1 6 - 1が判断した場合には、 後段センタ 1 2 - 2に連携を依頼 し、 後段センタ 1 2— 2内のサーバを利用する。 ここでは、 負荷分散装置、 及 び W e bサーバをサービス 1とサービス 2に対して提供する。 サービス 1, と サービス 2, のサーバは、 それぞれサービス 1及ぴサービス 2のサービスを行 う。更に、後段センタ 1 2— 2では、サーバの容量が足りなくなった場合には、 予備サーバ 1 7をそれぞれのサービスに必要なだけ追加する。 追加の判断や、 前段センタ 1 2— 1 との連携は、 システム制御部 1 6 _ 2が行う。  When the system control unit 16-1 determines that there is not enough server for service provision in the first center 12-1, the second center 12-2 is requested to cooperate, and the second center 12-2 is requested. Use the server in 2. Here, a load balancer and a Web server are provided for service 1 and service 2. The service 1 and service 2 servers provide service 1 and service 2, respectively. Further, in the latter-stage center 12-2, when the capacity of the server becomes insufficient, the spare server 17 is added as needed for each service. The system control unit 16 _ 2 determines the addition and cooperates with the preceding center 12-1.
図 1 7〜図 2 4は、 センタに設けられるデータベース間の連携のなレ、場合の 本発明の実施形態の動作を説明するフローチヤ一トである。  FIGS. 17 to 24 are flowcharts for explaining the operation of the embodiment of the present invention in the case where the databases provided in the center are not linked.
図 1 7は、 システム制御装置の全体の流れを示すフローチャートである。 まず、ステップ S 1 0において、負荷計測を行う。ステップ S 1 1において、 予測処理能力が割当て済み処理能力を超えているか否かを判断する。 ステップ S 1 1の判断が Y E Sの場合には、 ステップ S 1 2において、 処理能力の追加 を行いステップ S 1 5に進む。 ステップ S 1 5では、 1 0秒待つとなっている 力 この数値は設計者が適宜設定すべきものである。  FIG. 17 is a flowchart showing the overall flow of the system control device. First, in step S10, load measurement is performed. In step S11, it is determined whether the predicted processing capacity exceeds the allocated processing capacity. If the determination in step S11 is YES, in step S12, the processing capacity is added, and the process proceeds to step S15. In step S15, the wait is 10 seconds. Force This value should be set by the designer as appropriate.
ステップ S 1 1における判断が N Oの場合には、 ステップ S 1 3において、 現在処理能力が割当て済み処理能力の 2分の 1以下であるか否かを判断する。 ステップ S 1 3の判断が Y E Sの場合には、 ステップ S 1 4において、 処理能 力の削減を行い、 ステップ S 1 5に進む。 ステップ S 1 3の判断が N Oの場合 には、 ステップ S 1 5に進む。 If the determination in step S11 is NO, in step S13, it is determined whether the current processing capacity is less than half of the allocated processing capacity. If the determination in step S13 is YES, in step S14, the processing capacity is reduced, and the process proceeds to step S15. If the determination in step S13 is NO, the process proceeds to step S15.
ステップ S 1 5の後は、 再びステップ S 1 0に戻る。  After step S15, the process returns to step S10 again.
図 1 8は、 図 1 7のステップ S 1 0の負荷計測の詳細を示す図である。 ステップ S 2 0において、 使用サーバから 1 0秒間の平均の処理数を収集す る。 この 1 0秒というのは、 図 1 7のステップ S 1 5の値と一致するべきもの である。 ステップ S 2 1において、 総平均処理数を計算し、 計測履歴に追加す る。 ステップ S 2 2において、 計測履歴が 4項以上あるか否かを判断する。 ス テツプ S 2 2の判断が N Oの場合には、 ステップ S 2 3において、 最新履歴を 3 0秒後の予測値として、 ステップ S 2 5に進む。 ステップ S 2 2における判 断が Y E Sの場合には、 ステップ S 2 4において、 最新 4履歴から最小 2乗近 似で 3 0秒後の予測値を算出し、 ステップ S 2 5に進む。 これは、 最新の 4履 歴から、 回帰曲線を求め、 回帰曲線を使って、 3 0秒後の予測値を得ることで ある。 ステップ S 2 5においては、 3 0秒後の予測値を設定し、 ステップ S 2 6において、 最新履歴を現在値に設定して図 1 7のフローに戻る。  FIG. 18 is a diagram showing the details of the load measurement in step S10 of FIG. In step S20, the average number of processes for 10 seconds is collected from the server in use. This 10 seconds should match the value of step S15 in FIG. In step S21, the total average number of processes is calculated and added to the measurement history. In step S22, it is determined whether there are four or more measurement histories. If the determination in step S22 is NO, in step S23, the latest history is set as a predicted value 30 seconds later, and the process proceeds to step S25. If the determination in step S22 is YES, in step S24, a predicted value 30 seconds later is calculated from the last four histories by least squares approximation, and the process proceeds to step S25. This means finding a regression curve from the latest four histories and using the regression curve to obtain a predicted value 30 seconds later. In step S25, a predicted value after 30 seconds is set. In step S26, the latest history is set to the current value, and the process returns to the flow in FIG.
図 1 9は、 図 1 7のステップ S 1 2の処理能力追加処理の詳細を示す図であ る。  FIG. 19 is a diagram showing the details of the processing capacity adding process in step S12 of FIG.
ステップ S 3 0において、 予測値から現在割当て値を引いて追加処理能力量 を決定する。 ステップ S 3 1において、 センタ内に予備サーバがあるか否かを 判断する。 ステップ S 3 1の判断が Y E Sの場合には、 ステップ S 3 2におい て、 センタ内の追加サーバを選択する。 ステップ S 3 3では、 追加処理能力量 が充足されたか否かを判断する。 ステップ S 3 3の判断が N〇の場合には、 ス テツプ S 3 4へ、 判断が Y E Sの場合には、 ステップ S 3 8に進む。 ステップ S 3 1の判断が N Oの場合には、 ステップ S 3 4に進む。 3 4においては、 予備処理能力を持つ連携先センタがあるか否か を判断する。 ステップ S 3 4の判断が Y E Sの場合には、 ステップ S 3 6にお いて、 連携センタで処理能力を割当てる。 ステップ S 3 7においては、 追加処 理能力量が充足されたか否かを判断する。 ステップ S 3 7の判断が N Oの場合 には、 ステップ S 3 4に進む。 ステップ S 3 7の判断が Y E Sの場合には、 ス テツプ S 3 8に進む。 ステップ S 3 4の判断が N Oの場合には、 ステップ S 3 5において、 追加処理能力量の充足不能を管理者に警告して、 ステップ S 3 8 に進む。ステップ S 3 8では、選択されたサーバを含むよう V L A Nを設定し、 ステップ S 3 9において、 選択されたサーバにアプリケーションを設定し、 ス テツプ S 4 0に進む。 In step S30, the current processing value is subtracted from the predicted value to determine the additional processing capacity. In step S31, it is determined whether there is a spare server in the center. If the determination in step S31 is YES, in step S32, an additional server in the center is selected. In step S33, it is determined whether or not the additional processing capacity has been satisfied. If the determination in step S33 is N〇, the flow proceeds to step S34, and if the determination is YES, the flow proceeds to step S38. If the determination in step S31 is NO, the process proceeds to step S34. At 34, it is determined whether or not there is a partner center having a preliminary processing capacity. If the determination in step S34 is YES, in step S36, the coordination center allocates processing capacity. In step S37, it is determined whether or not the additional processing capacity has been satisfied. If the determination in step S37 is NO, the process proceeds to step S34. If the determination in step S37 is YES, the process proceeds to step S38. If the determination in step S34 is NO, in step S35, the administrator is warned that the additional processing capacity cannot be satisfied, and the process proceeds to step S38. In step S38, a VLAN is set so as to include the selected server. In step S39, an application is set for the selected server, and the process proceeds to step S40.
ステップ S 4 0においては、 センタ間の連携があるか否かを判断し、 判断が N Oの場合には、 ステップ S 4 3に進む。 ステップ S 4 0の判断が Y E Sの場 合には、 ステップ S 4 1において、 連携センタ負荷分散比率の決定、 及び割当 て装置の設定を行い、 ステップ S 4 2において、 自センタと連携センタとの間 の通信帯域を設定し、 ステップ S 4 3に進む。 ステップ S 4 3においては、 自 センタの負荷分散比率を決定し、 割当て装置を決定して、 図 1 7のフローに戻 る。  In step S40, it is determined whether or not there is cooperation between the centers. If the determination is NO, the process proceeds to step S43. If the determination in step S40 is YES, in step S41, the coordination center load distribution ratio is determined and assigned, and the equipment is set. In step S42, the own center and the coordination center are connected. Set the communication band between them, and proceed to step S43. In step S43, the load distribution ratio of the own center is determined, the allocating device is determined, and the process returns to the flow of FIG.
図 2 0は、 図 1 9のステップ S 3 2の追加サーバの選択処理を詳細に示すフ ローである。  FIG. 20 is a flow showing in detail the process of selecting an additional server in step S32 of FIG.
ステップ S 5 0において、 必要な用途向けのサーバがあるか否かが判断され る。 ステップ S 5 0の判断が N Oの場合には、 ステップ S 5 4に進む。 ステツ プ S 5 0の判断が Y E Sの場合には、 ステップ S 5 1において、 必要な用途向 けサーバ内で、 1台で追加処理能力量を充足可能なサーバがあるか否かを判断 する。 ステップ S 5 1の判断が N Oの場合には、 ステップ S 5 2において、 必 要な用途向けで最大性能のサーバを選択し、 ステップ S 5 0に戻る。 ステップ S 5 1の判断が Y E Sの場合には、 必要な用途向けサーバの内、 1台で追加処 理能力量をまかなえるサーバの内、 最低性能のサーバを選択し、 ステップ S 5 8に進む。 . In step S50, it is determined whether there is a server for a necessary use. If the determination in step S50 is NO, the process proceeds to step S54. If the determination in step S50 is YES, in step S51, it is determined whether or not there is a server capable of satisfying the additional processing capacity with a single server for the required application. If the determination in step S51 is NO, in step S52, the server with the highest performance for the required application is selected, and the process returns to step S50. Steps If the determination in S51 is YES, the server with the lowest performance is selected from among the servers for the required applications, which can provide the additional processing capacity, and the process proceeds to step S58. .
ステップ S 5 4においては、 利用可能なサーバがあるか否かを判断する。 ス テツプ S 5 4の判断が N Oの場合には、 ステップ S 5 8に進む。 ステップ S 5 4の判断が Y E Sの場合には、 ステップ S 5 5において、 1台で追加処理能力 量を充足可能なサーバあるか否かを判断する。 ステップ S 5 5の判断が N〇の 場合には、 ステップ S 5 6において、 最大性能のサーバを選択し、 ステップ S 5 4に戻る。 ステップ S 5 5の判断が Y E Sの場合には、 ステップ S 5 7にお いて、 1台で追加処理能力量を充足可能なサーバの内、 最低の性能のサーバを 選択し、 ステップ S 5 8に進む。 ステップ S 5 8においては、 割り当てられた サーバ一覧を構成して、 図 1 9の処理に戻る。  In step S54, it is determined whether there is an available server. If the determination in step S54 is NO, the process proceeds to step S58. If the determination in step S54 is YES, in step S55, it is determined whether one server can satisfy the additional processing capacity. If the judgment in step S55 is NO, in step S56, the server with the highest performance is selected, and the process returns to step S54. If the determination in step S55 is YES, in step S57, the server with the lowest performance is selected from the servers that can satisfy the additional processing capacity with one, and the process proceeds to step S58. move on. In step S58, a list of assigned servers is configured, and the process returns to the process in FIG.
図 2 1は、 図 1 9のステップ S 3 6の連携センタ処理能力割当て処理の流れ を示すフローである。  FIG. 21 is a flowchart showing the flow of the coordination center processing capacity assignment processing in step S36 in FIG.
ステップ S 6 0において、 帯域による処理能力上限が割当て希望値より小さ いか否かを判断する。 ステップ S 6 0の判断が N Oの場合には、 ステップ S 6 2に進む。 ステップ S 6 0の判断が Y E Sの場合には、 ステップ S 6 1におい て、 割当量上限を帯域上限とし、 ステップ S 6 2に進む。  In step S60, it is determined whether or not the processing capacity upper limit based on the bandwidth is smaller than the desired allocation value. If the determination in step S60 is NO, the process proceeds to step S62. If the determination in step S60 is YES, in step S61, the upper limit of the quota is set as the upper limit of the bandwidth, and the process proceeds to step S62.
ステップ S 6 2においては、 連携先センタにサーバ選択を依頼し、 ステップ S 6 3において、 連携先センタ内で追加サーバを選択し、 ステップ S 6 4にお いて、 割り当てられたサーバ一覧を構成して、 図 1 9の処理に戻る。  In step S62, a request is made to the partner center to select a server. In step S63, an additional server is selected in the partner center, and in step S64, a list of assigned servers is configured. Then, the processing returns to the processing in FIG.
図 2 2は、 図 1 9のステップ S 3 9のアプリケーション設定の詳細フローで ある。  FIG. 22 is a detailed flow of the application setting in step S39 in FIG.
ステップ S 7 0において、 センタ間の連携があるか否かを判断する。 ステツ プ S 7 0の判断が N Oの場合には、 ステップ S 7 4に進む。 ステップ S 7 0の 判断が Y E Sの場合には、 ステップ S 7 1において、 アプリケーションのァー 力イブを転送済みか否かを判断する。 ステップ S 7 1の判断が Y E Sの場合に は、 ステップ S 7 3に進む。 ステップ S 7 1の判断が N Oの場合には、 ステツ プ S 7 2において、 連携先センタにアプリケーションのアーカイブを転送し、 ステップ S 7 3に進む。 ステップ S 7 3においては、 追加サーバにアプリケー シヨンをインストールし、 ステップ S 7 4に進む。 ステップ S 7 4では、 自セ ンタ内追加サーバにアプリケーションをィンストールし、図 1 9の処理に戻る。 図 2 3は、 図 1 7のステップ S 1 4の処理能力の削減処理を示すフローであ る。 In step S70, it is determined whether or not there is cooperation between the centers. If the determination in step S70 is NO, the process proceeds to step S74. Step S 70 If the determination is YES, in step S71, it is determined whether or not the application live has been transferred. If the determination in step S71 is YES, the process proceeds to step S73. If the determination in step S71 is NO, in step S72, the application archive is transferred to the partner center, and the process proceeds to step S73. In step S73, the application is installed on the additional server, and the process proceeds to step S74. In step S74, the application is installed on the additional server in the own center, and the process returns to the process in FIG. FIG. 23 is a flowchart showing the processing for reducing the processing capacity in step S14 of FIG.
ステップ S 8 0において、 割当て値から現在の計測値を引き算し、 削減処理 能力量を決定する。 ステップ S 8 1において、 連携センタがあるか否かを判断 する。 ステップ S 8 1の判断が Y E Sの場合には、 ステップ S 8 2において、 連携センタで削減サーバを決定し、 ステップ S 8 3において、 連携センタの全 サーバが削減されたか否かを判断する。 ステップ S 8 3の判断が Y E Sの場合 には、 ステップ S 8 1に戻る。 ステップ S 8 3の判断が N Oの場合には、 ステ ップ S 8 5に進む。 ステップ S 8 1の判断が N Oの場合には、 ステップ S 8 4 において、 自センタで削減サーバを決定し、 ステップ S 8 5に進む。  In step S80, the current measured value is subtracted from the assigned value to determine the reduction processing capacity. In step S81, it is determined whether there is a cooperation center. If the determination in step S81 is YES, in step S82, a reduction server is determined in the cooperation center, and in step S83, it is determined whether all servers in the cooperation center have been reduced. If the determination in step S83 is YES, the process returns to step S81. If the determination in step S83 is NO, the process proceeds to step S85. If the determination in step S81 is NO, in step S84, the own server determines the reduction server, and the process proceeds to step S85.
ステップ S 8 5においては、 自センタの負荷分散比率の決定、 および割当て 装置を設定する。 ステップ S 8 6においては、 連携センタの負荷分散比率を決 定し、 割当て装置を設定する。 そして、 ステップ S 8 7において、 ユーザリク エスト処理の完了を待つ。 ステップ S 8 8において、 削減サーバからアプリケ ーシヨンを削除し、 ステップ S 8 9において、 残ったサーバのみを含むよう V L A Nを設定し(連携用ネットワーク通信路を設定し)、ステップ S 9 0におい て、 連携の解除があるか否かを判断する。 ステップ S 9 0の判断が Y E Sの場 合には、 ステップ S 9 1において、 自センタと連携センタの帯域を解除して図 1 7の処理に戻る。ステップ S 90の判断が NOの時も、図 17の処理に戻る。 図 24は、 図 23のステップ S 82あるいは、 ステップ S 84の削減サーバ の選択処理を示すフローである。 In step S85, the load distribution ratio of the own center is determined, and the allocation device is set. In step S86, the load distribution ratio of the cooperation center is determined, and the assignment device is set. Then, in step S87, the process waits for completion of the user request process. In step S88, the application is deleted from the reduction server, and in step S89, a VLAN is set so as to include only the remaining servers (coordination network communication path is set). In step S90, It is determined whether or not the cooperation is released. If the determination in step S90 is YES, in step S91, the bandwidths of the own center and the cooperation center are released and Return to the processing of step 7. When the determination in step S90 is NO, the process returns to the process in FIG. FIG. 24 is a flowchart showing the selection processing of the reduction server in step S82 or step S84 in FIG.
ステップ S 100において、 他用途に利用可能なサーバがあるか否かを判断 する。 ステップ S 100の判断が NOの場合、 ステップ S 103に進む。 ステ ップ S 100の判断が YESの場合、 ステップ S 101において、 残り削減十生 能よりも性能が低いサーバがあるか否かを判断する。 ステップ S 101の判断 が NOの場合には、 ステップ S 103に進む。 ステップ S 101の判断が YE Sの場合には、 ステップ S 102において、 残り削減性能よりも性能が低いサ ーバの内、 最大性能のサーバを削減してステップ S 100に進む。  In step S100, it is determined whether there is a server available for another use. If the determination in step S100 is NO, the process proceeds to step S103. If the determination in step S100 is YES, in step S101, it is determined whether there is a server whose performance is lower than the remaining reduction capacity. If the determination in step S101 is NO, the process proceeds to step S103. If the determination in step S101 is YES, in step S102, among the servers whose performance is lower than the remaining reduction performance, the server with the highest performance is reduced, and the process proceeds to step S100.
ステップ S 103では、 現在利用中のサーバがあるか否かを判断する。 ステ ップ S 103の判断が NOの場合には、 ステップ S 106に進む。 ステップ S 103の判断が YE Sの場合には、 ステップ S 104において、 残り削減性能 よりも性能が低いサーバがあるか否かを判断する。 ステップ S 104の判断が NOの場合には、 ステップ S 106に進む。 ステップ S 104の判断が Y E S の場合には、 ステップ S 105において、 残り削減性能よりも性能が低いサー バの内、 最大性能のサーバを削減して、 ステップ S 103に戻る。  In step S103, it is determined whether there is a server currently in use. If the determination in step S103 is NO, the process proceeds to step S106. If the determination in step S103 is YES, in step S104, it is determined whether there is a server whose performance is lower than the remaining reduction performance. If the determination in step S104 is NO, the process proceeds to step S106. If the determination in step S104 is YES, in step S105, the server with the highest performance among the servers having lower performance than the remaining reduction performance is reduced, and the process returns to step S103.
ステップ S 106では、 削除されたサーバ一覧を生成し、 図 23の処理に戻 る。  In step S106, a list of the deleted servers is generated, and the process returns to the process in FIG.
図 25〜図 30は、 データベースの連携がある場合の本発明の実施形態の処 理の流れを示すフローチャートである。  FIG. 25 to FIG. 30 are flowcharts showing the processing flow of the embodiment of the present invention when there is cooperation of databases.
図 25は、連携依頼を行う自センタの全体の処理の流れを示すフローである。 ステップ S 1 10において、 We bサーバの負荷計測を行う。 ステップ S 1 1 1において、 予測処理能力が割当て済み処理能力より大きいか否かを判断す る。ステップ S 1 1 1の判断が YE Sの場合には、ステップ S 1 1 2において、 W e b処理能力の追加を行い、 ステップ S 1 1 5に進む。 ステップ S 1 1 1の 判断が N Oの場合には、 ステップ S 1 1 3において、 現在処理能力が割当て済 み処理能力の 2分の 1より小さいか否かを判断する。 ステップ S 1 1 3の判断 が N〇の場合には、 ステップ S 1 1 5に進む。 ステップ S 1 1 3の判断が Y E Sの場合には、 ステップ S 1 1 4において、 W e b処理の能力を削減して、 ス テツプ S 1 1 5に進む。 ステップ S 1 1 5においては、 センタ内データベース の負荷を計測する。 ステップ S 1 1 6においては、 予測処理能力が割当て済み 処理能力より大きいか否かを判断する。 ステップ S 1 1 6の判断が Y E Sの-場 合には、 ステップ S 1 1 7において、 データベース処理能力の追加を行い、 ス テツプ S 1 2 0に進む。 ステップ S 1 1 6の判断が N Oの場合には、 ステップ S 1 1 8において、 現在処理能力が割当て済み処理能力の 2分の 1より小さい か否かを判断する。 ステップ S 1 1 8の判断が N Oの場合には、 ステップ S 1 2 0に進む。 ステップ S 1 1 8の判断が Y E Sの場合には、 ステップ S 1 1 9 において、 デ一タベースの処理能力の削減を行い、 ステップ S 1 2 0に進む。 ステップ S 1 2 0では、 1 0秒待つ。 この待ち時間は、 設計者により適宜設定 されるべきものである。 ステップ S 1 2 0の後は、 再び、 ステップ S 1 1 0に 民 FIG. 25 is a flowchart showing the flow of the overall processing of the own center that performs the cooperation request. In step S110, the load of the Web server is measured. In step S111, it is determined whether the predicted processing capacity is larger than the allocated processing capacity. If the determination in step S111 is YE S, in step S112, Web processing capacity is added, and the process proceeds to step S115. If the determination in step S111 is NO, in step S113, it is determined whether the current processing capacity is smaller than one half of the allocated processing capacity. If the judgment in step S113 is N〇, the process proceeds to step S115. If the determination in step S113 is YES, in step S114, the capacity of the Web processing is reduced, and the process proceeds to step S115. In step S115, the load on the database in the center is measured. In step S116, it is determined whether the predicted processing capacity is larger than the allocated processing capacity. If the determination in step S116 is YES, in step S117, the database processing capacity is added, and the flow advances to step S120. If the determination in step S116 is NO, in step S118, it is determined whether the current processing capacity is smaller than one half of the allocated processing capacity. If the determination in step S118 is NO, the process proceeds to step S120. If the determination in step S118 is YES, in step S119, the processing capacity of the database is reduced, and the flow advances to step S120. In step S120, the process waits for 10 seconds. This waiting time should be set as appropriate by the designer. After step S120, again go to step S110
図 2 6は、 連携先センタの全体処理の流れを示すフローである。  Fig. 26 is a flow chart showing the overall processing flow of the partner center.
ステップ S 1 3 0において、 センタ内のデータベース負荷を計測する。 ステ ップ S 1 3 1において、 予測処理能力が割当て済み処理能力より大きいか否か を判断する。 ステップ S 1 3 1の判断が Y E Sの場合には、 ステップ S 1 3 2 において、 データベース処理能力を追加し、 ステップ S 1 3 5に進む。 ステツ プ S 1 3 1の判断が N Oの場合には、 ステップ S 1 3 3において、 現在処理能 力が割当て済み処理能力の 2分の 1より小さいか否かを判断する。 ステップ S 1 3 3の判断が N Oの場合には、 ステップ S 1 3 5に進む。 ステップ S 1 3 3 の判断が Y E Sの場合には、 ステップ S 1 3 4において、 データベース処理能 力削減を行い、 ステップ S 1 3 5に進む。 ステップ S 1 3 5においては、 1 0 秒待ち、 ステップ S 1 3 0に戻る。 この 1 0秒間はこれに限定されるべきもの ではなく、 設計者によって適宜設定されるべきものである。 In step S130, the database load in the center is measured. In step S131, it is determined whether the predicted processing capacity is larger than the allocated processing capacity. If the determination in step S 13 1 is YES, in step S 13 2, the database processing capacity is added, and the flow advances to step S 1 35. If the determination in step S133 is NO, in step S133, it is determined whether the current processing capacity is smaller than one half of the allocated processing capacity. If the determination in step S133 is NO, the process proceeds to step S135. Step S 1 3 3 If the determination is YES, the database processing capacity is reduced in step S134, and the flow advances to step S135. In step S135, the process waits for 10 seconds, and returns to step S130. This 10 seconds should not be limited to this, but should be set appropriately by the designer.
図 2 7は、 各センタで行われるウェブ負荷計測あるいはデータベース負荷計 測の詳細処理を示すフローである。  Figure 27 is a flowchart showing the detailed processing of web load measurement or database load measurement performed at each center.
ステップ S 1 4 0においては、 使用サーバから 1 0秒間の平均の処理数を収 集する。 この 1 0秒は、 図 2 5のステップ S 1 2 0、 図 2 6のステップ S 1 3 5の待ち時間と同じ値であるべきである。 ステップ S 1 4 1において、 総平均 処理数を計算し、 計測履歴に追加する。 ステップ S 1 4 2において、 計測履歴 が 4項以上あるか否かを判断する。 ステップ S 1 4 2の判断が N Oの時には、 ステップ S 1 4 3において、 最新履歴を 3 0秒後の予測値として、 ステップ S 1 4 5に進む。 ステップ S 1 4 2の判断が Y E Sの場合には、 ステップ S 1 4 4において、 最新 4履歴から最小 2乗近似で 3 0秒後の予測値を導出し、 ステ ップ S 1 4 5に進む。 この導出の仕方は、 図 1 8で述べたとおりである。 ステップ S 1 4 5においては、 3 0秒後の予測値を設定する。 ステップ S 1 4 6においては、 最新履歴を現在値に設定して図 2 5、 2 6の処理に戻る。 図 2 8は、 図 2 5のステップ S 1 1 2の W e b処理能力追加処理の詳細フロ 一である。  In step S140, the average number of processes for 10 seconds from the server in use is collected. This 10 seconds should be the same value as the waiting time of step S120 of FIG. 25 and step S135 of FIG. In step S141, the total average number of processes is calculated and added to the measurement history. In step S142, it is determined whether there are four or more measurement histories. If the determination in step S142 is NO, in step S143, the latest history is set as a predicted value 30 seconds later, and the flow advances to step S145. If the determination in step S144 is YES, in step S144, a predicted value 30 seconds later is derived from the latest four histories by least squares approximation, and the process proceeds to step S145. . This derivation method is as described in Fig. 18. In step S145, a predicted value after 30 seconds is set. In step S146, the latest history is set to the current value, and the process returns to the processing in FIGS. FIG. 28 is a detailed flowchart of the Web processing capability addition process in step S112 of FIG.
図 2 8のフローは、 連携センタを追加したときは、 ステップ S 1 5 4からの 処理を行う。  In the flow of FIG. 28, when a coordination center is added, the processing from step S154 is performed.
まず、 ステップ S 1 5 0において、 予測値から現在割り当て値を引き算し、 追加処理能力量を決定する。 ステップ S 1 5 1においては、 センタ内に予備サ ーバがあるか否かを判断する。 ステップ S 1 5 1の判断が N Oの時は、 ステツ プ S 1 5 4に進む。 ステップ S 1 5 1の判断が Y E Sの時は、 ステップ S 1 5 2において、 センタ内の追加サーバの選択を行う。 この処理の詳細は、 図 2 0 に示すとおりである。 そして、 ステップ S 1 5 3において、 追加処理能力量が 充足されたか否かを判断する。 ステップ S 1 5 3の判断が N Oの時は、 ステツ プ S 1 5 4に進む。 ステップ S 1 5 3の判断が Y E Sの時は、 ステップ S 1 5 8に進む。 First, in step S150, the current assigned value is subtracted from the predicted value to determine an additional processing capacity. In step S151, it is determined whether or not there is a spare server in the center. If the determination in step S151 is NO, the process proceeds to step S154. If the judgment in step S15 is YES, step S15 In step 2, an additional server in the center is selected. The details of this processing are as shown in FIG. Then, in step S153, it is determined whether or not the additional processing capacity has been satisfied. If the determination in step S 153 is NO, the process proceeds to step S 154. If the determination in step S155 is YES, the process proceeds to step S158.
ステップ S 1 5 4においては、 予備処理能力を持つ連携先センタがあるか否 かを判断する。 ステップ S 1 5 4の判断が Y E Sの場合には、 ステップ S 1 5 6において、 連携センタで処理能力を割り当てを行う。 この処理の詳細は、 図 2 1に示すとおりである。 ステップ S 1 5 7では、 追加処理能力量が充足され たか否かを判断する。 ステップ S 1 5 7の判断が N Oの場合には、 ステップ S In step S154, it is determined whether or not there is a partner center having a preliminary processing capability. If the determination in step S154 is YES, in step S156, the cooperation center allocates processing capacity. Details of this processing are as shown in FIG. In step S157, it is determined whether or not the additional processing capacity has been satisfied. If the judgment in step S157 is NO, step S
1 5 4に戻る。 ステップ S 1 5 7の判断が Y E Sの場合には、 ステップ S 1 5 8に進む。 ステップ S 1 5 4の判断が N Oの場合には、 ステップ S 1 5 5にお いて、 追加処理能力量の充足が不能であることを管理者に警告して、 ステップ S 1 5 8に進む。 Return to 1 5 4. If the determination in step S157 is YES, the process proceeds to step S158. If the determination in step S155 is NO, in step S155, the administrator is warned that the additional processing capacity cannot be satisfied, and the process proceeds to step S158.
ステップ S 1 5 8においては、 選択されたサーバを含むよう V L A Nを設定 し、 ステップ S 1 5 9において、 選択されたサーバにアプリケーションを設定 する。 アプリケーションの設定は、 図 2 2に示したとおりである。 ステップ S In step S158, the VLAN is set to include the selected server, and in step S159, the application is set to the selected server. The application settings are as shown in Figure 22. Step S
1 6 0では、 センタ間の連携があるか否かを判断する。 ステップ S 1 6 0の判 断の結果、 Y E Sであれば、 ステップ S 1 6 1において、 連携センタ負荷分散 比率の決定及び装置設定を行い、 ステップ S 1 6 2において、 自センタと連携 センタ間の通信帯域を設定し、 ステップ S 1 6 3に進む。 At 160, it is determined whether or not there is cooperation between the centers. If the result of determination in step S160 is YES, in step S161, the coordination center load distribution ratio is determined and the equipment is set, and in step S166, the own center and the coordination center are Set the communication band and proceed to step S163.
ステップ S 1 6 0の判断が N Oの場合には、 ステップ S 1 6 3にそのまま進 む。ステップ S 1 6 3では、自センタの負荷分散比率を決定し、装置設定して、 図 2 5の処理に戻る。  If the determination in step S166 is NO, the process proceeds directly to step S166. In step S163, the load distribution ratio of the own center is determined, the device is set, and the process returns to the process in FIG.
図 2 9は、 図 2 5のステップ S 1 1 7及び図 2 6のステップ S 1 3 2のデー タベース処理能力追加処理の詳細なフローである。 Fig. 29 shows the data of step S117 of Fig. 25 and the data of step S132 of Fig. 26. It is a detailed flow of database processing capacity addition processing.
ステップ S 170において、 予測値から現在の割り当て値を引き算し、 追加 処理能力量を決定する。 ステップ S 171において、 センタ内に予備サーバが あるか否かを判断する。 ステップ S 1 71の判断が N〇の場合には、 ステップ S 177において、 現在のデータベースから可能な We b能力を計算し、 ステ ップ S 178において、 連携センタで不足分の We b能力を追加する。 ステツ プ S 178の処理は、 図 28の通りである。 そして、 図 25あるいは図 26の 処理に戻る。  In step S170, the current assigned value is subtracted from the predicted value to determine an additional processing capacity. In step S171, it is determined whether or not there is a spare server in the center. If the judgment in step S 171 is N に お い て, in step S 177 the possible web capacity is calculated from the current database, and in step S 178 the insufficient web capacity is added by the cooperation center. I do. The process in step S178 is as shown in FIG. Then, the processing returns to the processing of FIG. 25 or FIG.
ステップ S 1 71の判断が YE Sの場合には、 ステップ S 1 72において、 センタ内の追加サーバを選択する。 そして、 ステップ S 1 73において、 追加 処理能力量が充足されたか否かを判断する。 ステップ S 1 73の判断が NOの 場合には、 ステップ S 1 77に進む。 ステップ S 1 73の判断が YESの場合 には、 ステップ S 1 74において、 選択されたサーバを含むよう VLANを設 定し、ステップ S 1 75において、選択されたサーバにデータベースを設定し、 ステップ S 1 76において、 センタ内の We bサーバのデータベースリス トを 更新し、 図 25あるいは図 26の処理に戻る。  If the determination in step S 171 is YES, an additional server in the center is selected in step S 172. Then, in a step S173, it is determined whether or not the additional processing capacity is satisfied. If the determination in step S 173 is NO, the process proceeds to step S 177. If the determination in step S 173 is YES, in step S 174, a VLAN is set to include the selected server, and in step S 175, a database is set for the selected server, In 176, the database list of the Web server in the center is updated, and the processing returns to the processing in FIG. 25 or FIG.
図 30は、 We bサーバ及びデータベースに共通の追加サーバの選択処理の 詳細を示すフローである。  FIG. 30 is a flowchart showing details of the process of selecting an additional server common to the web server and the database.
ステップ S 180において、必要な用途向けサーバがあるか否かを判断する。 ステップ S 1 80の判断が YE Sの場合、 ステップ S 1 81において、 必要な 用途向けサーバ内に 1台で追加処理能力量を充足可能なサーバがあるか否かを 判断する。 ステップ S 1 8 1の判断が NOの場合には、 ステップ S 182にお いて、 必要な用途向けであって、 最大性能のサーバを選択し、 ステップ S 1 8 0に戻る。 ステップ S 1 81の判断が YE Sの場合には、 ステップ S 1 83に おいて、 1台で追加処理能力量を充足可能なサーバの中で最低性能のサーバを 選択し、 ステップ S 1 8 8に進む。 In step S180, it is determined whether there is a required application server. If the determination in step S 180 is YES, in step S 181, it is determined whether or not there is a server capable of satisfying the additional processing capacity by a single server for the required application. If the determination in step S181 is NO, in step S182, a server for the required use and having the highest performance is selected, and the process returns to step S180. If the determination in step S 181 is YES, in step S 183, the server with the lowest performance among the servers that can satisfy the additional processing capacity with one Select and go to step S188.
ステップ S 1 8 0の判断が N〇の場合には、 ステップ S 1 8 4において、 利 用可能なサーバがあるか否かを判断する。 ステップ S 1 8 4の判断が Y E Sの 場合には、 ステップ S 1 8 5において、 1台で追加処理能力量を充足可能なサ ーバがあるか否かを判断する。 ステップ S 1 8 5の判断が N Oの場合には、 ス テツプ S 1 8 6において、 使用できる最大性能のサーバを選択してステップ S 1 8 4に進む。 ステップ S 1 8 5の判断が Y E Sの場合には、 ステップ S 1 8 7において、 1台で追加処理能力量を充足可能なサーバの内、 最低性能のサー バを選択してステップ S 1 8 8に進む。 ステップ S 1 8 4の判断が N〇の場合 には、 そのままステップ S 1 8 8に進む。  If the determination in step S180 is N〇, in step S184, it is determined whether there is an available server. If the determination in step S184 is YES, in step S185, it is determined whether or not there is a server that can satisfy the additional processing capacity with one unit. If the determination in step S185 is NO, in step S186, the server with the maximum performance that can be used is selected, and the flow advances to step S184. If the determination in step S185 is YES, in step S187, the server with the lowest performance is selected from the servers capable of satisfying the additional processing capacity with one server, and the process proceeds to step S188. Proceed to. If the judgment in step S188 is N〇, the process directly proceeds to step S188.
ステップ S 1 8 8では、 割り当てられたサーバ一覧を構成し、 図 2 8あるい は図 2 9の処理に戻る。 産業上の利用可能性  In step S188, a list of assigned servers is constructed, and the process returns to FIG. 28 or FIG. 29. Industrial applicability
本発明により、 サービス毎、 データセンタ毎に充分な予備サーバを確保して 置かなくても必要となった時に動的に割り当てることでサービス品質が達成で きるようになる。 また、 小規模なデータセンタであっても、 他のデータセンタ と連携することで急激な負荷集中時にもサービス品質を保証することが可能に なる。 更に予備サーバの共用により設備投資を軽減でき、 同時に設備の有効利 用が可能となる。  According to the present invention, the service quality can be achieved by dynamically allocating the server when it becomes necessary without securing and keeping a sufficient spare server for each service and each data center. In addition, even in the case of a small data center, it is possible to guarantee service quality even in the case of sudden load concentration by linking with other data centers. Furthermore, capital investment can be reduced by sharing the spare server, and at the same time, the equipment can be used effectively.

Claims

請求の範囲 The scope of the claims
1 . クライアントにネットワーク経由でサービスを提供する複数のサーバを備 えた装置の負荷分散の方法であって、 1. A method for load balancing devices equipped with multiple servers that provide services to clients over a network,
通常サービスを提供するサーバの負荷を分担するための、 初期状態ではいず れのサ一ビスの設定もされていない複数の予備サーバを設けるステップと、 通常サービスを提供するサーバの負荷の増大を見込んで、 該予備サーバに提 供すべきサービスのためのアプリケーションを設定して、 該サービスの提供用 サーバとし、 通常サービスを提供するサーバと負荷を分担させる制御ステップ と、  Providing a plurality of spare servers without any service set in the initial state to share the load on the server providing the normal service, and increasing the load on the server providing the normal service. Anticipating, setting an application for a service to be provided to the spare server, setting the application as a server for providing the service, and sharing a load with a server that normally provides the service;
を備えることを特徴とする方法。 A method comprising:
2 . 複数の前記装置がネットワークを介して接続され、 1つの装置が負荷を支 えきれなくなった場合に、 他の装置の有する、 必要とされるサービスを通常提 供するのに使用されるサーバを、 該 1つの装置のために提供することを特徴と する請求項 1に記載の方法。 2. When a plurality of the above devices are connected via a network and one device cannot support the load, the other device has a server that is usually used to provide necessary services. The method of claim 1, wherein the method is provided for the one device.
3 . 前記他の装置は、 予備サーバを有し、 前記 1つの装置のために提供したサ ーバが負荷を支えきれなくなった場合に、 該予備サーバを提供することを特徴 とする請求項 2に記載の方法。 3. The other device has a spare server, and provides the spare server when a server provided for the one device cannot support a load. The method described in.
4 . 前記複数の装置間で負荷を分担する場合には、 該複数の装置間の通信帯域 の確保を行うことを特徴とする請求項 2に記載の方法。 4. The method according to claim 2, wherein when sharing a load among the plurality of devices, a communication band between the plurality of devices is secured.
5 . 前記制御ステップでは、 過去のサーバのリクエストの処理数から所定時間 後の負荷の大きさを予測することによって、 予備サーバをサービスの提供に使 用するか否かを決定することを特徴とする請求項 1に記載の方法。 5. In the control step, a predetermined time is calculated based on the number of past requests processed by the server. 2. The method according to claim 1, wherein whether or not the spare server is used for providing a service is determined by predicting a magnitude of a later load.
6 . 特定のサービスに予備サーバを使用する場合、 予備サーバのハードウェア の特性に基づいて、 該特定のサービスの提供に適した予備サーバから使用する ことを特徴とする請求項 1に記載の方法。 6. The method according to claim 1, wherein when a spare server is used for a specific service, the spare server is used from a spare server suitable for providing the specific service based on hardware characteristics of the spare server. .
7 . 特定のサービスに予備サーバを使用する場合、 補充すべき処理能力を 1台 で補充することの出来る予備サーバから優先して使用することを特徴とする請 求項 1に記載の方法。 7. The method according to claim 1, wherein when a spare server is used for a specific service, the processing capacity to be replenished is preferentially used from a spare server that can be replenished by one unit.
8 . 1台で補充すべき処理能力を補充可能な予備サーバの内、 最低性能の予備 サーバから優先して使用することを特徴とする請求項 7に記載の方法。 8. The method according to claim 7, wherein the processing capacity to be replenished by one server is preferentially used from the spare server having the lowest performance among the spare servers that can be supplemented.
9 . 特定のサービスに呼ぴサーバを使用する場合、 補充すべき処理能力を 1台 で補充することの出来る予備サーバがない場合には、 最大性能の予備サーバを 使用することを特徴とする請求項 1に記載の方法。 9. When a call server is used for a specific service, if there is no spare server that can replenish the processing capacity to be replenished by one unit, the spare server with the highest performance is used. Item 1. The method according to item 1.
1 0 . 前記制御ステップは、 負荷が予備サーバなしでも支えることが出来るほ ど少なくなった場合には、 負荷の減ったサービスの提供に使用していた予備サ ーバから、 該サービスの提供のためのアプリケーションを削除し、 予備サーバ の使用を停止することを特徴とする請求項 1に記載の方法。 10. If the load becomes so small that the load can be supported without a spare server, the control step starts the provision of the service from the spare server used to provide the service with the reduced load. 2. The method according to claim 1, wherein the application for the backup is deleted and the use of the spare server is stopped.
1 1 . 予備サーバの使用を中止する場合には、 予備サーバのハードウェアの特 性を考慮して、 使用を中止することを特徴とする請求項 1 0に記載の方法。 11. The method according to claim 10, wherein when the use of the spare server is stopped, the use of the spare server is stopped in consideration of the characteristics of the hardware of the spare server.
1 2 . 予備サーバの使用を中止する場合には、 残りのサーバ及び予備サーバで 特定サービスの負荷を支え続けられる範囲内で、 最大性能の予備サーバの使用 を中止することを特徴とする請求項 1 0に記載の方法。 1 2. When the use of the spare server is stopped, the use of the spare server with the highest performance is stopped within a range where the remaining server and the spare server can continue to support the load of the specific service. 10. The method according to 10.
1 3 . クライアントにネットワーク経由でサービスを提供する複数のサーバを 備えた装置であって、 1 3. A device with multiple servers that provide services to clients over a network,
通常サービスを提供するサーバの負荷を分担するための、 初期状態ではいず れのサービスの設定もされていない複数の予備サーバと、  A plurality of spare servers that do not have any services set up in the initial state to share the load on the servers that provide normal services,
通常サービスを提供するサーバの負荷の増大を見込んで、 該予備サーバに提 供すべきサービスのためのアプリケーションを設定して、 該サービスの提供用 サーバとし、 通常サ一ビスを提供するサーバと負荷を分担させる制御手段と、 を備えることを特徴とする装置。  In anticipation of an increase in the load on the server that provides the normal service, an application for the service to be provided to the spare server is set, and the server for providing the service is set as the server for providing the service. Control means for sharing, an apparatus comprising:
1 4 . クライアントにネットワーク経由でサービスを提供する複数のサーバを 備えた装置の負荷分散の方法であって、 1 4. A method of load balancing devices with multiple servers that provide services to clients over a network,
通常サービスを提供するサーバの負荷を分担するための、 初期状態ではいず れのサービスの設定もされていなレ、複数の予備サーバを設けるステップと、 通常サービスを提供するサーバの負荷の増大を見込んで、 該予備サーバに提 供すべきサービスのためのアプリケーションを設定して、 該サービスの提供用 サーバとし、 通常サービスを提供するサーバと負荷を分担させる制御ステップ と、  In the initial state, none of the services are set to share the load on the server that provides the normal service. Anticipating, setting an application for a service to be provided to the spare server, setting the application as a server for providing the service, and sharing a load with a server that normally provides the service;
を備えることを特徴とする方法をコンピュータに実現させるプログラム。 A program for causing a computer to realize a method comprising:
PCT/JP2003/003273 2003-03-18 2003-03-18 Load distributing system by intersite cooperation WO2004084085A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2003/003273 WO2004084085A1 (en) 2003-03-18 2003-03-18 Load distributing system by intersite cooperation
JP2004569568A JPWO2004084085A1 (en) 2003-03-18 2003-03-18 Load balancing system by inter-site cooperation
US11/050,058 US20050144280A1 (en) 2003-03-18 2005-02-04 Load distribution system by inter-site cooperation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2003/003273 WO2004084085A1 (en) 2003-03-18 2003-03-18 Load distributing system by intersite cooperation

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US11/050,058 Continuation US20050144280A1 (en) 2003-03-18 2005-02-04 Load distribution system by inter-site cooperation

Publications (1)

Publication Number Publication Date
WO2004084085A1 true WO2004084085A1 (en) 2004-09-30

Family

ID=33018146

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2003/003273 WO2004084085A1 (en) 2003-03-18 2003-03-18 Load distributing system by intersite cooperation

Country Status (2)

Country Link
JP (1) JPWO2004084085A1 (en)
WO (1) WO2004084085A1 (en)

Cited By (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006259793A (en) * 2005-03-15 2006-09-28 Hitachi Ltd Shared resource management method, and its implementation information processing system
JP2007114983A (en) * 2005-10-20 2007-05-10 Hitachi Ltd Server pool management method
JP2007264794A (en) * 2006-03-27 2007-10-11 Fujitsu Ltd Parallel distributed processing program and system
WO2008007435A1 (en) * 2006-07-13 2008-01-17 Fujitsu Limited Resource management program, resource management method, and resource management device
JPWO2006043322A1 (en) * 2004-10-20 2008-05-22 富士通株式会社 Server management program, server management method, and server management apparatus
JPWO2006043321A1 (en) * 2004-10-20 2008-05-22 富士通株式会社 Application management program, application management method, and application management apparatus
US7693995B2 (en) 2005-11-09 2010-04-06 Hitachi, Ltd. Arbitration apparatus for allocating computer resource and arbitration method therefor
JP2010272090A (en) * 2009-05-25 2010-12-02 Hitachi Ltd Device, program and method for managing processing request destination
JP2011138202A (en) * 2009-12-25 2011-07-14 Fujitsu Ltd Server device, server load distribution device, server load distribution method, and program
JP2014502382A (en) * 2010-09-30 2014-01-30 エイ10 ネットワークス インコーポレイテッド System and method for balancing servers based on server load conditions
US9253152B1 (en) 2006-10-17 2016-02-02 A10 Networks, Inc. Applying a packet routing policy to an application session
US9270705B1 (en) 2006-10-17 2016-02-23 A10 Networks, Inc. Applying security policy to an application session
US9270774B2 (en) 2011-10-24 2016-02-23 A10 Networks, Inc. Combining stateless and stateful server load balancing
JP2016045505A (en) * 2014-08-19 2016-04-04 日本電信電話株式会社 Service providing system and service providing method
US9338225B2 (en) 2012-12-06 2016-05-10 A10 Networks, Inc. Forwarding policies on a virtual service network
US9386088B2 (en) 2011-11-29 2016-07-05 A10 Networks, Inc. Accelerating service processing using fast path TCP
US9531846B2 (en) 2013-01-23 2016-12-27 A10 Networks, Inc. Reducing buffer usage for TCP proxy session based on delayed acknowledgement
US9602442B2 (en) 2012-07-05 2017-03-21 A10 Networks, Inc. Allocating buffer for TCP proxy session based on dynamic network conditions
US9609052B2 (en) 2010-12-02 2017-03-28 A10 Networks, Inc. Distributing application traffic to servers based on dynamic service response time
US9705800B2 (en) 2012-09-25 2017-07-11 A10 Networks, Inc. Load distribution in data networks
US9843484B2 (en) 2012-09-25 2017-12-12 A10 Networks, Inc. Graceful scaling in software driven networks
US9900252B2 (en) 2013-03-08 2018-02-20 A10 Networks, Inc. Application delivery controller and global server load balancer
US9906422B2 (en) 2014-05-16 2018-02-27 A10 Networks, Inc. Distributed system to determine a server's health
US9942152B2 (en) 2014-03-25 2018-04-10 A10 Networks, Inc. Forwarding data packets using a service-based forwarding policy
US9942162B2 (en) 2014-03-31 2018-04-10 A10 Networks, Inc. Active application response delay time
US9960967B2 (en) 2009-10-21 2018-05-01 A10 Networks, Inc. Determining an application delivery server based on geo-location information
US9979801B2 (en) 2011-12-23 2018-05-22 A10 Networks, Inc. Methods to manage services over a service gateway
US9986061B2 (en) 2014-06-03 2018-05-29 A10 Networks, Inc. Programming a data network device using user defined scripts
WO2018097058A1 (en) * 2016-11-22 2018-05-31 日本電気株式会社 Analysis node, method for managing resources, and program recording medium
US9992107B2 (en) 2013-03-15 2018-06-05 A10 Networks, Inc. Processing data packets using a policy based network path
US9992229B2 (en) 2014-06-03 2018-06-05 A10 Networks, Inc. Programming a data network device using user defined scripts with licenses
US10002141B2 (en) 2012-09-25 2018-06-19 A10 Networks, Inc. Distributed database in software driven networks
US10021174B2 (en) 2012-09-25 2018-07-10 A10 Networks, Inc. Distributing service sessions
US10027761B2 (en) 2013-05-03 2018-07-17 A10 Networks, Inc. Facilitating a secure 3 party network session by a network device
US10038693B2 (en) 2013-05-03 2018-07-31 A10 Networks, Inc. Facilitating secure network traffic by an application delivery controller
US10044582B2 (en) 2012-01-28 2018-08-07 A10 Networks, Inc. Generating secure name records
US10129122B2 (en) 2014-06-03 2018-11-13 A10 Networks, Inc. User defined objects for network devices
US10230770B2 (en) 2013-12-02 2019-03-12 A10 Networks, Inc. Network proxy layer for policy-based application proxies
USRE47296E1 (en) 2006-02-21 2019-03-12 A10 Networks, Inc. System and method for an adaptive TCP SYN cookie with time validation
US10243791B2 (en) 2015-08-13 2019-03-26 A10 Networks, Inc. Automated adjustment of subscriber policies
US10581976B2 (en) 2015-08-12 2020-03-03 A10 Networks, Inc. Transmission control of protocol state exchange for dynamic stateful service insertion

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09212468A (en) * 1996-02-02 1997-08-15 Fujitsu Ltd Compound mode multiprocessing system
JP2000298637A (en) * 1999-04-15 2000-10-24 Nec Software Kyushu Ltd System and method for load distribution and recording medium
EP1063831A2 (en) * 1999-06-24 2000-12-27 Canon Kabushiki Kaisha Network status server, information distribution system, control method, and storage medium for storing control program
JP2002163241A (en) * 2000-11-29 2002-06-07 Ntt Data Corp Client server system
JP2002259354A (en) * 2001-03-01 2002-09-13 Hitachi Ltd Network system and load distributing method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09212468A (en) * 1996-02-02 1997-08-15 Fujitsu Ltd Compound mode multiprocessing system
JP2000298637A (en) * 1999-04-15 2000-10-24 Nec Software Kyushu Ltd System and method for load distribution and recording medium
EP1063831A2 (en) * 1999-06-24 2000-12-27 Canon Kabushiki Kaisha Network status server, information distribution system, control method, and storage medium for storing control program
JP2002163241A (en) * 2000-11-29 2002-06-07 Ntt Data Corp Client server system
JP2002259354A (en) * 2001-03-01 2002-09-13 Hitachi Ltd Network system and load distributing method

Cited By (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2006043322A1 (en) * 2004-10-20 2008-05-22 富士通株式会社 Server management program, server management method, and server management apparatus
JPWO2006043321A1 (en) * 2004-10-20 2008-05-22 富士通株式会社 Application management program, application management method, and application management apparatus
JP4558740B2 (en) * 2004-10-20 2010-10-06 富士通株式会社 Application management program, application management method, and application management apparatus
JP2006259793A (en) * 2005-03-15 2006-09-28 Hitachi Ltd Shared resource management method, and its implementation information processing system
US8769545B2 (en) 2005-10-20 2014-07-01 Hitachi, Ltd. Server pool management method
JP2007114983A (en) * 2005-10-20 2007-05-10 Hitachi Ltd Server pool management method
JP4650203B2 (en) * 2005-10-20 2011-03-16 株式会社日立製作所 Information system and management computer
US7693995B2 (en) 2005-11-09 2010-04-06 Hitachi, Ltd. Arbitration apparatus for allocating computer resource and arbitration method therefor
USRE47296E1 (en) 2006-02-21 2019-03-12 A10 Networks, Inc. System and method for an adaptive TCP SYN cookie with time validation
JP2007264794A (en) * 2006-03-27 2007-10-11 Fujitsu Ltd Parallel distributed processing program and system
WO2008007435A1 (en) * 2006-07-13 2008-01-17 Fujitsu Limited Resource management program, resource management method, and resource management device
US9270705B1 (en) 2006-10-17 2016-02-23 A10 Networks, Inc. Applying security policy to an application session
US9253152B1 (en) 2006-10-17 2016-02-02 A10 Networks, Inc. Applying a packet routing policy to an application session
US9497201B2 (en) 2006-10-17 2016-11-15 A10 Networks, Inc. Applying security policy to an application session
JP2010272090A (en) * 2009-05-25 2010-12-02 Hitachi Ltd Device, program and method for managing processing request destination
US9960967B2 (en) 2009-10-21 2018-05-01 A10 Networks, Inc. Determining an application delivery server based on geo-location information
US10735267B2 (en) 2009-10-21 2020-08-04 A10 Networks, Inc. Determining an application delivery server based on geo-location information
JP2011138202A (en) * 2009-12-25 2011-07-14 Fujitsu Ltd Server device, server load distribution device, server load distribution method, and program
US10447775B2 (en) 2010-09-30 2019-10-15 A10 Networks, Inc. System and method to balance servers based on server load status
US9961135B2 (en) 2010-09-30 2018-05-01 A10 Networks, Inc. System and method to balance servers based on server load status
JP2014502382A (en) * 2010-09-30 2014-01-30 エイ10 ネットワークス インコーポレイテッド System and method for balancing servers based on server load conditions
US10178165B2 (en) 2010-12-02 2019-01-08 A10 Networks, Inc. Distributing application traffic to servers based on dynamic service response time
US9609052B2 (en) 2010-12-02 2017-03-28 A10 Networks, Inc. Distributing application traffic to servers based on dynamic service response time
US9961136B2 (en) 2010-12-02 2018-05-01 A10 Networks, Inc. Distributing application traffic to servers based on dynamic service response time
US10484465B2 (en) 2011-10-24 2019-11-19 A10 Networks, Inc. Combining stateless and stateful server load balancing
US9906591B2 (en) 2011-10-24 2018-02-27 A10 Networks, Inc. Combining stateless and stateful server load balancing
US9270774B2 (en) 2011-10-24 2016-02-23 A10 Networks, Inc. Combining stateless and stateful server load balancing
US9386088B2 (en) 2011-11-29 2016-07-05 A10 Networks, Inc. Accelerating service processing using fast path TCP
US9979801B2 (en) 2011-12-23 2018-05-22 A10 Networks, Inc. Methods to manage services over a service gateway
US10044582B2 (en) 2012-01-28 2018-08-07 A10 Networks, Inc. Generating secure name records
US9602442B2 (en) 2012-07-05 2017-03-21 A10 Networks, Inc. Allocating buffer for TCP proxy session based on dynamic network conditions
US9705800B2 (en) 2012-09-25 2017-07-11 A10 Networks, Inc. Load distribution in data networks
US10021174B2 (en) 2012-09-25 2018-07-10 A10 Networks, Inc. Distributing service sessions
US10862955B2 (en) 2012-09-25 2020-12-08 A10 Networks, Inc. Distributing service sessions
US10002141B2 (en) 2012-09-25 2018-06-19 A10 Networks, Inc. Distributed database in software driven networks
US10516577B2 (en) 2012-09-25 2019-12-24 A10 Networks, Inc. Graceful scaling in software driven networks
US10491523B2 (en) 2012-09-25 2019-11-26 A10 Networks, Inc. Load distribution in data networks
US9843484B2 (en) 2012-09-25 2017-12-12 A10 Networks, Inc. Graceful scaling in software driven networks
US9544364B2 (en) 2012-12-06 2017-01-10 A10 Networks, Inc. Forwarding policies on a virtual service network
US9338225B2 (en) 2012-12-06 2016-05-10 A10 Networks, Inc. Forwarding policies on a virtual service network
US9531846B2 (en) 2013-01-23 2016-12-27 A10 Networks, Inc. Reducing buffer usage for TCP proxy session based on delayed acknowledgement
US9900252B2 (en) 2013-03-08 2018-02-20 A10 Networks, Inc. Application delivery controller and global server load balancer
US11005762B2 (en) 2013-03-08 2021-05-11 A10 Networks, Inc. Application delivery controller and global server load balancer
US9992107B2 (en) 2013-03-15 2018-06-05 A10 Networks, Inc. Processing data packets using a policy based network path
US10659354B2 (en) 2013-03-15 2020-05-19 A10 Networks, Inc. Processing data packets using a policy based network path
US10027761B2 (en) 2013-05-03 2018-07-17 A10 Networks, Inc. Facilitating a secure 3 party network session by a network device
US10038693B2 (en) 2013-05-03 2018-07-31 A10 Networks, Inc. Facilitating secure network traffic by an application delivery controller
US10305904B2 (en) 2013-05-03 2019-05-28 A10 Networks, Inc. Facilitating secure network traffic by an application delivery controller
US10230770B2 (en) 2013-12-02 2019-03-12 A10 Networks, Inc. Network proxy layer for policy-based application proxies
US9942152B2 (en) 2014-03-25 2018-04-10 A10 Networks, Inc. Forwarding data packets using a service-based forwarding policy
US9942162B2 (en) 2014-03-31 2018-04-10 A10 Networks, Inc. Active application response delay time
US10257101B2 (en) 2014-03-31 2019-04-09 A10 Networks, Inc. Active application response delay time
US9906422B2 (en) 2014-05-16 2018-02-27 A10 Networks, Inc. Distributed system to determine a server's health
US10686683B2 (en) 2014-05-16 2020-06-16 A10 Networks, Inc. Distributed system to determine a server's health
US9992229B2 (en) 2014-06-03 2018-06-05 A10 Networks, Inc. Programming a data network device using user defined scripts with licenses
US9986061B2 (en) 2014-06-03 2018-05-29 A10 Networks, Inc. Programming a data network device using user defined scripts
US10129122B2 (en) 2014-06-03 2018-11-13 A10 Networks, Inc. User defined objects for network devices
US10749904B2 (en) 2014-06-03 2020-08-18 A10 Networks, Inc. Programming a data network device using user defined scripts with licenses
US10880400B2 (en) 2014-06-03 2020-12-29 A10 Networks, Inc. Programming a data network device using user defined scripts
JP2016045505A (en) * 2014-08-19 2016-04-04 日本電信電話株式会社 Service providing system and service providing method
US10581976B2 (en) 2015-08-12 2020-03-03 A10 Networks, Inc. Transmission control of protocol state exchange for dynamic stateful service insertion
US10243791B2 (en) 2015-08-13 2019-03-26 A10 Networks, Inc. Automated adjustment of subscriber policies
WO2018097058A1 (en) * 2016-11-22 2018-05-31 日本電気株式会社 Analysis node, method for managing resources, and program recording medium

Also Published As

Publication number Publication date
JPWO2004084085A1 (en) 2006-06-22

Similar Documents

Publication Publication Date Title
WO2004084085A1 (en) Load distributing system by intersite cooperation
CN104769919B (en) Load balancing access to replicated databases
CN108965485B (en) Container resource management method and device and cloud platform
TWI525459B (en) Information processing system, information processing apparatus, load balancing method, database deployment planning method, and program for realizing connection distribution for load balancing in distributed database
JP5039951B2 (en) Optimizing storage device port selection
JP4827097B2 (en) Apparatus, system and method for controlling grid system resources on demand
US5341477A (en) Broker for computer network server selection
US20110271275A1 (en) Software distribution management method of computer system and computer system for software distribution management
JPH03116262A (en) Method and apparatus for selecting server in computer network
CN112583861A (en) Service deployment method, resource configuration method, system, device and server
US20200050479A1 (en) Blockchain network and task scheduling method therefor
CN111240838B (en) Pressure testing method and device
CN110365748A (en) Treating method and apparatus, storage medium and the electronic device of business datum
JP2012099062A (en) Service cooperation system and information processing system
CN112350952B (en) Controller distribution method and network service system
CN110166524B (en) Data center switching method, device, equipment and storage medium
CN112351083B (en) Service processing method and network service system
CN113382077B (en) Micro-service scheduling method, micro-service scheduling device, computer equipment and storage medium
JP2007164264A (en) Load distribution program, load distribution device and service system
US20050144280A1 (en) Load distribution system by inter-site cooperation
JP5661328B2 (en) Efficient and cost-effective distributed call admission control
CN113268329A (en) Request scheduling method, device and storage medium
CN112737806B (en) Network traffic migration method and device
JP4309321B2 (en) Network system operation management method and storage apparatus
JP2005182702A (en) Access control system in ip network

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP US

WWE Wipo information: entry into national phase

Ref document number: 2004569568

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 11050058

Country of ref document: US