Resource management program, resource management method, and resource management device
The resource management program optimizes node integration in clusters by pre-configuring backup devices and dynamically adding resources based on job needs, addressing inefficiencies in conventional clustering technologies.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- エフサステクノロジーズ株式会社
- Filing Date
- 2024-11-06
- Publication Date
- 2026-05-19
AI Technical Summary
Conventional clustering technologies face challenges in efficiently adding nodes with hardware configurations tailored to specific jobs due to lengthy setup processes and resource mismatches, leading to inefficient resource utilization.
A resource management program and device that pre-installs an OS on backup devices with predetermined configurations, identifies necessary additional resources, and dynamically integrates them into clusters based on job requirements, optimizing hardware configurations for efficient resource utilization.
This approach significantly reduces the time required to integrate nodes into clusters, optimizing hardware configurations for specific jobs, thereby improving resource efficiency and maintaining cluster performance.
Smart Images

Figure 2026082013000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a resource management program, a resource management method, and a resource management device.
Background Art
[0002] In enterprise core business and data centers, a technique called clustering is often used to group a number of computers such as servers and manage them collectively. Each of the grouped computers is called a node. As clustering software for realizing clustering, there are RHOCP (Red Hat (registered trademark) OpenShift (registered trademark) Container Platform), Rancher, and the like.
[0003] By using clustering software, nodes can be dynamically added or deleted according to the load of the entire cluster. The clustering technology is particularly important when the load fluctuates greatly or business expansion is expected.
[0004] Furthermore, as a technology for improving the convenience of clustering, a technology called CDI (Composable Disaggregated Infrastructure) has been developed. The CDI system pools various computer resources such as GPUs (Graphics Processing Units) and computer bodies as a whole system, and can dynamically create computers with various configurations as needed.
[0005] The following clustering technologies exist: One proposed technology involves setting the transfer and I / O (Input / Output) sections of a standby server device to standby and the application execution section to active, then switching the transfer and I / O sections from standby to active when a failure is detected. Another proposed technology involves setting identifiers for each failover method, and when hot standby is selected, starting the standby system and then applying the failover method corresponding to the specified identifier to the standby system. Furthermore, in a business handover system containing multiple clusters, a technology has been proposed in which the hot standby cluster takes over the operations of the cluster that has experienced a failure. [Prior art documents] [Patent Documents]
[0006] [Patent Document 1] Japanese Patent Publication No. 2012-155540 [Patent Document 2] Japanese Patent Publication No. 2008-269332 [Patent Document 3] International Publication No. 1997 / 049034 [Overview of the project] [Problems that the invention aims to solve]
[0007] However, when adding nodes to a cluster, the following challenges arise. When adding a node to a cluster where jobs cannot be assigned due to insufficient resources, tasks must be performed to prepare the node to be able to execute jobs, such as hardware configuration setup, OS (Operating System) installation, and software deployment. This process can take approximately 600 seconds in total. Furthermore, if a node that has completed the startup process is kept on standby and then added to a cluster where jobs cannot be assigned due to insufficient resources, the resources of the added node may be unsuitable for that job. For example, a standby node may not have a GPU with sufficient performance for a job that requires a high-performance GPU, or a high-performance GPU may be installed for a job that does not require a GPU. Thus, with conventional clustering technology, it is difficult to add nodes with hardware configurations appropriate for the job in a short amount of time, making efficient use of resources difficult.
[0008] Furthermore, even with technologies that set the transfer and I / O units to standby and the application execution unit to active to perform a failover, it is difficult to add nodes with hardware configurations tailored to the job. Also, with technologies that reflect a specified failover method for each standby system, or technologies where a hot standby cluster takes over the operations of a failed cluster, the added resources are fixed, making it difficult to add nodes with hardware configurations tailored to the job. Therefore, regardless of the technology used, efficient resource utilization is difficult.
[0009] The disclosed technology was made in view of the above and aims to provide a resource management program, a resource management method, and a resource management device that improve the efficiency of resource utilization. [Means for solving the problem]
[0010] In one embodiment of the resource management program, resource management method, and resource management device disclosed in this application, an OS is installed on a backup device having a predetermined hardware configuration, and the device is kept in a standby state with the OS booted. When the backup device is to be incorporated into a cluster, the computer is instructed to identify the hardware resources to be used based on a predetermined job assigned to the backup device, identify additional resources to be added to the predetermined hardware configuration, obtain the additional resources from a resource pool holding multiple hardware resources and add them to the backup device, complete the configuration of the additional resources on the backup device, and then incorporate the backup device into the cluster. [Effects of the Invention]
[0011] In one respect, the present invention can improve the efficiency of resource utilization. [Brief explanation of the drawing]
[0012] [Figure 1] Figure 1 is a system configuration diagram of the CDI system. [Figure 2] Figure 2 is a block diagram of the CDI management server. [Figure 3] Figure 3 shows an example of a resource management log. [Figure 4] Figure 4 shows the sequence of processes by which the CDI management server integrates a server into a cluster according to an embodiment. [Figure 5] Figure 5 shows the process of integrating servers into a cluster by the CDI management software. [Figure 6] Figure 6 is a flowchart of the process for determining additional resources. [Figure 7] Figure 7 shows the sequence of processes for integrating a server into a cluster, starting from hardware initialization. [Figure 8] Figure 8 is a hardware configuration diagram of the CDI management server. [Modes for carrying out the invention]
[0013] Hereinafter, embodiments of the resource management program, resource management method, and resource management apparatus disclosed in the present application will be described in detail based on the drawings. Note that the resource management program, resource management method, and resource management apparatus disclosed in the present application are not limited by the following embodiments.
Embodiment
[0014] FIG. 1 is a system configuration diagram of a CDI system. As shown in FIG. 1, the CDI system 100 includes a CDI management server 1, a PCIe (Peripheral Component Interconnect Express) controller 2, and a resource pool 3.
[0015] The resource pool 3 includes computer resources such as a PCIe switch 30, a plurality of servers 31, a plurality of GPUs 32, and a plurality of SSDs (Solid State Drives) 33. Hereinafter, the GPUs 32 and SSDs 33 will be collectively referred to as "expansion resources". Note that the resource pool 3 can also introduce memory as an expansion resource by utilizing CXL (Compute Express Link) technology.
[0016] The PCIe switch 30 is connected to a plurality of servers 31, a plurality of GPUs 32, and a plurality of SSDs 33. The PCIe switch 30 can switch the path between the server 31 and the expansion resources according to the control from the PCIe controller 2, and connect each of the GPUs 32 and SSDs 33 to any one of the servers 31.
[0017] Server 31 is an information processing device equipped with a CPU (Central Processing Unit) and memory. Server 31 is connected to the CDI management server 1 via a network. Server 31 can operate as one or more cluster systems under the control of clustering software operating on the CDI management server 1. Each server 31 included in the cluster system executes a job respectively.
[0018] Any one of the servers 31 operates as a job management server that assigns jobs to each server 31. The server 31 that is the job management server may also execute a job. The server 31 that is the job management server has a job queue, assigns the jobs stored in the job queue to the server 31, and causes the jobs to be executed. Also, the server 31 that is the job management server notifies the CDI management server 1 of the information of the job queue and the assignment status of the jobs.
[0019] The PCIe controller 2 is installed in, for example, a server different from the CDI management server 1. The PCIe controller 2 is connected to the CDI management server 1. However, the PCIe controller 2 may be installed in the CDI management server 1.
[0020] The PCIe controller 2 causes the PCIe switch 30 to perform a path switch according to an instruction from the CDI management server 1, and connects either a specified number of GPUs 32 or SSDs 33 included in the resource pool 3 or a combination thereof to the specified server 31. In addition, when memory is included in the resource pool 3, the PCIe controller 2 can connect the memory to the server 31 according to an instruction from the CDI management server 1.
[0021] The CDI management server 1 operates clustering software and CDI management software 10 not shown in the figure. The CDI management server 1 constructs a cluster system of the servers 31 in the resource pool 3 using the clustering software.
[0022] Furthermore, the CDI management software 10 constructs logical servers and distributes software such as operating systems and applications to each server 31. The CDI management software 10 can also instruct the PCIe controller 2 to allocate expansion resources to specific servers 31. For example, the CDI management software 10 monitors the clustering software and detects shortages of computer resources. For example, if expansion resources are insufficient, the CDI management software 10 instructs the PCIe controller 2 to allocate the insufficient expansion resources.
[0023] Figure 2 is a block diagram of the CDI management server. The details of the CDI management server 1 will be described below with reference to Figure 2. As shown in Figure 2, the CDI management server 1 includes a cluster management unit 11, a configuration execution unit 12, a configuration management unit 13, an additional configuration determination unit 14, a software application unit 15, and a configuration change unit 16.
[0024] The cluster management unit 11 is included in the functions of the clustering software. In addition, the configuration execution unit 12, configuration management unit 13, additional configuration determination unit 14, software application unit 15, and configuration change unit 16 are included in the functions of the CDI management software 10.
[0025] The cluster management unit 11 receives instructions for cluster construction, including cluster configuration information, from a user terminal (not shown). The cluster configuration information includes the number of servers 31 to be used, the number of servers 31 to be operational, information on the configuration of computer resources to be incorporated into each operational server 31, and information on the applications to be run. Furthermore, the cluster configuration information includes the number of servers 31 to be reserved as backups among the number of servers 31 to be used.
[0026] The cluster management unit 11 outputs the cluster configuration information received from the user terminal to the configuration management unit 13. Subsequently, the cluster management unit 11 receives input from the configuration management unit 13 regarding the information of the servers 31 to be included in the cluster within the resource pool 3. Then, the cluster management unit 11 constructs the cluster system according to the cluster construction instructions using the servers 31 designated as servers 31 to be included in the cluster. At this time, the cluster management unit 11 also constructs the logical servers within the cluster.
[0027] A cluster includes both an active server 31 and a standby server 31. Therefore, in the following, adding a new server 31 to a cluster as either an active server 31 or a standby server 31 is referred to as "adding to a cluster." Also, changing a standby server 31 to a new active server 31 and making it function as a cluster is referred to as "integrating into a cluster." Furthermore, in the following, an active server 31 is referred to as an "active server," and a standby server 31 is referred to as a "standby server."
[0028] The cluster management unit 11 obtains information on the cluster's job queue and job assignment status from the job management server, server 31. The cluster management unit 11 then outputs the obtained information on the cluster's job queue and job assignment status to the configuration management unit 13. Subsequently, if there are insufficient logical servers to assign jobs in the cluster, the cluster management unit 11 receives instructions from the configuration management unit 13 to add a new server 31 to the cluster. The cluster management unit 11 then adds the standby server 31 to the cluster.
[0029] The configuration management unit 13 maintains a resource management log 111 as shown in Figure 3. Figure 3 is a diagram showing an example of a resource management log. The resource management log 111 registers, for example, the ID (Identifier), type, device information, affiliation, and status of computer resources.
[0030] The ID is a unique identifier within the CDI system 100. The Type is the type of each computer resource. The Device Information is information such as the product name and capacity. The Affiliation is information indicating the cluster to which it belongs. The Status indicates the operating status of each computer resource. In the initial state, the configuration management unit 13 sets the affiliation of the computer resource to free and the status to power off.
[0031] When installing the CDI system 100, the configuration management unit 13 receives information entered by the user from the user terminal regarding each device included in the CDI system 100 and registers it in the resource management log 111. Alternatively, the configuration management unit 13 may automatically acquire information from the server 31, GPU 32, SSD 33, etc., present in the resource pool 3 via the PCIe controller 2 and register information about each device in the resource management log 111.
[0032] The configuration management unit 13 receives cluster configuration information from the cluster management unit 11. The configuration management unit 13 refers to the resource management log 111 and selects the number of free servers 31 to be included in the cluster. Then, the configuration management unit 13 selects from the selected servers 31 to be the active servers and the standby servers 31.
[0033] Next, the configuration management unit 13 instructs the configuration execution unit 12 to perform configuration on each server 31, along with information on the active and standby servers, as well as information on the hardware configuration of each server 31 that will be designated as an active server.
[0034] Subsequently, the configuration management unit 13 notifies the cluster management unit 11 of the information on the active and standby servers, causing it to build the cluster. After the cluster is built, the configuration management unit 13 sets the affiliation of each server 31 in the resource management log 111 to the cluster to which it belongs. The configuration management unit 13 also sets the status of the server 31 selected as an active server to "running". The configuration management unit 13 also sets the status of the server 31 selected as a standby server to "standby". Subsequently, the configuration management unit 13 instructs the software application unit 15 to deploy software to the servers 31 included in the cluster.
[0035] For example, let's consider a request to build an RHOCP cluster using two servers 310, two GPUs 32, one SSD 33, and one memory. The configuration management unit 13 selects server 31 from the standby servers that are free to use from the resource management log 111, has the configuration execution unit 12 build a physical server equipped with the specified expansion resources, and then has the cluster management unit 11 install RHOCP. Once the cluster is built, the configuration management unit 13 changes the server's affiliation in the resource management log 111 to the newly built cluster. Furthermore, the configuration management unit 13 sets the status of the active server to "running" and the status of the standby server to "standby." Subsequently, the configuration management unit 13 has the software application unit 15 deploy the OS, various drivers, and applications to the active server 31, and starts the cluster. The configuration management unit 13 also has the software application unit 15 install the OS on the standby server 31, and boots that server 31.
[0036] Here, the standby server is an example of a "backup device." The configuration management unit 13 installs an OS on the backup device having a predetermined hardware configuration and puts it into a standby state with the OS booted. The configuration management unit 13 also monitors the cluster by obtaining cluster configuration information from the cluster management unit 11 and determines whether or not to incorporate the standby server, which is a backup device, into the cluster based on the assignment status of jobs stored in the job queue.
[0037] Furthermore, during cluster operation, the configuration management unit 13 obtains information on the cluster's job queue and job assignment status from the cluster management unit 11. The configuration management unit 13 then determines whether there are any jobs in the job queue that have not been assigned a logical server and are in a pending state. If there are jobs in a pending state, the configuration management unit 13 instructs the additional configuration determination unit 14 to determine whether additional resources are needed. After the physical configuration of server 31 is completed, the configuration management unit 13 instructs the cluster management unit 11 to integrate the new server 31 into the cluster. Subsequently, the configuration management unit 13 instructs the software application unit 15 to deploy applications and other software to the newly integrated server 31.
[0038] The configuration execution unit 12 pre-stores information on a predetermined minimum hardware configuration for server 31, which will be used as a standby server in the cluster. This minimum configuration is an example of a "predetermined hardware configuration." The minimum configuration may be, for example, the configuration of server 31 without any additional expansion resources. Alternatively, the minimum configuration may be the configuration of server 31 with a predetermined number of additional GPUs 32 or SSDs 33, such as adding one GPU 32.
[0039] The configuration execution unit 12 receives information on the active and standby servers, as well as information on the hardware configuration of each server 31 to be used as an active server, along with instructions for executing the configuration of each server 31 from the configuration management unit 13. If there are additional resources required to achieve the specified hardware configuration for each active server, the configuration execution unit 12 instructs the PCIe controller 2 to add the additional resources to the target server 31.
[0040] Furthermore, the configuration execution unit 12 determines whether additional resources exist to achieve a minimum configuration for each standby server. If additional resources exist, the configuration execution unit 12 instructs the PCIe controller 2 to add the additional resources to the server 31 designated as a standby server. In this way, the configuration execution unit 12 may perform the process of acquiring predetermined resources from the resource pool 3 and adding them to the standby server in order to achieve a minimum configuration for the standby server before installing the OS on the standby server.
[0041] Subsequently, the configuration execution unit 12 performs hardware initialization on both the active server and the standby server 31. Furthermore, the configuration execution unit 12 starts the BIOS (Basic Input Output System) on each server 31.
[0042] The additional configuration determination unit 14 receives instructions from the configuration management unit 13 to determine additional resources. The additional configuration determination unit 14 then identifies the computer resources to be used to execute the job with insufficient resources on the server 310 to be newly added to the cluster. Next, the additional configuration determination unit 14 checks the difference between the computer resources used by the server 31 executing the job and the minimum configuration, and determines whether the computer resources used by the server 31 executing the job are sufficient with the minimum configuration.
[0043] If the minimum configuration of computer resources is insufficient, the additional configuration determination unit 14 identifies additional computer resources that are not included in the minimum configuration and are used to run jobs on the server 31. The additional configuration determination unit 14 then notifies the configuration change unit 16 of the instruction to add the identified additional resources.
[0044] Here, a job assigned to a newly added server 310 due to insufficient resources is an example of a "predetermined job assigned to a standby server." When a standby server, which is a backup device, is added to the cluster, the additional configuration determination unit 14 identifies the hardware resources to be used based on the predetermined job assigned to the standby server and identifies additional resources to be added to the predetermined hardware configuration. The additional configuration determination unit 14 also obtains information on the predetermined job from among the jobs stored in the cluster's job queue, determines the hardware resources to be used, and identifies the difference between the determined hardware resources and the minimum configuration, which is the predetermined hardware configuration, as additional resources. Furthermore, the additional configuration determination unit 14 can identify at least one or more of the following as additional resources: GPU 32, SSD 33 which is an auxiliary storage device, or memory which is a main storage device.
[0045] The configuration change unit 16 receives an input instruction for adding additional resources from the additional configuration determination unit 14. The configuration change unit 16 then instructs the PCIe controller 2 to add the additional resources to server 310. In this way, the configuration change unit 16 instructs the PCIe controller 2 to acquire additional resources from the resource pool 3, which holds multiple hardware resources, and add them to server 31, which is a standby server that is a backup device.
[0046] When a cluster is built, the software application unit 15 receives instructions from the configuration management unit 13 to deploy software to the servers 31 included in the cluster. The software application unit 15 then loads the OS to be installed on the server 310. After that, the software application unit 15 installs the loaded OS on the server 310.
[0047] The software application unit 15 boots the OS on the standby server 31 with the OS already installed. With this, the software application unit 15 completes the preliminary preparations for the standby server 310.
[0048] Furthermore, for the operational server, the software application unit 15 loads the driver to be used on the server 31. Next, the software application unit 15 secures the driver resources on the operational server, server 31. Then, the software application unit 15 uses the secured resources to install the driver on the server 31 and complete the configuration. At this point, the software application unit 15 may also install various applications such as business software on the server 31.
[0049] When a new server 31 is added to an existing cluster, the software application unit 15 receives instructions from the configuration management unit 13 to deploy software such as applications to the newly added server 31. Next, the software application unit 15 loads the drivers to be used by the newly added server 31. Next, the software application unit 15 secures driver resources for the newly added server 310. Next, the software application unit 15 installs the drivers using the secured resources and completes the configuration of the newly added server 310. At this point, the software application unit 15 may also install various applications such as business software on the server 31.
[0050] In this way, the software application unit 15 completes the configuration of additional resources in the standby server, which is a backup device. The process of completing the standby server configuration includes at least loading the drivers for the additional resources, securing the resources used by the drivers, and installing the drivers.
[0051] Figure 4 is a diagram showing the sequence of the process by which the CDI management server integrates a server into a cluster according to the embodiment. In Figure 4, each processing step and the passage of time are shown on the horizontal axis. Next, referring to Figure 4, the process by which the CDI management server 1 integrates server 31 into a cluster according to the embodiment will be explained in detail.
[0052] When building a cluster, the configuration execution unit 12 builds a minimal server 31 as a standby server (step S1). Next, the configuration execution unit 12 initializes the hardware of the standby server 31 (step S2). Next, the configuration execution unit 12 starts the BIOS on the standby server 31 (step S3). Next, the configuration execution unit 12 loads the OS (step S4). Next, the configuration execution unit 12 installs the OS on the standby server 31 (step S5). The above processing by the configuration execution unit 12 constitutes the preliminary setup. Since this preliminary setup is performed before the server 31 is incorporated into the cluster, the time required for steps S1 to S5 is not included in the processing time for incorporating the server 310 into the cluster.
[0053] Subsequently, if a shortage of computer resources occurs, the additional configuration determination unit 14 determines whether there are any additional resources not included in the minimum configuration among the computer resources used by the server 31 to execute the job. If there are additional resources, the configuration change unit 16 instructs the PCIe controller 2 to add the additional resources to the server 31, thereby changing the configuration of the server 31 (step S6).
[0054] Subsequently, the software application unit 15 loads the driver to be used on the server 31 (step S7). Next, the software application unit 15 secures the driver resources on the server 31 (step S8). Then, the software application unit 15 installs the driver using the secured resources and completes the configuration of the server 31. The time required for steps S6 to S8 is, for example, 20 seconds.
[0055] Subsequently, the cluster management unit 11 integrates the configured server 31 into the cluster (step S9). Then, the cluster management unit 11 starts the business software (step S10). The time required for steps S9 to S10 depends on the cluster.
[0056] As described above, the CDI management server 1 according to this embodiment can, for example, incorporate and start up a server 310 having an appropriate hardware configuration in the cluster in a time of 20 seconds plus the time of steps S9 to S10 which depend on the cluster.
[0057] Figure 5 shows the process of integrating servers into the cluster by the CDI management software. Referring to Figure 5, we will now summarize and explain the overview of the server integration process into the cluster by the CDI management software 10.
[0058] The CDI management software 10 prepares the server 31 with a minimal configuration in advance, ensuring that the OS has already booted (step S101).
[0059] Next, the CDI management software 10 monitors each cluster (step S102).
[0060] When the CDI management software 10 detects a cluster to which computer resources are to be added based on the job assignment status, it determines the server 31 to be added and the additional resources corresponding to the job to be executed (step S103).
[0061] Next, the CDI management software 10 secures the determined additional resources from the resource pool 3 (step S104).
[0062] Next, the CDI management software 10 adds the additional resources to the server 31 (step S105). Then, the CDI management software 10 installs the drivers on the server 31 (step S106).
[0063] Next, the CDI management software 10 instructs the cluster rinse software to integrate the server 31 into the cluster (step S107).
[0064] Figure 6 is a flowchart of the process for determining additional resources. Next, we will explain the flow of the process for determining additional resources with reference to Figure 6.
[0065] The configuration management unit 13 retrieves and reads the job queue from the cluster management unit 11 (step S201).
[0066] Next, the configuration management unit 13 determines whether or not there are any pending jobs in the job queue that have not been assigned a logical server (step S202). If there are no pending jobs (step S202: negative), the configuration management unit 13 returns to step S201.
[0067] If there are pending jobs (step S202: affirmative), the additional configuration determination unit 14 identifies the computer resources to be used to run the jobs that lack resources on the server 31 to be incorporated into the cluster (step S203). Next, the additional configuration determination unit 14 determines whether the identified computer resources are sufficient with the minimum configuration (step S204).
[0068] If the identified computer resources are sufficient with the minimum configuration (step S204: affirmative), the process for determining additional resources proceeds to step S207. Conversely, if the identified computer resources are insufficient with the minimum configuration (step S204: negative), the additional configuration determination unit 14 identifies additional resources from the identified computer resources that are not included in the minimum configuration (step S205).
[0069] The configuration change unit 16 adds the additional resources identified by the additional configuration determination unit 14 to the server 31, thereby changing the configuration of the server 31 (step S206).
[0070] Subsequently, the configuration management unit 13 instructs the software application unit 15 to deploy the software to the server 31 (step S207).
[0071] As described above, the CDI management server 1 in this embodiment keeps server 31, which is a standby server in the cluster, in a predetermined minimum configuration with the OS boot completed. When the CDI management server 1 incorporates server 31, which is a standby server, into the cluster, it determines additional resources according to the jobs to be executed by server 31, dynamically adds the additional resources to server 31, configures server 31, and then incorporates it into the cluster.
[0072] Figure 7 shows the sequence of server integration into a cluster, starting from hardware initialization. Referring to Figure 7, the time required for conventional server integration into a cluster will be explained.
[0073] The standby server has its hardware configuration pre-built for the execution of the expected job (step S01). This process constitutes the preliminary setup.
[0074] Once the decision to integrate a server is made, the hardware initialization of the standby server to be integrated is performed (step S02).
[0075] Next, the BIOS is started on the standby server (step S03).
[0076] Next, the OS of the standby server is loaded (step S04).
[0077] Next, the OS is installed on the standby server (step S05). The time required for this OS installation is, for example, 50 seconds.
[0078] Next, the driver is loaded onto the standby server (step S06).
[0079] Next, driver resources are allocated on the standby server (step S07). Then, the driver is installed using the allocated resources, and the standby server configuration is completed. The time required for steps S6 to S7 is, for example, 10 seconds.
[0080] Subsequently, the standby server is integrated into the cluster and becomes a new active server (step S08). Then, the business software is started on the new active server (step S09). The processing time required for steps S08 to S09 depends on the cluster.
[0081] In this case, servers with a predetermined hardware configuration are incorporated into the cluster. In contrast, when using the CDI management server 1, servers 310 with additional resources determined according to the job are incorporated into the cluster. Therefore, the configuration of servers 310 incorporated into the cluster can be optimized to suit the job.
[0082] Furthermore, in this case, it takes 60 seconds from the decision to integrate the server until the driver is installed and the server configuration is completed. In contrast, when using the CDI management server 1, as shown in Figure 4, it only takes 20 seconds from the decision to integrate the server until the driver is installed and the server 31 configuration is completed. Therefore, by using the CDI management server 1, the process of integrating server 31 into the cluster can be shortened by, for example, about 40 seconds. Consequently, it becomes possible to maintain and improve the performance of the cluster.
[0083] Thus, the CDI management server 1 according to this embodiment can configure the server 310 to be incorporated into the cluster to an optimal configuration tailored to the job, and can shorten the time required to integrate the server 310 into the cluster. Therefore, the efficiency of computer resource utilization is improved, and the performance of the cluster can be maintained and improved.
[0084] (Hardware configuration) Figure 8 is a hardware configuration diagram of the CDI management server. Next, with reference to Figure 8, an example of a hardware configuration for realizing each function of the CDI management server 1 will be described.
[0085] As shown in Figure 8, the CDI management server 1 includes, for example, a CPU (Central Processing Unit) 91, memory 92, a hard disk 93, and a communication interface 94. The CPU 91 is connected to the memory 92, hard disk 93, and communication interface 94 via a bus.
[0086] The communication interface 94 is an interface for communication between the CDI management server 1 and external devices. For example, the communication interface 94 relays communication between the CDI management server 1 and server 31. Alternatively, the communication interface 94 may also relay communication between the CDI management server 1 and PCIe controller 2.
[0087] The hard disk 93 is an auxiliary storage device. The hard disk 93 stores various programs, including programs for realizing the functions of the cluster management unit 11, configuration execution unit 12, configuration management unit 13, additional configuration determination unit 14, software application unit 15, and configuration change unit 16, as illustrated in Figure 2.
[0088] Memory 92 is the main memory. Memory 92 can be, for example, DRAM (Dynamic Random Access Memory).
[0089] The CPU 91 reads various programs from the hard disk 93, loads them into memory 92, and executes them. In this way, the CPU 91 realizes the functions of the cluster management unit 11, configuration execution unit 12, configuration management unit 13, additional configuration determination unit 14, software application unit 15, and configuration change unit 16, as illustrated in Figure 2. [Explanation of symbols]
[0090] 1. CDI Management Server 2 PCIe controllers 3. Resource Pools 10. CDI Management Software 11. Cluster Management Department 12 Configuration Execution Unit 13 Configuration Management Department 14 Additional configuration determination section 15 Software Application Section 16 Configuration Change Section 30 PCIe switches 31 Servers 32 GPU 33 SSD 100 CDI System
Claims
1. Install the OS (Operating System) on a backup device with a specified hardware configuration, and leave it in a standby state with the OS booted. When incorporating the backup device into the cluster, the hardware resources to be used are identified based on the predetermined jobs assigned to the backup device, and additional resources to be added to the predetermined hardware configuration are identified. The additional resources are obtained from a resource pool that holds multiple hardware resources and added to the backup device. After completing the configuration of the additional resources in the aforementioned backup device, The aforementioned backup device is incorporated into the cluster. A resource management program characterized by having a computer perform the processing.
2. The specific processing of the aforementioned additional resources is as follows: The system retrieves information on the predetermined job from among the jobs stored in the job queue of the cluster, and determines the hardware resources to be used. The difference between the determined hardware resources and the predetermined hardware configuration is defined as the additional resources. The resource management program according to claim 1, characterized by including processing.
3. The resource management program according to claim 2, characterized in that the process of putting the backup device into the OS boot state and waiting includes a process of monitoring the cluster and determining whether or not to incorporate the backup device based on the assignment status of jobs stored in the job queue.
4. The resource management program according to claim 1, characterized in that the process for completing the setup of the auxiliary device includes loading the driver for the additional resource, securing resources to be used by the driver, and installing the driver.
5. The resource management program according to claim 1, characterized in that, before installing the OS on the backup device, the computer is further instructed to perform a process of acquiring predetermined resources from the resource pool and adding them to the backup device in order to configure the backup device with predetermined hardware.
6. The resource management program according to claim 1, characterized in that the processing of the additional resources involves identifying one or more of the following as additional resources: a GPU (Graphics Processing Unit), auxiliary storage device, or main memory device.
7. Information processing device, Install the OS on a backup device with a specified hardware configuration, and leave it in a standby state with the OS booted. When incorporating the backup device into the cluster, the hardware resources to be used are identified based on the predetermined jobs assigned to the backup device, and additional resources to be added to the predetermined hardware configuration are determined. The additional resources are obtained from a resource pool that holds multiple hardware resources and added to the backup device. After completing the configuration of the additional resources in the aforementioned backup device, The aforementioned backup device is incorporated into the cluster. A resource management method characterized by executing a process.
8. A configuration management unit that puts a backup device with a predetermined hardware configuration into an OS boot state and keeps it on standby, When incorporating the backup device into the cluster, an additional configuration determination unit identifies the hardware resources to be used based on a predetermined job assigned to the backup device and determines additional resources to be added to the predetermined hardware configuration. A configuration change unit that acquires the additional resources from a resource pool holding multiple hardware resources and adds them to the backup device, A software management unit that completes the configuration of the additional resources in the aforementioned backup device, A cluster management unit that incorporates the aforementioned spare device, whose additional resources have been completed, into the cluster. A resource management device characterized by having the following features.